以下、自分が仕事でよく使うコマンドのメモ。シェルはBashを使用。今回は権限の関係に焦点を絞った備忘録。
ユーザー名などを表示する
ユーザー名・ユーザーID・グループ名・グループIDを表示する。
$id -a
ログインユーザーを切り替える
ログインしているユーザーを切り替える。
$su - [ユーザー名]
スーパーユーザーでログインする。
$su -
コマンドをスーパーユーザ―権限で実行する
コマンドをスーパーユーザー権限で実行することができる。
$sudo [コマンド]
ユーザー一覧を表示する
ユーザー一覧を表示する。
$cat /etc/passwd
ユーザーを作成する
ユーザーを作成する。
$useradd [ユーザー名]
ユーザーを削除する
ユーザーを削除する。-rオプションを付けることで、ユーザーのホームディレクトリとメールスプールを削除することができる。
$userdel [ユーザー名]
ユーザーにパスワードを設定する
ユーザーにパスワードを設定する。
$passwd [ユーザー名]
ユーザーに設定したパスワードを削除する。
$passwd -d [ユーザー名]
グループを確認する
自分の所属するグループを確認できる。
$groups
ユーザーが所属するグループを確認することができる。
$groups [ユーザー名]
グループ一覧を表示する
グループ一覧を表示する。
$cat /etc/group
グループを作成する
グループを作成する。
$groupadd [グループ名]
グループを削除する
グループを削除する。
$groupdel [グループ名]
グループにパスワードを設定する
グループにパスワードを設定する。
$gpasswd [グループ名]
グループにログインする
ログイン中のユーザーでグループにログインする。
※グループにログインするとプライマリグループがログインしたグループに変更され、ログイン中はそのグループの権限が与えられる。
$newgrp [グループ名]
グループからログアウトする
グループにログインしている場合はグループからログアウトする。
$exit
ユーザー情報を変更する
ユーザー情報を変更する。
$usermod [オプション] [ユーザー名]
オプション | 説明 |
---|---|
-c comment | ユーザーのコメントを”comment”に変更する |
-d home_dir | ユーザーのホームディレクトリを”home_dir”に変更する。また、後ろに-mをつけると、現在のホームディレクトリの中身が新しいホームディレクトリに移動される。また、そのディレクトリが存在しない場合は新たに作られる。 |
-e expire_date | アカウントが使用不能になる日付を”expire_date”に指定する。日付はYYYY-MM-DDで指定する。 |
-f inactive_days | パスワードの使用期限が切れてからアカウントが永久に使用不能になるまでの日数を”inactive_days”に指定する。 0とすると、パスワードの期限が切れると同時にこのアカウントは使用不可能になる。-1を指定すると無期限にする。 |
-g initial_group | デフォルトのグループを”initial_group”に変更する。 |
-G group, … | アカウントが属する、サブグループを追加。グループはコンマ区切り。元々入っていたグループをここで指定しないと、そのグループから削除される。 |
-l login_name | ユーザのログイン名を”login_name”に変更する。パスワードはそのまま。ホームディレクトリの名前もそのまま。 |
-s shell | ログインシェルを”shell”に変更する。 |
-u uid | ユーザのID番号を”uid”に変更する。 |
-L | ユーザのパスワードをロックする。ロックされたアカウントは、パスワード認証でのログインができなくなります。 |
-U | ユーザのパスワードをアンロックする。-Lの反対。 |
グループの情報を変更する
グループの情報を変更する。
$groupmod [オプション] [グループ名]
オプション | 説明 |
---|---|
-g gid | グループのGIDを指定した”gid”に変更する。 |
-n [グループ名] | 指定したグループのグループ名を変更する。 |
-o | 指定したグループのgidの重複を許可する。使用する際には-gオプションと併用する。 |
ファイルやディレクトリの所有者を変更する
ファイルの所有者を変更する。ディレクトリとその中身の所有者を変更したいときは-Rオプションを付ける。グループだけを変更したい時は”:[グループ名]”とだけ記述する。所有者の変更はスーパーユーザにしか行うことができないので必要に応じてsudoを付ける。
$chown [ユーザ名]:[グループ名] [対象ファイル名]
ファイルやディレクトリのグループを変更する
ファイルが所属するグループを変更する。ディレクトリとその中身の所属グループを変更したいときは-Rオプションを付ける。
$chgrp [グループ名] [対象ファイル名]
参考
Linux ユーザー一覧の確認と/etc/passwd ファイル
Linux 新規ユーザの作成 – useradd
Linux ユーザーアカウントの削除 – userdel
Linux ユーザ情報の変更 – usermod
Linux グループ一覧の確認と/etc/group ファイル
Linux 新規グループの作成 – groupadd
Linux グループの削除 – groupdel
Linux グループ情報の変更 – groupmod