Как скрыть учетную запись на экране входа в KDE?

Как скрыть учетную запись на экране входа в KDE?

Я запускаю виртуальную машину CentOS 7 на своем ноутбуке и использую KDE (версия 4.14.8). Эта виртуальная машина служит в качестве контрольной вышки Ansible, из которой мои описания Ansible применяются к другим (headless) виртуальным машинам, которые я использую на том же ноутбуке.

Моя проблема в том, что графический экран входа показывает мою учетную запись, а также учетную запись ansible. Я думал, что системные учетные записи не будут отображаться в этом списке, поэтому я создал ansibleкак системную учетную запись. Но вот отрывок из моего /etc/passwdфайла:

hg:x:1002:1002:Mercurial SCM:/home/hg:/bin/bash
saned:x:986:980:SANE scanner daemon user:/usr/share/sane:/sbin/nologin
backupscript:x:1003:1004:Data backup script:/home/backupscript:/sbin/nologin
ansible:x:985:979::/home/ansible:/bin/bash

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

Как скрыть учетную запись на экране входа?

решение1

В Kubuntu вы можете добавить строкуHideUsers=ansibleв/etc/sddm.conf.d/kde_settings.confПод[Пользователи]раздел.

Автоматизировано:

(
  username=ansible
  sudo mkdir -p /etc/sddm.conf.d
  echo "[Users]" | sudo tee /etc/sddm.conf.d/hide_${username}.conf
  echo "HideUsers=$username" | sudo tee -a /etc/sddm.conf.d/hide_${username}.conf
)

Надеюсь, это будет полезно.

решение2

Чтобы скрыть учетную запись пользователя, вы можете добавитьHideUsers=ansibleв /etc/sddm.conf в сеансе [User].

решение3

Начиная с KDE 5,СДДМявляется менеджером входа по умолчанию. Поскольку вы используете KDE 4, я предполагаю, что ваша система используетКДМВместо этого. Справочник KDM больше не доступен, но Wayback Machine пришел на помощь!

Глава 4говорит, что вы можете сделать то, что вам нужно, через Параметры системы → Менеджер входа, но не дает конкретики:

Пользователи

Здесь вы можете изменить способ представления пользователей в окне входа в систему.

Независимо от пользователей, указанных по имени, вы можете использовать системные UID для указания диапазона допустимых UID, которые отображаются в списке. По умолчанию идентификаторы пользователей ниже 1000, которые часто являются системными или демоническими пользователями, и идентификаторы пользователей выше 30000 не отображаются.

ИлиГлава 5говорит, что вы можете редактировать kdmrc:

ПоказатьПользователи

Эта опция управляет тем, какие пользователи будут отображаться в представлении пользователей (Список пользователей) и/или предлагается для автодополнения (UserCompletion). Если это Selected,ВыбранныеПользователисодержит окончательный список пользователей. Если это NotHidden, начальный список пользователей содержит всех пользователей, найденных в системе. Пользователи, содержащиеся вСкрытыеПользователиудаляются из списка, как и все пользователи с UID больше указанного вMaxShowUIDи пользователи с ненулевым UID, меньшим указанного вMinShowUID. Элементы вВыбранныеПользователииСкрытыеПользователикоторые имеют префикс , @представляют всех пользователей в группе пользователей, названной этим элементом. Наконец, список пользователей будет отсортирован в алфавитном порядке, еслиСортироватьПользователивключен.

Значение по умолчанию — «NotHidden».

(Быстрый поиск показывает, что этот файл должен находиться по адресу /etc/kde4/kdm/kdmrc.)


Интересно, что ваши /etc/passwdшоу ansibleимеют UID 985… поэтому они должны быть скрыты по умолчанию. Любой из указанных выше вариантов конфигурации может позволить вам увидеть, что это значение по умолчанию было каким-то образом переопределено.

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

Сначала найдите неиспользуемый UID. Эта команда выведет список всехиспользовалте:

$ awk -F: '$0=$3 "\t"$1' /etc/passwd | sort -g

Затем, предположив, что вы обнаружили, что 39001 доступен, измените UID следующим образом:

$ sudo usermod -u 39001 ansible

Обратите внимание, что у всех файлов, ansibleвладеющих правами, будут обновлены только их права собственности.если они находятся в ansibleдомашнем каталоге( /home/ansibleсогласно вашему /etc/passwd). Все остальное, что ansibleпринадлежит, нужно будет chown'сделать вручную.

Связанный контент