Форум русскоязычного сообщества Ubuntu


Хотите сделать посильный вклад в развитие Ubuntu и русскоязычного сообщества?
Помогите нам с документацией!

Автор Тема: Помогите с BASH.  (Прочитано 689 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн peregrine

  • Автор темы
  • FSM
  • СуперМодератор
  • Старожил
  • *
  • Сообщений: 7203
  • Gentoo x64 Ubuntu 16.04.1 x64
    • Просмотр профиля
Помогите с BASH.
« : 12 Декабря 2013, 16:29:23 »
Требуется подсказать, как лучше организовать ввод рутового пароля в zenity. Скрипт должен спросить пароль при некоторых условиях, а у юзера есть выбор, вводить его или отказаться, если он его вводит правильно с неограниченного числа попыток (но в любой момент юзер может нажать кнопку отмена) скрипт делает одну вещь, а если нет (юзер нажал кнопку отмена), то другую. Вариант - запускать скрипт от рута или куда-то его прописывать не катит, так как скрипт портабельный и служит для диагностики, там 100500 параметров могут искаться, в некоторых случаях рут нужен. Цель скрипта - написать некоторый лог в котором хранится обработанный вывод кучи команд, понятный даже чайнику, в зависимости, напротив чего были расставлены галочки. Но дырищу в безопасности тоже делать нет желания.

Оффлайн БТР

  • Заслуженный пользователь
  • СуперМодератор
  • Старожил
  • *
  • Сообщений: 6166
    • Просмотр профиля
Re: Помогите с BASH.
« Ответ #1 : 12 Декабря 2013, 16:34:58 »
gksu

Оффлайн peregrine

  • Автор темы
  • FSM
  • СуперМодератор
  • Старожил
  • *
  • Сообщений: 7203
  • Gentoo x64 Ubuntu 16.04.1 x64
    • Просмотр профиля
Re: Помогите с BASH.
« Ответ #2 : 12 Декабря 2013, 16:36:20 »
БТР, а как условия правильности ввода проверить?

Оффлайн БТР

  • Заслуженный пользователь
  • СуперМодератор
  • Старожил
  • *
  • Сообщений: 6166
    • Просмотр профиля
Re: Помогите с BASH.
« Ответ #3 : 12 Декабря 2013, 16:37:36 »
код выхода проверить

Оффлайн peregrine

  • Автор темы
  • FSM
  • СуперМодератор
  • Старожил
  • *
  • Сообщений: 7203
  • Gentoo x64 Ubuntu 16.04.1 x64
    • Просмотр профиля
Re: Помогите с BASH.
« Ответ #4 : 12 Декабря 2013, 16:42:56 »
БТР, можно подробнее? Например, мне надо выполнить такое:
sudo apt-get upsate >> log.txtКак проверить код выхода, через gksu? Т.е. что всё прошло нормально.

Оффлайн БТР

  • Заслуженный пользователь
  • СуперМодератор
  • Старожил
  • *
  • Сообщений: 6166
    • Просмотр профиля
Re: Помогите с BASH.
« Ответ #5 : 12 Декабря 2013, 17:01:26 »
Т.е. что всё прошло нормально.

нормально - это как? в случае с apt-get update что имеется ввиду? грепать наличие Err ?

Оффлайн peregrine

  • Автор темы
  • FSM
  • СуперМодератор
  • Старожил
  • *
  • Сообщений: 7203
  • Gentoo x64 Ubuntu 16.04.1 x64
    • Просмотр профиля
Re: Помогите с BASH.
« Ответ #6 : 12 Декабря 2013, 17:22:34 »
БТР, что я рута получил.

Оффлайн БТР

  • Заслуженный пользователь
  • СуперМодератор
  • Старожил
  • *
  • Сообщений: 6166
    • Просмотр профиля
Re: Помогите с BASH.
« Ответ #7 : 12 Декабря 2013, 17:38:16 »
Код: (bash) [Выделить]
if [ $EUID -eq 0 ] ; then

echo "You must be root to do this." 1>&2;

else ...
« Последнее редактирование: 12 Декабря 2013, 17:40:17 от БТР »

Оффлайн SergeyIT

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 5589
  • Все по палатам!
    • Просмотр профиля
Re: Помогите с BASH.
« Ответ #8 : 12 Декабря 2013, 17:56:49 »
peregrine,
Только вот помнить надо, что пароль sudo помнит несколько минут
Извините, я все еще учусь

Оффлайн peregrine

  • Автор темы
  • FSM
  • СуперМодератор
  • Старожил
  • *
  • Сообщений: 7203
  • Gentoo x64 Ubuntu 16.04.1 x64
    • Просмотр профиля
Re: Помогите с BASH.
« Ответ #9 : 12 Декабря 2013, 18:40:41 »
SergeyIT, мне он на одну команду нужен.

 

Страница сгенерирована за 0.043 секунд. Запросов: 25.