Dokumentáció/SL9.3/Rendszer/A SUSE LINUX speciális jellemzői

Icon-susecd.png Ez a fejezet a Linux szabványokról, különféle szoftvercsomagokról, a virtuális konzolokról, valamint a billentyűzetkiosztásról tartalmaz információt. Ezt követi egy fejezet a nyelv- és országspecifikus beállításokról.

Linux szabványok

A Linux Standard Base (LSB)

A SUSE aktívan támogatja a Linux Standard Base projekt erőfeszítéseit. A projekttel kapcsolatos legfrissebb hírek a http://www.linuxbase.org címen találhatók. Az aktuális LSB specifikáció az 1.3.x-es változat. A Fájlrendszer-hierarchia szabvány (FHS) mellett - amely most már szintén része az LSB-nek - a specifikáció meghatározza a csomagok formátumát, valamint a rendszer felépítésének részleteit (bővebb információ: A Linux-rendszer indítása és beállítása). . Az LSB specifikáció jelenleg csak x86 architektúrára elérhető.

Fájlrendszer-hierarchia szabvány (FHS)

Az LSB specifikációnak megfelelően a SUSE LINUX kompatibilis a File System Hierarchy Standard vagy FHS (csomag: fhs) szabvánnyal. További infomáció: http://www.pathname.com/fhs/. Ezért több esetben néhány fájl és könyvtár áthelyezése vált szükségessé, azok megfelelő, FHS szerinti helyére. Az FHS egyik célja például, hogy olyan struktúrát határozzon meg, amelyben az /usr könyvtár felcsatolható csak olvasható módban.

JPackage szabvány Java csomagokhoz

A Java csomagok a JPackage szabványt követik (http://www.jpackage.org/). További információ: file:///usr/share/doc/packages/jpackage-utils/.

teTeX – TeX a SUSE LINUX-ban

A TeX egy sokoldalú kiadványszerkesztő rendszer, amely számos platformon fut, és kiegészíthető makrócsomagokkal is, mint például a LaTeX. Számos fájlból áll, amelyet a TeX könyvtárstruktúra (TDS) szerint kell elhelyezni (bővebben lásd ftp://ftp.dante.de/tex-archive/tds/). A teTeX a jelenlegi TeX szoftver fordítása. SUSE LINUX rendszeren a teTeX oly módon kerül telepítésre, hogy megfeleljen mind a TDS, mind az FHS követelményeinek.

Mintakörnyezet HTTP kiszolgálóhoz

SUSE LINUX alatt az Apache az alapértelmezett webkiszolgáló. Az Apache telepítésével néhány mintadokumentum is elérhetővé válik a /srv/www könyvtárban. Saját webkiszolgáló beállításához vegyen fel egy saját DocumentRoot szakaszt a /etc/httpd/httpd.conf fájlban és helyezze el a kívánt fájlokat (web lapok, dokumentumok) ennek megfelelően.

Mintakörnyezet FTP kiszolgálóhoz

Az FTP-kiszolgáló egyszerű üzembeállításához az ftpdir csomag tartalmaz egy mintakörnyezetet, amelyet az /srv/ftp könyvtárba telepít.

Információ speciális szoftvercsomagokról

A bash csomag és az /etc/profile

Az alábbiakban felsoroljuk, hogy a Bash milyen inicializáló (init) fájlokat olvas be, ha bejelentkezési parancsértelmezőként használjuk. A Bash az itt látható sorrendben dolgozza fel őket.
  1. /etc/profile
  2. ~/.profile
  3. /etc/bash.bashrc
  4. ~/.bashrcA 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 csomag

A cron-táblázatok a /var/spool/cron/tabs könyvtárban találhatók. Az /etc/crontab fájl 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 Példa az /etc/crontab egy bejegyzésére esetében ez a felhasználó 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: man cron.


Icon-example.png 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 utasításait 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.

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 backup-rpmdb, a clean-tmp és a clean-vi.

Naplófájlok: A 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.

Átállás a logrotate használatára

Az alább felsorolt régi beállítások átvételre kerülnek, ha a SUSE LINUX 8.0-nál régebbi verzióról frissít:
  • Az /etc/logfile fájl egy adott csomaghoz nem rendelt bejegyzései átkerülnek az /etc/logrotate.d/aaa_base fájlba.
  • A korábbi rc.config fájl MAX_DAYS_FOR_LOG_FILES változója a konfigurációs fájlban mint dateext és maxage van leképezve. További információ: man logrotate.

Beállítás

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 SUSE LINUX garantálja, hogy a naplófájlokat előállító programok létrehoznak saját konfigurációs fájlokat az /etc/logrotate.d könyvtárban. Például ilyen programok részei az apache2 (/etc/logrotate.d/apache2) és a syslogd (/etc/logrotate.d/syslog) csomagoknak.


Icon-example.png Példa az /etc/logrotate.conf fájlra

# további részletek: "man logrotate"
# naplófájlok heti forgatása
weekly

# 4 hétnyi napló megőrzése
rotate 4

# új (üres) naplófájlok készítése a régiek forgatása után
create

# törölje a megjegyzést, ha tömöríteni akarja a naplófájlokat
#compress

# az RPM-csomagok ebbe a könyvtárba rakják le a forgatási információt
include /etc/logrotate.d

# a lastlog és a wtmp egy csomaghoz sem tartozik - itt fogjuk őket forgatni
#/var/log/wtmp {
#    monthly
#    create 0664 root utmp
#    rotate 1
#}

# beállíthatók rendszerspecifikus naplók is.

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

Icon-Important.png Fontos!

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.

Kézikönyvoldalak (man)

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 infoinfo 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 SUSE súgórendszere.

A locate parancs

A locate parancs szolgál a telepített szoftverek szokásos helyein kívül található fájlok megkeresésére. Ha hiányozna, telepítse a csomagot (find-locate) Az updatedb folyamat automatikusan elindul minden éjszaka, vagy mintegy 15 perccel a rendszer elindítása után.

Az 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 alábbi táblázatban ( ulimit: A felhasználó számára biztosított erőforrások korlátozása) bemutatott paramétereket.


Táblázat: : A felhasználó számára biztosított 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/profile fájlban megadott értékeket. Készíthetnek viszont bejegyzéseket a saját ~/.bashrc fájljukban.


Icon-example.png Példa: ulimit: A ~/.bashrc beállításai

# A fizikai memória korlátozása:
ulimit -m 98304
 
# A virtuális memória korlátozása:
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ó.

Icon-Important.png Fontos!

Nem minden héjprogram 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 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. Maga 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 fájlon keresztül.

Az /etc/resolv.conf fájl

A tartománynevek feloldása az /etc/resolv.conf fájlon keresztül történik. Lásd: A DNS (tartománynévrendszer, Domain Name Rendszer).
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.

A GNU Emacs beállításai

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

Indításkor az Emacs számos fájlt beolvas, amelyek a felhasználó, a rendszergazda, valamint a testreszabó vagy előzetes 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 fájlt mint custom-file adja meg. Ha a felhasználók módosítják a beállításokat a customize utasításokkal, akkor ezek a ~/.gnu-emacs-custom fájlba kerülnek elmentésre.

SUSE LINUX alatt az emacs csomag a site-start.el fájlt az /usr/share/emacs/site-lisp könyvtárba telepíti. A site-start.el fájl még a ~/.emacs inicializáló fájl előtt kerül betöltésre. 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ésre kerüljenek. 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 fájl 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 szerverműveletekhez) és még sokminden más.

Rövid ismerkedés a vi szerkesztővel

A programozáson túl különféle rendszerfelügyeleti feladatok elvégzésére is szükség van még ASCII-szövegszerkesztőkre (text editor). A Unix világában a vi az a szerkesztő, amelyik meglepően széleskörű funkcionalitást kínál, ugyanakkor ergonomikusabb, mint sok más, egérhasználatot is lehetővé tevő szerkesztő.

Működési módok

A vi háromféle módban működhet: beszúrási módban, parancs módban és kiterjesztett módban. Az egyes billentyűknek más hatása van a módoktól függően. Induláskor a vi általában parancs módban indul. Az első dolog, hogy megtanuljunk váltani a módok között:

Parancs módból beszúrási módba
Ez többféleképp is lehetséges: az A megnyomására hozzáfűzés, az I megnyomására beszúrás történik, az O megnyomására pedig egy új sor kerül beszúrásra az aktuális sor alatt.
Beszúrási módból parancs módba
A beszúrási módból az Esc billentyű megnyomásával lehet kilépni. A vi semmiképpen nem állítható le beszúrási módban, ezért fontos, hogy hozzászokjon az Esc billentyű használatához.
Parancs módból kiterjesztett módba
A vi kiterjesztett módja egy kettőspont (:) beírásával érhető el. A kiterjesztett, rövid nevén ex mód olyan, mint egy kis egysoros, különféle egyszerű és bonyolultabb feladatokra használható szerkesztő.
Kiterjesztett módból parancs módba
A kiterjesztett módból a szerkesztő egy parancs végrehajtása után automatikusan visszatér parancs módba. Ha nem kíván semmilyen parancsot végrehajtani kiterjesztett módban, akkor törölje a kettőspontot a billentyűvel. Ennek hatására a szerkesztő visszatér parancs módba.Beszúrási módból nem lehet közvetlenül kiterjesztett módba kapcsolni anélkül, hogy előbb vissza ne térne parancs módba.

A vi-nak, hasonlóan más szerkesztőkhöz, megvan a maga saját kis eljárása a program leállítására. Beszúrási módban a vi nem állítható le. Először lépjen ki a beszúrási módból az Esc billentyű lenyomásával. Ezután két lehetőség közül választhat:

  1. Kilépés mentés nélkül: Ha a módosítások mentése nélkül kíván kilépni a szerkesztőből, írja be a : Q ! parancsot parancs módban. A felkiáltójel (!) hatására a vi figyelmen kívül hagyja a változásokat.
  2. Mentés és kilépés: A módosítások mentésére és a szerkesztőből kilépésre többféle lehetőség is van. Parancs módban használhatja a Z Z billentyűkombinációt. Ha kiterjesztett módból akar kilépni a programból a módosítások elmentésével, írja be, hogy : W Q. Kiterjesztett módban a W az »írást« (write) a Q pedig a »kilépést« (quit) jelenti.

A vi működés közben

A vi ugyanúgy használható, mint a többi szerkesztőprogram. Beszúrás módban szabadon írható be szöveg, illetve törölhetők karakterek a és billentyűkkel. A kurzor a nyíl billentyűkkel mozgatható.

Ezek a vezérlőbillentyűk azonban sokszor okoznak gondot, mert akadnak termináltípusok, amelyek speciális billentyűkombinációkat használnak. Itt segít a parancs mód. Nyomja meg az Esc billentyűt, mire visszalép beszúrás módból parancs módba. Parancs módban a kurzor a H, J, K ésL billentyűkkel mozgatható.

Az egyes billentyűk hatása:

H
egy karakterrel balra mozgás
J
egy sorral lejjebb mozgás
K
egy sorral feljebb mozgás
L
egy karakterrel jobbra mozgásA parancs mód parancsai sokféleképpen variálhatók. Ha egy parancsot többször egymás után kíván végrehajtani, egyszerűen írja be a parancs elé az ismétlések számát. Az 5L leütésére például a kurzor 5 karakterrel jobbra mozog.

További információ

A vi sokféle parancsot ismer. Használhatók makrók, billentyűparancsok, megnevezett pufferek, és még sok-sok egyéb hasznos funkció. A különféle lehetőség részletes leírása messze meghaladja a jelen kézikönyv lehetőségeit. A SUSE LINUX a vim (vi improved) nevű programot, a vi egy még tovább fejlesztett változatát tartalmazza. Az alkalmazással kapcsolatban igen sokféle forrásból szerezhető információ:

Icon-Important.png A VIM-licenc

A vim charityware, ami azt akarja jelenteni, hogy bár a szerzők maguk nem kérnek pénzt a szoftverért, de kérik, hogy a felhasználók támogassanak valamilyen nonprofit projektet pénzükkel. Konkrétan a projekt fel is kér az ugandai szegény gyerekek megsegítésére. További információ online, a http://iccf-holland.org/index.html, http://www.vim.org/iccf/ és http://www.iccf.nl/ címeken olvasható.

Virtuális terminálok

A Linux egy többfeladatos és többfelhasználós operációs rendszer. Ennek előnyeit előbb-utóbb értékelni fogjuk, még akkor is, ha számítógépünket csak egyedül használjuk. Szöveges módban hat virtuális konzol áll rendelkezésre. Ezek között az Alt-F1 - Alt-F6 billentyűkombinációkkal lehet váltani. A hetedik konzol az X, a grafikus felület számára van lefoglalva. Az /etc/inittab fájl módosításával több vagy kevesebb konzol is beállítható.Ha a grafikus felületről kíván átkapcsolni egy szöveges konzolra az X leállítása nélkül, használja a Ctrl-Alt-F1 - Ctrl-Alt-F6 billentyűkombinációkat. A szöveges képernyőről az Alt-F7 lenyomásával lehet visszatérni az X környezet alá.

Billentyűzet-leképezés

A programok billentyűzet-leképezésének szabványosítása érdekében az alábbi fájlok módosításra kerültek:
/etc/inputrc
/usr/X11R6/lib/X11/Xmodmap
/etc/skel/.Xmodmap
/etc/skel/.exrc
/etc/skel/.less
/etc/skel/.lesskey
/etc/csh.cshrc
/etc/termcap
/usr/lib/terminfo/x/xterm
/usr/X11R6/lib/X11/app-defaults/XTerm
/usr/share/emacs/<VERSION>/site-lisp/term/*.el
Ezek a változások csak azokat az alkalmazásokat érintik, amelyek a terminfo bejegyzéseit használják, vagy amelyek konfigurációs fájljai közvetlenül (vi, less stb.) kerülnek módosításra. A szállított SUSE LINUX részét nem képező alkalmazásokban ezekhez az alapértelmezésekhez kell igazodni.X alatt az összetétel billentyű (multikey) a Ctrl-Shift (jobb) segítségével érhető el. Tekintse meg továbbá az /usr/X11R6/lib/X11/Xmodmap vonatkozó bejegyzését.További beállítások lehetségesek az »X Keyboard Extension« (XKB) segítségével. Ezt a kiterjesztést használja a GNOME (gswitchit) és KDE (kxkb) asztali környezet is. Az XKB-ről az /etc/X11/xkb/README és a benne felsorolt dokumentumok tartalmaznak információt.Részletes információ a kínai, japán és koreai (CJK) karakterek beviteléről Mike Fabian oldalán olvasható: http://www.suse.de/~mfabian/suse-cjk/input.html.

Nyelv- és országspecifikus beállítások

A SUSE LINUX igen nagy mértékben lokalizálható és igen rugalmasan a helyi igényekhez igazítható. Más szavakkal, a nemzetközi igényekhez alakítás (internationalization, I18N) lehetővé teszi az egyedi honosítást (localization, L10N). Az I18N és L10N rövidítések az angol szavak első és utolsó betűjéből, illetve a kihagyott betűk számából származnak.

A beállításokat az /etc/sysconfig/language fájlban található LC_ változókkal lehet megadni. Ezek nemcsak a nemzeti nyelv támogatására vonatkoznak, hanem az Üzenetek (nyelv), Karakterkészlet, Rendezési sorrend, Dátum és idő, Számok és a Pénznem beállítására is. A kategóriák mindegyike megadható közvetlenül a saját változójával, vagy közvetve, a language fájl egy fő változójával (lásd a man locale kézikönyvoldalt).

RC_LC_MESSAGES, RC_LC_CTYPE, RC_LC_COLLATE, RC_LC_TIME, RC_LC_NUMERIC, RC_LC_MONETARY
Ezek a változók az RC_ előtag nélkül kerülnek átadásra a parancsértelmezőnek, és ezek szabályozzák a fenti kategóriákat. Az érintett fájlok listája alább látható. Az aktuális beállítások a locale paranccsal jeleníthetők meg.
RC_LC_ALL
Ez a változó (ha be van állítva) felülírja a fent említett változók értékét.
RC_LANG
Ha a fenti változók egyike sincs beállítva, a rendszer ezt használja maradék lehetőségként. Alapértelmezésben a SUSE LINUX csak az RC_LANG változót állítja be. Így egyszerűbb a felhasználóknak beírniuk a saját értékeiket.
ROOT_USES_LANG
Egy yes/no típusú változó. Ha az értéke no, akkor a root mindig a POSIX környezetben dolgozik.A többi változó a YaST sysconfig-szerkesztőjével állítható be. Az ilyen változók értéke egy nyelvkódból, egy országkódból, egy kódolásból és egy módosítóból áll. Az egyes elemeket speciális karakterek kötik össze:
LANG=<nyelv>[[_<COUNTRY>].<Kódolás>[@<Módosító>]]

Néhány példa

A nyelv és az ország kódját mindig egyszerre kell állítani. A nyelv megadása az ISO 639-es szabványt követi (http://www.evertype.com/standards/iso639/iso639-en.html és http://www.loc.gov/standards/iso639-2/). Az országkódokat az ISO 3166 sorolja fel (http://www.din.de/gremien/nas/nabd/iso3166ma/codlstp1/en_listp1.html). Csak olyan értékeket célszerű megadni, amelyhez használható leírófájlok találhatók az /usr/lib/locale könyvtárban. További leírófájlok létrehozhatók az /usr/share/i18n könyvtár fájljaiból a localedef paranccsal; a leírófájlok a glibc-i18ndata csomag részei. Az en_US.UTF-8 (angol nyelvű, Egyesült Államok) leírófájlja például a következő paranccsal:

localedef -i en_US -f UTF-8 en_US.UTF-8
LANG=en_US.UTF-8
Ez az alapértelmezett beállítás, ha a telepítés során az angol a kiválasztott nyelv. Ha más nyelvet választott, az a nyelv kerül bekapcsolásra, de a karakterkódolás továbbra is UTF-8.
LANG=en_US.ISO-8859-1
Ez angol nyelvet állít be, az ország az Egyesült Államok, a karakterkódolás pedig ISO-8859-1. Ez a karakterkészlet nem támogatja az euro pénznem jelét, de hasznos lehet olyan programok esetében, amelyek még nincsenek felkészítve az UTF-8 kódolás használatára. A karakterkészletet megadó karaktersorozatot (ami a jelen esetben az ISO-8859-1) ezután a programok, például az Emacs értékeli ki.
LANG=en_IE@euro
A fenti példa kifejezetten tartalmazza az euro karaktert egy nyelvi beállításban. Szigorúan véve ez a beállítás mára túlhaladott, hiszen az UTF-8 szintén tartalmazza az euro szimbólumot. Csak akkor hasznos, ha a használni kívánt alkalmazás nem támogatja az UTF-8 kódolást, csak az ISO-8859-15-öt.A SuSEconfig beolvassa az /etc/sysconfig/language könyvtárban található fájlokat és az /etc/SuSEconfig/profile valamint /etc/SuSEconfig/csh.cshrc helyekre írja ki a szükséges módosításokat. Az /etc/SuSEconfig/profile az /etc/profile-t olvassa vagy használja forrásul. Az /etc/SuSEconfig/csh.cshrc-t az /etc/csh.cshrc használja forrásul. Ennek hatására a beállítások az egész rendszerre kiterjedően elérhetővé válnak.

A felhasználók felülbírálhatják a rendszer alapértelmezett értékeit, ha módosítják saját ~/.bashrc fájljaikat. Ha például a rendszerszintű en_US beállítás helyett a programok üzeneteit spanyolul akarják látni, akkor az {{{1}}} beállítást kell megadniuk.

A nyelvi támogatás beállításai

Az alapszabály az, hogy az Üzenetek kategóriába eső fájlok csak a megfelelő nyelvi könyvtárban (például en) tárolódnak, hogy legyen mire visszalépni. Ha a LANG változót az en_US értékre állítja, viszont nem létezik az /usr/share/locale/en_US/LC_MESSAGES könyvtárban a message fájl, akkor a rendszer az /usr/share/locale/en/LC_MESSAGES fájlhoz tér vissza.

Visszalépési lánc is megadható, például bretonról franciára, vagy galíciairól spanyolra, és onnan portugálra:

LANGUAGE="br_FR:fr_FR"

LANGUAGE="gl_ES:es_ES:pt_PT"


Így állíthatók be a norvég variánsok (a nynorsk és a bokmal) (további visszalépéssel a sima no beállításra):

LANG="nn_NO"

LANGUAGE="nn_NO:nb_NO:no"


vagy


LANG="nb_NO"

LANGUAGE="nn_NO:nb_NO:no"

Ügyeljünk arra, hogy a norvég nyelv használata esetén az LC_TIME kezelése is eltér.


Lehetséges problémák

Az ezres elválasztó vesszőt nem ismeri a rendszer. A LANG valószínűleg en értékre van állítva, de a glibc által használt leírás az /usr/share/lib/en_US/LC_NUMERIC helyen található. Az LC_NUMERIC változót például az en_US értékre kell állítani.

További információ

  • A GNU C Library referencia-kézikönyv »Területi beállítások és lokalizálás« fejezete; a glibc-info része.
  • Markus Kuhn által írt UTF-8 and Unicode FAQ for Unix/Linux: http://www.cl.cam.ac.uk/~mgk25/unicode.html.
  • Unicode-Howto, amelyet Bruno Haible írt: file:/usr/share/doc/howto/en/html/Unicode-HOWTO.html.