【Linuxコマンド】よく使うコマンド(3)
Linux環境で使用するコマンドの一覧です。
主にユーザ・アカウントに対する操作をまとめています。
- rootに切り替え
- 特定のユーザに切り替え
- root権限で実行
- sudo設定ファイル編集
- ユーザ確認
- グループ確認
- ユーザ作成
- ユーザ追加
- ログインを許可しないユーザの追加
- 削除
- パスワード変更
- プライマリグループの設定
- サブグループの設定
- サブグループから外す
- ユーザのホームディレクトリを変更
- ユーザの名称を変更
- ユーザのログイン履歴を表示
- ユーザ毎に最後にログインした日時を表示
- 不正なログイン(失敗したログイン)を表示
- 現在ログインしているユーザを表示
rootに切り替え
$ su -
特定のユーザに切り替え
$ su - ユーザ名
「-」 (ハイフン) を付与しない場合、ユーザーの操作環境(※)を引き継ぐ。
(※)シェルの種類や環境変数、ホームディレクトリ等
root権限で実行
$ sudo -s
sudoの設定ファイルは絶対に直接編集しない事。必ず visudo コマンドで編集する。
sudo設定ファイル編集
$ visudo
下記のように修正
root ALL=(ALL) ALL ↓ root ALL=(ALL) ALL %任意のユーザ名 ALL=(ALL) ALL
「%任意のユーザ名」の行を追加する事で、任意のユーザにsudoコマンドの実行を許可できる。
ユーザ確認
$ cat /etc/passwd
<例>
user:x:10000:10001:comment:/home/user/:/bin/bash
user:ユーザ名
x:「x」 という文字か、暗号化されたパスワード。「x」 はシャドウパスワード。
10000:ユーザID
10001:グループID
comment: コメント (未入力の場合は何も表示されない)
/home/user:ホームディレクトリ
/bin/bash:ログインシェル名する
グループ確認
$ cat /etc/group
<例>
user:x:10000:user1
user:グループ名
x:「x」 という文字か、暗号化されたパスワード。「x」 はシャドウパスワード。
10000:グループID (GID)
user1:サブグループとして所属しているユーザーアカウントのリスト。複数の場合はカンマ区切り。
ユーザ作成
$ useradd -d /home/ユーザ名 -m ユーザ名
※ユーザ作成時にグループを設定する場合は、事前にグループを作成しておくこと。
ユーザ追加
$ useradd -u 550 -g グループ名 -d /home/ユーザ名 ユーザ名
-d:ホームディレクトリを /home/ユーザ名 に設定
-m:アカウントのホームディレクトリを同時に作成する
-u:550 ユーザIDを550番で設定
-g:グループ名 グループ名またはグループIDを設定
-d:/home/newuser ホームディレクトリを/home/newuserに設定
-m:アカウントのホームディレクトリを同時に作成する
ログインを許可しないユーザの追加
$ useradd -s /sbin/nologin ユーザ名
削除
$ userdel -r ユーザ名
-r ユーザのホームディレクトリ内のファイルをホームディレクトリごと削除。
ユーザのメールスプールも消去される。
パスワード変更
$ passwd ユーザ名
プライマリグループの設定
$ usermod -g グループ名 ユーザ名
サブグループの設定
$ usermod -G グループ名 ユーザ名
- 既にサブグループに所属している場合、それらのグループ名を記述せずに上記のコマンドを実行すると、所属していたグループからは外されてしまう点に注意。
- 複数指定の場合は 「,」 で区切る。
サブグループから外す
$ usermod -G '' ユーザ名
ユーザのホームディレクトリを変更
$ usermod -d /home ユーザ名
ユーザの名称を変更
$ usermod -l 新ユーザ名 現ユーザ名
ユーザのログイン履歴を表示
$ last
-i:リモートホストからの接続情報を表示する場合、IPアドレスで表示。
ユーザ毎に最後にログインした日時を表示
$ lastlog
不正なログイン(失敗したログイン)を表示
$ lastb
-i:リモートホストからの接続情報を表示する場合、IPアドレスで表示。
現在ログインしているユーザを表示
$ who