web-dev-qa-db-ja.com

アプリケーションは通常、データをどこに保存しますか?

ユーザーレベルのアプリケーションデータを保存するための標準的な場所があるかどうか疑問に思っていました。つまり、Firefoxのブックマーク、Skypeメッセージの履歴/パスワードなどです。ホームディレクトリ暗号化とフルディスク暗号化のどちらを使用すべきかわからないので、私は尋ねています。

12
Olivier Lalonde

あなたが提供した例から、特定のユーザーの構成、使用法、またはユーザーが所有するデータに固有のアプリケーションデータ(メールメッセージ、テンプレート、テーマなど)を意味すると思います。この場合、これらのデータは、ユーザーのホームディレクトリに「ドットファイル」として、またはアプリケーション固有の「ドットディレクトリ」内に保存されます。

nixファイルシステム階層標準 からの引用:

/ home:ユーザーのホームディレクトリ(オプション)

目的

/ homeはかなり標準的な概念ですが、明らかにサイト固有のファイルシステムです。セットアップはホストごとに異なります。したがって、この場所に依存するプログラムはありません。

必要条件

アプリケーションのユーザー固有の構成ファイルは、ユーザーのホームディレクトリの「。」で始まるファイルに保存されます。文字(「ドットファイル」)。アプリケーションで複数のドットファイルを作成する必要がある場合は、「。」で始まる名前のサブディレクトリに配置する必要があります。文字(「ドットディレクトリ」)。この場合、構成ファイルは「。」で始まってはなりません。キャラクター。

Linuxファイルシステム階層 標準もほぼ同じことを述べています。

たとえば、vimエディターのユーザー設定はホームディレクトリ内の.vimrcに保存され、firefoxプロファイル(ユーザーブックマークと履歴情報などを含む)は 別のディレクトリ 内に保存されますユーザーのホームディレクトリ(〜/ .mozilla/firefox/<randomstring>。default)

通常、すべてのアプリケーションは、ユーザーが開始したセッション、パスワードなどに関する情報をユーザーのホームディレクトリ内の「ドットファイル/ディレクトリ」に保存します。

(少し外挿して)ユーザー固有のデータを保護するのに十分な暗号化が必要な場合は、ホームディレクトリの暗号化だけで十分です。

そうは言っても、Linuxのすべてのものと同様に、デフォルトの場所をカスタマイズしてオーバーライドし、これらのアプリケーション固有のユーザーデータを別の場所に保存することを選択することができます。ただし、Ubuntuでは、ユーザーが明示的に行う必要があります。

13
koushik

ホームディレクトリは、ファイルを永続的に保存できる唯一の場所です。通常、アプリケーションは、ホームディレクトリの.application-nameというファイルまたはディレクトリに構成と自動的に保存されたデータを保存します。 (一部のアプリケーションはグループに保存されます。たとえば、~/.gconfには多くのGnomeアプリケーションからのデータが含まれます。)

ただし、機密またはプライバシー関連のデータを他の場所に保存することはできます。これらの場所を暗号化するかどうかは、そのデータがどれだけ機密性があると思うかに依存します。

  • RAMにある可能性のあるもの(ほとんど)は、スワップに入れることもできます。少し手間と運がかかりますが、ディスクを盗んだ人はスワップの中に価値のあるデータを見つけることができます。

  • 多くのアプリケーションは、/tmpに一時ファイルを保存します。

  • (POPまたはIMAPサーバーから取得するのではなく)ローカルでメールを受信する場合、/var/mailに到着します。従来のUNIXメソッド(sendmail)を使用してメールを送信する場合、/var/spool/postfix(またはMTAが何であれ)を経由して送信されます。この段落を理解していない場合、適用されません。

  • 定期的なタスクを設定すると、それらは/var/spool/cronに保存されます。

  • 何かを印刷すると、/var/spool/cupsに遷移します。

  • システムログには、接続しようとしたサイトからのネットワークエラーなど、非公開にしたいデータが含まれている場合があります。

Dm_cryptでスワップパーティションを暗号化できます(cryptsetupをインストールしてドキュメントを読むか、初期インストールの一部としてそれを行いますが、代替CDを使用する必要があると思います)。

スワップを暗号化したら、/tmptmpfsにすることで最も適切に処理されます。詳細については here を参照してください。

印刷スプールなど、その他の目的でtmpfsを使用することもできます。ただし、システムログなどの他のシステムには適していません。機密性の高いデータをすべて暗号化する場合は、システム全体を暗号化することもできます。

3
Gilles

Gilesが言ったことに加えて、Apache Webserver(または他のほとんどのWebサーバー)を使用する場合、Webサイトファイルは/ var/wwwに保存されます。

SQL Serverがデータベースをデフォルトとして保存する場所がわかりません...私は永遠に学習しています:)

0
Vortex