Speciális rendszerjellemzőkSpeciális rendszerjellemzők

Tartalomjegyzék

19.1. Információ speciális szoftvercsomagokról
19.2. Virtuális konzolok
19.3. Billentyűzet-leképezés
19.4. Nyelv- és országspecifikus beállítások

Kivonat

Ez a fejezet a különféle szoftvercsomagokról, a virtuális konzolokról, valamint a billentyűzetkiosztásról tartalmaz információt. Szó lesz olyan szoftverkomponensekről, mint a bash, a cron és a logrotate, mivel ezek megváltoztak vagy bővültek a legutóbbi kiadási ciklusokban. Még akkor is, ha kicsik, vagy csekély fontosságúak, előfordulhat, hogy a felhasználók meg kívánják változtatni az alapértelmezett viselkedésüket, mivel ezek az összetevők jellemzően igen szorosan vannak csatolva a rendszerhez. A fejezet végén egy külön szakasz szól a nyelv- és országspecifikus beállításokról (I18N és L10N).

Információ speciális szoftvercsomagokrólInformáció speciális szoftvercsomagokról

A bash, a cron, a logrotate, a locate, az ulimit és a free programok, illetve a resolv.conf fájl nagyon fontosak a rendszergazdák és sok felhasználó számára. A kézikönyvoldalak és az info oldalak hasznos forrás a parancsokkal kapcsolatban, de nem mindig érhető el mind a kettő. A GNU Emacs egy népszerű, nagyon jól konfigurálható szövegszerkesztő.

A bash csomag és az /etc/profileA bash csomag és az /etc/profile

A bash az alapértelmezett parancsértelmező. Bejelentkezési parancsértelmezőként használva különféle inicializáló fájlokat olvas be. A bash az itt látható sorrendben dolgozza fel őket.

  1. /etc/profile

  2. ~/.profile

  3. /etc/bash.bashrc

  4. ~/.bashrc

A felhasználók saját bejegyzéseket készíthetnek a ~/.profile és ~/.bashrc fájlokban. E fájlok helyes feldolgozásának biztosításához át kell másolni az /etc/skel/.profile vagy /etc/skel/.bashrc alapbeállításokat a felhasználó saját könyvtárába. Célszerű a beállításokat egy frissítés után átmásolni az /etc/skel könyvtárból. Hajtsa végre az alábbi parancsokat a személyes beállítások elvesztésének megakadályozására:

mv ~/.bashrc ~/.bashrc.old
cp /etc/skel/.bashrc ~/.bashrc
mv ~/.profile ~/.profile.old
cp /etc/skel/.profile ~/.profile

A személyes beállításokat ezután vissza kell másolni a *.old fájlokból.

A cron csomagA cron csomag

A parancsok időzített, rendszeres futtatásához a háttérben a cron nevű eszköz használható. A cron speciálisan formázott időzítő táblázatokat használ. Egy részüket a rendszer tartalmazza, de a felhasználók maguk is készíthetnek táblázatokat, ha szükséges.

A cron-táblázatok a /var/spool/cron/tabs könyvtárban találhatók. A /etc/crontab egy rendszerszintű cron- (időzítési) táblázat. A parancsot futtató felhasználó nevét közvetlenül az időzítés megadása után kell beírni. A 19.1. példa - Példa az /etc/crontab egy bejegyzésére esetében ez a root. Az /etc/cron.d könyvtárban található csomagspecifikus táblázatok ugyanezt a formátumot használják. További információk a cron kézikönyvoldalán (man cron) olvashatók.

19.1. példa - Példa az /etc/crontab egy bejegyzésére

1-59/5 * * * *   root   test -x /usr/sbin/atrun && /usr/sbin/atrun

Az /etc/crontab nem dolgozható fel a crontab -e paranccsal. Közvetlenül egy szerkesztőbe kell betölteni, módosítani, majd elmenteni.

Néhány csomag parancsfájlokat telepít az /etc/cron.hourly, /etc/cron.daily, /etc/cron.weekly és /etc/cron.monthly könyvtárakba, amelyek végrehajtását az /usr/lib/cron/run-crons szabályozza. Az /usr/lib/cron/run-crons tizenöt percenként kerül futtatásra a fő táblázat (/etc/crontab) alapján. Ez garantálja, hogy az esetleg elhanyagolt folyamatok is megfelelő időben le legyenek futtatva.

Az óránkénti, napi és egyéb periodikus rendszerkarbantartási feladatok futtatásához távolítsa el rendszeresen az időbélyegfájlokat az /etc/crontab bejegyzéseivel (lásd: 19.2. példa - /etc/crontab: Az időbélyegfájlok eltávolítása, amely az hourly-t, vagyis az óránkéntit távolítja el minden teljes óra előtt, daily-t naponta egyszer, hajnal 2:14-kor stb).

19.2. példa - /etc/crontab: Az időbélyegfájlok eltávolítása

59 *  * * *     root  rm -f /var/spool/cron/lastrun/cron.hourly
14 2  * * *     root  rm -f /var/spool/cron/lastrun/cron.daily
29 2  * * 6     root  rm -f /var/spool/cron/lastrun/cron.weekly
44 2  1 * *     root  rm -f /var/spool/cron/lastrun/cron.monthly

Alternatív megoldásként állítsa be az /etc/sysconfig/cron fájlban a DAILY_TIME értékét arra az időre, amikor a cron.daily induljon. A MAX_NOT_RUN beállítás garantálja, hogy a napi feladatok meg legyenek jelölve futásra, még akkor is, ha a felhasználó hosszabb ideig nem kapcsolta be a számítógépét a meghatározott DAILY_TIME időpontban. A MAX_NOT_RUN változó maximális értéke 14 nap.

A napi rendszerkarbantartási feladatok az átláthatóság kedvéért több parancsfájlba lettek szétosztva. Ezeket az aaa_base csomag tartalmazza. Az /etc/cron.daily fájlban található például a suse.de-backup-rpmdb, suse.de-clean-tmp és a suse.de-cron-local.

Naplófájlok: A logrotate csomagNaplófájlok: A logrotate csomag

A kernel és egy sor rendszerszolgáltatás (démon) rendszeresen rögzítik a rendszer állapotát és bizonyos eseményeken naplófájlokba. Ily módon a rendszergazda bármikor tudja ellenőrizni a rendszer állapotát, könnyebben felismerheti a hibákat vagy hibás működést, és precízen azonosítani tudja a problémákat. Ezek a naplófájlok jellemzően a /var/log könyvtárban tárolódnak és napról napra több helyet foglalnak el. A logrotate csomag segít e fájlok méretének kézben tartásában.

A logrotate beállítása az /etc/logrotate.conf fájlban történik. Az include utasítás adja meg elsősorban a további beolvasandó fájlokat. A naplófájlokat előállító programok saját konfigurációs fájlokat telepítenek az /etc/logrotate.d könyvtárba. Például ilyen programok részei az apache2 (/etc/logrotate.d/apache2) és a syslogd (/etc/logrotate.d/syslog) csomagoknak.

19.3. példa - Példa az /etc/logrotate.conf fájlra

# see "man logrotate" for details
# rotate log files weekly
weekly

# keep 4 weeks worth of backlogs
rotate 4

# create new (empty) log files after rotating old ones
create

# uncomment this if you want your log files compressed
#compress

# RPM packages drop log rotation information into this directory
include /etc/logrotate.d

# no packages own lastlog or wtmp - we'll rotate them here
#/var/log/wtmp {
#    monthly
#    create 0664 root utmp
#    rotate 1
#}

# system-specific logs may be also be configured here.

A működését a cron szabályozza és naponta az /etc/cron.daily/logrotate hívja meg.

[Important]

A create utasítás beolvassa a rendszergazda összes beállítását az /etc/permissions* fájlokból. Ügyeljen rá, hogy a saját módosításokból ne származzon ütközés.

A locate parancsA locate parancs

A locate parancs, amellyel a fájlok gyorsan megkereshetők, nincsen benne a szokásosan telepített szoftverek listájában. Ha hiányozna, telepítse a findutils-locate csomagot. Az updatedb folyamat automatikusan elindul minden éjszaka, vagy mintegy 15 perccel a rendszer elindítása után.

Az ulimit parancsAz ulimit parancs

Az ulimit (user limits, azaz felhasználói korlátozások) paranccsal lehet beállítani és megjeleníteni a rendszererőforrásokra vonatkozó korlátozásokat. Az ulimit parancs különösen hasznos az alkalmazások rendelkezésére álló memória korlátozásában. Így megakadályozható, hogy egy alkalmazás túlságosan sok memóriát használjon el, ami esetleg lefagyaszthatná a rendszert.

Az ulimit különféle paraméterekkel használható. A memóriahasználat korlátozására használja az 19.1. táblázat - ulimit: Felhasználói erőforrások korlátozása táblázatban bemutatott paramétereket.

19.1. táblázat - ulimit: Felhasználói erőforrások korlátozása

-m

a fizikai memória maximális mérete

-v

a virtuális memória maximális mérete

-s

a verem maximális mérete

-c

a core fájlok maximális mérete

-a

a beállított korlátozások megjelenítése


A rendszerszintű beállítások az /etc/profile fájlban adhatók meg. Itt lehet engedélyezni a core fájlok létrehozását, amelyekre a programozóknak van szükségük a hibakereséshez. A normál felhasználók nem növelhetik meg a rendszergazda által az /etc/profilefájlban megadott értékeket, de készíthetnek bejegyzéseket a saját ~/.bashrc fájljukban.

19.4. példa - ulimit: A ~/.bashrc beállításai

# Limits of physical memory:
ulimit -m 98304
 
# Limits of virtual memory:
ulimit -v 98304

A memória mennyiségét kilobájtban kell megadni. Részletesebb információ a man bash kézikönyvoldalon található.

[Important]

Nem minden parancsértelmező támogatja az ulimit direktíváit. A PAM (például a pam_limits) átfogó finomhangolási lehetőségeket biztosít, ha meg kell birkózni ezekkel a korlátozásokkal.

A free parancsA free parancs

A free parancs egy kicsit félrevezető lehet, ha azt kell kideríteni, hogy mennyi RAM-ot is használ éppen a rendszer. A kérdéses információ egyébként a /proc/meminfo fájlban található. Manapság, egy olyan modern operációs rendszert használva, mint a Linux, igazából nem kell a rendelkezésre álló memória mennyiségével foglalkozni. A rendelkezésre álló memória fogalma még az egyesített memóriakezelés előtti időkből származik. Valójában a Linux esetén is igaz a szabad memória rossz memória szabály. A Linux mindig is arra törekedett, hogy kiegyensúlyozza a különböző átmeneti és gyorsítótárakat anélkül, hogy valójában hagyna memóriát parlagon heverni.

A kernel tulajdonképpen semmilyen közvetlen információval nem rendelkezik az egyes alkalmazásokról vagy felhasználói adatokról. Az alkalmazásokat és a felhasználói adatokat egy lapozási gyorsítótáron (page cache) keresztül kezeli. Ha kezd fogyni a memória, akkor annak egyes részei a cserepartícióra vagy fájlokba íródnak, ahonnan az mmap parancs segítségével olvashatók be (lásd man mmap).

A kernel más gyorsítótárakat is tartalmaz. llyen például a slab cache, amelyben a hálózati hozzáféréshez szükséges tárolók találhatók. Mindez talán megmagyarázza a /proc/meminfo fájl számlálói közötti eltéréseket. A legtöbb, bár nem az összes, elérhető a /proc/slabinfo-n keresztül.

Az /etc/resolv.conf fájlAz /etc/resolv.conf fájl

A tartománynevek feloldása az /etc/resolv.conf fájlon keresztül történik.

Ezt a fájlt kizárólag az /sbin/modify_resolvconf parancsfájl frissíti, és semmilyen más programnak nincs jogosultsága az /etc/resolv.conf közvetlen módosítására. E szabály következetes betartásával garantálható csak, hogy a rendszer hálózati beállításai és az érintett fájlok konzisztens állapotban maradjanak.

Kézikönyvoldalak (man) és info oldalakKézikönyvoldalak (man) és info oldalak

Egyes GNU-alkalmazások (például a tar) esetében a kézikönyvoldalakat már nem tartja karban senki. E parancsok esetében a --help paraméterrel lehet gyors áttekintést kapni, illetve az info oldalak tartalmaznak részletesebb magyarázatot. Az info a GNU hiperszöveg-kezelő rendszere. A rendszerről bemutatkozó szöveget az info info parancs beírásával kaphat. Az info oldalak az Emacs segítségével is megtekinthetők az emacs -f info parancs beírásával, vagy a konzolban közvetlenül beírt info paranccsal. Az info oldalak megtekintéséhez használható még a tkinfo, az xinfo, valamint a súgórendszer.

A GNU Emacs beállításaiA GNU Emacs beállításai

A GNU Emacs egy összetett munkakörnyezet. Az alábbi részben áttekintjük, hogyan kerülnek feldolgozásra a konfigurációs fájlok a GNU Emacs indításakor. További információ a http://www.gnu.org/software/emacs/ oldalon található.

Indításkor az Emacs számos fájlt beolvas, amelyek a felhasználó, a rendszergazda, valamint a testreszabó vagy előzetesen beállító disztribútor beállításait tartalmazzák. A ~/.emacs fájl az egyes felhasználók saját könyvtáraiban kerül telepítésre, az /etc/skel sablon alapján. Az .emacs az /etc/skel/.gnu-emacs fájlt olvassa be. A program testreszabásához másolja át a .gnu-emacs fájlt a saját könyvtárába (a cp /etc/skel/.gnu-emacs ~/.gnu-emacs paranccsal) és ott végezze el a kívánt beállításokat.

A .gnu-emacs a ~/.gnu-emacs-custom mint custom-file adja meg. Ha a felhasználók módosítják a beállításokat az Emacs customize utasításaival, akkor ezek a ~/.gnu-emacs-custom fájlba mentődnek el.

SUSE® Linux Enterprise alatt az emacs csomag a site-start.el fájlt az /usr/share/emacs/site-lisp A site-start.el fájl az ~/.emacs fájl előt töltődik be. A site-start.el több más dolog mellett arról gondoskodik, hogy az Emacs kiegészítő csomagjaival, például a psgml csomaggal együtt kapott speciális konfigurációs fájlok automatikusan betöltődjenek. Az ilyen típusű konfigurációs fájlok szintén az /usr/share/emacs/site-lisp könyvtárban találhatók, és a nevük mindig úgy kezdődik, hogy suse-start-. A helyi rendszergazda a default.el fájlban adhat meg az egész rendszerre érvényes beállításokat.

Ezekről a fájlokról további információ az Emacs info fájljában, az Init File részben található: info:/emacs/InitFile. Itt arról is olvashat, hogyan lehet letiltani ezeknek a fájloknak a betöltését (ha szükséges).

Az Emacs komponensei több csomagba vannak osztva:

  • Az alapcsomag az emacs.

  • emacs-x11 (általában telepítésre kerül): a program X11-támogatással.

  • emacs-nox: a program X11-támogatás nélkül.

  • emacs-info: online dokumentáció info formátumban.

  • emacs-el: a lefordítatlan könyvtárfájlok Emacs Lispben. Ezek nem szükségesek a futtatáshoz.

  • Igény esetén számos kiegészítő csomag is telepíthető: emacs-auctex (LaTeX-hez), psgml (SGML-hez és XML-hez), gnuserv (kliens- és kiszolgálóműveletekhez) és még sokminden más.