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

Система обновлений - это вещь Debian, но Gnome работает во многих других дистрибутивах, поэтому у нее есть свой собственный способ определения предпочтительных приложений.

Вы можете установить терминал по умолчанию с помощью утилиты gnome-default-applications-properties , также доступны через gnome-control-center в качестве предпочтительных приложений.

В качестве альтернативы вы можете установить раздел реестра gconf /desktop/gnome/applications/terminal/exec.

Однако не гарантируется, что все приложения, предоставляемые Gnome, например, nautilus, будут соблюдать эту настройку или, скорее, использовать свои собственные настройки.

4
задан 8 May 2017 в 18:34

4 ответа

Как вы знаете, возможно создать домашний каталог, отличный от «username». Например, у меня может быть пользователь с именем «john», в котором находится его домашний каталог: /home/jack.

Если вы уже знаете имя пользователя, вы можете запустить:

echo ~username

Он напечатает этот конкретный домашний каталог пользователя. Вы также можете запустить:

ls -ld /home/u942

или

stat -c %U /home/u942

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

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

Чтобы узнать это, вы можете сделать что-то вроде:

id -un `stat -c %U /home/u942`

Если он ничего не вернул, это означает, что владелец не существует в вашей системе. просто удалите этот каталог. Если вы считаете, что там нет важного файла.

3
ответ дан 18 July 2018 в 13:39

Для пользователя root / sudo можно просто создавать папки в /home, которые не связаны с какой-либо учетной записью пользователя. Вот почему ls /home не является хорошей командой для проверки пользователей.

Чтобы просмотреть всех пользователей, у которых есть домашняя папка ниже «/ home», вы можете запустить:

getent passwd | grep "/home" | cut -d: -f1

Список всех пользователей: getent passwd | cut -d: -f1

Проверьте, существует ли пользователь u942: getent passwd | grep u942. Если вы не получаете выход, такой пользователь не существует.

Если выход пуст, вы можете удалить эту папку (возможно, вам понадобится sudo) rm -Rf /home/u942. Но дважды проверьте содержимое папки перед ее удалением.

8
ответ дан 18 July 2018 в 13:39

Как вы знаете, возможно создать домашний каталог, отличный от «username». Например, у меня может быть пользователь с именем «john», в котором находится его домашний каталог: /home/jack.

Если вы уже знаете имя пользователя, вы можете запустить:

echo ~username

Он напечатает этот конкретный домашний каталог пользователя. Вы также можете запустить:

ls -ld /home/u942

или

stat -c %U /home/u942

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

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

Чтобы узнать это, вы можете сделать что-то вроде:

id -un `stat -c %U /home/u942`

Если он ничего не вернул, это означает, что владелец не существует в вашей системе. просто удалите этот каталог. Если вы считаете, что там нет важного файла.

3
ответ дан 24 July 2018 в 20:13

Для пользователя root / sudo можно просто создавать папки в /home, которые не связаны с какой-либо учетной записью пользователя. Вот почему ls /home не является хорошей командой для проверки пользователей.

Чтобы просмотреть всех пользователей, у которых есть домашняя папка ниже «/ home», вы можете запустить:

getent passwd | grep "/home" | cut -d: -f1

Список всех пользователей: getent passwd | cut -d: -f1

Проверьте, существует ли пользователь u942: getent passwd | grep u942. Если вы не получаете выход, такой пользователь не существует.

Если выход пуст, вы можете удалить эту папку (возможно, вам понадобится sudo) rm -Rf /home/u942. Но дважды проверьте содержимое папки перед ее удалением.

8
ответ дан 24 July 2018 в 20:13
  • 1
    Команда rm не будет работать, вместо этого удалите папку с использованием содержимого rm -rf /home/u942. Примечание. Будьте осторожны, так как с флагом -rf вы можете легко удалить что-либо. – Michal Polovka 8 May 2017 в 11:46
  • 2
    вы правы, спасибо. Я обновил ответ – RoVo 8 May 2017 в 11:47
  • 3
    Фактически вы должны использовать getent passwd вместо чтения /etc/passwd вручную. В частности, чтобы увидеть, является ли u942 пользователем в системе: getent passwd u942. – muru 8 May 2017 в 11:50
  • 4
    Почему & quot; должен & quot; I. Нет проблем с / etc / passwd. getent passwd дает мне также нелокальные пользователи, которых я могу или не хочу. – RoVo 8 May 2017 в 11:54
  • 5
    Вы указали причину: «нелокальные пользователи». Нет никакой гарантии, что у нелокальных пользователей также есть не локальные домашние каталоги. & quot; Если вы не получаете выход, такой пользователь не существует & quot; не обязательно верно, если вы читаете только /etc/passwd. – muru 8 May 2017 в 12:01

Другие вопросы по тегам:

Похожие вопросы: