Если вам нужен еще один пользователь root, но с другим именем и паролем, вы должны создать пользовательскую sybase, присвоив ему UID=0 и GUID=0 (или изменить его на 0 в /etc/passwd для существующего пользователя).
Однако это экстремальная ситуация, и есть другие лучшие методы (использование sudo). Эти ограничения были введены по уважительной причине.
Что, если у меня есть x серверов, которые все одинаковы, и я хочу выполнить одну и ту же команду на каждом из них? Как я могу сделать это с помощью одной или двух команд?
Вы можете запустить скрипт, который получает в качестве параметра имя хоста и выполняет те же команды для имени хоста в параметре
Настоятельно рекомендуется использовать ssh, и соединение ssh будет без пароля
см. этот ответ
Похоже, вам нужен инструмент подготовки, такой как ansible , saltstack , chef или puppet .
Ansible работает очень похоже на то, что вы хотите, вы запускаете его локально, и он подключается к удаленным серверам по ssh для выполнения команд (нет необходимости устанавливать агент на удаленных серверах, как другие продукты, перечисленные выше ). Например, имея список серверов в /etc/ansible/hosts
, вы можете запустить ansible all -a "/bin/echo hello"
, чтобы выполнить данную команду на всех серверах. Полное руководство здесь .
Но в дополнение к этому вы можете начать создавать сборники полезных команд, которые позволят вам повторно запускать их на хостах в будущем и работать над автоматизацией управления вашей инфраструктурой.
В качестве альтернативы вы можете использовать такие команды, как pssh для параллельного запуска пакетных команд или использовать синхронизацию -панели функции tmux для интерактивного запуска команд на нескольких хостах.