`chown user:user lost + found`は有害ですか?


10

最近、crypto_LUKS特定の1人のユーザーのみに$ HOMEとして機能する暗号化ファイルシステム()を作成しました(つまり、としてマウントします/home/pduck)。また、適切なエントリを追加して/etc/security/pam_mount.conf.xml、ユーザーがログインするとパーティションが自動的に復号化されてマウントされるようにします(ユーザーがログオフするとマウントが解除されるようにします)。よく働く。

$ HOMEはそれ自体がファイルシステムであるため、ユーザーにはlost+foundroot:rootが所有するディレクトリがあります。私はことを知っているディレクトリを削除することである悪い考えが、多くのコマンドは、(例えばfind)はアクセスを持たない文句を言います。それは私を困らせます。

好奇心から私はディレクトリを削除し、mklost+found(なしでsudo)再作成しました。これで、ディレクトリはpduck:pduckによって所有されます。それは大丈夫ですか、それともディレクトリがroot:rootによって所有されていることが重要ですか?


すべてのファイルシステムにlost + foundディレクトリがあるわけではありません。たとえば、Ext4にはありますが、XFSにはありません。
jornane

答えではありませんが、2>/dev/nullそれらのエラーメッセージを黙らせるa で始まるfindのスクリプトまたはエイリアスを(できれば別の名前で)作成するだけで済みます。最初に置くと、各呼び出しで検索するために渡す引数に干渉しなくなります。
Joe

回答:


11

良いアドバイスには根拠が付いているので、いつそれが悪いアドバイスになるかを知ることができます。

lost+foundrootが所有する目的は、どのファイルが失われたかに関わらず、突然誰にも公開されないようにするためです。ただし、この場合、pduckが所有していないファイルシステム*全体に単一のファイルがあってはなりません。したがってlost+found、pduckが所有していないことのマイナス面はありません。

* pduck suをrootにしてXアプリケーションを実行するなど、エキゾチックな状況を禁止します。しかし、pduckがシステムのセキュリティを完全に破壊する可能性があるため、pduckが使用できる場合、sudoまたはsu私たちが何も話していません。


6

lost+found システムディレクトリであり、システムディレクトリとファイルの所有権と権限を改ざんすることは避けます。

findコマンドラインの権限を昇格しない限り、文句を言う他のディレクトリ(およびファイル)があるので、使用することをお勧めします

sudo find ...

そのままにlost+foundしておきます。


2
はい、そう思いましたが、OTOH mklost+found作成するコマンドがあり、私の所有権で作成します。多分それはチェックをしない恐ろしく書かれたコマンドなのかもしれません$UID!=0;-)また、私はsudo自分の$ HOMEで(多かれ少なかれ)強制的に使用されるという考えは好きではありません。
PerlDuck

lost+foundは非常に古く、私はUNIXの初期の頃から考えており、今日それがいつ使用されるかは本当にわかりません。しかし、システムディレクトリとファイルの所有権とアクセス許可を改ざんしないことは、一般的なポリシーとして適切だと思います(裏で何が起きているかを本当に理解していない限り)。
sudodus

5
fsck「失われた」ファイルに遭遇したときにファイルをそこに入れませんか?fsck(最初にファイルを作成する代わりに)ファイルを配置する場所がすでにあるという考えです。lost+found通常の空のディレクトリ(4096バイト)よりも多くのスペース(16384バイト)を占有することに注意してください。
PerlDuck

はい、少なくともそれが最初の目的でした(chkdskMSDOSで失われたファイルで行われたのと同じです)が、Linuxでデータを見たことはほとんどありません。多分ジャーナリングはファイルを以前の場所に復元できるので、に移動する必要はありませんlost+found。-ちなみに、にはlost+foundディレクトリ/homeがありますが、ホームディレクトリ/home/sudodusにはないので、そこに邪魔されることはありません。
sudodus

1
同意する。そして、中に/home私は別のものを持っているl+fので(どちらか私を気にしない)/home/home/pduck私のマシン上の別々のパーティションです。後者は暗号化され、前者は暗号化されません。ただし、煩わしすぎる場合は、$ HOMEを別の場所にマウントし、実際の$ HOMEにバインドマウントして(たとえば、ここで説明しように)l+f、$ HOME から完全に取り除くことができます。/// 「拡張ディスカッション…チャットに移動する」アラートを回避するために、コメントを数分/数時間で削除します。
PerlDuck

4

lost + foundディレクトリに魔法のようなものはありません。これは他のものと同じように単なるプレーンディレクトリであり、システムクラッシュまたはファイルシステムの破損後のfsck中に見つかった失われたファイル/ディレクトリを保持するためにのみ使用されます。

ファイルシステムが作成されるmkfs中に作成され、通常は空です。デフォルトの権限の唯一の理由は、機密ファイルがfsck中に検出されて回復された場合に、それらが通常のユーザーに表示されないようにすることです。現代では、ファイルが失われ、そのフォルダーに入れられることはめったにありません。

それが削除された場合、ファイルをそこに配置する必要がある場合、fsckは必要に応じてそれを再作成すると思います。これは一人のユーザーと彼のデータだけのファイルシステムであり、データをのぞき見から隠しておく必要はないので、findからのクレームや変更を防ぐためにアクセス許可を755などに変更できなかった理由はわかりません。所有権。fsckが回復プロセス中にアクセス許可をリセットする可能性がありますが、深刻なハードウェア障害がない限り、それは最近のファイルシステムではまれなイベントです。

単にそれを削除することに関しては、それを取り巻くパラノイアはすべて、データを回復するためにfsckに少しでも実行することが最善であるという事実に基づいていると思いますが、実際にはそれほど重要ではないと思います。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.