chmod
を使用してファイル/ディレクトリの所有権を変更する必要があります。所有者のユーザー名しか知りませんが、デフォルトのグループ名を同時に変更したいと思います。この段階ではグループ名が決まっていないので、ユーザー名と同じにしています
chown -R username:username path_to_dir
コマンドはさまざまなシステム/ユーザーに対して実行される可能性があるため、Linuxには常にユーザー名(ユーザー):ユーザー名(グループ)OR)のペアが常に存在するため、このデフォルトのgroup_nameでエラーが発生する可能性があります。
所属するユーザーからGIDを探し始めましたが
id username | tr '(=)' ':' | awk -F: '{print $3}
しかし、知識については知りたい。これまで/etc/passwd
/etc/groups
の分析は、「shutdown、halt、sync、opeartor」のような一部のユーザーを除き、すべてのユーザーがグループにリストされています。
編集1:id -gnユーザー名も良いオプションです
グループ名= username
が存在するという保証はありません。
最も一般的なシナリオは、Linuxで使用するシステム管理者がシステムでローカルに新しいユーザーを作成し、グループの明示的な指定がない場合です。つまり、グループはデフォルトでユーザー名と同じように作成され、ユーザーに新しく作成されたグループのデフォルトのGID。
これは、別のシステム管理者がこの手順に従うという意味ではありません。NISやLDAPなどの他のネームサービスを混在させると、デフォルトに割り当てられたグループは、ユーザー名と同じグループ名を持つ新しいGIDとは異なる可能性があります。
したがって、username = groupnameという事実に依存すべきではありません
ser private group イディオムは最近のLinuxシステムでよく使用されますが、* nixは実際には各ユーザーに一意のプライマリグループを必要とせず、複数のユーザーアカウントが共通のプライマリグループを共有することは十分に可能ですusers
またはstaff
として。
UPGイディオムが適用されている場合でも、特定のUPGの数値GIDが所有者のUIDと等しい必要がある特定の理由はありませんが、ほとんどのアカウント作成ツールは、UIDとGIDを順番に割り当てようとします利用可能です。ユーザーやグループを複数のシステム間で一貫させる必要がある場合(たとえば、既存のNFS共有に対応するため)、IDは簡単に脱調する可能性があります。
Rameshがデフォルトで示しているように、UIDとGIDは通常のユーザーと同じです。ただし、これが常に当てはまるわけではありませんなので、システムに大混乱をもたらす可能性があるため、このような仮定をしないでください。ファイル/フォルダーのアクセス許可を間違ったグループに割り当てるのはやや面倒ですよね?
つまり、簡単な答えは次のとおりです。いいえ、UIDは常にGIDと同じではありません。それでも、/etc/passwd
には、デフォルトグループのUIDとGIDの両方が同じ行に含まれているため、簡単に抽出できます。
this リンクから、以下の情報が表示されます。
ユーザーID(UID)は、Unixのようなオペレーティングシステムによって各ユーザーに割り当てられる一意の正の整数です。各ユーザーはそのUIDによってシステムに識別され、ユーザー名は通常、人間のインターフェースとしてのみ使用されます。
UIDは、対応するユーザー名およびその他のユーザー固有の情報とともに、_/etc/passwd
_ファイルに保存されます。このファイルは、次のようにcatコマンドで読み取ることができます。
_cat /etc/passwd
_
3番目のフィールドにはUIDが含まれ、4番目のフィールドにはグループID(GID)が含まれますこれはデフォルトですべての一般ユーザーのUIDと同じです
[〜#〜]編集[〜#〜]
ただし、@ Karlsonが指摘しているように、デフォルトでUIDがGIDと等しいとは限りません。
ステートメントは、通常のグループが個別に追加されておらず、ユーザーの作成時にグループが明示的に指定されていない場合にのみ真になります。次に追加されるユーザーのデフォルトのgid = max(gid) + 1
。 * NIXシステムが必要とするUIDとGIDの間に相関関係はありません。場合によっては、それらが偶然一致するだけです。
その他の参考資料
http://www.thegeekstuff.com/2009/06/useradd-adduser-newuser-how-to-create-linux-users