
私はPythonスクリプトを生成するソフトウェア(C ++)を書いています。これらはどこに行くべきですか?一時的に既存のスクリプトはファイルシステムに配置されていますか?
ファイルシステム階層の標準に関するいくつかのページを読みましたが、スクリプトビルドへの参照が見つかりませんでした。
/usr/binは一部のユーザーにとっては読み取り専用である可能性があるため、良い考えではないようです。私の考えは/var/run/my_programの下に置くことです。
そうですか?それとも「適切な場所」とは何ですか?
編集する: これらのスクリプトは、生成プログラムが実行されている場合にのみ使用されます。これは彼らが意味する欲しくない再起動する必要があります。
答え1
一時ファイルは、そのファイルを生成したプログラムの寿命より長く持続しないため、特に再起動後も持続しないでください。/tmp
。あるいは、環境変数が表すディレクトリを使用してTMPDIR
設定されていない場合は、そのディレクトリに置き換えることが慣例です。/tmp
を実行できます/tmp
。システム管理者は実行権限なしでインストールできますが、これは特定のアプリケーションのみを実行するシステムの強化された構成です。実行をブロックすると、/tmp
一部のアプリケーションがクラッシュする可能性があり、通常はセキュリティが向上しません。
このディレクトリは通常ユーザー間で共有されるため、このディレクトリにファイルを作成するときに誤って他のユーザーが所有する既存のファイルを使用しないように注意する必要があります。使用mktemp
ユーティリティまたはmkstemp
機能を使用するか、以下を使用してプライベート一時ディレクトリを作成することをお勧めします。mktemp
またはmkdtemp
そのディレクトリで作業してください。
/run
または、/var/run
そのファイルを作成する権限がないため、不適切です(実際には〜するシステム管理者が付与しない限り、ファイルを生成する権限がありません。)アプリケーションではなくシステムで使用されます。