私はすべてのユーザーをリストするコマンドと、ターミナルからユーザーを追加、削除、変更するコマンドが必要です-ターミナルでユーザーアカウントを簡単に管理す
一覧へ
すべてを一覧表示するには ローカル 使用できるユーザー:
cut -d: -f1 /etc/passwd
非ローカルを含む(何らかの方法で)認証が可能なすべてのユーザーを一覧表示するには、以下を参照してください この返信.
いくつかのより便利なユーザー管理コマンド(また、に限定されます ローカル ユーザー):
追加するには
新しいユーザーを追加するには、次を使用できます:
sudo adduser new_username
または:
sudo useradd new_username
も参照してください: Adduserとuseraddの違いは何ですか?
削除/削除するには
ユーザーを削除/削除するには、まず次を使用できます:
sudo userdel ユーザー名
その後、削除されたユーザーアカウントのホームディレクトリを削除することができます :
sudo rm-r/ホーム/ユーザー名
上記のコマンドを慎重に使用してください!
変更するには
ユーザーのユーザー名を変更するには:
usermod -l new_username old_username
ユーザーのパスワードを変更するには:
sudo passwd ユーザー名
ユーザーのシェルを変更するには:
sudo chsh ユーザー名
ユーザーの詳細を変更するには(実名など):
sudo chfn ユーザー名
にユーザーを追加するには、次の手順に従います。 sudo
グループ:
adduser ユーザー名 須藤
または
usermod -aG sudo ユーザー名
そして、もちろん、も参照してください: man adduser
, man useradd
, man userdel
... というように。
押すだけ Ctrl+Alt+T ターミナルを開くには、キーボードで。 開いたら、以下のコマンドを実行します:
cat /etc/passwd
または
less /etc/passwdmore /etc/passwd
Awkを使用することもできます:awk
awk -F':' '{ print $1}' /etc/passwd
この種の情報を取得する最も簡単な方法は次のとおりです getent
-を参照してください のマンページ getent
コマンド . そのコマンドは次のように同じ出力を与えますが cat /etc/passwd
それはあなたにOSのいくつかの要素のリストを与えるので、覚えておくと便利です。
入力したすべてのユーザーのリストを取得するには(ユーザーが /etc/passwd
)
getent passwd
ユーザーを追加するには ニューユーザー システムに次のように入力します
sudo adduser newuser
すべての既定の設定が適用されているユーザーを作成します。
ボーナス:任意のユーザーを追加するには(例えば anyuser)をグループに(例えば cdrom)タイプ
sudo adduser anyuser cdrom
ユーザーを削除します(たとえば 廃止された)と
sudo deluser obsolete
あなたは同様に彼のホームディレクトリ/メールを削除したい場合は、入力します
sudo deluser --remove-home obsolete
と
sudo deluser --remove-all-files obsolete
ユーザーを削除します と システム全体でこのユーザーが所有するすべてのファイル。
これは取得する必要があります, ほとんどの通常の状況下で、すべての通常の(非システム、奇妙ではない、など)ユーザー:
awk -F'[/:]' '{if ($3 >= 1000 && $3 != 65534) print $1}' /etc/passwd
これはによって動作します:
- からの読み込み
/etc/passwd
- を使用して
:
区切り文字として - 3番目のフィールド(ユーザー ID番号)が65534ではなく1000より大きい場合、1番目のフィールド(ユーザーのユーザー名)が出力されます。
これは、多くのlinuxシステムでは、1000を超えるユーザー名が非特権ユーザー(通常のユーザーと言うこともできます)用に予約されているためです。 これに関するいくつかの情報 ここでは、:
ユーザー ID(UID)は、Unixライクなオペレーティングシステムによって各ユーザーに割り当てられた一意の正の整数です。 各ユーザーはそのUIDによってシステムに対して識別され、ユーザー名は一般に人間のインターフェイスとしてのみ使用されます。
UIDは、対応するユーザー名およびその他のユーザー固有の情報とともに、/etc/passwdファイルに格納されます。..
3番目のフィールドにはUIDが含まれ、4番目のフィールドにはグループID(GID)が含まれており、デフォルトではすべての通常のユーザーのUIDと同じです。
Linuxカーネル2.4以降では、Uidは符号なし32ビット整数であり、0から4,294,967,296までの値を表すことができます。 ただし、古いカーネルを使用しているシステムや16ビットUidのみに対応できるファイルシステムとの互換性を維持するために、65,534までの値のみを使
UIDの0には特別な役割があり、常にrootアカウント(つまり、全能の管理ユーザー)です。 このアカウントでユーザー名を変更することも、同じUIDで追加のアカウントを作成することもできますが、セキュリティの観点からはどちらのアクションも賢明ではありません。
UID65534は、通常の(つまり、特権のない)ユーザーとは対照的に、一般的にnobody、システム権限のないユーザーのために予約されています。 このUIDは、FTP(file transfer protocol)またはHTTP(hypertext transfer protocol)を介してリモートでシステムにアクセスする個人によく使用されます。
Uid1から99は、伝統的に、wheel、daemon、lp、operator、news、mailなどの特別なシステムユーザー(擬似ユーザーと呼ばれることもあります)のために予約されています。 これらのユーザーは、総root権限は必要ありませんが、いくつかの管理タスクを実行するため、通常のユーザーに付与された権限よりも多くの権限が必要な管理者
一部のLinuxディストリビューション(つまり、バージョン)では、特権を持たないユーザーのUidが100で始ま Red Hatのような他のものは500で始まり、Debianのような他のものは1000で始まります。 配布の違いにより、組織内のネットワークで複数の配布が使用されている場合は、手動による介入が必要になることがあります。
また、1 0 0 0〜9 9 9 9などのローカルユーザ用のUidのブロックと、1 0 0 0 0〜6 5 5 3 4などのリモートユーザ(すなわち、ネットワーク上の他のユーザ)用の別のブロックを予約することが便利であ 重要なことは、スキームを決定し、それを遵守することです。
特定のタイプのユーザーに番号のブロックを予約するこの方法の利点の中には、疑わしいユーザーの活動のためにシステムログを検索する方が便利にな
一般的な考え方とは対照的に、UIDフィールドの各エントリが一意である必要はありません。 ただし、一意でないUidはセキュリティ上の問題を引き起こす可能性があるため、Uidは組織全体で一意に保つ必要があります。 同様に、以前のユーザーからのUidのリサイクルはできるだけ長く避けるべきです。
リスト ログインできるすべてのユーザーのうち(bin、deamon、mail、sysなどのシステムユーザーはいません。)
awk -F':' '$2 ~ "\$" {print $1}' /etc/shadow
追加 新規ユーザー
sudo adduser new_username
または
sudo useradd new_username
削除/ユーザー名の削除
sudo userdel username
ホームディレクトリを削除する場合(デフォルトは/home/usernameディレクトリ)
sudo deluser --remove-home username
または
sudo rm -r /path/to/user_home_dir
あなたは、このユーザーからシステムからすべてのファイルを削除したい場合(だけでなく、ホームdiretoryです)
sudo deluser --remove-all-files
Okここでは、これを並べ替えるのに役立つトリックです。 ターミナルには自動補完がありますuserと入力してTabキーを2回押すと、userが最初の4文字として存在するすべてのコマンドが一覧表示されます。
user (tab tab)
可能なオプションとして私に与えますuseradd userdel usermod users users-admin
コマンドの詳細を知りたい場合は、google itまたはman man useraddgives useraddと入力します-新しいユーザーを作成するか、デフォルトの新しいユーザー情報を更新します。.. ...
ユーザーを一覧表示するには、Mitchが言ったことを実行する必要があります。
私はbashでタブ補完を愛するのに役立つことを願って、物事を覚えてから私を救います。
マシン上の/home-フォルダにホームディレクトリがあるユーザーを確認するには、次のコマンドを実行します
cd /homels
その後、サーバーにログインする権限を持つユーザーを確認できます。 ユーザーのファイルを調べたい場合は、rootユーザーでなければなりません。
最初の答えはお勧めします:
cut -d: -f1 /etc/passwd
しかし、これを使用して、あなたが得るユーザーの数を数えます:
$ cut -d: -f1 /etc/passwd | wc -l46
ラップトップコンピュータのための46人のユーザーがたくさんあります!. 代わりにこれを使用してください:
$ cat /etc/passwd | grep -vE '(/bin/false|/sbin/nologin|/bin/sync)' | cut -d: -f1rootrickguest-atkb2qguest-u4sf2iguest-rmlbtgguest-mz53vp
ゲストアカウント(ファイルを保存していない人)を削除するには、次を使用します:
$ cat /etc/passwd | grep -vE '(/bin/false|/sbin/nologin|/bin/sync|guest-)' | cut -d: -f1rootrick
リストから削除されたいくつかのサンプルユーザーは次のとおりです:
systemd-timesync:x:100:102:systemd Time Synchronization,,,:/run/systemd:/bin/falsegnats:x:41:41:Gnats Bug-Reporting System (admin):/var/lib/gnats:/usr/sbin/nologinsync:x:4:65534:sync:/bin:/bin/syncsync:x:4:65534:sync:/bin:/bin/syncguest-atkb2q:x:999:999:Guest:/tmp/guest-atkb2q:/bin/bash
単一のユーザーシステム上のユーザーのほとんどは、実際にはユーザーとして設定されたプログラムです。
sedの答え’sed’s/:./etc/passwd*//’/etc/passwd`//’/etc/passwd
ユーザーを一覧表示します:awk-F:'{print1 1}'/etc/passwd