Удаляем пользователей в Linux: полное руководство для админов

Удаляем пользователей в Linux: полное руководство для админов

Уволился сотрудник? Аккаунт больше не нужен? Не оставляйте бреши в безопасности вашей системы! Незанятые учетные записи – это открытые двери для злоумышленников и беспорядок в файловой системе.

Мы покажем вам, как правильно и навсегда стереть пользователя с вашего Linux-сервера или рабочей станции. Вы научитесь не просто деактивировать аккаунт, а проводить полную зачистку.

Узнайте, как одним действием удалить пользователя вместе с его домашним каталогом и всеми файлами. Мы разберем две мощные команды: `deluser` для Debian/Ubuntu и `userdel` для RHEL/CentOS.

Но это еще не все! Простое удаление – это половина дела. Мы научим вас профессиональному подходу: как безопасно заблокировать учетную запись перед удалением, как найти и завершить все процессы пользователя и даже как создать резервную копию на всякий случай.

Вы получите пошаговые инструкции для терминала и узнаете, как сделать то же самое в графическом интерфейсе Ubuntu буквально в несколько кликов. Готовы навести идеальный порядок в вашей системе? Тогда погружайтесь в статью!


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

При удалении пользователей Linux также важно удалить их домашний каталог, чтобы освободить место на устройстве хранения для новых пользователей и их файлов. Сначала мы рассмотрим как удалить пользователя Linux с помощью терминала, потом поговорим о том, как это делается в графическом интерфейсе одного из самых популярных дистрибутивов - Ubuntu.


Содержание статьи

Что нам понадобится?

Перед тем как переходить к действиям в реальной среде нужно немного попрактиковаться, давайте создадим два пользователя losst и losst1, вместе с домашними каталогами, а затем уже будем их удалять:

adduser losst
passwd losst

adduser losst1
passwd losst1

Удаляем пользователей в Linux: полное руководство для админов

Здесь команда adduser используется для создания учетной записи пользователя, а passwd для создания пароля.

Удаление пользователя Linux в терминале

Давайте рассмотрим, как удалить пользователя Linux в терминале. Для этого используется команда - deluser в Debian и производных системах, а в RHEL - userdel. Рассмотрим подробнее эти две утилиты.

Описание deluser

Синтаксис команды deluser очень простой:

$ deluser параметры пользователь

Настройки команды deluser находятся в файле /etc/deluser.conf, среди прочих настроек там указанно что нужно делать с домашней папкой и файлами пользователя.  Вы можете посмотреть и изменить эти настройки выполнив команду:

vi /etc/deluser.conf

Рассмотрим подробнее эти настройки:

  • REMOVE_HOME - удалять домашний каталог пользователя
  • REMOVE_ALL_FILES - удалить все файлы пользователя
  • BACKUP - выполнять резервное копирование файлов пользователя
  • BACKUP_TO - папка для резервного копирования
  • ONLY_IF_EMPTY - удалить группу пользователя если она пуста.

Эти настройки определяют поведение утилиты по умолчанию, когда выполняется удаление пользователя, конечно, их можно переопределить используя параметры для команды.

Поддерживаются такие параметры, они аналогичны настройкам, но тут больше вариантов:

  • --system - удалять только если это системный пользователь
  • --backup - делать резервную копию файлов пользователя
  • --backup-to - папка для резервных копий
  • --remove-home - удалять домашнюю папку
  • --remove-all-files - удалять все файлы пользователя в файловой системе

Описание userdel

Утилита userdel работает немного по-другому, файла настроек здесь нет, но есть опции, с помощью которых можно сообщить утилите что нужно сделать. Синтаксис аналогичный:

$ userdel параметры пользователь

  • -f, --force - принудительное удаление, даже если пользователь еще залогинен.
  • -r, --remove - удалить домашнюю директорию пользователя и его файлы в системе.
  • -Z - удалить все SELinux объекты для этого пользователя.

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

Блокировка учетной записи пользователя

Для блокировки учетной записи пользователя можно использовать утилиту passwd. Это запретит пользователю доступ к системе и предотвратит запуск новых процессов. Выполните команду passwd с параметром --lock:

passwd --lock losst

Удаляем пользователей в Linux: полное руководство для админов

Уничтожить все запущенные процессы пользователя

Теперь давайте найдем все запущенные от имени пользователя процессы и завершим их. Найдем процессы с помощью pgrep:

pgrep -u losst

Посмотреть подробнее, что это за процессы можно передав pid, каждого из них в команду ps, вот так:

ps -f --pid $(pgrep -u losst)

Удаляем пользователей в Linux: полное руководство для админов

Теперь, когда вы убедились, что там нет ничего важного, можно уничтожить все процессы с помощью команды killall:

Killall -9 -u losst

Опция -9 говорит программе, что нужно отправить этим процессам сигнал завершения SIGKILL, а -u задает имя пользователя.

В основанных на Red Hat системах, для использования killall необходимо будет установить пакет psmisc:

sudo yum install psmisc

Резервное копирование данных пользователя

Это вовсе не обязательно, но для серьезного проекта не будет лишним создать резервную копию файлов пользователя, особенно если там могли быть важные файлы. Для этого можно использовать, например, утилиту tar:

tar jcvf /user-backups/losst-backup.tar.bz2 /home/losst

Удаление учетной записи пользователя

Теперь, когда все подготовлено, начинаем удаление пользователя linux. На всякий случай укажем явно, что нужно удалять файлы пользователя и домашнюю директорию. Для Debian:

deluser --remove-home losst

Для Red Hat:

userdel --remove losst

Если нужно удалить все файлы, принадлежащие пользователю в системе используйте опцию --remove-all-files, только будьте с ней осторожны, так и важные файлы можно затереть:

deluser --remove-all-files losst

Теперь пользователь полностью удален, вместе со своими файлами и домашней директорией из вашей системы.

Удаление пользователя в Ubuntu

Как я и говорил, дальше рассмотрим как удалить пользователя в Ubuntu с помощью графического интерфейса. Это намного проще того, что было описано выше, но менее эффективнее.

Откройте Параметры системы:

Удаляем пользователей в Linux: полное руководство для админов

 

Откройте пункт Пользователи:

Удаляем пользователей в Linux: полное руководство для админов

 

Как видите, сейчас все действия недоступны, и нарисованы серым цветом. Чтобы их активировать нажмите кнопку Разблокировать и введите пароль пользователя.

Удаляем пользователей в Linux: полное руководство для админов

Теперь для того чтобы удалить пользователя в linux достаточно кликнуть по нему мышкой, а затем нажать внизу страницы нажать кнопку Удалить пользователя:

Удаляем пользователей в Linux: полное руководство для админов

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

Удаляем пользователей в Linux: полное руководство для админов

 

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

Выводы

Удалить пользователя в Linux не так уж сложно, независимо от того где это нужно сделать, на сервере или домашнем компьютере. Конечно, графический интерфейс более удобен, но в терминал, как всегда, предлагает больше возможностей. Если у вас есть еще какие-нибудь идеи по этому поводу, напишите в комментариях!

Оставить комментарий


Кликните на изображение чтобы обновить код, если он неразборчив