KDE grafikus bejelentkezés beállítása HOGYAN John P. Meshkoff,II [1]johnm@sivakalpa.org v1.03 2003.04.13 ikon megjegyzés és kde 3.1 kézikönyv megjegyzés frissítése _________________________________________________________________ Ez a HOGYAN bemutatja a grafikus bejelentkező (GUI login) képernyő beállítását. A következő témákat öleli fel: Ablakkezelő hozzáadása a lenyíló listához; a felhasználó ikonjának engedélyezése a bejelentkező ablakban; root hozzáférés szükségességének a beállítása a rendszer leállításához. _________________________________________________________________ 1. Szerzői jog Szerzői jog (c) 2002 John Meshkoff Ez a dokumentum szabadon másolható és terjeszthető bármilyen formátumban. Az esetleges módosításokat és/vagy megjegyzéseket kéretik a dokumentum karbantartójának továbbítani. Származtatott munka létrehozható és közzétehető belőle, a következő feltételekkel: 1. Elküldöd a származtatott munkádat (megfelelő fájlformátumban, például sgml) az LDP-nek (Linux Documentation Project) vagy ehhez hasonlónak az Interneten. Ha nem az LDP-nek küldöd, tudasd az LDP-vel, hol lesz elérhető a fájl. 2. A származtatott munkát azonos licensszel tedd közzé, vagy használd a GPL-t. A szövegbe legyen szerzői jogi nyilatkozat és legalább figyelmeztetés a licensz használatáról. 3. Tedd közzé az előző szerzők és főbb közreműködők névsorát. Ha a fordításon kívül másfajta származtatott munkát is tervezel, kérlek, tudasd terveidet a dokumentum jelenlegi fenntartójával. 1.1 Magyar fordítás A magyar fordítást [2]Soponyai György készítette (2004.06.14). A lektorálást [3]Daczi László végezte el (2004.06.17). A dokumentum legfrissebb változata megtalálható a [4]Magyar Linux Dokumentációs Projekt honlapján. A dokumentum fordítása a [5]Szegedi Tudományegyetem [6]nyílt forráskódú szoftverfejlesztés speciálkollégiumának segítségével valósult meg. 2. Bevezetés Ez a leírás a RedHat 6.1 alapértelmezett KDE Workstation telepítésen alapul. Ha más disztribúciót, más RedHat verziót vagy eltérő Workstation telepítőt használsz, szükséges lehet némi kutatómunka. Remélhetőleg ez a leírás segít majd a vizsgálódás elkezdésében. Ez a HOGYAN annak eredményeképpen született meg, hogy kíváncsi voltam, miként adható meg más ablakkezelő (window manager) vagy asztali környezet (desktop environment) a grafikus bejelentkező ablak legördülő listájában; a vizsgálódások további beállítási lehetőségeket tártak fel. A saját vizsgálódásomat akkor kezdtem, amikor egy RedHat List-en találtam egy hivatkozást az /etc/inittab fájlról és a rendszerindításban betöltött szerepéről. Az /etc/inittab fájlban a következő bejegyzéseket találtam, amik az X Window rendszerindítási tulajdonságait határozzák meg az én disztribúcióm és verzióm esetén: ______________________________________________________________ # xdm runlevel 5-ben fut # xdm most egy elkülönült alkalmazás x:5:respawn:/etc/X11/prefdm -nodaemon ______________________________________________________________ A prefdm fájl a következő: ______________________________________________________________ #!/bin/sh PATH=/sbin:/usr/sbin:/bin:/usr/bin:/usr/X11R6/bin # A kedvenc X képernyőkezelő futtatása preferred= if [ -f /etc/sysconfig/desktop ]; then if grep -q GNOME /etc/sysconfig/desktop 2>/dev/null; then preferred=gdm elif grep -q KDE /etc/sysconfig/desktop 2> /dev/null; then preferred=kdm elif grep -q AnotherLevel /etc/sysconfig/desktop 2> /dev/null; then preferred=xdm fi fi if [ -z ":$preferred" ]; then if which gdm >/dev/null 2>&1; then preferred=gdm elif which kdm >/dev/null 2>&1; then preferred=kdm elif which xdm >/dev/null 2>&1; then preferred=xdm fi fi if [ -n "$preferred" ] && which $preferred >/dev/null 2>&1; then exec `which $preferred` $* fi exit 1 ______________________________________________________________ Nem szükséges a prefdm fájlt módosítanunk; azt határozza meg, melyik képernyőkezelő (display manager) lesz a rendszerben az alapértelmezett, és melyik fusson a grafikus bejelentkezés alatt. A rendszerindítás során a prefdm megvizsgálja az /etc/sysconfig/desktop fájlt, és kiválasztja az ott meghatározott képernyőkezelőt; az én KDE Workstation telepítésem esetében ez a kdm (KDE Display Manager). Figyelembe véve, hogy a gdm (Gnome Display Manager) nincs telepítve a rendszeremben, az xdm (X Display Manager) az alapértelmezés az X Window rendszer részeként, amit nyilvánvalóan a RedHat régebbi verziói használtak. 3. Képernyőkezelő felvétele a legördülő listába FIGYELMEZTETÉS: Ebben a HOGYANban kifejtett eljárások maguk után vonják a rendszerbeállító fájlok módosítását; ha nem vagy gyakorlott ilyen módosítások elvégzésében, nem árt némi óvatosság. Ezekben a fájlokban elkövetett hibák labilissé tehetik a rendszeredet akár annak összeomlását okozva. A HOGYAN eljárásai mind teszteltek, kipróbáltak és helyes használat esetén nem okozhatnak problémákat. Ha KDE 2.2 -t vagy későbbi verziót használsz és kényelmetlen a rendszerfájlok kézi szerkesztése, nyithatunk egy terminál ablakot (xterm vagy konsole) a felhasználói képernyőből (NEM a root képernyőből), majd írjuk be a következőket a belépéshez: ______________________________________________________________ su -c 'kcontrol' ______________________________________________________________ Írjuk be a root jelszót és hajtsuk végre a KDE Control Centerben a következő módosításokat: menjünk az Applications ==> Login Manager-be. Válasszuk ki a megfelelő beállító fület; itt könnyen beállítható a bejelentkező ablak összes tulajdonsága. A KDE korábbi verzióiban a kcontrol módosíthatta a kdmrc fájlt, de nem módosíthatta az xsession fájlt, amelyet ezek a verziók használnak. Olvasd el a megjegyzéseket a KDE 2.2 óta bevezetett módosításokról. A beállítófájlok kézi szerkesztéséhez és működésük megértéséhez az alábbiak szerint haladjunk: (Vigyázat: Néhány beállítófájl megváltozott az általam használt kdm verzió óta, különösen a KDE > 2.0 óta: Idézet a [7]the FreeBSD Handbook-X11 leírásból: "Megjegyzés: A KDE 2.2 verzióban a következő módosítások történtek: kdm most már saját konfigurációs fájljait használja. A részletekről lásd a KDE 2.2 dokumentációját.") Megjegyzés: A KDE 3.1 rendelkezik hozzáadott kdm dokumentációval, olvasd a [8]The kdm Handbook (Kdm kézikönyv) leírást. Ezen új kézikönyv sok anyagot használ fel a régebbi verziókból; de leír új tulajdonságok is benne. Ellenőrizzük a saját változatunk dokumentációját az érvényes beállítófájlok meghatározásához, ha kézzel módosítani akarjuk őket, vagy egyszerűen látni akarjuk működésüket. Ne használjunk szövegszerkesztő (word-processor; ez képes a különböző betűkészletek kezelésére egy dokumentumon belül, és egyedi formátumban tárolja a dokumentumokat - a lektor) (például OpenOffice.org - a ford.) programot a rendszer beállítófájljainak szerkesztéséhez; ezek a programok speciális formázó karaktereket szúrnak be a fájlokba, amik elrontják azt. Használjunk "egyszerű" szerkesztőt (editor; ez sima szövegként kezeli a dokumentumokat, de szintaktikai kiemelés lehet benne - a lektor), különösen olyat, ami tudja kezelni a hosszú sorokat anélkül, hogy extra sorvége vagy soremelés karaktereket szúrna be a szerkesztett kódba. Ilyen alkalmas szerkesztők a vim (a vi továbbfejlesztése), vi és az emacs (vagy a [9]jEdit, ez lin/win alatt is használható - a lektor). Bár léteznek mások is, de Linux munkaállomások telepítésénél leggyakrabban ezek az alapértelmezettek; ezeknek mind megfelelőek számítógépes forráskódok írásához és szerkesztéséhez. További információkért lásd a bibliográfia fejezetet a HOGYAN végén. FONTOS: Mielőtt módosítanánk bármilyen beállítófájlt, készítsünk másolatot az eredetiről, így komoly hibák esetén visszaállíthatjuk azokat! A következőkben az /usr/share/config/kdmrc fájlt fogjuk módosítani, ahol megadhatjuk a bejelentkező-képernyő legördülő listájában kiválasztható elemeket; valamint az /etc/X11/xdm/Xsession fájlt, ahol az elemekhez rendelt futtatható fájlok elérési útjai adhatók meg (ha eltérő disztribúciót használsz, ezen fájlok elérési útjai különbözhetnek; egyszerűen írjuk be a "locate kdmrc" és "locate Xsession" sorokat a shell-be [azaz egy terminálablakba, mint például az xterm vagy a KDE konsole emulátorába], hogy megtaláljuk ezeket). A kdmrc alapértelmezett sora a következő: ______________________________________________________________ SessionTypes=kde;gnome;anotherlevel;default;failsafe; ______________________________________________________________ Miután két új ablakkezelő kiválasztó címkéjét, a windowmakert és a blackboxot hozzáadtuk, az adott sor a következő lesz: ______________________________________________________________ SessionTypes=kde;gnome;windowmaker;blackbox;anotherlevel;default;failsafe; ______________________________________________________________ Figyeljük meg a pozíciót, hová írtam az új ablakkezelők címkéit: minden bejegyzés ugyanolyan sorrendben jelenik meg a legördülő listában, ahogy a SessionTypes listában szerepelnek. Ezután az /etc/X11/xdm/Xsession fájlban játszódik le az aktuális elemekhez hozzárendelt programok kiválasztása. Itt látható az xsession megfelelő része az új bejegyzések hozzáadása előtt: ______________________________________________________________ # most látjuk, ha az xdm/gdm/kdm egy sajátos környezetet kér # case $# in 1) case $1 in failsafe) exec xterm -geometry 80x24-0-0 ;; gnome) exec gnome-session ;; kde) exec startkde ;; anotherlevel) # feltételezzük, hogy a kapcsolótábla (switchdesk) telepítve van. exec /usr/share/apps/switchdesk/Xclients.anotherlevel ;; esac esac ______________________________________________________________ Itt láthatjuk az xsession megfelelő részét az új bejegyzések hozzáadása után (VEGYÜK FIGYELEMBE, hogy a menüpontoknak (selection labels) pontosan ugyanolyannak kell lenniük az xsession és a prefdm fájlokban, azaz a helyesírásnak betű szerint (kisbetű/nagybetű) meg kell egyeznie): ______________________________________________________________ # most látjuk, ha az xdm/gdm/kdm egy sajátos környezetet kér # case $# in 1) case $1 in failsafe) exec xterm -geometry 80x24-0-0 ;; gnome) exec gnome-session ;; kde) exec startkde ;; windowmaker) exec wmaker ;; blackbox) exec blackbox ;; anotherlevel) # feltételezzük, hogy a kapcsolótábla (switchdesk) telepítve van.. exec /usr/share/apps/switchdesk/Xclients.anotherlevel ;; esac esac ______________________________________________________________ Vegyük figyelembe, hogy amikor a futtatható fájlokat az alábbi elérési utak valamelyikére telepítjük, csak az fájl nevét szükséges az "exec" után írni; egyébként a teljes elérési utat le kell írni, amint az a fenti "xclients.anotherlevel" bejegyzésnél látható: /usr/bin/ /usr/local/bin/ /usr/X11R6/bin/ /usr/bin/X11/ Ezeknek a példáknak elegendőnek kell lenni, hogy a kedvenc ablakkezelő(i)d hozzáadd a KDE grafikus bejelentkező ablakához, vagy kiindulási pontot ad, hogy kitaláld, hogy teheted meg ugyanezt az egyéni telepítésed esetében. 4. Felhasználókiválasztó ikonok engedélyeztetése a bejelentkező ablakban A RedHat 6.1 változatában az alapértelmezett KDE bejelentkező ablak egy dialógusablakból áll, a felhasználónév és jelszó beírásához; valamint egy legördülő lista a ablakkezelő/asztali környezet kiválasztásához. Az /usr/share/config/kdmrc következő módosításaival felhasználói ikonok jeleníthetők meg a bejelentkező ablak tetején. Alább láthatjuk a kdmrc alapértelmezett sorait, amik a felhasználói ikonok megjelenítését határozzák meg (vannak egyéb sorok is az alább látható kettő között, amik itt nem láthatók és "..." jelöléssel helyettesítettek): ______________________________________________________________ #Users=root;johndoe ... UserView=false ______________________________________________________________ Itt láthatóak ugyanezen sorok a szerkesztés után. Töröljük a kettőskereszt karaktert ("#") az "Users=..." elejéről és változtassuk "johndoe"-t a saját felhasználónevünkre (ha több felhasználó fér hozzá a rendszerünkhöz, hozzáadhatjuk az Ő felhasználói neveiket is pontosvesszőkkel elválasztva). Írjuk át az "UserView=false" sort "UserView=true" -ra, amint az itt is látható: ______________________________________________________________ Users=root;johnpipe ... UserView=true ______________________________________________________________ Ezután ha be akarunk lépni a rendszerbe, elég az egérrel egy ikonra kattintani a felhasználói név beírása helyett; így csak a jelszót kell beírni. Az alapértelmezett ikonok helyett saját ikonokat is használhatunk. Tegyük saját ikonjainkat az /usr/share/apps/kdm/pics/users/ könyvtárba. A kdm kézikönyv szerint 64 x 64 -es méretűnek kell lenniük; KDE 1.x verzióban az alapértelmezett ikonok 62 x 63 pixelesek, az új felhasználói ikonok pedig 60 x 60 méretűek, úgyhogy ha az ikonok mérete elég közel van a meghatározott 64 x 64 -es mérethez, akkor rendben fognak működni. A kézikönyv szerint "a kdm képes különböző méretű ikonokat kezelni, de a végeredmény torzulhat.", így nyilvánvalóan található itt némi eltérés. Az ikonjainkat "felhasznalonev.xpm" módon kell elnevezni, például ha az én felhasználónevem "johnpipe", akkor az új ikonom neve "johnpipe.xpm" lesz. MEGJEGYZÉS: A KDE 1.x óta némely verzióban az ikonformátum ".xpm"-ről (XPixMap) ".png"-re (Portable Network Graphic) változott. 5. Rendszergazdai engedély megkövetelése a rendszer leállításához Alapértelmezésben a bejelentkező ablakban lévő leállítás gomb mindenkinek lehetővé teszi a rendszer leállítását. A következő, /usr/share/config/kdmrc fájlban található rész, amely meghatározza azt, hogy ki használhatja ezt a gombot: ______________________________________________________________ #ShutdownButton=RootOnly ShutdownButton=ConsoleOnly ______________________________________________________________ Ha azt akarjuk, hogy csak a rendszergazda állíthassa le a rendszert, módosítsuk a sorokat a következő módon ______________________________________________________________ ShutdownButton=RootOnly #ShutdownButton=ConsoleOnly ______________________________________________________________ Így a leállítás gombra kattintva még be kell írni a root jelszót is, mielőtt a rendszer leállna. 6. Bibliográfia Ha még több HOGYANt akarsz olvasni, látogass el a [10]The Linux Documentation Project ( [11]Magyar Linux Dokumentációs Projekt) webhelyére. Ajánlott irodalom: * [12]XWindow-User-HOWTO * [13]Emacs Beginner's HOWTO * [14]Vim Color Editor HOW-TO (Vi Improved with syntax color highlighting) A Te Linux disztribúciódtól és verziódtól függően, a fenti HOGYANok már telepítve lehetnek a rendszeredben. Ha nincsenek, a telepítő CD-n megtalálhatók. References 1. mailto:johnm@sivakalpa.org 2. mailto: Soponyai.Gyorgy[kukac]stud.u-szeged[pont]hu 3. mailto: dacas[kukac]freemail[pont]hu 4. http://tldp.fsf.hu/ 5. http://www.u-szeged.hu/ 6. http://www.inf.u-szeged.hu/~havasi/opensource/ 7. http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/x11-wm.html 8. http://docs.kde.org/en/3.1/kdebase/kdm/ 9. http://www.jedit.org/ 10. http://www.tldp.org/ 11. http://tldp.fsf.hu/ 12. http://www.tldp.org/HOWTO/XWindow-User-HOWTO/ 13. http://www.tldp.org/HOWTO/Emacs-Beginner-HOWTO.html 14. http://www.tldp.org/HOWTO/Vim-HOWTO.html