ファイルシステムをマウントするときのUIDはどうなりますか?

ファイルシステムをマウントするときのUIDはどうなりますか?

10回のGoogleリクエストの後でもまだ答えが見つからず、Unixの教科書を見ても答えが見つからないという非常に基本的な質問があります。

ルートファイルシステムがあり、/dev/sda1/ homeパーティションがある2つのハードドライブがあるシステムを考えてみてください/dev/sdb1。これで、UID = 1000:GID = 1000のプロセス/dev/sdb1はにあるファイルシステムをマウントしようとします/mnt/backup。私はそれがどのように起こるかについての2つのシナリオを想像できます。

ここに画像の説明を入力してください。

新しくマウントされたファイルシステムがどのUIDとGIDの下に表示されるかを知りたいです。

1.UIDとGIDは示されているとおりに維持できます。

ここに画像の説明を入力してください。

2.マウントされたファイルシステムのUIDとGIDは、インストールプロセスのUIDとGID = 1000に設定できます。 UIDとGIDがファイルシステムにまったく存在しない場合、次のことが起こります。

ここに画像の説明を入力してください。

私の質問は次のとおりです

  1. 状況1と状況2はどのような状況で発生しますか?どのパラメータがありますか?mount システムコール次のいずれかが発生していることを確認してください。
  2. ケース2では、ファイルの実際のUIDとGIDを確認する方法です。私の例では、マウントされたファイルシステム/mnt/backup/johnとその両方が/mnt/backup/janeUID = 1000に設定されていますが、実際にはそのUIDは1002と1003です。どうすればわかりますか?
  3. ケース1でJaneのUID = 1003がシステムにない場合はどうなりますか?

ベストアンサー1

このコマンドを使用すると、そのインストールのls -nディスク/パーティションのUIDを表示できます。

$ ls -n
total 24
drwxrwxr-x 2 500 501  4096 May 24 15:44 bin
-rw-rw-r-- 1 500 501 11650 May 24 15:44 bouncer.log
drwxrwxr-x 5 500 501  4096 May 23 14:56 testdata
drwxrwxr-x 5 500 501  4096 May 24 14:55 testresults

stat次のコマンドを使用して、特定のファイルのUID / GIDの詳細を表示することもできます。

$ stat bouncer.log 
  File: `bouncer.log'
  Size: 11650       Blocks: 24         IO Block: 4096   regular file
Device: fd02h/64770d    Inode: 11023682    Links: 1
Access: (0664/-rw-rw-r--)  Uid: (  500/    saml)   Gid: (  501/    saml)
Access: 2013-05-24 15:44:17.322878327 -0400
Modify: 2013-05-24 15:44:25.484211596 -0400
Change: 2013-05-24 15:44:25.484211596 -0400

UIDは絶対的です。彼らはシステムのものです。名前は、システムやファイルのls表示など、さまざまなツールでマッピングされます。/etc/passwd/etc/group

これらのファイルのいずれかに数字が表示されない場合は、ディスクのUID / GID番号が表示されます。

ディスク上の同様のUID / GIDが実際に同じユーザーおよび/またはグループであることを確認することは、システム管理者の責任です。 Unixはこれを保証するメカニズムを提供していません。

おすすめ記事