- Шаг 1. Убедитесь, что пользователь не в системе
- Шаг 2. Заблокируйте доступ к учетной записи
- Шаг 3. Завершите все процессы пользователя
- Шаг 4. Очистите задания cron
- Шаг 5. Заархивируйте домашний каталог пользователя перед удалением (опционально)
- Шаг 6. Удалите пользователя
- Как удалить пользователя из группы
- Как удалить домашнюю директорию
- Инструкция для графической версии
- Заключение
Когда системой пользуются несколько человек, на сервере со временем накапливаются лишние учетные записи: сотрудники уходят, тестовые аккаунты теряют актуальность, а временные пользователи завершают свою работу. Оставлять такие записи — риск для безопасности и порядка в системе.
В этом руководстве рассказываем, как правильно удалять пользователей в Ubuntu.
Шаг 1. Убедитесь, что пользователь не в системе
Перед удалением важно проверить, активен ли пользователь в данный момент.
Чтобы увидеть список пользователей, подключенных к серверу, используйте команду:
Или:
В полученном списке найдите имя пользователя, которого планируете удалить (например, johndoe). Если пользователь отображается среди активных, переходите к проверке его процессов.
Для этого выполните команду:
Вы увидите список процессов, запущенных этим пользователем. Пример вывода:
1841 tty2 00:00:00 gdm-wayland-ses
1842 tty2 00:00:01 gnome-session-
В этом случае у пользователя johndoe запущены процессы gdm-wayland-ses и gnome-session-b. Значит, учетная запись активна, и перед удалением необходимо завершить все связанные с ней процессы.
Шаг 2. Заблокируйте доступ к учетной записи
Перед тем как завершить процессы пользователя, рекомендуется заблокировать его доступ к системе. Это нужно, чтобы предотвратить повторный вход в систему, пока вы выполняете дальнейшие действия.
В Linux пароли пользователей хранятся в зашифрованном виде в файле /etc/shadow. Он доступен только администратору (root) и содержит не только хеши паролей, но и информацию о сроке их действия.
Чтобы ограничить доступ к учетной записи, используйте команду:
Где user — имя блокируемого пользователя.
При выполнении этой команды утилита passwd добавляет в начало зашифрованного пароля в файле /etc/shadowспециальный символ — восклицательный знак (!). После этого система не сможет сопоставить введенный пользователем пароль с хешом, и вход в систему для этой учетной записи станет невозможен.
Шаг 3. Завершите все процессы пользователя
Ubuntu не позволит удалить учетную запись пользователя, если за ним числятся работающие процессы. Поэтому следующий шаг — завершить все процессы, запущенные от имени этого пользователя.
Есть несколько способов справиться с этой задачей:
Завершить по PID — kill:
Сначала определите идентификатор нужного процесса (PID) командой:
В колонке PID увидите идентификаторы процессов:
Для завершения определенного процесса выполните:
Где 1178 — PID процесса.
Завершить по названию — pkill:
Если нужно завершить все процессы с определенным именем, используйте:
В данном примере будут завершены все процессы nano, запущенные пользователем user.
Завершить все процессы пользователя — killall:
Самый быстрый и надежный способ — завершить абсолютно все процессы пользователя одной командой:
После завершения всех процессов снова проверьте активных пользователей:
Если имя пользователя больше не отображается в списке, можно переходить к следующему шагу.
Шаг 4. Очистите задания cron
Перед удалением пользователя в Ubuntu важно остановить все задания, запущенные через планировщик cron от имени этой учетной записи. Если этого не сделать, на сервере могут продолжить работать автоматические скрипты, уже не привязанные к какому-либо активному пользователю.
Для удаления всех cron-заданий пользователя воспользуйтесь командой:
Где user — имя удаляемого пользователя.
Шаг 5. Заархивируйте домашний каталог пользователя перед удалением (опционально)
Перед удалением учетной записи иногда возникает необходимость сохранить домашний каталог пользователя. В нем могут находиться важные документы, скрипты или рабочие проекты, которые могут понадобиться самому сотруднику или компании.
В Ubuntu есть возможность удалить пользователя, не трогая его домашний каталог, но это не всегда лучшая идея. Есть две основные причины:
- Занятое место на диске. Домашние каталоги могут занимать значительный объем, если пользователь работал с большими файлами или данными. Скопление старых папок в /home со временем приведет к нехватке свободного пространства.
- Актуальность данных. Для удобства рекомендуется поддерживать соответствие между активными учетными записями и каталогами в /home. Это упростит администрирование и поможет избежать путаницы.
Если требуется сохранить данные, можно создать архив домашнего каталога с помощью утилиты tar. Допустим, имя пользователя — user1, а архив мы хотим поместить в директорию /mnt/backup:
Где:
- -c — создать архив;
- -v — выводить список файлов в процессе архивации;
- -z — использовать сжатие gzip (расширение .gz);
- -f — указывает, что далее идет имя итогового архива.
Первым аргументом указывается место хранения архива (например, /mnt/backup/user1_home.tar.gz), а вторым — путь к архивируемой папке (/home/user1).
После создания архива его можно безопасно скопировать на внешний носитель или сетевое хранилище.
Теперь можно переходить к удалению учетной записи пользователя.
Шаг 6. Удалите пользователя
В Ubuntu для этого используется утилита deluser. Если выполнить команду без дополнительных параметров, будет удалена только сама учетная запись, а файлы пользователя останутся на месте.
Как можно использовать deluser:
- Удалить пользователя без удаления файлов:
sudo deluser user
- Удалить пользователя и все его файлы, включая домашнюю директорию:
sudo deluser --remove-all-files user
- Удалить пользователя и только его домашнюю директорию:
sudo deluser --remove-home user
- Удалить пользователя с созданием резервной копии домашнего каталога и почты (архив будет сохранен в корневой папке):
sudo deluser --backup user
- Создать резервную копию домашнего каталога и почты в указанной папке:
sudo deluser --backup-to /путь/к/папке user
Где user — имя удаляемого пользователя.
Как удалить пользователя из группы
Если нужно удалить пользователя из группы, но саму учетную запись оставить:
Где group — название группы, а user — имя пользователя.
Как удалить домашнюю директорию
При необходимости можно удалить домашнюю директорию пользователя с помощью команды:
sudo rm -rf /home/user
Важно! Она безвозвратно удаляет каталог.
Инструкция для графической версии
Все, что было описано выше, относится к удалению пользователей через терминал Ubuntu. Однако, если вы работаете в системе с графическим интерфейсом (например, Ubuntu Desktop), выполнить задачу можно еще проще — буквально в несколько кликов:
- Откройте Settings, перейдите в System и найдите раздел Users.
- Чтобы внести изменения, потребуется перейти в режим администратора: нажмите на кнопку Unlock в правом верхнем углу окна и введите пароль суперпользователя.
- В списке пользователей выберите учетную запись, которую хотите удалить.
- После этого станет активной кнопка Remove User. Нажмите ее.
- Появится диалоговое окно, в котором система предложит либо полностью удалить учетную запись с домашним каталогом пользователя, либо оставить домашнюю папку на диске. Выберите подходящий вариант.
- Подтвердите действие, нажав Remove, — пользователь будет удален из системы.
Заключение
Контроль над учетными записями — важный момент в поддержании безопасности и порядка в системе. Регулярная проверка и своевременное удаление неактуальных аккаунтов помогает предотвратить возможные риски и оптимизировать использование ресурсов сервера.
Удалить пользователя в Ubuntu можно с помощью команды deluser. Важно предварительно заблокировать аккаунт, завершить все его процессы и очистить задания cron. Если нужно сохранить данные — стоит сделать резервную копию домашней директории. Эти простые шаги помогут быстро и безопасно управлять учетными записями в системе.