Какие шаги можно добавить в систему без использования useradd / adduser?

Я просматривал некоторые вопросы Linux и видел этот интересный вопрос.

Какие шаги можно добавить в систему без использования useradd / adduser ?

Единственный возможный способ, который приходит мне на ум,

  • Добавьте запись для пользователя в файл /etc/passwd .
  • Добавьте запись для группы в файл /etc/group .
  • Создайте домашний каталог для добавленного пользователя.
  • Задайте новый пароль пользователя с помощью команды passwd .

Я тестировал вышеуказанный подход, и он работал нормально.

Является ли это единственным возможным способом или существует какая-либо другая работа для достижения этого?

Возможный способ добавления пользователя более или менее похож на то, что я поставил в вопросе. Я получил этот подход отсюда .

Чтобы создать новую учетную запись вручную, выполните следующие действия:

Измените /etc/passwd с помощью vipw и добавьте новую строку для новой учетной записи. Будьте осторожны с синтаксисом. Не редактируйте напрямую с помощью редактора. vipw блокирует файл, так что другие команды не будут пытаться обновлять его одновременно. Вы должны сделать поле пароля «*», так что войти в него невозможно.

Аналогично, отредактируйте /etc/group с помощью vigr , если вам также нужно создать новую группу.

Создайте домашний каталог пользователя с помощью mkdir .

Скопируйте файлы из /etc/skel в новый домашний каталог.

Исправьте владельцы и разрешения с chown и chmod . Опция -R наиболее полезна. Правильные разрешения немного отличаются от одного сайта к другому, но обычно следуют следующие команды:

  • cd /home/newusername
  • chown -R username.group .
  • chmod -R go=u,go-w .
  • chmod go= .

Задайте пароль с паролем.

После того, как вы установите пароль на последнем шаге, учетная запись будет работать. Вы не должны устанавливать его, пока все остальное не будет выполнено, иначе пользователь может непреднамеренно войти в систему, пока вы все еще копируете файлы.