Saya melihat posting ini tentang berbagai cara untuk mengetahui distro apa yang diinstal, jadi saya mencoba menulis skrip yang mencoba semuanya. Perintah yang mungkin termasuk:
$ cat /etc/lsb-release
$ cat /etc/issue
$ dmesg | head -1
$ cat /proc/version
$ cat /etc/slackware-version
$ cat/etc/debian-verion
Saya mencoba menulis sesuatu seperti ini (saya berbicara bahasa Spanyol secara normal, jadi dalam bahasa Spanyol):
function Nombre_SO()
{
DistroName="Linux"
if [ $DistroName = Linux ] ;
then
# Debian
debian=`cat /etc/debian_version | cut -d " " -f01 | tr '[:upper:]' '[:lower:]'`
if [ "$debian" = "debian" || "squeeze/sid" || "lenny" ];
then
DistroName="debian"
else
echo "Esto no es debian"
fi
# Slackware
slackware=`cat /etc/slackware-version | cut -d " " -f01` | tr '[:upper:]' '[:lower:]'`
if [ "$slackware" = "slackware" || "slackware-x86_64" ];
then
DistroName="slackware"
else
echo "Esto no es Slackware"
}
Dapatkah seseorang membantu saya memasukkan semua cara lain untuk mendapatkan nama distro?
Ini adalah sedikit metode "brute-force" untuk menyelesaikan sesuatu, tapi ini cepat dan harus, menggunakan bash, bekerja pada sebagian besar distro
sumber
Jika Anda tidak takut dengan ketergantungan tambahan, Anda dapat menggunakan facter untuk itu. Ini memberikan informasi tentang nama dan versi distro bahkan tanpa lsb_release diinstal.
sumber