- Как в Linux удалить пользовательский аккаунт вместе с домашней директорией
- Блокирование пользовательского аккаунта в Linux
- Поиск и завершение всех запущенных процессов пользователя
- Резервное копирование данных пользователя перед удалением
- Удаление аккаунта и файлов пользователя
- Как удалять пользователей в Linux (команда userdel)
- Синтаксис команды userdel
- Как удалить пользователя в Linux
- Выводы
- Создание, редактирование и удаление пользователей в Linux
- Создание
- Ключи (опции)
- Как удалить пользователя в Linux
- Синтаксис
- userdel
- deluser
- Параметры утилиты лежат в файле /etc/deluser.conf
- Примеры
- Вывод
- Первый шаг в мир линукс
- Изучайте linux вместе с нами
- Как удалить учетные записи пользователей с домашним каталогом в Linux
- Удаление учетной записи пользователя с его домашним каталогом
- Блокировка учетных записей в Linux
- Найти и убить все запущенные процессы пользователя
- Резервное копирование данных пользователя перед удалением
- Удалить учетную запись пользователя и файлы
Как в Linux удалить пользовательский аккаунт вместе с домашней директорией
Оригинал: How to Delete User Accounts with Home Directory in Linux
Автор: Aaron Kili
Дата публикации: 4 декабря 2015 года
Перевод: А. Кривошей
Дата перевода: ноябрь 2016 г.
Системному администратору Linux может потребоваться удалить пользовательский аккаунт, который долгое время не используется, или если пользователь покинул компанию, либо по каким-либо другим причинам.
При удалении аккаунта пользователя в Linux также важно удалить его домашнюю директорию, чтобы освободить дисковое пространство.
1. Для демонстрационных целей сначала я создам два пользовательских аккаунта с домашними директориями в своей системе с помощью команды adduser — для пользователей tecmint и linuxsay
Вместо команды adduser можно использовать команду useradd, они предназначены для одного и того же.
2. Теперь давайте посмотрим, как удалить аккаунт пользователя в Linux с помощью команд deluser (для Debian и его производных) и userdel (для систем на базе RedHat/CentOS)
Директивы в конфигурационном файле для команд deluser и userdel определяют, как они работают с пользовательскими файлами и директориями.
Давайте посмострим на конфигурационный файл для команды deluser, расположенный в /etc/deluser.conf для производных Debian, таких как Ubuntu, Kali, Mint; и расположенный в /etc/login.defs для RHEL/CentOS/Fedora.
Значения в этих файлах заданы по умолчанию и могут быть изменены в соответствии с вашими нуждами.
3. Если пользователь авторизован на сервере, он пользуется различными службами и запускает разные процессы. Необходимо помнить, что полностью удалить пользователя можно только тогда, когда он не авторизован на сервере.
Блокирование пользовательского аккаунта в Linux
Сначала заблокируем пользовательский аккаунт, чтобы пользователь не имел доступа в систему. Это предотвратит запуск процессов в системе от его имени. Для этого используется команда passwd с ключом –lock:
Поиск и завершение всех запущенных процессов пользователя
Далее необходимо найти все работающие процессы этого пользователя и завершить их, определив PID процессов, принадлежащих нашему пользователю:
Затем вы можете вы можете вывести список процессов с более подробной информацией:
После того, как вы нашли все запущенные процессы пользователя, вы можете завершить их с помощью команды killall:
-9 — это номер для сигнала SIGKILL, вместо него можно использовать ключ -KILL.
Замечание: в последних релизах RedHat/CentOS 7.x и Fedora 21+ вы можете получить следующую ошибку:
Для ее предотвращения необходимо установить соответствующий пакет, как показано ниже:
Резервное копирование данных пользователя перед удалением
Далее вы можете сделать резервную копию пользовательских файлов, если нужно. Для создания архива с резервной копией домашней директории пользователя я использовал утилиту tar:
Удаление аккаунта и файлов пользователя
Теперь вы можете безопасно удалить пользователя вместе с его домашней директорией. Для удаления всех файлов пользователя предназначена опция —remove-all-files:
Источник
Как удалять пользователей в Linux (команда userdel)
Linux — это многопользовательская система, что означает, что с одной и той же системой одновременно могут взаимодействовать несколько человек. Как системный администратор, вы несете ответственность за управление пользователями и группами системы, создавая новых пользователей и распределяя их по разным группам .
Иногда вам может потребоваться удалить учетную запись пользователя. Возможно, из-за того, что пользователь ушел из организации, или она была создана для определенной службы, которая больше не работает в системе.
В Linux вы можете удалить учетную запись пользователя и все связанные с ней файлы с помощью команды userdel .
В этом руководстве рассматривается команда userdel и ее параметры.
Синтаксис команды userdel
Синтаксис команды userdel следующий:
Чтобы удалить пользователей с помощью команды userdel , вам необходимо войти в систему как root или как пользователь с доступом sudo .
Как удалить пользователя в Linux
Чтобы удалить учетную запись username с именем username с помощью команды userdel вы должны выполнить:
При вызове команда считывает содержимое файла /etc/login.defs . Свойства, определенные в этом файле, переопределяют поведение userdel по умолчанию. Если для параметра USERGROUPS_ENAB в этом файле задано значение yes , userdel удаляет группу с тем же именем, что и пользователь, только если в этой группе нет других пользователей.
Команда удаляет записи пользователей из файлов /etc/passwd и /etc/shadow, .
В большинстве дистрибутивов Linux при удалении учетной записи пользователя с помощью userdel домашний каталог пользователя и каталог спула почты не удаляются.
Используйте параметр -r ( —remove ), чтобы заставить userdel удалить домашний каталог пользователя и почтовый ящик:
Приведенная выше команда не удаляет пользовательские файлы, расположенные в других файловых системах. Вам придется искать и удалять файлы вручную.
Если пользователь, которого вы хотите удалить, все еще находится в системе или если есть запущенные процессы , принадлежащие этому пользователю, команда userdel не позволяет удалить пользователя.
В этой ситуации рекомендуется выйти из системы и убить все запущенные процессы пользователя с помощью команды killall :
После этого вы можете удалить пользователя.
Другой вариант — использовать параметр -f ( —force ), который сообщает userdel принудительно удалить учетную запись пользователя, даже если пользователь все еще находится в системе или если есть запущенные процессы, принадлежащие пользователю.
Выводы
В этом руководстве вы узнали, как удалить учетные записи пользователей в Linux с помощью команды userdel . Тот же синтаксис применяется к любому дистрибутиву Linux, включая Ubuntu, CentOS, RHEL, Debian, Fedora и Arch Linux.
userdel — это утилита низкого уровня, пользователи Debian и Ubuntu, скорее всего, будут использовать более дружелюбную команду deluser .
Не стесняйтесь оставлять комментарии, если у вас есть вопросы.
Источник
Создание, редактирование и удаление пользователей в Linux
В данной инструкции рассказывается о работе с пользователями Linux через терминал (с применением командной строки).
Создание
* опции не являются обязательными при создании пользователя.
* в данном примере создается учетная запись dmosk.
Для учетной записи стоит сразу создать пароль:
* после ввода, система попросит ввести пароль дважды.
Ключи (опции)
Ключ | Описание и примеры |
---|---|
-b | Задает базовый каталог для домашнего каталога useradd dmosk -b /var/home |
-c | Создает комментарий для описания учетной записи useradd dmosk -c «Пользователя для управления системой» |
-d | Полный путь к домашнему каталогу пользователя useradd dmosk -d /home/newuser |
-D | Позволяет показать или изменить настройки по умолчанию, которые будут применяться при последующем создании пользователей useradd dmosk -Ds /bin/bash |
-e | Дата, после которой учетная запись устареет. useradd dmosk -e 2017-12-31 |
-f | Число дней, после которого учетная запись с устаревшим паролем будет заблокирована useradd dmosk -f 0 |
-g | Задает основную группу useradd dmosk -g altternativegroup |
-G | Задает дополнительные группы useradd dmosk -G wheel |
-k | Путь к источнику скелета (файлы с шаблонами для нового пользователя) useradd dmosk -k /var/skel |
-m | При создании пользователя создать домашний каталог useradd dmosk -m |
-M | Не создавать домашний каталог useradd dmosk -M |
-N | Не создавать основную группу с таким же именем, как у пользователя useradd dmosk -N |
-o | Разрешает создание учетной записи с повторяющимся UID useradd dmosk -u 15 -o |
-p | Задает пароль useradd dmosk -p pass |
-r | Системная учетная запись (без домашнего каталога и с идентификаторами в диапазоне SYS_UID_MIN — SYS_UID_MAX из файла /etc/login.defs) useradd dmosk -r |
-R | Каталог, в который выполняется chroot useradd dmosk -R /var/chroot/home |
-s | Путь до оболочки командной строки useradd dmosk -s /bin/csh |
-u | Задает UID useradd dmosk -u 666 |
-U | Имя группы будет таким же, как у пользователя useradd dmosk -U |
Актуальный список ключей можно получить командой useradd -h.
Источник
Как удалить пользователя в Linux
Операционная система Linux является многопользовательской системой. Это значит, что несколько человек могут взаимодействовать с ОС. Права доступа у различных пользователей одного персонального компьютера могут быть разными. Задача системного администратора состоит в том, чтобы следить за аккаунтами пользователей, включать и исключать их из определенных групп. Но помимо этих задач может возникнуть необходимость стереть запись бывшего сотрудника с компьютера вообще.
В ОС Linux стереть юзера утилитой – userdel. Пользователи некоторых дистрибутивов могут применять более понятную команду — deluser.
Синтаксис
Для удаления пользователей в операционных системах Линукс, используются две похожие команды userdel в Centos и deluser в Debian.
userdel
- —f или —force — принудительное удаление.
- -h или —help — справочная информация.
- -r или —remove — стереть домашний каталог юзера.
- -Z или —selinux-user стереть SELinux объекты юзера.
deluser
Параметры утилиты лежат в файле /etc/deluser.conf
- REMOVE_HOME — очистить домашний каталог.
- REMOVE_ALL_FILES — очистить все файлы.
- BACKUP — бэкап файлов.
- BACKUP_TO — папка для бэкапа.
- ONLY_IF_EMPTY — очистить группу юзера при условии, что папка пустая.
Примеры
Для примера, удалим пользователя polzovatel
При выполнении, утилита обратится к login.defs, который находится по адресу /etc/login.defs. Значения, записанные в данном файле, определяют начальные опции программы userdel. Если переменная USERGROUPS_ENAB имеет значение «yes», то будет удалена группа, с пользовательским именем, которое системный администратор вбил в команду. Но при условии, что больше в этой группе нет других пользователей.
Информация о пользователе будет также удалена из файлов:
Следует учитывать то, что в большинстве дистрибутивов Linux команда userdel не стирает домашний каталог и почтовый спул пользователя.
Для того, чтобы это исправить необходимо передать параметр –r. Выглядеть такая операция будет так:
userdel –r polzovatel
Но даже в таком виде утилита не удалит файлы из других файловых систем. Сделать это придётся вручную.
Если человек, запись которого необходимо удалить, зашёл в ОС, то уничтожить его аккаунт привычным способом не получится. Здесь существует два возможных пути решения:
- Выйти из ОС и принудительно закрыть все активные юзерские программы. Для этого понадобится утилита killall – sudo killall –u polzovatel. По выполнению этой команды, можно удалять учетку пользователя.
- Передать параметр –f утилите userdel. Эта опция позволяет в принудительном режиме избавиться от аккаунта, даже если человек залогинился или имеются активные пользовательские программы.
userdel –f polzovatel
Вывод
Как видите, стереть учетку юзера в Linux очень просто. Для этого достаточно знать, как вводятся простейшие команды в терминал, и как им передавать различные параметры. Даже начинающий сисадмин с лёгкостью справится с этим.
Источник
Первый шаг в мир линукс
Изучайте linux вместе с нами
Как удалить учетные записи пользователей с домашним каталогом в Linux
Как системному администратору в Linux, вам может потребоваться удалить учетную запись пользователя через некоторое время, по причине того, что пользователь может покинуть организацию или компанию или по любым другим причинам. При удалении учетных записей пользователей в системе Linux также важно удалить их домашний каталог, чтобы освободить место на устройствах хранения для новых пользователей системы или других служб.
Удаление учетной записи пользователя с его домашним каталогом
В целях демонстрации сначала я начну с создания в моей системе двух учетных записей пользователей, таких как alex и ehan, с их домашними каталогами /home/alex и /home/ehan соответственно с помощью команды adduser.
Я использовал команду adduser для создания учетных записей пользователей в Linux. Вы также можете использовать команду useradd, они выполняют одинаковые функции.
Для удаления учетных записей пользователей в Linux можем воспользоваться командой deluser (для Debian и его производных) и userdel (для систем на основе RedHat/CentOS).
Директивы внутри файла конфигурации для команд deluser и userdel определяют, как он будет обрабатывать все пользовательские файлы и каталог при запуске команды.
Значения в этой конфигурации являются значениями по умолчанию и могут быть изменены в соответствии с вашими потребностями.
Чтобы удалить пользователя с домашним каталогом, вы можете использовать расширенный способ.
Важно отметить, что пользователя можно эффективно удалить только тогда, когда он не вошел на сервер. Так, как когда пользователи входят на сервер, они используют службы и запускают разные процессы.
Блокировка учетных записей в Linux
Начните с блокировки пароля учетной записи пользователя, чтобы у пользователя не было доступа к системе. Это не позволит пользователю запускать процессы в системе.
Команда passwd, включающая параметр –lock, может помочь вам добиться этого:
Найти и убить все запущенные процессы пользователя
Затем выясните все запущенные процессы учетной записи пользователя и уничтожьте их, определив PID ( идентификаторы процессов ) процессов, принадлежащих пользователю, используя:
Затем вы можете перечислить промежуточные имена процессов имени пользователя, PID, PPID (идентификаторы родительского процесса), используемый терминал, состояние процесса, путь команды в полном формате с помощью следующей команды:
Как только вы найдете все запущенные процессы пользователя, вы можете использовать команду killall, чтобы убить эти запущенные процессы.
-9 это номер сигнала для SIGKILL сигнала или использовать -KILL вместо -9
-u определяет имя пользователя
Примечание . В последних выпусках версий RedHat / CentOS 7.x и Fedora 21+ вы получите сообщение об ошибке:
-bash: killall: команда не найдена
Чтобы исправить такую ошибку, вам нужно установить пакет psmisc, как показано:
Резервное копирование данных пользователя перед удалением
Затем вы можете создавать резервные копии файлов пользователей, это может быть необязательно, но рекомендуется для использования в будущем, когда возникнет необходимость в просмотре данных и файлов учетной записи пользователя.
Я использовал утилиты tar для создания резервной копии домашнего каталога пользователей следующим образом:
Удалить учетную запись пользователя и файлы
Теперь вы можете безопасно удалить пользователя вместе с его домашним каталогом, чтобы удалить все пользовательские файлы в системе, используйте —remove-all-files опцию в команде ниже:
Источник