Автоматизация переключения пароля пользователя в скрипте

В моем .bashrc я определяю функцию, screenshot, чтобы использовать ImageMagik: screenshot () {import -window root ~ / var / screenshot / $ (tshhmmss) _screendump.png}

и, для метки времени,

alias tshhmmss='date +%y%b%d-%H%M%S'

Тогда, обертывание в while sleep 5 ... легко.

1
задан 13 November 2017 в 14:42

2 ответа

Если вам нужно запустить этот скрипт как пользователь без полномочий root, вы должны настроить sudo, чтобы это разрешить. Вы можете настроить sudo для каждого пользователя или группы, чтобы разрешать все или только определенные команды, либо с паролем, либо без него. Полностью отключить sudo для всех пользователей, вероятно, не то, что вы хотите ...

2
ответ дан 26 May 2018 в 00:45
  • 1
    Поскольку пользователи могут легко получить доступ к root, просто вводя собственный пароль с помощью команды sudo -s, мне пришлось полностью отключить sudo. Я пробовал некоторые скрипты, но это не сработало для меня. – user3215 28 October 2010 в 14:16
  • 2
    sudo -s работает только в том случае, если вы разрешаете его (например, на Ubuntu, это разрешено для всех пользователей, входящих в группу «admin», но не для других пользователей). Вы должны прочитать sudo & amp; sudoers & amp; visudo, чтобы узнать больше об этом. Мне нужно немного поспать, прежде чем предоставить вам примеры, хотя ... ;-) – JanC 28 October 2010 в 16:06

Вы можете установить исполняемый бит выполнения на этом скрипте, чтобы он всегда выполнялся как владелец скрипта. Что-то вроде chmod 4750 script_name

Expect может использоваться для автоматизации ответов в скрипте. Будьте осторожны с любым из них, так как они могут привести к рискам для безопасности, особенно когда вы предоставляете обычным пользователям повышенные привилегии.

Правильная настройка sudo, вместо того, чтобы полностью отключить его, как заявил JanC, является, пожалуй, лучшим решением.

0
ответ дан 26 May 2018 в 00:45
  • 1
    Назначив липкий бит, все еще говорит: «Вам нужны права root для запуска этого скрипта». Да, я ищу сценарий ожидания, но я не могу сделать сам, поскольку я плохо разбираюсь в программировании. – user3215 28 October 2010 в 15:07
  • 2
    Является ли скрипт принадлежащим root? Установка липкого бита, как указано выше, будет выполняться как владелец сценария. В Интернете много примеров. Попробуйте Expect Examples . – hannaman 28 October 2010 в 15:36
  • 3
    "Клейкий" бит не контролирует, какой пользователь выполняет исполняемый файл. В обычных файлах он практически ничего не делает (это был старый трюк unix, чтобы получить файл для «stick» в ОЗУ). В каталогах это приводит к тому, что разрешения работают по-другому, так что даже если у вас есть доступ на запись, вы можете только переименовывать и удалять свои собственные файлы. Это для временных каталогов. – SpamapS 3 November 2010 в 22:51
  • 4
    То, что вы, вероятно, имели в виду, было бит setuid. Это будет работать, если его сценарий является фактическим исполняемым двоичным кодом, но это не работает с скриптами. – SpamapS 3 November 2010 в 22:51
  • 5
    -1 бит setuid не работает для сценариев оболочки – João Pinto 3 November 2010 в 23:16

Другие вопросы по тегам:

Похожие вопросы: