web-dev-qa-db-ja.com

ディストリビューションがFedoraベースであるかどうかを確認するにはどうすればよいですか?

LinuxディストリビューションがFedoraコアベース(Fedora、RHEL、CentOS、Scientific Linuxなど)の場合、Python M2Cryptoライブラリには わずかに異なるインストールコマンド が必要です。

ディストリビューションがFedora-Coreベースであるかどうかを確認する方法はありますか?それで、ディストリビューションに応じて正しいインストールコマンドを実行するスクリプトを書くことができますか?

3
Lorin Hochstein

プラットフォームがFedoraベースであるかどうかを確認しないでください。この特定の回避策が必要かどうかを確認してください。次のコマンドを実行します:ls /usr/include/openssl/*-*そして、opensslconf-x86_64.hファイルまたはopensslconf-i386.hファイルがあるかどうかを確認します。

2
David Schwartz

これはディストリビューションがどれだけ変更されたかによって異なりますが、通常はリリースの名前を明らかに含む/etc/Fedora-releaseという名前のファイルがあるはずです(驚きです!)私のFedoraラップトップには次の行が含まれています

 Fedora release 14 (Laughlin)

CentOSサーバーではredhat-release

 [0] ktf> cat /etc/redhat-release
 CentOS release 5.6 (Final)

SciLiにはファイルredhat-releaseも含まれていると思います(ただし、現時点ではわかりません)。

4
ktf

すべてのrpmで「release」というrpm名を検索します。私がチェックしたすべてのディストリビューションには、そのような名前が付いています(RedHat、CentOS 3/4/5、SLES 9/10/11)。それから、それがどのディストリビューションであるかを推測できます(少なくとも、メジャーリリースはそのrpmのバージョンとして表されることもよくあります)。

多くの「プロフェッショナル」スクリプト(Dell-OMSAなど)は、/ etc/redhat-relase、/ etc/SuSE-releaseを検索し、これらを解析してメジャー/マイナーバージョンを取得します。

1
Nils