Saniyede içinde Sunucusu bilgilerini toplamak için nasıl

A+ A-

Bu yazıda, sistem yöneticileri için çok fazla zaman tasarrufu yardımcı olabilecek bazı verimlilik iyileştirme ucu sağlamak için gidiyoruz. Burada, saniyede sunucu bilgi toplamak için nasıl öğreneceklerini. Bazılarınız farkında olabileceği gibi, sunucular ve varlık envanter bilgi toplamaya onlar veri getirmek için çeşitli komutlar sağlamak gerekiyor burada yöneticilerin önemli sorumluluklarından biridir. Ancak, bir komut dosyası kullanarak kendi iş yükünü azaltmak için çalışıyoruz. hoşuna gidecek Umut!

Toplama Sunucu Bilgileri

Biz bir kabuk komut dosyası kullanarak bunu başarabilirsiniz.

Aşağıdaki komutu kullanarak boş bir dosya oluşturma

 $ Dokunmatik serverinfo.sh 

Dosyayı düzenleyerek sunucu bilgilerini toplamak için bu komut dosyası komutu ekleyin.

 $ Vi serverinfo.sh
#! / Bin / bash
# Bu script küçük sürede sunucu bilgilerini toplayacaktır.
MAILLIST=info@domain.com
ALAN = domain
SICAKLIK = / tmp / serverinfo
DOSYA = / tmp / serverinfo / info.txt
USERID = `kimlik -g`
Eğer [$ USERID == 0]; sonra
echo "Senaryo Yayınlanıyor ..."
başka
"Kök kullanıcıyı kullanarak komut dosyasını çalıştırın" echo
çıkış
fi
mkdir / tmp / serverinfo
/tmp/serverinfo/info.txt dokunma
echo -e "\ n"> $ DOSYA
Yankı "Sunucu Bilgi Toplama" >> $ DOSYA
echo -e "\ n" >> $ FILEecho "sunucudan bilgi toplama ...."
>> $ DOSYASINI: "` date` Tarihi" echo
>> $ DOSYASINI: "` hostname` HostName" echo
>> $ DOSYA |: "Baş -1`` cat / etc / issue OS Sürümü Yüklü" echo
inet addr | "grep / sbin / ifconfig -a` "echo" | awk:;> $ TEMP ' "` BEGIN {FS ="} {print $ 2}'"
Yankı: | >> $ DOSYA "IP Adresi` egrep '^ 10' $ TEMP awk ` '{print $ 1}'"
## Donanım Platformu belirlenmesi ##
HF = `'uname -i`
eğer [$ HF == i386]; sonra
"Donanım Platformu 32 bit" >> $ DOSYASI yankı
else if [$ HF == x86_64]; sonra
>> $ DOSYA: "64Bit Donanım Platformu" echo
başka
>> "Donanım eşleşti değil" $ DOSYA echo
fi
fi
## OS Bilgisi ##
"" Echo >> $ DOSYA
Yankı "## OS Sürümü" >> $ DOSYA
Kafa -N1 / etc / issue >> $ DOSYA
-en '\ n' >> $ DOSYASI yankı
uname -a >> $ DOSYA
## işlemci kullanımının Bilgi ##
"" Echo >> $ DOSYA
"" Echo >> $ DOSYA
echo "## CPU Bilgisi" >> $ DOSYA
grep "model adı" / proc / cpuinfo >> $ DOSYA
## RAM / hafıza kullanımı Bilgi ##
"" Echo >> $ DOSYA
"" Echo >> $ DOSYA
"## Hafıza Bilgisi" >> $ DOSYA echo
grep MemTotal / proc / meminfo >> $ DOSYA
y = `grep MemTotal / proc / meminfo | awk '{print $ 2}'`
MB = "$ (($ y 1024 /))"
gb = "$ (($ mb / 1024))"
echo "RAM: $ gb GB" >> $ DOSYA
echo -e '\ n' >> $ DOSYASI
echo "Sabit Disk Kullanımı Bilgi" >> $ DOSYA
fdisk -l 2> & 1 | grep Disk | grep -v "tanımlayıcı" | grep -v "geçerli bölüm" | awk '{$ 2, $ 3, 4 $ yazdırmak}' >> $ DOSYASI
echo -e '\ n' >> $ DOSYASI
>> "Hizmetler Running" $ DOSYA echo
hizmet --status-all | grep çalışıyor. | Awk >> $ DOSYASINI '{$ 1, 5 $ yazdırmak}'
/ Bin / postanızın -s "Linux Sunucu Varlık Envanteri` hostname`" $ Mailist <$ DOSYA 

Biz buna göre alan adı olan sisteminizle domain.com adını değiştirmek için gerekli

Komut İzni Yürütme sağlanması

Biz dosyanın çalıştırılabilir olması böylece, dosya izni değiştirmek için gereken

 $ Chmod 700 -R serverinfo.sh 

Sonra aşağıda komutla sunucu bilgileri bu dosyada çalıştırmak için gerekli -

 $ ./serverinfo.sh
örnek bilgi şu şekilde görünecektir olacak
# Sunucu Bilgi Toplama
Tarih: Per 2 Haziran 20:16:56 2016 IS
AnaMakineAdı: mail.domain.com
Yüklü OS Sürümü: CentOS 6.8 (Final) bırakın
IP adresi :
Donanım Platformu: 64Bit
## işletim şekli
CentOs 6.8 (Son) serbest
Linux mail.domain.com 2.6.32-642.1.1.el6.x86_64 1. SMP Sal 31 Mayıs 21:57:07 UTC 2016 x86_64 x86_64 x86_64 GNU / Linux
## Bilgi İşlemci
Model adı: Intel (R) çekirdek (TM) i7-3615QM işlemci @ 2.30GHz
Model adı: Intel (R) çekirdek (TM) i7-3615QM işlemci @ 2.30GHz
## Bellek Bilgisi
MemTotal: 1016152 kB
RAM: 0 GB
mail.domain.com NIS parçası değildir
Sabit Disk Kullanımı Bilgi
/ Dev / sda: 68.7 GB
/ Dev / eşleyici / VolGroup-lv_root: 53.7 GB
/ Dev / mapper / VolGroup-lv_swap: 2113 MB
/ Dev / eşleyici / VolGroup-lv_home: 12.4 GB
Hizmetler Koşu
çalışan auditd ...
Crond çalışan ... 

Komut değiştirme birden Sunucular Çalıştırılması

Biz birden fazla sunucu üzerinde bu komut dosyasını çalıştırmak istiyorsak, aynı şeyi aşağıda komut dosyası kullanabilirsiniz

 $ Vi /etc/multi_server.sh
eğer [ "$ #" = 0]; sonra
"Kullanımı: sh multiserver.sh dosyayı" echo
else if [-f "$ 1"]; sonra
i kedi `in $ için 1`; scp serverinfo.sh kök @ $ yapmak i: / root /; tamam
i kedi `in $ için 1`; i /root/serverinfo.sh Sh ssh root @ $ yapmak; tamam
başka
echo "$ 1 bulunamadı"
fi
fi 

Aşağıdaki Command kullanarak Dosya mulit_server.sh Çalıştırılabilir yapın

 $ Chmod 777 -R multi_server.exe
$ ./multi_server.sh 

Bu komut dosyasını kullanarak bir sistem yöneticisi kolaylığı (CPU, Disk Sürücüler, Bellek bilgi, vs.) ile sunucu bilgilerini toplayabilir. bu kadar çok zaman kazandırabilir ve gidiş ve diğer görevler için aramaya devam nereye Birçok sunucularında bilgi toplamak için bu komut dosyasını kullanabilirsiniz