web-dev-qa-db-ja.com

「/ etc / issue」はすべてのLinuxディストリビューションに共通ですか?

私はbashスクリプトでOS検出ポータブル関数を作成しようとしています、

知りたいのは、ファイル"/etc/issue"はすべてのLinuxフレーバーに共通ですか?

13
Rahul Patil

はい、これはディストリビューション全体の標準ファイルです。ほとんどのディストリビューション、Fedora/CentOS/RHEL/Debian/Ubuntuなどでは標準です。

詳細については man issue またはその関連ファイル/etc/issue.net。詳細と、両方のファイルにマクロを含める方法については issue.net man page を参照してください。

Linux From Scratch プロジェクト、 / etc/issueを使用したログオンのカスタマイズ でも詳細を読むことができます。

13
slm

Slmの回答に加えて、誰でも(ルートアクセス権を持つ)_/etc/issueのコンテンツを編集できることを覚えておく価値があります。ログイン前の警告や免責事項を表示するためにそうする組織もあれば、セキュリティ上の理由から配布の識別をすべて削除する組織もあります(これらの対策のどちらがどれほど効果的であるかは関係ありません)。

したがって、/ etc/issueはほとんど常に存在する可能性がありますが、コンテンツは必ずしもOSの検出(必ずしもLinuxディストリビューションの場合)に適しているとは限りません。

11
EightBitTony

@EightBitTonyの答えは正しいです。また、Fedora 23にはデフォルトでは存在しません。

行うしないランダムなシステムを識別するためにそれに依存します。私は/etc/system-releaseまたは/etc/os-releaseを使用しますが、それがどれほど普遍的であるかはわかりません。

少し読むと/etc/os-releaseにはsystemdが付属しているので、古いディストリビューション(またはsystemdを嫌うディストリビューション)では機能しないと思います。 /etc/system-releaseに関する信頼できる情報が見つかりませんでした。互換性が重要な場合は、多くのファイルをチェックする必要があると思います。または、エッジのケースが重要でない場合は/etc/os-releaseを使用します。

2
akostadinov