KDE grafikus bejelentkezés beállítása HOGYAN <author>John P. Meshkoff,II <url url="mailto:johnm@sivakalpa.org" name="johnm@sivakalpa.org"> <date>v1.03 2003.04.13 ikon megjegyzés és kde 3.1 kézikönyv megjegyzés frissítése <!-- v1.02 2002/07/14 kcontrol update --> <!-- v1.01 2002/06/10 link update --> <!-- v1.0 2002/06/07 Added kcontrol info --> <!-- v0.03 2002/05/22 --> <!-- was KDE GUI Login Window Manager HOWTO; changed 2002/05/22 --> <!-- v0.02 2002/05/21 --> <!-- v0.01, 2002/04/14 --> <!-- v0.0, 2002/04/10 1st sgml draft --> <!-- re-phrased the abstract 2002/05/21 --> <!-- re-phrased the abstract 2002/05/22 --> <abstract> 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. </abstract> <toc> <sect>Szerzői jog <P> 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. <sect1>Magyar fordítás <p> A magyar fordítást <url url="mailto: Soponyai.Gyorgy[kukac]stud.u-szeged[pont]hu" name="Soponyai György"> készítette (2004.06.14). A lektorálást <url url="mailto: dacas[kukac]freemail[pont]hu" name="Daczi László"> végezte el (2004.06.17). A dokumentum legfrissebb változata megtalálható a <url url="http://tldp.fsf.hu/" name="Magyar Linux Dokumentációs Projekt"> honlapján. A dokumentum fordítása a <url url="http://www.u-szeged.hu/" name="Szegedi Tudományegyetem"> <url url="http://www.inf.u-szeged.hu/~havasi/opensource/" name="nyílt forráskódú szoftverfejlesztés speciálkollégium">ának segítségével valósult meg. <sect>Bevezetés <P> 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 <tt>/etc/inittab</tt> fájlról és a rendszerindításban betöltött szerepéről. Az <tt>/etc/inittab</tt> 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: <tscreen><code> # xdm runlevel 5-ben fut # xdm most egy elkülönült alkalmazás x:5:respawn:/etc/X11/prefdm -nodaemon </code></tscreen> A prefdm fájl a következő: <tscreen><code> #!/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 </code></tscreen> 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 <tt>/etc/sysconfig/desktop</tt> 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. <!-- added caution and editing tips 2002/05/22 --> <sect>Képernyőkezelő felvétele a legördülő listába <p> 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: <tscreen><code> su -c 'kcontrol' </code></tscreen> Írjuk be a root jelszót és hajtsuk végre a KDE Control Centerben a következő módosításokat: menjünk az <em>Applications ==> Login Manager</em>-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 <url url="http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/x11-wm.html" name="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.") <!-- add ref to kde 3.1 2003/04/13 --> Megjegyzés: A KDE 3.1 rendelkezik hozzáadott kdm dokumentációval, olvasd a <url url="http://docs.kde.org/en/3.1/kdebase/kdm/" name="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. <em>Ne</em> használjunk <em>szövegszerkesztő</em> (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ű" <em>szerkesztőt</em> (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 <url url="http://www.jedit.org" name="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 <em>bármilyen</em> 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 <tt>/usr/share/config/kdmrc</tt> fájlt fogjuk módosítani, ahol megadhatjuk a bejelentkező-képernyő legördülő listájában kiválasztható elemeket; valamint az <tt>/etc/X11/xdm/Xsession</tt> 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 "<tt>locate kdmrc</tt>" és "<tt>locate Xsession</tt>" sorokat a shell-be [azaz egy terminálablakba, mint például az <em>xterm</em> vagy a KDE <em>konsole</em> emulátorába], hogy megtaláljuk ezeket). A kdmrc alapértelmezett sora a következő: <tscreen><code> SessionTypes=kde;gnome;anotherlevel;default;failsafe; </code></tscreen> 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: <tscreen><code> SessionTypes=kde;gnome;windowmaker;blackbox;anotherlevel;default;failsafe; </code></tscreen> <!-- cleaned up phrasing in this paragraph 21May2002 --> 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 <tt>/etc/X11/xdm/Xsession</tt> 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: <tscreen><code> # 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 </code></tscreen> <!-- removed for clarity "I have just copied, pasted, and edited (to help avoid mis-typing) existing entries to create the new entries." 21May2002 --> <!-- added "appropriate section of the" 14Apr2002 --> <!-- re-phrased "NOTE" to clarify; added "spelling and case..." 21May2002 --> 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) <em>pontosan</em> ugyanolyannak kell lenniük az xsession és a prefdm fájlokban, azaz a helyesírásnak betű szerint (kisbetű/nagybetű) meg kell egyeznie): <tscreen><code> # 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 </code></tscreen> <!-- added path note 2002/05/22 --> 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ó: <tt>/usr/bin/</tt> <tt>/usr/local/bin/</tt> <tt>/usr/X11R6/bin/</tt> <tt>/usr/bin/X11/</tt> 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. <!-- added two new sections 2002/05/22 --> <sect>Felhasználókiválasztó ikonok engedélyeztetése a bejelentkező ablakban <p> 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 <tt>/usr/share/config/kdmrc</tt> 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): <tscreen><code> #Users=root;johndoe ... UserView=false </code></tscreen> 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ó: <tscreen><code> Users=root;johnpipe ... UserView=true </code></tscreen> 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. <!-- new info on adding your own icons --> 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. <sect>Rendszergazdai engedély megkövetelése a rendszer leállításához <p> 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ő, <tt>/usr/share/config/kdmrc</tt> fájlban található rész, amely meghatározza azt, hogy ki használhatja ezt a gombot: <tscreen><code> #ShutdownButton=RootOnly ShutdownButton=ConsoleOnly </code></tscreen> Ha azt akarjuk, hogy csak a rendszergazda állíthassa le a rendszert, módosítsuk a sorokat a következő módon <tscreen><code> ShutdownButton=RootOnly #ShutdownButton=ConsoleOnly </code></tscreen> Így a leállítás gombra kattintva még be kell írni a root jelszót is, mielőtt a rendszer leállna. <sect>Bibliográfia <p> Ha még több HOGYANt akarsz olvasni, látogass el a <url url="http://www.tldp.org/" name="The Linux Documentation Project"> (<url url="http://tldp.fsf.hu/" name="Magyar Linux Dokumentációs Projekt">) webhelyére. Ajánlott irodalom: <itemize> <item><url url="http://www.tldp.org/HOWTO/XWindow-User-HOWTO/" name="XWindow-User-HOWTO"> <item><url url="http://www.tldp.org/HOWTO/Emacs-Beginner-HOWTO.html" name="Emacs Beginner's HOWTO"> <item><url url="http://www.tldp.org/HOWTO/Vim-HOWTO.html" name="Vim Color Editor HOW-TO (Vi Improved with syntax color highlighting)"> </itemize> 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. </article>