web-dev-qa-db-ja.com

lightdmグラフィカルログインのユーザー(adduserコマンドで作成)の有効化

Ubuntu 12.04 AMD64を新しい(空の)ハードディスクにインストールしました(以前のクラッシュのため)

私はDebianに精通しているので、adduserコマンドで2つのアカウントを作成しました。

NFSv3ファイルシステムも持っているため、作成時にユーザーIDを明示的に指定しました(簡単にするため、Debianを実行しているホームサーバーで同じユーザーIDを保持します。ユーザー名には数字が含まれます。LDAPは使用しません)。例えば.

  # grep bethy /etc/passwd
  bethy46:x:501:501:Bethy XXX,,,06123456:/home/bethy:/bin/bash
  # grep bethy /etc/group
  bethy64:x:501:
  # grep bethy /etc/shadow
  bethy46:$6$vQ-wmuchmorethings-2o/:15479:0:99999:7::

もちろん/home/bethyは存在します

実際のユーザー名はわずかに異なり、実際のエントリは表示していません(プライバシー上の理由から)

ただし、これらのユーザーはグラフィカルログインプロンプト(lightdm)には表示されません。

そして、それらはシステムに存在し、/ etc/passwdと/ etc/shadowにエントリがあり、/ homeを(部分的に)復元しました

/etc/lightdmの下に特定のユーザー設定がありません。ファイル/etc/lightdm/users.conf言及

 # NOTE: If you have AccountsService installed on your system, then LightDM
 # will use this instead and these settings will be ignored

しかし、コマンドラインでAccountsServiceを処理する方法がわかりません

おそらくご想像のとおり、私はグラフィカルインターフェイスを使用して管理タスクを実行することを本当に嫌います。私はコマンドラインを非常に好む

私は何を間違えましたか? lightdmグラフィカルログインにユーザーエントリが表示されないのはどうすればよいですか? (妻のユーザーエントリをグラフィカルログイン用に表示する必要があります)。

ユーザーを非表示にする方法を尋ねているのではなく、lightdmグラフィカルプロンプトでshow it

回避策

NirmikとEnzotibのコメントで言われたように、lightdmはおそらく1024未満のuidのユーザーを表示しません。だから私はすべてのuidを8200以上に変更しました(Debian NFSサーバーを含む)これにより、グラフィカルプロンプトですべてのユーザーが表示されるようになりました。

このようなしきい値が実際に文書化されていないのは苦痛です。

AccountServiceが実行されている場合、ファイル/etc/lightdm/users.confは無視されます。このような場合、ファイルUID_MINの属性/etc/login.defsの値を変更することにより、最小限のUIDを設定できます。

4

通常、uid 100〜999はシステムアカウント用に予約されており、useradd manualで説明されているように、通常のユーザーのuidとして使用しないでください。

通常、0〜999の値はシステムアカウント用に予約されています。

したがって、1000以下のuidを使用すると、lightdmはそれらを表示しません。ユーザーのuid値を999を超えて変更してみてください(実際は1000を超えているため、最初のユーザーのuidは1000です)。たとえば、uidを設定するには1004を使用します。

Sudo usermod --uid 1004 bethy46

これにより、ユーザーbethy46のuidが1004に変更され、lightdmユーザープロンプトに表示されます。

userという名前のユーザーのuidを知るには、次のコマンドを使用します。

id -u user
1
Anwar

私はまったく同じ問題を抱えていました。私の回避策は、lightdmが有効なユーザー名を表示するのを許可せず、ユーザーにユーザー名の入力を求めることでした。とにかくユーザー名が表示されるのは気に入らなかった。

SSHdも同じ問題に苦しんでいることに気付くまでは幸せでした。 xyzとしてログインしていますが、xyzとしてPCにsshしようとすると、「許可が拒否されました。もう一度やり直してください」というメッセージが表示されます。ファイル/var/log/auth.logを確認すると、次のことがわかります。

Jun  1 01:18:27 mypc sshd[17357]: input_userauth_request: invalid user xyz [preauth]

Jun  1 01:18:32 mypc sshd[17357]: error: Could not get shadow information for NOUSER

Jun  1 01:18:32 mypc sshd[17357]: Failed password for invalid user xyz from 123.123.123.123 port 57492 ssh2

Jun  1 01:18:36 mypc sshd[17357]: Failed password for invalid user xyz from 123.123.123.123 port 57492 ssh2

Jun  1 01:18:38 mypc sshd[17357]: Connection closed by 123.123.123.123 [preauth]

それでも、Ubuntu 12.04をインストールしたアカウントを使用してSSHで接続すると問題なく動作します。

新しいユーザーを追加するためのGUIは単純すぎます。すべてのデータをchownしてchgrpする必要はありません。 passwd、group、shadowを編集するときに省略したGUIの機能は何ですか。

1
eric