Dokumentáció/SL9.3/Rendszer/A SUSE LINUX speciális jellemzői
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.- /etc/profile
- ~/.profile
- /etc/bash.bashrc
- ~/.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.
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.
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.
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.
-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.
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ó.
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:
- 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.
- 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ó:
- A vimtutor a vim interaktív oktatóprogramja.
- A vim használata közben beírható a :help parancs, amelynek hatására bőséges súgó kapható.
- A vim-ről szóló könyv elérhető a http://www.truth.sk/vim/vimbook-OPL.pdf címen.
- A vim projekt weboldalán (http://www.vim.org) mindenféle hírek, levelezőlisták és egyéb dokumentumok találhatók.
- További vim-források az interneten: http://www.selflinux.org/selflinux/html/vim.html, http://www.linuxgazette.com/node/view/9039, http://www.apmaths.uwo.ca/~xli/vim/vim_tutorial.html. A http://linux-universe.com/HOWTO/Vim-HOWTO/vim-tutorial.html címen további hivatkozások találhatók oktatóanyagokra.
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/*.elEzek 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.