web-dev-qa-db-ja.com

ユーザーのホームディレクトリに隠しファイルと隠しディレクトリ

私はユーザーのホームディレクトリにいます。

ls -a

次に、ユーザーのディレクトリに多数の隠しファイルおよびディレクトリが表示されます。削除を許可されているのはどれですか?

私のシステムにはどれが必要ですか?

どうすればそれを実現できますか?

6
MLSC

@mikeservがすでに言ったように、あなたは一般的にallowedyourホームディレクトリにあるファイルを削除することができます。十分な権限がある場合は、別のユーザーのホームディレクトリにあるファイルを削除できますが、これは他のユーザーのホームディレクトリにある場合は、あまり良いことではないかもしれません。システムが機能するためにこれらのファイルは必要ありません。少なくとも、システムを破壊するにはrootになる必要があります。

ただし、これらのファイルの大部分には、そのユーザーとして実行するときにプログラムが使用する設定やその他のデータが含まれています。これらを削除すると、そのユーザーのプログラムの外観や感触が大幅に変わる可能性があり、データが失われる可能性もあります。これが私が家の下の隠しファイル/ディレクトリに持っているもののいくつかです:

  • デスクトップ環境の設定。これらが削除されると、壁紙、スクリーンセーバー、ショートカットキー、タスクバー/メニューの変更など、それに加えられたカスタマイズはすべて、ユーザーが次にログインしたときにデフォルトに復元されます。

  • ウェブブラウザ関連データ。これには、ブックマーク、閲覧履歴などが重要になる場合があります。データの大部分は、ダウンロードされたWebデータ(画像など)を含むキャッシュになります。これは、次にページにアクセスしたときに再ダウンロードされるだけなので、通常は問題なく削除できます。

  • .wineディレクトリ。これは、ワインドライブ全体のデフォルトの場所です。これを削除すると、ユーザーがwineの下にインストールしたすべてのソフトウェアも削除されます。

  • .cabalディレクトリ。これは、ユーザーソフトウェアが保存されている隠しディレクトリのもう1つの例です。これらは、cabalによってインストールされるHaskellソースパッケージです。

  • .bashrcinputrc.vimrc.tmux.confなど、私が使用するさまざまなコマンドラインプログラムの構成ファイル。何年にもわたって、多くのユーザーは、ワークフローに役立つさまざまな設定/調整の実質的な配列を構築します。私はあなたが暴力の煽動になる私のものを取り除きました! (まあ、実際にはそうではありませんが、バックアップから復元するか、必要に応じて再追加します)。

多くのプログラムは、実行時にこれらのファイルの1つ以上を探し、見つからないものを作成します。設定ファイルの場合、新しく作成されたファイルはデフォルト設定になります。独自のインターフェイスを介してプログラムの設定に加えられた変更は、これらのいずれかに保存される可能性があります。キャッシュされたデータが削除された場合、再作成には時間がかかるため(通常、最初にデータを保存する理由)、これは一般に、行のどこかで速度を低下させます。

多くの場合、どのファイルがどのプログラムに属しているかを見つけるのは困難です。また、プログラムをアンインストールしてもファイルは削除されないため、不要なファイルを簡単に収集できます。一部を削除したい場合は、不要なものを特定することができます(たとえば、ブラウザを削除した場合、そのキャッシュファイルを見つけて削除すると、多くのスペースが解放される可能性があります)。どちらか、または単にyo残しておき、残りを削除したいものを特定します-時々明確にすることは良い考えです。

予期しない結果を引き起こす可能性があるのは、.bashrc.profileなどのファイルが変更されていなくても、それらを削除することです。システムは、これらのファイルのデフォルトバージョンを、最初の実行時にbashによって作成されたファイルではなく、ユーザーの作成時に/etc/skelからコピーします。これらのいずれかを誤って削除した場合は、いつでも/etc/skelから復元できます(ls -a /etc/skelを実行して、そこに何があるかを確認できます)。

5
Graeme

your$ HOMEディレクトリの場合、you'reallowed何でもyouwantそれで。実際、それはすべてのUnixファイルシステムのアクセス許可の基礎となる基本的な前提です:ownership

なし$ HOMEディレクトリ内のファイルは必要ですシステムに。これが、それらが$ HOMEディレクトリにあり、他の場所にはない理由です。それがあなたが必要とする唯一の手がかりです。

デフォルトのファイルパーミッション(umask)

各ユーザーにはデフォルトの権限セットがあり、ソフトウェアが明示的に他の何かを設定しない限り、そのユーザーによって作成されたすべてのファイルに適用されます。これは、変更に使用されたコマンドにちなんで、しばしばumaskと呼ばれます。ログインプロセスから継承されるか、個々のアカウントを構成する.cshrcまたは.loginファイルに設定されるか、手動で実行できます。通常、デフォルトの設定はumask 22と入力することと同じで、次の権限が生成されます。

  • -rw-r--r--通常のファイルの場合、または
  • ディレクトリの場合はdrwxr-xr-x

つまり、ユーザーにはフルアクセスがあり、他のすべてのユーザー(グループおよびその他)にはファイルへの読み取りアクセス、ディレクトリへのルックアップアクセスがあります。

4
mikeserv

削除を許可されているのはどれですか?私のシステムにはどれが必要ですか?

なし、そしてすべて。これらのファイルのほとんどは、インストール時またはプログラムの実行時に作成されます。削除しても元に戻ります。

どうすればそれを実現できますか?

あなたの用途にもよりますが、真剣に、それらのほとんどは<1kBを使用しています。 ls -aと入力しないでください。そうすれば、再び表示されることはありません。

2
Braiam