Простое решение:
sudo zypper install -t pattern "devel_C_C++" "devel_java" && sudo zypper install java-1_6_0-openjdk-devel mercurial
Если Вы волнуетесь это sudo
испытает таймаут после того, как 5 минут и Вы не хотите, чтобы пользователь должен был ввести их пароль дважды, Вы могли сделать
sudo sh -c 'zypper install -t pattern "devel_C_C++" "devel_java" && zypper install java-1_6_0-openjdk-devel mercurial'
ОБНОВЛЕНИЕ
Так как это кажется, что Вы хотели, чтобы все это было единственным вызовом к zypper install
, еще несколько идей:
zypper search
или zypper list
дважды, проанализируйте имена пакета, объедините вывод и работайте zipper install
однажды с полным списком пакетовzypper install --dry-run
для печати вывода затем попросите, чтобы пользователь подтвердил, затем работал zypper install
без опции пробного прогона, если пользователь отвечает на даzypper install --download-only
дважды с пользовательским dir пакетов, затем выполненным zypper install /*.rpm
(см. mktemp -d
и packagesdir
опция в zypp.conf
У меня есть подобная проблема с опцией user
. Не решенный все же. Мой подход к решению должен создать варианты ситуации, чтобы видеть, работают ли они и возможно заставляют что-то появиться.
Ваша проблема только с тем одним файлом /blergh
? Можно ли воспроизвести его с другим файлом? Или с тем файлом, расположенным где-то в другом месте, или с различными полномочиями, или с другим владением. (конечно, тестирование зависит от того, сколько контроля Вы имеете над системой).
Можно ли протестировать проблему с опцией owner
видеть, работает ли это... принимая Вас, может воспроизвести его на другом файле или изменить временно владение? Что относительно опции user
.
Ваша проблема и для монтирования и для umounting, или для только одного из них? Если монтирование не работает, Вы могли бы делать попытку монтирования как root
и umounting как myuser
. (в случае моей собственной проблемы, работ по монтажу, но umounting не делает),
Примечание стороны: Я верю этому отчасти, монтирование называют "циклом" в мире Linux, "обратная петля", имеющая отношение к сетевым устройствам. (касательно http://en.wikipedia.org/wiki/Loop_device)
Добавленный после первого комментария и редактирования вопроса
Если owner
не работает также, который означает, что все владение mecanisms затронуто с тех пор owner
легче проверить, чем group
. Имеет место это это owner
работы для реальных блочных устройств, как group
?
Имейте Вас, пытался указать явно циклическое устройство в опции цикла, выбирая ту, которая не используется: ...,loop=/dev/loop7,...
? Вы могли бы даже попытаться изменить владение или группу циклического устройства (хотя я не уверен, насколько мудрый или полезный это может быть). ls /dev/loop*
дает доступные циклические устройства.
Другая возможность состоит в том, чтобы удалить опцию loop
в целом от Вашего /etc/fstab
запись. Во многих системах это больше не необходимо и сделано неявно монтированием. Какую систему Вы используете, btw?
Я думаю, что Вы пропускаете очень важную деталь здесь. Из страницы справочника, как заключено в кавычки (и подчеркнул) Вами:
Опция группы подобна с ограничением, что пользователь должен быть членом группы специального файла.
Отметьте мой акцент на "специальный файл". Если Вы обращаетесь к следующему объяснению об опции группы:
группа Позволяет дежурному блюду (т.е. некорневой) пользователь монтировать файловую систему, если одна из его групп соответствует группе устройства. Эта опция подразумевает опции nosuid и nodev (если не переопределено последующими опциями, как в группе строки опции, dev, suid).
Это означает, что устройство или специальный файл, который Вы пытаетесь смонтировать как myuser
должен иметь то же владение группы как владение пользователя myuser
.
Вот пример:
Давайте предположим, что существует устройство /dev/sda5
в системе, которая смонтирована на /builds
каталог:
# ls -l /dev/sda5
brw-rw---- 1 root disk 8, 5 Jun 15 21:20 /dev/sda5
# grep sda5 /etc/fstab
/dev/sda5 /builds reiserfs group,defaults 1 2
Кроме того, в этой той же системе существует 2 пользователя: foo
и srinidhi
# id foo
uid=1005(foo) gid=100(users) groups=100(users),33(video)
# id srinidhi
uid=1000(srinidhi) gid=100(users) groups=100(users),16(dialout),6(disk),10(wheel)
Пользователь srinidhi
(кто часть группы disk
) попытки смонтироваться /builds
:
srinidhi@linux:~> mount /builds/
srinidhi@linux:~> echo $?
0
Теперь, давайте посмотрим то, что происходит когда foo
попытки смонтироваться /builds
:
srinidhi@linux:~> su - foo
foo@linux:~> mount /builds/
mount: only root can mount /dev/sda5 on /builds
foo@linux:~>
С тех пор foo
не часть disk
группа, mount
сбои.
Возвращаясь к Вашему случаю, необходимо удостовериться то владение группы /blergh
должен или быть myuser
или disk
. Просто установите корректное владение группы и Ваш оригинал /etc/fstab
запись должна начать работать:
# chgrp myuser /blergh
Теперь попытайтесь работать mount /media/blergh
как myuser
.
Примечание: Владение точки монтирования (здесь /media/blergh
) не влияет mount
.
/blergh
. Таким образом, я сделал некоторое рытье в источниках util-linux
и если я читаю исходное право, затем соответствия "владельца" и "группы" не сделаны, если файл не запускается с /dev/
. Таким образом, если Вы первый показ losetup loop0 /blergh
и затем используйте /dev/loop0 /blergh..
в/etc/fstab все работает, как Вы ожидали бы.
– Srinidhi
30.07.2013, 23:39
user
работы отлично, ноowner
не работает вообще. Что я действительно находил, хотя то, что моя проблема сgroup
кажется ограниченнымloop
и не проявляет с реальными блочными устройствами. Я отредактирую свой вопрос с более подробной информацией. – Noah Yetter 20.05.2013, 22:22user
но я не полагаю, что это помогло бы Вам. – babou 23.05.2013, 10:30