Mint Maya, ядро 3.2.0-23 и принтер LBP2900. Принтер печатает и в локальном режиме (подключен к десктопу), и по сети с ноута, но иногда "теряется" (например, когда кончилась бумага при печати документа). После этого пользуюсь скриптом canon_restart.sh ПРОБЛЕМА в том, что за компом сидит совсем никакой пользователь с профилем юзера, а скрипт надо запускать от рута (админа). Т.е. я должен пнуть юзверя, выйти из его сеанса, зайти админом, запустить скрипт, по его запросу ввести пароль админа, затем опять вернуться в профиль юзера и дать ему печатать дальше. Хлопотно это, перебегать за другой стол

Попробовал положить скрипт на рабочий стол юзера, прописав ему права на исполнение. После запуска скрипт требует пароль юзера и после ввода вылетает молча.
Пробую в строчке [ $USER != 'root' ] && exec sudo "$0" заменить root на username - скрипт запускается и выдаёт следующее:
скрипт вот этот:
#!/bin/bash
[ $USER != 'root' ] && exec sudo "$0"
PID[0]=""
PID[1]=""
PID[2]=""
echo 'Остановка ccpd'
service ccpd stop
sleep 3
echo 'Перезапуск cups и запуск ccpd'
service cups restart
sleep 10
PID=($(service ccpd status))
until [[ -n "${PID[1]}" && -n "${PID[2]}" ]]
do
echo 'Перезапуск ccpd'
service ccpd restart
sleep 7
PID=($(service ccpd status))
done
echo "Идентификаторы ccpd: ${PID[1]} ${PID[2]}"
echo
echo 'Если принтер не будет печатать, запустите скрипт еще раз'
echo 'Нажмите любую клавишу для выхода'
echo -ne "Автоматический выход через секунд(у,ы)\e[14D"
sec=30
while [ $sec -ne 0 ]
do
len=$(( ${#sec} + 1 ))
echo -ne "$sec \e[${len}D"
sec=$(( $sec - 1 ))
read -s -n1 -t1 && break
done