Существует ли команда, которая позволит мне изменить все пароли пользователя сразу? Я хотел бы найти более легкий способ выполнить это изменение для всех 32 пользователей на моей машине, и выполнение их по одному не эффективно. Я не возражаю об изменяющемся корне, я просто хочу изменить пароли для всех учетных записей, администраторов и основ.
Спасибо за помощь.
Ubuntu 16.04
Можно использовать команду chpasswd. Эта команда может только использоваться в качестве корня. Войдите команда chpasswd в командную строку затем вводят имя пользователя, читавшего паролем, сделайте это для каждого пользователя. Когда законченный тип ctrl+d.напр.
your-computer ~ # chpasswd
user1: password
user2: password
user3: password
Иначе то, что можно сделать, это должно иметь файл, содержащий все имена пользователей и пароли, интервал он тот же формат т.е. user1: пароль. создайте этот файл с помощью любого текстового редактора, такого как энергия или кошка. Пример при создании файла.
your-computer ~ # cat > bulkpasswords
user1: password
user2: password
user3: password
Затем выполните команду chpasswd (как корень) на файле:
your-computer ~ # chpasswd < bulkpasswords
Надеюсь, это поможет!
Источники: https://linoxide.com/linux-command/change-passwords-batch-mode-chpasswd/
_users=(fred mike joe)
for _user in "${_users[@]}"
do
USERPW=... # wherever you get that from
HASH=$(echo "$USERPW" | openssl passwd -1 -stdin)
# single quotes around hash, so coincidental
# stuff like $1 in the pw hash survives
sudo usermod --password '$HASH' $_user"
done