すでに公開されているディスクドライブの問題があります。 (気になる方のために:フォーマット後のデバイスの問題)
簡単に言えば、私のディスクの1つはDolphin(Debian)を使ってドラッグアンドドロップでファイルをコピーすることはできません。
私の問題を調べたところ、いくつかの事実が見つかりました。
他のディスクドライブでこれが発生しました。
ディスクドライブとディスクドライブは、dd if = / dev / zero of = / dev / sdXを使用して消去されました。ここで、sdXは問題のドライブです。
ddで消去せずにフォーマット(mkfsを使用)および/またはパーティション(たとえば、複数のプライマリパーティションで作成されたgptパーティション)のみを実行した他のディスクドライブでは、この現象は発生しません。
このディスクでは、所有者はユーザーではなく root に変更されました。
だから私の質問は次のようになります
完全に消去されたディスクではこれが発生しますが、フォーマットまたはパーティション化されたディスクでは発生しません。
権限は正確にどのように機能しますか?ディスクに書き込まれますか?または、所有権はディスクに書き込まれますか?
Linuxディストリビューション全体で変更を保持するようにディスク所有者を変更できますか?
編集:exfatを使ってディスクフォーマットを試しました。 Dolphinを使用してドラッグアンドドロップ操作を実行し、所有権をユーザーに変更します。 ext4でディスクフォーマットを試しました。ドラッグアンドドロップが機能しなくなりました。所有権がルートに変更されました。ディスクドライブの所有権を現在のユーザーに変更してみました。コマンドラインは問題なく終了します(ターミナル:sudo chown ...: / dev / sdX -R -w)。ただし、Dolphinで使用すると、ドラッグアンドドロップ機能は機能しません。ドルフィンは依然として所有権をルートとしてリストしています。端末から手動でマウントすると、マウント用に作成されたディレクトリにはルート所有権のみが表示されます(ディレクトリがsudoなしで作成された場合でも同様です)。 Dolphinから自動的にインストールされると、ルート所有権のみが表示されます。マウントポイント名は、ドルフィンの2つの自動マウントの間で変更されます。
また、ext *ファイルシステムを使用して別のドライブをフォーマットしたことも追加したいと思います。 dd if=... of=... (完全に削除するため)を実行しない限り、問題はありません(ext4でも).
何が起こっているのか説明できますか?
ext*形式は自動的にrootを所有者に設定しますが、exfat形式はそうでないように見えるのはなぜですか?どちらのコマンドも mkfs を使用して実行されます。
編集:私はDebianを使うと書くのを忘れていました。
ベストアンサー1
ドライブ(またはパーティション、他のブロックデバイス、ディスクイメージファイルなど)をフォーマットするときのファイルシステムの最上位ディレクトリは次のとおりです。mkfs
コマンドを実行するユーザーが所有する。
通常、ディスクイメージファイル(またはRW権限を持つブロックデバイス)をルートではなくuidとしてフォーマットしない限り、ルートです。
所有権を変更するには、その所有権をマウントし、マウントされたディレクトリを chown します。これにより、フォーマットされたfs自体で最上位ディレクトリの所有権が変更されるため、マウント解除後も所有権の変更が維持されます。たとえば(ルートとして):
mkfs.ext4 /dev/sdaX
mount /dev/sdaX /mnt
chown user:group /mnt
これはファイルシステムがマウントされたときに実行する必要があります。それ以外の場合は、マウントポイント自体の所有者(つまり親ファイルシステムのディレクトリ)のみが変更され、ファイルシステムをマウントすると、マウントされたファイルシステムカバーの所有者になります。インストールしてください。
たとえば、その上に別のファイルシステムをマウントするまでは/mnt
ディレクトリだけです。/
/ fsに設定された所有権と権限があります。 / mntに別のファイルシステムをマウントすると、そのファイルシステムの最上位ディレクトリに設定された所有権と権限があります。
FATはUNIXファイルシステムではなく、UNIXの所有権や権限をサポートしていません。 FATファイルシステムをマウントするときのFATファイルシステムの所有権と権限を指定します。みんなマウント時のファイルシステム上のファイル(デフォルトはマウントプロセスのuidとgid)です。
mkfs
ご注意ください一部ファイルシステムを使用すると、フォーマット時に所有者を指定できます。ただし、各ファイルシステムには独自の方法があるため、chown
最初にマウントした後(上記の図を参照)を覚えておく必要がなく、より簡単なことがよくあります。ほとんど使用されないツール。たとえば、mkfs.ext4
拡張オプション(-E
)を使用して次のようにします。
mkfs.ext4 -E root_owner=uid:gid /dev/sdaX