Невыполняется команда скрипта sh.

Есть .sh скрипт обновления, в конце хочу отправить комп спать, но вот последняя команда не выполняется.
sudo revdep-rebuild -- -q &&
sudo emerge --depclean --exclude="gcc gentoo-sources" &&
sudo eclean-dist --deep &&

sudo mount -o remount,size=1G /tmp && sudo mount -o remount,size=1G /var/tmp/portage &&

sudo rsnapshot sync &&
sudo s2ram -f

По алиасу в bashrc 'sudo s2ram -f' все работает.

:)

Предположим, что результат одного из этих странных sudo будет равен false
Антигуманно-продолжительная последовательность &&-ов ожидаемо прерывается.
Последняя && sudo .. && sudo .. && sudo .. && sudo .. не выполняется.
Спасти Вас может отладка, а также более детальный подход к обработке возвращаемых значений команд.

P.S. По скромному мнению, отлаживать ЭТО будет тот, кто ЭТО наваял.
P.P.S. Ах, да... Еще эти алиасы... :-D

Вариант

Доброго времени суток.
Есть еще один вариант.
Предпоследняя команда выполняется достаточно долго, что бы для sudo закончилось время, которое он помнит, что пароль вводили.
Если верить man-страничке:

Security policies may support credential caching to allow the user to run sudo again for a period of time without requiring authentication. By default, the sudoers policy caches credentials on a per-terminal basis for 5 minutes. See the timestamp_type and timestamp_timeout options in sudoers(5) for more information. By running sudo with the -v option, a user can update the cached credentials without running a command.

Судя по скрипту, пользователь

Судя по скрипту, пользователь вообще не вводит пароль. Вся эта лабуда прописана в sudoers.
Либо по sudo пользователю все разрешено и пользователь от рута отличается только sudo. В этом случае можно было попробовать просто включить пользователя в группу root. Или просто сидеть рутом.
Да, глумлюсь. Но сабж не оставляет выбора. :-D

Очень остроумно, но никто из

Очень остроумно, но никто из всех крутых не знает почему!

slalom написал(а):Очень

slalom написал(а):
Очень остроумно, но никто из всех крутых не знает почему!

По признаку незнания самый крутой тут топикстартер. Намекаю - перейти из состояния крутости во вменяемое состояние при помощи вышеприведенного скрипта не получится. Нужно проконтролировать результат выполнения каждого аргумента &&. Отдельно. Придется делать самому.

Отличный ресурс для воскуривания: Advanced Bash-Scripting Guide
Глава 29 посвящена как раз отладке.

Ну это уже конретика, а чем

Ну это уже конретика, а чем так смешон скрипт он не мой - взял с ЛОРа.

slalom написал(а): Ну это уже

slalom написал(а):
Ну это уже конретика, а чем так смешон скрипт он не мой - взял с ЛОРа.

Пальцем в небо - ведь там тоже никто не знает, почему. :-D

Ничего не понял. Ну и

Ничего не понял.

slalom написал(а):Очень

slalom написал(а):
Очень остроумно, но никто из всех крутых не знает почему!

Пальцем в небо - ведь там тоже никто не знает, почему. :-D

Нить беседы Вы теряете с секундной задержкой.

Настройки просмотра комментариев

Выберите нужный метод показа комментариев и нажмите "Сохранить установки".