Bashスクリプトでオペレーティングシステム検出移植可能な機能を作成しようとしています。
"/etc/issue"
だから私はこのファイルがすべてのLinuxバージョンに共通して適用されるのだろうかと思います。
答え1
はい、これはディストリビューション全体の標準ファイルです。これはほとんどのディストリビューション(Fedora / CentOS / RHEL / Debian / Ubuntuなど)で標準です。
それについてもっと読むことができます。man issue
または関連ファイル/etc/issue.net
。あなたは見ることができますIssues.net のマニュアルページ詳細と2つのファイルにマクロを含める方法を学びます。
あなたもできます最初からLinuxプロジェクト、/etc/issue を使用してログインをカスタマイズします。。
答え2
slmの回答に加えて、rootアクセス権を持つ人は誰でも編集できることを覚えておく価値があります/etc/issue
。一部の組織では、事前ログイン警告または免責事項を提供するためにこれを行うことができますが、他の組織ではセキュリティ上の理由でそれを削除することができます(効果に関係ありません)。これらの措置中)。
したがって、/ etc / issueはほとんど常に存在する可能性がありますが、その内容がオペレーティングシステム(あなたが言ったように、またはLinuxディストリビューションである可能性が高い)を検出するのに必ずしも適切ではありません。
答え3
@EightBitTonyの答えが正しいです。そしてFedora 23にはデフォルトでは存在しません。
するいいえこれを利用して、任意のシステムを識別します。使いたいのですが、それがどれほど汎用性があるかは/etc/system-release
よく/etc/os-release
わかりません。
少し読んでみると/etc/os-release
付属しているので、systemd
古代の配布(または不愉快な配布systemd
)では動作しないようです。これに関する信頼できる情報が見つかりません/etc/system-release
。互換性が重要な場合は、多くのファイルをスキャンする必要があるようです。または/etc/os-release
極端なケースが重要でない場合に使用してください。