標準のLinuxディストリビューション(Ubuntuなど)には通常、/etc/group
と/etc/group-
があり、2番目のディストリビューションはrootによってのみ読み取り可能です。
man group
は/etc/group
のみを記述します。
したがって、私の質問:/etc/group-
の目的は何ですか?
これは、最後の変更前のファイルのバージョンであるファイルの以前のコピーのバックアップです。非常に重要なファイルなので保管しています。あなたはそれを削除することができますが、バックアップは「良いこと」です。
簡単に確認できます。試してみてください
# groupadd test
# diff /etc/group /etc/group-
同じ方法でバックアップされる他のファイルもあります。 /etc/passwd-
/etc/shadow-
。
useradd, usermod, userdel, groupmod, groupdel
などのすべてのユーザーおよびグループ管理ユーティリティは、コマンドが正常に実行された後、これらのバックアップファイルを作成/更新します。
これは「バックアップファイル」であるという@SachinDivekarの回答に同意しますが、ファイルの作成方法とそのアクセス許可の設定方法に関する詳細情報が必要でした。 CentOS6では、usermod
を実行してグループメンバーシップを変更すると、元の質問で説明した「rootとしてのみ読み取り可能」ではなく、権限0644で/ etc/group-が(再)作成されていました。
usermod
(および@Sachin Divekarによって言及された他のすべてのユーザー/グループ管理ユーティリティ)はshadow-utilsパッケージの一部であり(shadow-4.1.5.1のソースを見つけました)、見つけたソースを調べた後commonio.cの#create_backupメソッド( github.com で参照)。これは、すべてのユーザー/グループユーティリティで使用されます。バックアップファイルは、「-」(この場合は「/ etc/group-」)で後置されたソースファイルにちなんで名付けられ、バックアップファイルのアクセス許可はソースファイルのアクセス許可に設定され、0664で「 。
これは、ローカルグループのメンバーシップを変更するためにgpasswd
またはusermod
を実行した後、/ etc/groupがchmod0644の場合、/ etc/group-がまだ存在しない場合に作成される理由を説明しています。 0644にchmodされます。