SSH: Выключаем себя и соседа
Предисловие:
Иногда приходится быстро выключать, утром например, комп. Или не хочется вставать с кровати после просмотра фильма.
Для введения, что имеется:
- десктоп и ноутбук в сетке
- пользователь c идентичным именем на ноуте
- ssh с безпарольным входом для вашего логина (см. http://linsovet.com/ssh-auth-pubkey например)
- sudo
- на ноутбуке строка 'NOPASSWD: /sbin/halt' в /etc/sudoers (по формату естественно)
- два скрипта fast_halt.sh и shutafter.sh, расположеных в $HOME
зы введения:
- звук настроен через пульсу на ноут - это причина скриптов :)
fast_halt.sh:
#!/bin/bash PING="/bin/ping" HALT="/sbin/halt" SSH="/usr/bin/ssh" #remote ip RIP="192.168.0.2" if $PING -c 1 $RIP &> /dev/null; then # empty echo for preinput password for sudo $HALT sudo echo && $SSH -f $RIP "sudo $HALT &" fi sudo $HALT
shutafter.sh:
#!/bin/bash USERNAME="username" SSH="/usr/bin/ssh" PING="/bin/ping" SLEEP="/bin/sleep" HALT="/sbin/halt" #remote ip RIP="192.168.0.2" if [ $UID -ne 0 ]; then sudo $0 $@ exit fi if $PING -c 1 $RIP &> /dev/null; then sudo -u $USERNAME $SSH -f $RIP "($SLEEP $@ && sudo $HALT) &" fi ($SLEEP $@ && $HALT) &
Как пример:
$ ~/shutafter.sh 1h 30m Пароль: $
зы. Для облегчения жизни, но надо быть точным в shutafter.sh, а то потом писать надо "много", или все закончится недосмотренным фильмом ;)
зыы. Да-да, я знаю про quit в vlc
upd:
sed -e "s/sudo \$0 \$@ \&/sudo \$0 \$@/" shutafter.sh
- _gaSh_'s blog
- 5261 просмотр
Страница для печати

ровным счетом ничего не понял. надо зашутдаунить комп через N часов?
echo "halt"|at now + 1 hour
или
mplayer ./movie ; halt
зачем придумывать какие-то процедуры, ssh привели зачем-то.
Ничего не поняли, потому, что ничего и не читали. Во введении русским языком объяснена причина сих скриптов. На мамке помер звук(физически). Покупать "дешевку" не хочется. Работаю в консоли, гоняю по сетке звук, надоело постоянно заходить на ноут по ссш, чтобы вырубить.
пару идей пришло в голову:
1. можно сделать алиас для mplayer
2. переделать shutafter.sh что бы следил запущен ли локальный mplayer, как тут советовалось
или
Объясните простым путем!!!!!!!!!!
Отправить комментарий