Прямо после моей сессии входа в систему, я хотел бы, чтобы Ubuntu выполнилась sudo apt-get update & apt-get dist-upgrade
, систематически / автоматически. Терминал должен быть открыт так, чтобы я видел вывод каждого этого выполнения. В частности, я хочу попроситься ввести "y/n" из-за команды apt-get dist-upgrade
. Я не хочу должным быть вводить свой пароль: таким образом Ubuntu должна использовать его в качестве входа sudo
выполнение вместо меня.
Включенные модификации должны быть независимы от любого обновления и миграции Ubuntu.
Который bash
файл я должен отредактировать и в который путь?
Sudo без пароля
Можно сказать sudo позволять Вам выполнить команды без пароля.
на большую часть upvoted отвечают здесь
Открытое окно терминала и тип:
sudo visudo
В нижней части файла введите следование:
$USER ALL=(ALL) NOPASSWD: ALL
Можно также заставить его только позволить склонный работать без пароля всего на одного пользователя, и только на Кв. путем добавления этого вместо вышеупомянутого:
username ALL = NOPASSWD: /usr/bin/apt
замена "имени пользователя" с именем пользователя. Вам, вероятно, придется перезагрузить для этих изменений для вступления в силу.
Я настоятельно рекомендовал бы использование отдельного пользователя / прикладное решение, поскольку это будет намного более безопасно, чем разрешение полного использования от sudo без пароля для всего sudoers... Это могло быть СЕРЬЕЗНОЙ проблемой безопасности, особенно если бы кто-то получил физический доступ к Вашему компьютеру. В целом, если этот компьютер будет содержать уязвимые данные, то Вы захотите воздержаться от любого вида sudoing без пароля.
Команда выполнения на запуске
ИЛИ
~/.profile
Следующая команда откроет терминальное и выполненное обновление:
gnome-terminal -- bash -c "sudo apt update && sudo apt dist-upgrade; read line"
Имя и комментарий (gui), как Вы желаете и сохраняете его. Теперь, когда Вы входите в систему, терминал откроет и выполнит Ваши команды обновления. Вы не должны будете вводить пароль, но необходимо будет подтвердить обновление.
Окно затем останется открытым, пока Вы не нажмете Enter.
Теперь, когда у Вас есть это, Вы могли бы хотеть перейти в Software & Updates
и отключите автоматическую проверку обновления, так как этот новый сценарий делает это для Вас.
Это достаточно легко, хотя мне нравится знать, какие обновления применяются так, я предпочитаю иметь последнее слово вручную.
Так или иначе существенный бит, который необходимо знать, - то, как выполнить a sudo
команда из сценария. Это может быть сделано с помощью:
echo password | sudo -S
или с более длительной явной, но эквивалентной версией
echo password | sudo -u root --stdin
где password
Ваш пароль, конечно, и аргумент -u
пользователь, который является корнем в этом случае.
Затем обратите внимание что Ваш .profile
скрипт удара запущен на логинах. Таким образом короче говоря, добавьте следующие команды к Вашему .profile
:
echo password | sudo -S apt-get update
echo password | sudo -S apt-get -y upgrade
где -y
флаг к apt-get
средства отвечают на да на все вопросы. Ваш .profile
должен был быть создан, когда Ваша учетная запись была сделана, но в случае, если она была удалена, можно скопировать значение по умолчанию с /etc/skel/.profile
.
Наконец, для безопасности, Вы, вероятно, захотите chmod 600 .profile
защищать Ваш пароль.