Ответ
Для создания пользователя в Linux используется команда useradd. В DevOps-практике это часто делается через системы управления конфигурацией (Ansible, Puppet) или скрипты инициализации инфраструктуры.
Базовый пример через командную строку:
# Создать пользователя с домашним каталогом
sudo useradd -m username
# Установить пароль
sudo passwd username
Ключевые опции useradd для DevOps:
-m— создать домашний каталог (/home/username). Критично для развертывания пользовательских конфигов.-s /bin/bash— задать оболочку (например,/bin/bashили/sbin/nologinдля служебных аккаунтов).-G sudo,docker,developers— добавить пользователя в дополнительные группы для предоставления прав (например,sudoдля администрирования,dockerдля работы с контейнерами).-p— задать зашифрованный пароль (используется в автоматических сценариях, но с осторожностью из-за безопасности).
Пример создания пользователя для CI/CD-агента:
sudo useradd -m -s /bin/bash -G docker,jenkins ci-user
# Устанавливаем пароль без интерактивного ввода (хэш из /etc/shadow)
echo 'ci-user:$6$rounds=656000$salt$hashed_password' | sudo chpasswd -e
Удаление пользователя (например, при депровижне):
sudo userdel -r username # Ключ -r удаляет домашний каталог и почту
DevOps-контекст: В реальных проектах создание пользователей автоматизируется. Например, в Ansible это выглядит так:
- name: Create application user
user:
name: appuser
shell: /bin/bash
groups: docker
append: yes
generate_ssh_key: yes
ssh_key_bits: 2048