RHCSA Serie: Yum Package Management, Automatiséierend Aufgaben mat Cron a Monitoring System Logs - Deel 10


An dësem Artikel wäerte mir iwwerpréiwen wéi Dir Packagen am Red Hat Enterprise Linux 7 installéiere kënnt, aktualiséieren an ewechhuelen. Mir wäerten och ofdecken wéi d'Aufgaben mat Cron automatiséiert ginn, a wäerten dëse Guide fäerdeg bréngen, wéi Dir System Logbicher Dateie mat dem Fokus lokaliséiert an interpretéiert. fir Iech ze léieren firwat all dës wesentlech Fäegkeeten fir all Systemadministrator sinn.

Verwalte Packagen Via Yum

Fir e Package mat all sengen Ofhängegkeeten ze installéieren déi net scho installéiert sinn, benotzt Dir:

# yum -y install package_name(s)

Wou Package_name(n) op d'mannst ee richtege Packagenumm representéieren.

Zum Beispill, fir httpd a mlocate ze installéieren (an där Uerdnung), Typ.

# yum -y install httpd mlocate

Notiz: Dass de Buschtaf y am Beispill hei uewen d'Bestätegungsfroen ëmgoen déi yum presentéiert ier Dir den aktuellen Download an d'Installatioun vun de gefrote Programmer ausféiert. Dir kënnt et verloossen wann Dir wëllt.

Par défaut installéiert yum de Package mat der Architektur déi mat der OS-Architektur entsprécht, ausser wann et iwwerschratt gëtt andeems d'Packagearchitektur op säin Numm bäigefüügt gëtt.

Zum Beispill, op engem 64 Bit System, yum Install Package wäert d'x86_64 Versioun vum Package installéieren, wärend yum install package.x86 (wann verfügbar) den 32-Bit installéiere wäert.

Et ginn Zäiten wou Dir e Package installéiere wëllt, awer wësst net säin exakten Numm. D'Sich all oder d'Sichoptiounen kënnen déi aktuell aktivéiert Repositories no engem bestëmmte Schlësselwuert am Package Numm an/oder a senger Beschreiwung och, respektiv, sichen.

Zum Beispill,

# yum search log

sicht déi installéiert Repositories no Packagen mam Wuertprotokoll an hiren Nimm a Resuméen, wärend

# yum search all log

sicht datselwecht Schlësselwuert och an der Package Beschreiwung an URL Felder.

Wann d'Sich e Paketoplëschtung zréckkënnt, wëllt Dir vläicht weider Informatioun iwwer e puer vun hinnen weisen ier Dir installéiert. Dat ass wann d'Infooptioun praktesch kënnt:

# yum info logwatch

Dir kënnt regelméisseg no Aktualiséierunge mat dem folgenden Kommando kucken:

# yum check-update

Deen uewe genannte Kommando wäert all déi installéiert Packagen zréckginn fir déi en Update verfügbar ass. Am Beispill am Bild hei ënnen ass nëmmen rhel-7-server-rpms en Update verfügbar:

Dir kënnt dann dee Package eleng aktualiséieren mat,

# yum update rhel-7-server-rpms

Wann et e puer Packagen sinn déi aktualiséiert kënne ginn, yum Update wäert se all op eemol aktualiséieren.

Elo wat geschitt wann Dir den Numm vun engem ausführbar kennt, wéi ps2pdf, awer wësst net wéi ee Package et ubitt? Dir kënnt erausfannen mat yum whatprovides \*/[ausführbar]:

# yum whatprovides “*/ps2pdf”

Elo, wann et drëm geet e Package ze läschen, kënnt Dir dat mat Yum Remove Package maachen. Einfach, oder? Dëst weist datt Yum e komplette a mächtege Package Manager ass.

# yum remove httpd

Liest och: 20 Yum Kommandoen fir RHEL 7 Package Management ze managen

Good Old Plain RPM-

RPM (alias RPM Package Manager, oder ursprénglech RedHat Package Manager) kann och benotzt ginn fir Packagen z'installéieren oder ze aktualiséieren wann se a Form vu Standalone .rpm Packagen kommen.

Et gëtt dacks mat de -Uvh Fändelen benotzt fir unzeginn datt et de Package sollt installéieren wann et net scho präsent ass oder probéiert et ze aktualiséieren wann et installéiert ass (-U), produzéiert e verbose Output (-v) an eng Fortschrëttsbar mat Hashmarken (-h) wärend d'Operatioun duerchgefouert gëtt. Zum Beispill,

# rpm -Uvh package.rpm

Eng aner typesch Notzung vun rpm ass eng Lëscht vun aktuell installéiert Pakete matrpm -qa ze produzéieren (kuerz fir all Ufro):

# rpm -qa

Liest och: 20 RPM Kommandoen fir Packagen an RHEL 7 z'installéieren

Aufgaben Zäitplang mat Cron

Linux an aner Unix-ähnlech Betribssystemer enthalen en Tool mam Numm Cron, dat Iech erlaabt Aufgaben ze plangen (dh Kommandoen oder Shell-Skripte) fir periodesch ze lafen. Cron kontrolléiert all Minutt den /var/spool/cron Verzeichnis fir Dateien déi no Konten an /etc/passwd benannt ginn.

Wann Dir Kommandoen ausféiert, gëtt all Ausgang un de Besëtzer vun der Crontab gepost (oder un de Benotzer spezifizéiert an der MAILTO Ëmfeldvariabel an der /etc/crontab, wann et existéiert).

Crontab Dateien (déi erstallt ginn andeems Dir crontab -e tippt an Enter dréckt) hunn de folgenden Format:

Also, wa mir déi lokal Dateidatenbank wëllen aktualiséieren (déi benotzt gëtt vu Locate fir Dateien mam Numm oder Muster ze fannen) all zweeten Dag vum Mount um 2:15 Auer, musse mir déi folgend Crontab-Entrée derbäi:

15 02 2 * * /bin/updatedb

Déi uewe genannte Crontab-Entrée liest, \Run /bin/updatedb op den zweeten Dag vum Mount, all Mount vum Joer, onofhängeg vum Dag vun der Woch, um 2:15 Auer. , de Stär Symbol gëtt als Wildcard Charakter benotzt.

Nodeems Dir eng Cron Job bäigefüügt hutt, kënnt Dir gesinn datt eng Datei mam Numm Root an /var/spool/cron bäigefüügt gouf, wéi mir virdru scho gesot hunn. Dës Datei lëscht all d'Aufgaben déi de Crond Daemon soll lafen:

# ls -l /var/spool/cron

Am uewe genannte Bild kann de Crontab vum aktuelle Benotzer entweder mat Cat /var/spool/cron/root ugewise ginn oder,

# crontab -l

Wann Dir eng Aufgab op enger méi feinkorrekter Basis muss lafen (zum Beispill zweemol am Dag oder dräimol all Mount), kann cron Iech och hëllefen dat ze maachen.

Zum Beispill, fir /my/script op den 1. an 15. vun all Mount ze lafen an all Ausgab op /dev/null ze schécken, kënnt Dir zwee crontab Entréen wéi follegt addéieren:

01 00 1 * * /myscript > /dev/null 2>&1
01 00 15 * * /my/script > /dev/null 2>&1

Awer fir datt d'Aufgab méi einfach ze erhalen ass, kënnt Dir béid Entréen an een kombinéieren:

01 00 1,15 * *  /my/script > /dev/null 2>&1

Nom virege Beispill kënne mir /my/other/script um 1:30 Auer den éischten Dag vum Mount all dräi Méint lafen:

30 01 1 1,4,7,10 * /my/other/script > /dev/null 2>&1

Awer wann Dir eng gewëssen Aufgab all \x Minutten, Stonnen, Deeg oder Méint widderhuelen musst, kënnt Dir déi richteg Positioun no der gewënschter Frequenz deelen.Déi folgend Crontab-Entrée huet genau déiselwecht Bedeitung wéi déi virdrun:

30 01 1 */3 * /my/other/script > /dev/null 2>&1

Oder vläicht musst Dir eng gewëssen Aarbecht op enger fixer Frequenz lafen oder nodeems de System booten, zum Beispill. Dir kënnt eng vun de folgende String benotzen amplaz vun de fënnef Felder fir déi exakt Zäit unzeginn, wann Dir wëllt datt Är Aarbecht leeft:

@reboot    	Run when the system boots.
@yearly    	Run once a year, same as 00 00 1 1 *.
@monthly   	Run once a month, same as 00 00 1 * *.
@weekly    	Run once a week, same as 00 00 * * 0.
@daily     	Run once a day, same as 00 00 * * *.
@hourly    	Run once an hour, same as 00 * * * *.

Liest och: 11 Kommandoen fir Cron Jobs an RHEL 7 ze plangen

Logbicher lokaliséieren an iwwerpréiwen

System Logbicher sinn am/var/log Verzeichnis lokaliséiert (a rotéiert). Laut dem Linux Filesystem Hierarchy Standard enthält dëse Verzeechnes verschidde Logdateien, déi dorop geschriwwe ginn oder e passende Ënnerverzeechnes (wéi Audit, httpd oder Samba am Bild hei ënnen) vun den entspriechende Daemonen wärend der Systemoperatioun:

# ls /var/log

Aner interessant Logbicher sinn dmesg (enthält all Messagen aus Kernel Ring Puffer), sécher (Logbicher Verbindung Versich datt Benotzer Authentifikatioun verlaangen), Messagen (system-breet Messagen) an wtmp (Records vun all Benotzer Login an Logouts).

Logbicher si ganz wichteg an datt se Iech erlaben en Abléck ze hunn wat zu all Moment an Ärem System lass ass, a wat an der Vergaangenheet geschitt ass. Si representéieren en onermiddlecht Tool fir e Linux-Server ze léisen an ze iwwerwaachen, a ginn dofir dacks mam tail -f Kommando benotzt fir Eventer an Echtzäit ze weisen, wéi se geschéien an an engem Logbuch opgeholl ginn.

Zum Beispill, wann Dir Kernel-relatéiert Eventer wëllt weisen, gitt de folgende Kommando:

# tail -f /var/log/dmesg

Selwecht wann Dir Zougang zu Ärem Webserver wëllt gesinn:

# tail -f /var/log/httpd/access.log

Resumé

Wann Dir wësst wéi Dir Packagen effizient verwalten, Aufgaben plangen, a wou Dir no Informatioun iwwer déi aktuell a vergaangen Operatioun vun Ärem System kuckt, kënnt Dir sécher sinn datt Dir net ganz dacks iwwerrascht. Ech hoffen dësen Artikel huet Iech gehollef Äert Wëssen iwwer dës Basisfäegkeeten ze léieren oder z'erfrëschen.

Zéckt net eis eng Zeil ze schécken andeems Dir de Kontaktformular hei drënner benotzt wann Dir Froen oder Kommentarer hutt.