groupmodコマンドはグループを指定して、グループの名前またはグループIDを修正できるコマンドです。
また、グループを追加する方法については以下の記事で紹介しています。
groupadd - グループを追加する
groupaddコマンドはLinuxのグループを追加するコマンドになります。groupaddコマンドは管理者権限が必要なコマンドになります。 Linuxのグループを利用することで、グループ内でファイルを読み込めるようなアクセス権限を利用でき...
groupmodコマンドの利用例
グループの名前を変更
(-nオプション)
groupmodコマンドでグループの名前を変更する場合、-nオプションを用いて変更できます。
-nオプションの引数はグループの新しい名前になります。
コマンド例と実行結果
1 2 3 4 5 6 7 8 |
$ sudo awk '/^mygroup:/{print FILENAME,$0}' /etc/group /etc/gshadow /etc/group mygroup:x:1010: /etc/gshadow mygroup:!:: $ $ sudo groupmod -n new_mygroup mygroup $ sudo awk '/^new_mygroup:/{print FILENAME,$0}' /etc/group /etc/gshadow /etc/group new_mygroup:x:1010: /etc/gshadow new_mygroup:!:: |
/etc/groupのファイルはグループの情報を管理しているファイルです。
/etc/gshadowのファイルはグループのパスワードやグループの管理者等のセキュアな情報を管理しているファイルになります。
/etc/gshadowのファイルはグループのパスワードやグループの管理者等のセキュアな情報を管理しているファイルになります。
グループIDを変更
(-gオプション)
-gオプションを用いるとグループIDを変更できます。
コマンド例と実行結果
1 2 3 4 5 6 7 8 |
$ sudo awk '/^mygroup:/{print FILENAME,$0}' /etc/group /etc/gshadow /etc/group mygroup:x:1010: /etc/gshadow mygroup:!:: $ $ sudo groupmod -g 3030 mygroup $ sudo awk '/^mygroup:/{print FILENAME,$0}' /etc/group /etc/gshadow /etc/group mygroup:x:3030: /etc/gshadow mygroup:!:: |
グループIDを変更した場合、ファイルのグループ情報は手作業で変更する必要があります。
1 2 3 4 5 6 7 8 9 10 |
$ ls -lg file.txt -rw-rw-r-- 1 mygroup 0 7月 2 20:56 file.txt $ $ sudo groupmod -g 3030 mygroup $ ls -lg file.txt -rw-rw-r-- 1 1010 0 7月 2 20:56 file.txt $ $ sudo chgrp mygroup file.txt $ ls -lg file.txt -rw-rw-r-- 1 mygroup 0 7月 2 20:56 file.txt |
また、大量のファイルのグループIDを変更する場合はfindコマンドを利用すると便利です。
https://linuxcommand.net/find/
1 2 3 4 5 6 7 8 9 10 |
$ ls -lg * -rw-rw-r-- 1 1010 0 7月 2 20:56 file.txt -rw-rw-r-- 1 1010 0 7月 2 21:04 file2.txt -rw-rw-r-- 1 1010 0 7月 2 21:04 file3.txt $ $ find . -gid 1010 -execdir sudo chgrp mygroup {} \; $ ls -lg * -rw-rw-r-- 1 mygroup 0 7月 2 20:56 file.txt -rw-rw-r-- 1 mygroup 0 7月 2 21:04 file2.txt -rw-rw-r-- 1 mygroup 0 7月 2 21:04 file3.txt |