K: Mifene az a pkg-config?
V: Erre gondolsz: http://www.freedesktop.org/Software/pkgconfig K: Igen, úgy tűnik, ez valami csomagkezelő rendszer, de nekem ez felesleges, mert én dpkg-t (rpm-et) használok.
V: Azért barátkozz meg ezzel is... a csomagok meglétének és verziószámának ellenőrzésén kívül a fordítás és szerkesztés opcióinak beállításában segít.
V: Bár van már egy-két program ami scsi emuláció nélkül is képes cd-t írni, azért melegen ajánlatos a scsi emuláció használata. IDE CD-t kétféleképp lehet használni linux alatt:
1. normál ATAPI eszközként, ehhez mindössze 2 kernelmodul kell:
- cdrom (cd-romunk van ugye)
- ide-cd (ezmeg egy sima ide driver hozzá)
2. SCSI eszközként, emulálva. Ehhez azt kell tudni, hogy a scsi emuláció az "egyéb" scsi device-ok közé tartozik. A kernel scsi alapmeghajtója (scsi-mod) négyféle eszközcsoportot ismer, a scsi merevlemezeket (sd-mod), scsi disceket (sr-mod), scsi szalagos eszközöket (st) és scsi egyéb vagy általános eszközöket (sg). CD emulációhoz a köv modulok kellenek:
- cdrom (még mindig cd-romunk van)
Demost scsi drivert akarunk hozzá, ezért a scsi alrendszerből be kell húzni ezeket:
- scsi-mod (ez a scsi alapdriver, enélkül semmilyen scsi eszközt nem látunk)
- ide-scsi (ez az emulátor modul ami IDE-ből scsi-t emulál)
- sg (mégpedig általános scsi eszköznek emulálja, ezért ez a modul is kell)
- sr-mod (de mivel cd meghajtóként akarjuk elérni, köll ezis)
K: Olyat hallottam hogy a pendrive-ok is scsi eszközként látszanak, ugyi?
V: Debizonyhogyugyi. Éspediglen a pendrive besorolása 'USB mass storage device', azaz kölleni fog nekünk 1-2 dolog az USB alrendszerből is:
- usbcore (usb alaprendszer)
- uhci-hdc/ohci-hdc/ehci-hdc (USB port driverek, Intel/VIA chipsethez uhci, egyébhez ohci kell, ha USB 2.0 drivert akarunk akkor meg ehci)
- usb-storage (usb mass storage eszközök drivere)
A SCSI alrendszerből pediglen:
- scsi-mod (alap)
- sd-mod (merevlemezként akarjuk elérni a pendriveot)
K: Modulok megvannak, hogy érem el az eszközömet?
V: Fel kell mountolni ÷)
A scsi deviceok valahol ott vannak hogy:
/dev/scsi/host1/bus0/target0/lun0/part1 (ez a 2. scsi device 1-es partíciója)
Érdemes szimlinkeket csinálni hogy könnyebben hozzáférjünk, pl:
Ez nyilván aszerint módosul hogy hanyadik scsi device a pendrive, hány partíció van rajta, stb.
------------------------------------------------
Megjegyzés/diszklémer:
Ezek a modulnevek 2.6.5-ös kernel alatt érvényesek, az egyéb kernelekért felelősséget nem vállalok. ÷) De pl a 2.4-es sorozatban az ohci-hdc/uhci-hdc/stb rendre usb-ohci/usb-uhci/...
K: Mi a különbség a LILO és a GRUB között? Miért jobb a grub?
V:A GRUB előnye a teljesen más alapú működés és a grub shell amivel ezt ki lehet használni. A lilo-t mikor lefuttatod, az kiolvassa a konfigot, legenerálja a boot image-t és beteszi az MBR-be (a vinyó boot szektorába). Ezután ha bármit változtatsz a vinyó adatstruktúráján, a lilo nem fog semmit megtalálni, újra kell bootolni cd-ről, konfigot átírni, új image és új mbr. A lilo nem ért filerendszereket, csak megjegyzi a vinyón a megfelelő szektort ahol a kernel van és berántja - ha a kernel valamiért megváltozik vagy odébbmegy akkor a lilo meg van lőve.
Ezzel szemben a grub tud filerendszerekben navigálni, a konfigot nem előre olvassa be hanem mikor bebootolsz akkor keresi meg és ott helyben bootolás közben értelmezi. Ezért:
1. Nem kell minden változtatás után újrainstallálni, hiszen minden bootupkor újraolvassa a konfigot, minden változtatás a konfigfájlon automatikusan életbe lép
2. Ha valami gond van és megakad a bootfolyamat, akkor kapsz egy shellt, amiben el tudsz navigálni a kerneledig, azaz megmondod neki hogy ezen a partíción itt meg itt van a kernel amit indítani akarok, a grub pedig felismeri a partíció filerendszerét és behúzza a kernelt amit akarsz akkoris ha egy szó nincs róla a konfigban.
Azaz grubbal nem fogsz olyat látni hogy LI LI LI LI LI LI.... meg nem kell rescue cd-kről bootolni ha valami elromlik, simán bebootolsz, shellből megmondod hol a kernel és mit mountoljunk rootnak, aztán bent is vagy és megszereled a rendszert. A különbség nem ott van mikor minden rendben megy, hanem ha valami elromlik akkor grub-bal 5 perc megcsinálni, liloval sokszor órák ha nincs kéznél egy rescue cd.
Nomeg a grub mindenféle egzotikus trutyit be tud bootolni de ez linux szempontjából irreleváns. ÷)
-----------------------------------------------
Egy grub shell példa:
-----------------------------------------------
grub> kernel (hd0,4)/vmlinuz root=/dev/hda7 vga=791
grub> boot
-----------------------------------------------
Magyarázat:
1. a kernel paranccsal megadjuk hogy melyik kernelt akarjuk behúzni, a (hd0,4) az a hda5 partíciót jelenti (grubnál mindent nullától számozunk)
2. ha van initrd image a kernelhez akkor azt is megadjuk
3. a boot parancs elindítja a kernelt
K: Hogyan kellene az XFree86-nak megmagyarázni, hogy ne cserélje fel a Z-t az Y-nal, és a tizedespont is tizedespont legyen?
V: A /etc/X11/xkb/symbols/hu file elején a "Default layout" résznél az kell legyen, hogy:
default partial
xkb_symbols "default" {
include "hu(102_qwerty_dot)"
};
Ha lejjebb lapozol, megnézheted, hogy még milyen más változatokat ismer...
K: Realtek 8019(AS) chip-el szerelt ISA-s hálókártyám van. Hogy tudom beüzemelni Linux alatt?
V: Ehhez a Realtek chiphez (RTL8019AS) van egy kis DOS-os utility (RSET8019.EXE), amivel be lehet állítani a hálókártyát, aminek összesen 3 féle módja van!
1. Jumper mode: A kártyán kell beállítani egy jumperrel, hogy jumper, vagy jumperless módban legyen. Jumper mode-ban értelemszerűen a kártyán levő jumperekkel lehet(ne) beállítani a kívánt IRQ-t és I/O-t.
2. Jumperless mode - Egy sw-esen "beégetett" IRQ-t és I/O-t használ, amit a DOS-os utility-vel beállíthatunk.
3. Plug n play mode: A kártya automatikusan kap IRQ-t és I/O-t a Plug'n'Play felismerési folyamat során. A kártyát Jumperless-ből PnP módba szintén a DOS-os utility-vel lehet átállítani. Ez a kártya ne2000 kompatibilis, tehát az ne2000 támogatást forgassuk a kernelbe, vagy modulba (az utóbbi javasolt). Betöltése: modprobe ne
K: Hogyan lehet két, azonos típusú kártyát felismertetni a kernellel, fixen befordított driverrel, nem PnP módban?
V: A kernelnek átadott paraméterrel: ether=irq0,io0,eth0 ether=irq1,io1,eth1
K: Hogy is kell ilyen paramétert átadni?
V: lilo esetén az append="..."-vel.
pl. ezt írjuk a lilo.conf-ba:
append="ether=5,0x240,eth0 ether=9,0x280,eth1" Ekkor a kerneldriver tudja, hogy két kártyát kell kezelnie, az egyik io=240h, irq=5 -re van beállítva, a másik io=280h, irq=9 -re.
K: Ugyanez modul esetén?
V: A modulnak átadott paraméterrel: modprobe io=io0,io1 irq=irq0,irq1 Ezt célszerű az /etc/modules.conf vagy
/etc/conf.modules file-ban fixen tárolni:
options io=io0,io1 irq=irq0,irq1 K: PnP esetén mi a különbség?
V: Ha a kernelben van ISA PnP support (CONFIG_ISAPNP), akkor nem kell az io és irq paraméterekkel törődnöd.
K: És ha nincs?
V: Akkor a pnpdump és az isapnp a te barátod, lásd a manualt
K: Szeretnék egy szimbolikus linket az egyik könyvtárról a másik könyvtárra átirányítani, de nem hagyja magát:
cd /usr/src # ok
ln -s linux-old linux # ok
ln -sf linux-new linux # a linux-old -on belül csinál egy (érvénytelen) szimlinket
K: Valaki mondja már er magyarparasztul hogy hogyan kell valamit forrásból feltenni!
V: Voila:
Mikor az ember forgatni akar, akkor a következő eljárást követi:
1. letölti a forrást
2. kicsomagol (célszerű egy helyen tartani a kicsomagolt forrásokat, én pl a /usr/src alá tömök ki mindent és onnan teszem fel)
3. elolvassa a README ill. INSTALL fileokat!! Ezekben az esetek többségében benne van minden ami miatt nem akar valami a gépeden leperdülni, ottvan rá a megoldás is. Célszerű azt is tudni előre hogy mik a csomag dependencyjei. Ha a readme fileokban más nincs akkor a szokásos forgatás:
4. configure [--paraméterek] (ez konfigurálja a fordítást, azaz megnézi hogy milyen procid van, megvan-e minden szükséges library, stb)
5. make (ez fordítja konkrétan a csomagot binárisba)
6. su (idáig felesleges volt rootnak lenni ha user könyvtárban dolgoztál)
7. make install (ez bemásol mindent a helyére, futtatható cucc a /usr(/local)/bin alá, stb, ez gyakorlatilag a telepítés)
- A sima make elhagyható, a make install megcsinálja azt is ha nem talál binárist
- A 'make' visszacsinálása általában a 'make clean', ez letörli a fordított binárisokat a forrás könyvtárból
- A 'make distclean' ugyanazt csinálja mint a 'make clean', plusz a felinstallált cuccokat is leszedi a /usr/bin meg az egyéb alól, ha tetszik akkor a 'make install' yinyang ikerpárja, sokszor a 'make uninstall' is működik
A make attríbútumai konvenciók, de nem kötelezőek, hogy melyik postfix micsinál azt a forrásdir/Makefile adja meg, onnan ki tudod bogarászni (kell hozzá sejteni kis bash-scriptinget).
És 'man make'!
------------------------------------------------
példa:
- letöltötted megporgetlek.tar.gz nevu progidat
- tar -xvzf megp[TAB] (kicsomagolod)
- cd megp[TAB] (belemész az új könyvtárba, itt van a forrás)
- ./configure (itt használhatnál 1-2 kapcsolót is mint pl './configure --prefix=/usr', de általában felesleges)
- make (ha a configure hibátlanul lement akkor ezzel fordítasz)
- su (root-ra váltasz installáláshoz)
- make install (installálsz)
K: Nincs valami példaprogramod a scriptek biztonságával kapcsolatban?
V: Micsoda meglepetés, éppen most írtam egyet:
#!/usr/bin/perl -w
print "Biztonsági teszt: Tegyük fel, hogy a \$NEV".
" változó a felhasználótól származik\n".
"(Például egy CGI programban vagyunk és a \$NEV a HTML form-ból jön)\n".
"Az 'echo' programot fogjuk hívni a 'system' függvénnyel\n";
$NEV="kaloz\@vala.hol; pwd -P";
print "\nElső teszt: \$NEV=\"$NEV\"\n".
"A \$NEV-be a hacker tett egy ;-ot".
", hogy az 'echo' után az általa megadott\n".
"parancs is lefusson. (A teszt kedvéért csak egy \"pwd -P\")\n";
system ("echo Neve=$NEV"); # BUKTA
print "Ezt a kiskaput elkerülhetjük, ha az 'echo' paraméterét\n".
"'aposztófák' (azaz apostolok) közé tesszük: \"echo Neve='\$NEV'\"\n";
system ("echo Neve='$NEV'"); # NINCS BUKTA
$NEV="fokaloz\@vala.hol'; pwd -P; echo 'Hehe, becsaptalak";
print "\nSajnos a főkalóz ennél is okosabb, ezért ő is tesz apostolt\n".
"a változóba: \$NEV=\"$NEV\"\n".
"(Mint látjuk, két apostolt kellett beletennie, hogy az egyensúly\n".
" megmaradjon, de egy főkalóznak ez sem gond)\n";
system ("echo Neve='$NEV'"); # MEGINT BUKTA
$NEV =~ s/'/'"'"'/g;
print "Megint átjött a védelmen!\n".
"Nincs más hátra egy kicsit meg kell piszkálni a \$NEV-et\n".
"az apostolt egy apostol-\"apostol\"-apostol szekvenciára cseréljük:\n".
"\$NEV =~ s/'/'\"'\"'/g\n".
"\$NEV új értéke: \"$NEV\"\n";
system ("echo Neve='$NEV'"); # NINCS BUKTA
print "\nEgyelőre látszólag készen vagyunk".
", de egy kicsit mesterkélt a dolog.\n";
$NEV="fokaloz\@vala.hol'; pwd -P; echo 'Hehe, becsaptalak";
print "A következő körben shell-változókkal próbálkozunk\n".
"A \$NEV-et betesszük a \"param_1\" nevű shell-változóba:\n".
"\$ENV{'param_1'}=\$NEV\n".
"Ezután csak az 'echo Neve=\"\$param_1\"' parancsot kell futtatni,\n".
"valahogy így: 'system (\"echo Neve=\\\"\\\$param_1\\\"\")'\n";
$ENV{'param_1'}=$NEV;
system ("echo Neve=\"\$param_1\"");
K: Megszakadt a kernelfordításom, és valami összevazarodott, nem megy le a "make dep" sem!
V: Lehet hogy a sérült .depend file-ok maradtak szanaszét... Próbáld ki ezt:
find . -name .depend -exec rm {} \;
K: És ha ez sem segít?
V: Akkor jöhet a "make mrproper" csak előtte mentsd el a ".config" file-okdat!
K: És ha már így beszélgetünk, ha csak a patch-et töltöttem le, azt hogyan kell alkalmazni?
V: Valahogy így:
# cd /usr/src
# linux/scripts/patch-kernel linux .
Feltéve, hogy a patch már ott van a /usr/src-ben, és a régi verzió a "linux" könyvtárba van telepítve.
K: Laptopomat néha otthon, néha a munkahelyem használom, de más-más konfigurációval (pl IP-cím, routing). Hogyan lehetne ezt automatizálni?
V: Egy lehetőség, ha a lilo-ban két különböző bejegyzést csinálsz, "Munkahely" és "Otthon" címkével. A kernel és a többi opció legyen azonos, csak az append= sor kell különbözzön, valahogy így:
K: És mit csinál a kernel ezzel a LOCATION-nal?
V: Semmit, továbbaadja az init-nek, az pedig az inicializáló script-eknek, amelyekbe azután beleteheted a szükséges elágazásokat, pl
if [ "$LOCATION" = "munkahely" ]; then
ifconfig eth0 1.2.3.4 up;
else
ifconfig eth0 5.6.7.8 up;
fi
Megj: Sajnos ez a /etc/lilo.defines nem volt jó ötlet, mivel ha van ilyen file, akkor _csak_ az abban lévő opciók jutnak érvényre (tehát nem hozzáadódik az alapértelmezéshez!). Ehelyett inkább a Makefile-ban keressük meg a CONFIG= sort, és annak a végére írjuk a -DLARGE_EBDA -t.
K: Nem tudok boot-olni az új kernelemmel, mert a LILO szerint "EBDA is big; kernel setup stack overlaps LILO second stage!
V: Először is, ne ess pánikba!
K: Megtörtént, már be is boot-oltam a régi kernellel.
V: Navigálj el oda, ahol a LILO source-je lakik, pl "/usr/local/src/lilo-22.5.7". Keress rá (grep) az EBDA-ra, azt fogod találni, hogy ha fordításkor a "LARGE_EBDA" define-olva van, akkor jó lesz. Ha tartós hatást akarsz, akkor a /etc/lilo.defines-be tedd ezt be: "echo -DLARGE_EBDA >>/etc/lilo.defines".
Ezután jöhet a "make clean all" meg a "make install" nomeg a "/sbin/lilo".
K: No de miért nem ez az alapértelmezés?
V: Azért, mert a régifajta zImage maximális mérete viszont kisebb lesz... ha bzImage-t használsz, akkor ez nem gond.
K: Most látom, hogy a fordítás megállt a bcc illetve a bios.h hiánya miatt!
V: Nem esszenciális, de ha jó akarsz lenni hozzá, installáld a bcc és elks-libc csomagokat!
K: Mi is a különbség a setuid meg sticky között?
K: Nézd meg ezt a táblázatot:
olvasható dir megnézhetjük a tartalmát (pl ls)
írható dir file-okat lehet benne létrehozni, törölni
végrehajtható dir bele lehet cd-zni
setuid file: ha executable, a futas alatt az EUID a file-user-e lesz
setuid dir: linuxban nincs hatása, más rendszerben a létrejövő file a könyvtár tulajdonosának tulajdonába kerül (executable esetén security hole)
setgid file: ha executable, a futas alatt az EGID a file-group-ja lesz
setgid dir: a benne letrehozott file group-ja a directory group-ja lesz (egyebkent a letrehozo process GID-je (lasd newgrp))
sticky file: linuxban semmi különös, más rendszerben a gyorstárazást szabályozhatja
sticky dir: ha a könyvtár x tulajdona, és van benne y-nak egy fileja, azt csak x,y vagy a root torolheti, mas nem, meg akkor sem ha van write joga a konyvtarra (tipikus példa a /tmp)
K: Igaz, hogy CD mountolásánál (-t iso9660) is meg lehet adni az iocharset=iso8859-2 opciót? Figyelembe is veszi?
V: Igaz, én például abból vettem észre, hogy ha nem adtam meg, akkor magától betöltötte a nls_iso8859-1 nevű kernelmodult, így viszont a nls_iso8859-2 -vel megy.
K: Naponta hozok/viszek file-okat floppyn, de kicsit aggódom, hogy ha elveszítem, valaki jókat szórakozik a szerelmesleveleimen.
V: Használj olyan tömörítőt, ami tud jelszót is (zip+unzip), illetve külön programmal is titkosíthatsz, pl:
openssl idea -salt -pass pass:'alakazam' -in secret.tgz -out /floppy/secret.tgz.enc
openssl idea -d -pass pass:'alakazam' -in /floppy/secret.tgz.enc -out secret.tgz
Haladó felhasznlók ezt pl egy Makefile-ba is beépíthetik, csak az a fontos, hogy maga a jelszó ne legyen kódolatlanul rajta ugyanazon a floppyn.
K: Szeretném tudni, hogy mi az a "fixed" font az X-ben!
V: Futtasd az "xfd -fn fixed" parancsot, nálam például az jön ki belőle, hogy "-Misc-Fixed-Medium-R-SemiCondensed--13-120-75-75-C-60-ISO8859-2".
K: És hogyan tudnám ezt megváltoztani?
V: Keress egy neked jobban tetsző fontot, pl az xfontsel (esetleg az xlsfonts) segítségével, azután keresd meg és módosítsd azt a fonts.alias file-t, ahol a "fixed" definiálva van. (Nálam /usr/X11R6/lib/X11/fonts/misc/fonts.alias).
K: Beüzemeltem a Sambát a Unix-omon, de a Windows-os gépeken nem látom a "Hálózatok"-nál!
V: Jó tudni hogy a Windows TCP/IP,IPX/SPX és NetBeui protokollokon át tud SMB-zni, a Samba meg csak TCP/IP-n... ha azt akarod, hogy a UNIX egyenjogú legyen a Windows-okkal, a Windows-on állítsd be a hálózatok/tulajdonságoknál a "Kötéseknél" (bindings), hogy csak TCP/IP felett legyen "Client for Microsoft Network" meg "File and Printer Sharing" (vagy ahogy éppen hívják őket).
Egyébként attól hogy a Unix-os gép nem jelenik meg a listában a "Find Computer" megtalálhatja, illetve a "NET USE" paranccsal elérhető... a keresés meggyorsítható az LMHOST file használatával.
Q: Segítsééég!, megbízhatatlanná vált a cdfs a szép új ropogós 2.4.20-as kernelemmel! Mit csináljak?
A: Ne pánikolj, hanem töltsd le a már említett http://www.elis.rug.ac.be/~ronsse/cdfs/ címről az új kernelhez igazított cdfs-t.
(Ha szabad nekem is hozzaszolni)
K: Szeretnem egy file-ba folyamatosan rogziteni az altalam kiadott parancsokat es azok kepernyon megjeleno kimenetet.
V: Hasznald a script parancsot. Ha parameternek megadsz egy path-t es egy file-t, akkor abba ir, ha nem, akkor az aktualis konyvtarba egy 'typescript' nevu file-ba. Bovebb info: man script
K: Nekem meg a char-major-10-135 hiányzik, mi az?
V: Nézd meg a /usr/src/linux/Documentation/devices.txt-ben a "10 char" résznél a 135-öt: /dev/rtc "Real Time Clock". Megnézed ugyanott a Configure.help-et, és megtalálod a "Enhanced Real Time Clock Support (CONFIG_RTC)" opciót, eldöntöd hogy neked van-e/kell-e olyan. Ha ilyen nincs a kerneledben akkor "alias char-major-10-135 off" a megfejtés, ha van, akkor "alias char-major-10-135 rtc". A /etc/conf.modules-ről lásd az előzményt.
K: Külső kernel-modulokat szeretnék fordítani, de gondjaim vannak a header-fileokkal, pl hiányzó include, rossz kernel-verzió...
V: Szükséged van az általad használt kernel forrására. Ha magad fordítottad, akkor nyilván megvan, ha gyári kernelt használsz, akkor valószínűleg valamilyen 'kernel-source' csomagot kell telepítened...
Az egységesség kedvéért legyen az /usr/src/linux egy szimlink a kernel source-re, pl "ln -s /usr/src/kernel-2.4.20 /usr/src/linux". (Haladó felhasználók ezt a link-et a boot folyamán egy scripttel hozhatják létre, hogy az éppen aktuális kernelhez igazodjon a szimlink (lásd uname -r)).
Ha ez megvan, meg kell vizsgálnod (ls -l) az alábbi könyvtárakat:
kedvező esetben ezek szimlinkek az alábbiakra (sorrendben)
/usr/src/linux/include/linux
/usr/src/linux/include/asm-i386 # vagy amilyen platformod van
/usr/src/linux/include/scsi
ha ez nem így van, akkor a korábbi tartalmat töröld (ha nem mered, akkor csak nevezd át), és hozd létre a szimlinkeket (pl "ln -s /usr/src/linux/include/linux /usr/include/linux").
K: Most meg olyat szeretnék, hogy előállítom a dokumentumot különböző nyelveken, különböző karakterkészlettel, de úgy, hogy a kliens ugyanazzal a névvel érje el (a böngésző beállítása alapján válassza ki a megfelelőt).
V: Az egyes verziók neve utaljon a nyelvre, pl:
tobbnyelvu.html.hu
tobbnyelvu.html.en
tobbnyelvu.html.fr
Ezután az alábbi opciókat add meg:
Options +MultiViews
AddLanguage hu .hu
AddLanguage en .en
AddLanguage fr .fr
AddCharset iso-8859-1 .en
AddCharset iso-8859-1 .fr
AddCharset iso-8859-2 .hu
Sziasztok!
Egy másik topicból javasolták, hogy írjam be ide is, mert esetleg érdekelhet embereket:
Egy kis segítség azoknak, akik ilyenbe belevágnak (remélem, jól jelenik meg):
Pin Description
1 Transmit+
2 Transmit-
3 Receive+
4 Not used
5 Not used
6 Receive-
7 Not used
8 Not used
Azaz a (klasszikus) UTP kábelekben csak 4 vezeték van kihasználva. Cross-kábeleknél a transmit és a receive irányokat kell keresztbe kötni, azaz az egyik oldal "Transmit+"-át a másik oldal "Receive+"-ával (a minuszosakat ugyanígy), és viszont. Leegyszerűsítve: ha a kábel végeit A-nak és B-nek nevezzük, akkor a szükséges összekötések: A1-B3, A2-B6, A3-B1, A6-B2.
Otthoni használatra, ha van présszerszám és RJ45-ös csati, akkor 5-10 méteres hosszig megteszi a sima 4 eres telefonkábel is, nálam legalábbis nem volt vele sohasem gond.
K: A mc-vel szeretnék elnavigálni valahová, de amikor kilépek belőle ugyanoda kerülök ahonnan elindultam!
V: UNIX-ban ez természetes, de használhatod a "mc" helyett a ". /usr/share/mc/bin/mc-wrapper.sh" parancsot, ez úgy működik, ahogy szeretnéd (ha nem éppen ott van, kis kereséssel akkor is megtalálod). Ajánlatos egy aliast definiálni hozzá, pl a /etc/profile-ban: "alias mc='. /usr/share/mc/bin/mc-wrapper.sh'"
K: A Minight Commander nem tudja elmenteni és a CTRL-O-ra visszaállítani a képernyőtartalmat, csak ha root-ként vagyok bejelentkezve!
V: A mc a /dev/vcsaN eszközről szeretné kiolvasni a képernyőtartalmat, de nem tudja, jogosultság hiányában. Lehetséges megoldások: a /dev/vcsaN -re jogokat osztogatni vagy a mc-t setuid-da alakitani... ez utobbi kicsit meredek ötlet, ezért van egy külön része, /usr/lib/mc/cons.saver (vagy valami hasonló helyen pl /usr/lib/mc/bin/cons.saver), elég csak azt suid-ozni... (advanced felhasználó esetleg csinálhat egy vcs csoportot, és abba rakja a /dev/vcs* -ot, meg setgid-et a cons.saver-re... persze vannak olyan akadályozó játékosok, mint pl a Debian-os mingetty, aki visszarakja a /dev/vcs-t alaphelyzetbe ;)