A: Preberite razdelek Odpravljanje napak ali agonija poraza.
A: Oglejte si razdelek Kako to delajo profesionalci.
Q: Kako naj uporabim diskete z večjo gostoto (> 1440 kB)? Kako naj ugotovim, kakšne diskete (s kakšnimi gostotami) bodo delovale z mojim pogonom?
A: Oglejte si opombe Alaina Knaffa v razdelku Zmanjšanje velikosti korenskega datotečnega sistema. Njegov odgovor je najbolj kompetenten od vseh poznanih.
A: Verjetno bi to moralo biti bolje razloženo v spisu, do takrat pa bo odgovor napisan tu.
Nikar ne poskušajte narediti tega z ukazoma rdev ali ramsize, ne glede na to, kar piše v njuni dokumentaciji. Beseda pomnilniškega diska ne določa več njegove velikosti.
Zapomnite si, da so pomnilniški diski v bistvu dinamični; ko določite njegovo velikost, s tem pravzaprav ne zasežete pomnilnika, s tem samo nastavite mejo, do katere se lahko povečujejo. Tako jih lahko brez posebne zadrege nastavite na kar velike vrednosti (npr. 8 ali celo 16 MB). Pomnilnik RAM se ne porablja, dokler ga dejansko ne potrebujete. Omejitve lahko nastavite na enega izmed naslednjih načinov.
S parametrom ramdisk_size=NNN v ukazni vrstici. Lahko ga vnesete ročno ali z ukazom append="ramdisk_size=NNN" v Lilu.
Če uporabljate LILO, lahko to storite z vnosom v datoteki lilo.conf, npr. ramdisk=8192K.
V jedru spremenite vrednost parametra CONFIG_BLK_DEV_RAM_SIZE in prevedite jedro.
A: Preberite razdelek Izdelava zagonskih plošč CD.
A: Ker avtor nima tovrstnega pogona, je povzel podatke Dava Cinega s projekta Linux Router Project.
LS-120 je disketni pogon IDE. Kompatibilen je z običajnimi 3,5 palčnimi in novimi 120 MB disketami. Polno je podprt od jedra 2.0.31 dalje. Da lahko z njega zaženete sistem, morate imeti BIOS, ki dovoljuje, da se pogon LS-120 obravnava kot pogon 0 (medtem ko se naprave IDE običajno začnejo na 80). Če BIOS tega ne podpira, lahko kupite majhno kartico IDE FloppyMAX podjetja Promise Technologies, ki odpravi to pomanjkljivost.
Zagonski nalagalnik jedra ne mara LS-120 in se obeša. Tudi diskete 2m ga ne marajo in se ne bodo hotele zagnati. Diskete kapacitete med 1,44 in 1,74 MB bodo delovale brez problemov. SYSLINUX deluje s 120 MB disketami od različice 1.32. Če ne potrebujete kompatibilnosti z MS_DOS, namesto uporabe SYSLINUXA raje razdelite disketo in uporabite datotečni sistem ext2 ali minix.
LILO lepo deluje s 120 MB disketami. Tukaj je vzorčna datoteka lilo.conf:
boot=/dev/hda
compact
disk=/dev/hda bios=0
install=/floppy/boot.b
map=/floppy/map
image=/floppy/linux
label=Linux
append="load_ramdisk=1"
initrd=/floppy/root.bin
ramdisk=8192 |
A: Najlažji način je, da z najbližjega zrcalnega mesta snamete Slackwarovo jedro. Ta jedra so generična jedra, ki poskušajo zajeti gonilnike za čimvečje število naprav. Če imate torej krmilnik SCSI ali IDE, je veliko možnosti, da je gonilnik zanj že vključen v Slackwarovo jedro.
Pojdite v imenik a1 in izberite jedro s podporo IDE ali SCSI, odvisno od vrste krmilnika, ki ga imate. Oglejte si datoteko xxxxkern.cfg za izbrano jedro, da ugotovite, kateri gonilniki so vključeni v to jedro. Če na tem seznamu najdete napravo, katere gonilnik potrebujete, potem bi s tem jedrom morali uspeti zagnati vaš računalnik. Prenesite si datoteko xxxxkern.tgz in jo prepišite na zagonsko disketo, kot je to opisano v prejšnjih razdelkih o izdelavi zagonskih disket.
Zatem morate z ukazom rdev zImage preveriti korensko napravo v jedru. Če ta ni enaka vaši želeni korenski napravi, jo spremenite z ukazom rdev. Da boste lahko uporabljali korensko disketo, boste morali vtipkati ukaz rdev zImage /dev/fd0.
Nastavitev Slackwarove korenske diskete presega namen tega spisa, zato vam predlagamo, da si ogledate Linux Install Guide (vodnik po namestitvi Linuxa) ali si priskrbite distribucijo Slackware. Oglejte si tudi razdelek ``Viri in povezave'' pri koncu tega spisa.
A: Najpreprosteje je prepisati datotečni sistem korenske diskete nazaj na NAPRAVO, ki ste jo uporabljali že v podrazdelku Izdelava datotečnega sistema. Nato datotečni sistem priklopite in opravite želene spremembe. Zapomniti si morate, kje se je vaš korenski datotečni sistem pričel in koliko blokov je zasedel:
dd if=/dev/fd0 bs=1k skip=ZAČETEK_K_D_S count=ŠT_BLOKOV | gunzip > NAPRAVA mount -t ext2 NAPRAVA /mnt |
A: Ta tema sicer nima neposredne zveze z zagonskimi disketami, vendar se vprašanje pojavi pogosto. Znotraj Linuxa lahko poženete:
/sbin/lilo -u |
Z ukazom dd lahko tudi na zagonski sektor prepišete rezervno kopijo, ki jo je shranil LILO. Če želite to storiti, si oglejte Lilovo dokumentacijo.
Znotraj Dosa ali Windows lahko poženete Dosov ukaz:
FDISK /MBR |
A: Če nimate pri roki zagonske diskete, bo verjetno še najlažje dobiti Slackwarovo jedro, ki podpira vaš diskovni krmilnik (IDE ali SCSI), kot je opisano pri odgovoru na vprašanje ``Kako lahko naredim zagonsko disketo z xyz gonilnikom?''. Tako lahko zaženete računalnik s tem jedrom in zakrpate sistem.
Takšno jedro morebiti ne bo imelo nastavljene korenske naprave na vrsto diska in razdelek, ki ga želite. Npr. Slackwarovo generično jedro za SCSI utegne imeti korensko napravo nastavljeno na /dev/sda2, medtem ko je avtorjev korenski razdelek /dev/sda8. V takšnem primeru je potrebno spremeniti korensko napravo v jedru.
V jedru lahko spremenite korensko napravo in nastavitve pomnilniškega diska tudi, če imate samo jedro in kakšen drug operacijski sistem, npr. DOS.
Ukaz rdev spremeni nastavitve jedra tako, da spremeni vrednosti zlogov na točno določenih mestih v datoteki jedra, to pa lahko storite tudi sami, če le imate na kateremkoli delujočem operacijskem sistemu na voljo urejevalnik v šestnajstiškem številskem sistemu, npr. Norton Utilities Disk Editor za DOS. Tako morate v datoteki jedra preveriti in po potrebi spremeniti vrednosti vrednosti zlogov na naslednjih mestih:
HEX DEC OPIS 0x01F8 504 Nižje uteženi zlog besede pomnilniškega diska 0x01F9 505 Višje uteženi zlog besede pomnilniškega diska 0x01FC 508 Nižja številka korenske naprave - gl. spodaj 0X01FD 509 Višja številka korenske naprave - gl. spodaj |
Struktura besede pomnilniškega diska je bila opisana v podrazdelku Nastavljanje besede za pomnilniški disk.
Višja in nižja številka naprave mora biti nastavljena na napravo, na katero nameravate pritrditi korenski datotečni sistem. Nekatere uporabne vrednosti so:
NAPRAVA VIŠJA NIŽJA /dev/fd0 2 0 prvi disketni pogon /dev/hda1 3 1 razdelek 1 na prvem pogonu IDE /dev/sda1 8 1 razdelek 1 na prvem pogonu SCSI /dev/sda8 8 8 razdelek 8 na prvem pogonu SCSI |
A: Ker se lahko na magnetni plasti diskete s časom pojavijo napake, bi morali hraniti več izvodov reševalne diskete za vsak primer, če prvotna postane neberljiva.
Najpreprostejša izdelava kopije katerekoli diskete, vključno z zagonskimi in pomožnimi diskatami, je z ukazom dd, ki prepiše vsebino prvotne diskete na trdi disk, nato pa z istim ukazom to prepišemo na novo disketo. Disket vam ni potrebno pritrjevati (in naj jih tudi ne bi), saj ukaz dd uporablja surov (neposreden, brez datotečnega sistema) vmesnik do naprav.
Za prepis prvotne diskete vnesite ukaz:
dd if=IME_NAPRAVE of=IME_DATOTEKE |
Da prepišete nastalo sliko diskete na novo disketo, vstavite disketo v pogon in vtipkajte obraten ukaz:
dd if=IME_DATOTEKE of=IME_NAPRAVE |
Pri tem smo predpostavili, da imate samo en disketni pogon. Če imate dva pogona iste vrste, lahko neposredno prepišete disketo z ukazom
dd if=/dev/fd0 of=/dev/fd1 |
A: Kjer samozaznava diska ni mogoča, je jedru potrebno podati niz z ustreznimi parametri, kot npr.
aha152x=0x340,11,3,1 |
Z vnosom v ukazni vrstici ob vsakokratnem zagonu sistema z Lilom. Kakorkoli že, to je dolgočasno.
Z uporabo Lilove ključne besede lock, s katero lahko podano ukazno vrstico shranimo kot privzeto in jo bo LILO uporabil ob vsakem nadaljnjem zagonu.
Z vrstico append= v Lilovi nastavitveni datoteki. Niz parametrov mora biti med narekovajema.
Primer ukazne vrstice za zgornji niz parametrov bi se glasil
zImage aha152x=0x340,11,3,1 root=/dev/sda1 lock |
Na ta način bi podali niz parametrov, v jedru nastavili korensko napravo na /dev/sda1 in shranili celotno ukazno vrstico za uporabo ob vseh nadaljnjih zagonih.
Primer stavka APPEND je
APPEND = ,,aha152x=0x340,11,3,1`` |
Upoštevajte, da niz parametrov ne sme biti med narekovajema, kadar ga kličemo z ukazne vrstice, ob klicu s stavkom APPEND pa mora stati med narekovajema.
Ne pozabite, da mora jedro vsebovati gonilnik za vrsto diska, ki ga želimo doseči z nizom parametrov. Če gonilnika ni, potem nič ne posluša niza parametrov in boste morali znova prevesti jedro, da bo vsebovalo zahtevani gonilnik. Glede podrobnosti o prevajanju jedra pojdite v imenik /usr/src/linux in preberite datoteko README. Preberite še spisa Linux FAQ in Installation HOWTO (oba sta prevedena v slovenščino). Lahko pa si tudi omislite generično jedro za ustrezen krmilnik diska in ga namestite.
Bralcu močno priporočamo, da še pred poskusi z namestitvijo Lila prebere Lilovo dokumentacijo. Neprevidna uporaba stavka BOOT lahko poškoduje razdelke diska.
A: Obstaja precej primerov, kjer so imena programov že vprogramirana v različnih pripomočkih. Do tega sicer ne prihaja povsod, da se pa razložiti, zakaj nekateri programi v sistemu očitno ne najdejo izvršilne datoteke, čeprav lahko sami vidite, da obstaja. Ali ima program vprogramirane poti do drugih programov, lahko ugotovite z ukazom strings, čigar izhod prek cevi preusmerite na grep.
Znana primera vprogramiranih imen sta:
shutdown ima v nekaterih različicah vprogramiran /etc/reboot, zato se mora reboot obvezno nahajati v imeniku /etc.
init je vsaj eni osebi povzročal težave, ker jedro ni moglo najti tega programa (iskalo ga je v drugem imeniku).
Ta problem rešite tako, da bodisi prestavite programe v ustrezne imenike bodisi popravite nastavitvene datoteke (npr. inittab), da bodo kazale na imenike, kjer programi dejansko so. Če ste v dvomih, naj bodo programi v istih imenikih, kot so na trdem disku, ter uporabite isti datoteki inittab in /etc/rc.d, kot ju imate na trdem disku.
A: Če pride do tega, se bo ob zagonu pojavilo sporočilo jedra:
Ramdisk driver initialized : 16 ramdisks of 0K size |
Vzrok je verjetno to, da je bila ob zagonu s parametri jedra nastavljena velikost pomnilniškega diska na 0. Verjetno ste spregledali parameter v Lilovi nastavitveni datoteki:
ramdisk= 0 |
To je bilo dodano v vzorčne Lilove nastavitvene datoteke pri nekaterih starejših distribucijah. Namen je bil "preglasiti" prejšnje nastavitve jedra. Če najdete kakšno takšno vrstico, jo kratkomalo izbrišite.
Če nameravate uporabljati pomnilniške diske velikosti 0, lahko obnašanje sistema postane nepredvidljivo in se lahko pojavijo sporočila "kernel panic".