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

43

Я только что создал нового пользователя и его домашнюю папку, и мне нужно удалить его сейчас, а также я не могу найти папку «Загрузки», «Документы», «Изображения» и т. Д. Моего старого пользователя в файле « /home/olduser.Xauthority. Не знаю, как это удалено. Я выполнил startxкоманду нажатием, Alt+Ctrl+F3когда новый пользователь не смог войти в систему.

Я удалил пользователя, Users & Groupsно его домашняя папка не была удалена. Как я могу это исправить?

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

  • Как восстановить мои старые документы, файлы для скачивания, папку?

  • Если нет, то как мне создать новую / домашнюю папку и ссылку с ОС?

углублять
источник
Какой процесс вы использовали, чтобы добавить пользователя? Это выглядит как очень странное поведение.
Чак Р
Я использовал Users & Groupsприложение, загруженное извне из центра программного обеспечения (старые, не новые учетные записи пользователей)
углубление
Я не смог найти этот пакет в Центре программного обеспечения. Однако у меня есть пара дополнительных вопросов к вам: 1) Зашифрована ли ваша домашняя папка? 2) Если да, входили ли вы в качестве основного пользователя при проверке содержимого домашней папки?
Чак Р
1) НЕТ 2) ДА, Я ПРОВЕРЯЮ С ЭТОМ ПОЛЬЗОВАТЕЛЕМ, КОГДА Я ВХОДИЛ И СОБИРАЛ НИКАКИХ ПАПКИ, КАК ДОКУМЕНТЫ, ЗАГРУЗКИ, ETC
Углубиться
Очень странно. Вы помните имя определенного файла в этих папках? Вы можете найти его черезfind /home -type f -iname '[full filename]'
Чак R

Ответы:

52

перечислить всех пользователей:

cut -d: -f1 /etc/passwd

Чтобы удалить пользователя:

sudo userdel username

Чтобы удалить домашний каталог:

sudo rm -r /home/username

Чтобы добавить домашний каталог к ​​существующему пользователю:

создать домашний каталог

chown этот каталог для пользователя

sudo usermod -d /home/directory user
Nux
источник
Это немного сложнее, чем это. ОП сказал, что во время этого процесса с его исходной учетной записью что-то случилось. Поэтому я не советую, чтобы он удалял дом нового пользователя только до тех пор, пока данные не будут найдены (возможно, каким-то образом они были переданы новому пользователю - мы не знаем).
Чак Р
Впервые на Аскубунту я нашел конкретный ответ! Большое спасибо! :)
Углубление
Я выполняю sudo usermod -d / home / username username ПОЛУЧИЛ ЭТО ВЫХОД usermod: без изменений
углубление
@nux перезагрузился и работал отлично! Спасибо! :)
Углубиться
31

Вы можете использовать более продвинутую deluserкоманду:

sudo deluser --remove-home user

Вы также можете попробовать --remove-all-filesвариант. От man deluser:

By  default,  deluser  will  remove  the user without removing the home
directory, the mail spool  or any other files on the  system  owned  by
the  user.  Removing  the home directory and mail spool can be achieved
using the --remove-home option.

The --remove-all-files option removes all files on the system owned  by
the  user.  Note  that  if you activate both options --remove-home will
have no effect because all files including the home directory and  mail
spool are already covered by the --remove-all-files option.

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

Мур
источник
9
Примечание: это привело меня к БОЛЬШИМ неприятностям, так как оно вошло в мое монтирование NFS и удалило файлы, созданные тем же пользователем на других виртуальных машинах на файловом сервере NFS! К счастью, я остановил это, прежде чем проиграл многим, и экструдер тоже очень помог! (--remove-all-files)
FreeSoftwareServers
4

Лучший способ - использовать OPTIONSпредоставленную userdelкомандой.

sudo userdel -rfRZ <username>

Это будет:

  1. Принудительно удалить

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

  3. Примените изменения в каталоге CHROOT_DIR и используйте файлы конфигурации из каталога CHROOT_DIR.

  4. Удалите все сопоставления пользователей SELinux для входа в систему.

Надеюсь это поможет!

Рашабх Вадкар
источник
0

Если вы уже удалили пользователя с помощью обычного, userdel <username>а домашний каталог все еще существует, как у меня было в моем, вам просто нужно запуститьrm -rf /home/<username>

HCM
источник
2
-fОпция действительно опасна, если вы
введете
@ Damadam верно, и именно поэтому я полностью изложил аргумент. Чтобы быть в безопасности, его лучше опускать и запрашивать при удалении.
HCM