The Linux Bootdisk HOWTO: Najczęściej zadawane pytania (FAQ).
Następna strona
Poprzednia strona
Spis treści
10. Najczęściej zadawane pytania (FAQ).
Q. Próbuje wystartować system z dyskietki, ale nic się nie dzieje.
Co mam zrobić?
Zajrzyj do działu
Rozwiązywanie problemów
powyżej.
Q. Jak działają dyskietki startowe dystrybucji Slackware/Debian/RedHat?
Zajrzyj do działu
Jak to robią profesjonaliści powyżej.
Q. W jaki sposób stworzyć dyskietkę startową ze sterownikiem XYZ?
Najłatwiej zdobyć jądro z dystrybucji Slackware. Jądra Slackware zawierają
sterowniki do jak największej ilości urządzeń, więc jeśli posiadasz
kontroler IDE lub SCSI, istnieją duże szanse, że sterownik do urządzenia jest
dołączony do jednego z jąder Slackware.
Przejdz do katalogu a1 i wybierz jądro odpowiednie dla posiadanego
typu kontrolera. Sprawdz w pliku xxxxkern.cfg dla odpowiedniego jądra
czy zawiera ono odpowiednie sterowniki. Jeśli urządzenie jest na tej liście,
to jądro to powinno wystartować twój system. Ściągnij plik xxxxkern.tgz i
skopiuj go na dyskietkę, tak jak opisano powyżej, w dziale na temat
tworzenia dyskietek startowych.
Następnie musisz sprawdzić główne urządzenie tego jądra, korzystając
z komendy rdev:
rdev zImage
Komenda rdev wyświetli aktualne główne urządzenie dla tego jądra.
Jeśli nie odpowiada ono twojemu głównemu urządzeniu, użyj rdev aby
je zmienić. Na przykład jądro korzysta z /dev/sda2, ale moja
główna partycja SCSI znajduje się na urządzeniu /dev/sda8.
Aby zmienić główne urządzenie na dyskietkę, musisz użyć komendy:
rdev zImage /dev/fd0
Informacje na temat tworzenia głównych dyskietek Slackware wykraczają poza
zakres tego dokumentu, więc sugeruje zajrzeć do Linux Install Guide lub
zdobyć dystrybucję Slackware. Zobacz także dział ``Odnośniki'' w tym HOWTO.
Q. Jak uaktualnić jądro na mojej dyskietce?
Jeśli dyskietka startowa nie zawiera systemu plików, po prostu skopiuj jądro
za pomocą komendy dd. W przypadku dyskietki startowej/głównej użyj
komendy cp. Zajrzyj do działu ``Startowanie'' aby dowiedzieć się
szczegółów na temat tworzenia dyskietki startowej. Ten opis odnosi się także
do uaktualniania jądra.
Q. Jak dodać nowe pliki do mojej głównej dyskietki?
Najprostszym sposobem jest skopiowanie systeku plików z dyskietki z powrotem
do użytego URZĄDZENIA (z działu
Tworzenie systemu plików powyżej). Następnie zamontuj system plików i dokonaj zmian.
Musisz wiedzieć, w którym bloku zaczynał się system plików i ile bloków
zajmował:
dd if=/dev/fd0 bs=1k skip=POCZĄTEK count=BLOKI | gunzip > URZĄDZENIE
mount -t ext2 URZĄDZENIE /mnt
Po dokonaniu zmian, postępuj tak jak poprzednio (w dziale
Tworzenie dyskietki) i przenieś główny system
plików z powrotem na dyskietkę. Nie musisz przenosić ponownie jądra czy
ponownie przeliczać słowa ramdysku jeśli nie zmieniłeś pozycji nowego
systemu plików.
Q. Jak mogę usunąć LILO aby ponownie korzystać ze startowania DOS?
Tak na prawdę ten temat nie dotyczy dyskietek startowych, ale ludzie często
o to pytają. Z poziomu Linuxa możesz użyć komendy:
/sbin/lilo -u
Możesz także wykorzystać dd aby przenieść kopię zapasową stworzoną
przez LILO z powrotem do bootsektora. Zajrzyj do dokumentacji LILO, jeśli
chcesz się dowiedzieć jak to zrobić.
Z poziomu systemu DOS lub Windows możesz skorzystać z polecenia DOS'a:
FDISK /MBR
MBR oznacza Master Boot Record i zastępuje bootsektor nowym DOS'owym,
nie zmieniając przy tym tablicy partycji. Niektórzy puryści nie zgadzają się
z tym, ale nawet autor LILO, Werner Almesberger, sugeruje to rozwiązanie.
Jest ono proste, no i działa.
Q. Jak mogę wystartować system jeśli zgubiłem jądro oraz moją
dyskietkę startową?
Jeśli nie masz dyskietki startowej, to najprostszym sposobem będzie zdobycie
odpowiedniego jądra Slackware jak to opisano powyżej w odpowiedzi na pytanie
``Jak mogę stworzyć dyskietkę startową ze sterownikiem XXX?''. Następnie
możesz wystartować komputer używając tego jądra i naprawić wszystkie
problemy.
Jądro to może nie mieć ustawionego odpowiedniego głównego urządzenia.
Na przykład typowe jądro SCSI Slackware za główne urządzenie uznaje
/dev/sda2, a moja główna partycja Linuxowa to
/dev/sda8. W tej sytuacji główne urządzenie w jądrze musi
zostać zmienione.
Główne urządzenie oraz wartość słowa ramdysku możesz zmienić nawet wtedy,
gdy posiadasz jedynie jądro i jakiś inny system operacyjny, na przykład DOS.
Polecenie rdev zmienia ustawienia poprzez zmianę wartości konkretnych
bajtów w pliku jądra, więc możesz zrobić to samo, jeśli tylko posiadasz
edytor heksadecymalny pracujący pod innym działającym systemem
-- przykładowo Norton Disk Editor z pakietu Norton Utilities pod DOS.
Następnie musisz sprawdzić i, jeśli to konieczne, zmienić wartości pod
następującymi przesunięciami:
HEX DEC OPIS
0x01F8 504 Młodszy bajt słowa ramdysku
0x01F9 505 Starszy bajt słowa ramdysku
0x01FC 508 Poboczny numer urządzenia - patrz niżej
0X01FD 509 Główny numer urządzenia - patrz niżej
Znaczenie słowa ramdysku zostało opisane w dziale
Ustawianie słowa ramdysku powyżej.
Poboczny i głowny numer musi odpowiadać urządzeniu, na którym znajduje się
główny system plików. Niektóre najczęściej używane wartości to:
DEVICE GŁÓWNY POBOCZNY
/dev/fd0 2 0 Pierwsza stacja dysków
/dev/hda1 3 1 Pierwsza partycja na pierwszym dysku IDE
/dev/sda1 8 1 Pierwsza partycja na pierwszym dysku SCSI
/dev/sda8 8 8 Ósma partycja na pierwszym dysku SCSI
Gdy już ustawisz odpowiednie wartości, możesz zapisać plik na dyskietce
korzystając z Norton Utilities Disk Editor, albo programu rawrite.exe,
który znajduje się we wszystkich dystrybucjach. Jest to program DOS'owy
który zapisuje dane w czystej postaci zaczynając od boot sektora dyskietki,
zamiast zapisywać do systemu plików. Jeśli używasz Norton Utilities, musisz
zapisać plik do fizycznej dyskietki zaczynając od jej początku.
Q. W jaki sposób mogę stworzyć dodatkowe kopie dyskietek?
Jako że nośniki magnetyczne z czasem tracą swe właściwości, powinieneś
posiadać kilka kopii swoich dyskietek ratunkowych, w razie gdyby oryginały
uległy uszkodzeniu.
Najprostszą metodą tworzenia kopii każdej dyskietki, włączając w to
dyskietki startowe czy narzędziowe, jest użycie komendy dd aby
skopiować zawartość oryginalnej dyskietki do pliku na dysku twardym, a
następnie użyć tej samej komendy aby skopiować plik z powrotem na dyskietkę.
Zauważ, że nie powinieneś montować dyskietek, ponieważ dd korzysta
bezpośrednio z urządzenia.
Aby skopiować oryginał, użyj polecenia:
dd if=URZĄDZENIE of=PLIK
gdzie URZĄDZENIE jest nazwą urządzenia stacji dyskietek
a PLIK jest nazwą docelowego pliku na twardym dysku
Pominięcie parametru count powoduje skopowanie całej dyskietki
(2880 bloków jeśli jest to dyskietka HD).
Aby skopiować plik spowrotem na dyskietkę, włóż dyskietkę do stacji i
użyj komendy:
dd if=PLIK of=URZĄDZENIE
Zauważ, że powyższy opis zakłada, że posiadasz tylko jedną stację dysków.
Jeśli posiadasz dwa napędy tego samego typu, możesz skopiować dyskietki
używając komendy:
dd if=/dev/fd0 of=/dev/fd1
Q. Jak wystartować system bez wpisywania za każdym razem
"ahaxxxx,nn,nn,nn"?
Jeśli dysk nie może zostać automatycznie wykryty, koniecznie jest
dostarczenie parametrów do jądra, takich jak:
aha152x=0x340,11,3,1
Ten parametr może zostać dostarczony na kilka sposobów, korzystając z LILO:
Poprzez wpisywanie go za każdym razem w linii poleceń LILO, jednak
jest to męczące.
Używając słowa kluczowego LILO ``lock'' aby linia poleceń została
zachowana jako domyślna, używana przy każdym starcie systemu.
Używając opcji append= w pliku konfiguracyjnym LILO. Pamiętaj, że
parametr musi zostać ujęty w cudzysłowy.
Przykładaowa linia poleceń dla podanego powyżej parametru może wyglądać
następująco:
zImage aha152x=0x340,11,3,1 root=/dev/sda1 lock
Przekaże ona opcje urządzenia do jądra, ustawi w jądrze główne urządzenie na
/dev/sda1 i zapisze linie poleceń do użycia przy każdym
następnym starcie systemu.
Przykładowa opcja append wygląda następująco
append = "aha152x=0x340,11,3,1"
Pamiętaj, że parametr w linii poleceń nie może być ujęty w cudzyłowy,
ale musi być ujęty w cudzysłowy jeśli występuje w opcji append.
Pamiętaj także, że w jądrze musi znajdować się sterownik dla podanego typu
urządzenia. Jeśli tak nie jest, będziesz musiał przekompilować jądro
aby zawierało odpowiednie sterowniki. Szczegóły na temat rekompilacji jądra
znajdziesz w pliku README w katalogu /usr/src/linux oraz w
Linux FAQ i Installation HOWTO. Ewentualnie możesz zdobyć odpowiednie jądro
dla tego urządzenia i zainstalować je.
Przed ekperymentami z LILO zalecane jest zapoznanie się z jego dokumentacją.
Nieprawidłowe użycie opcji BOOT może uszkodzić partycję.
Q. Podczas staru otrzymuje komunikat błędu "A: cannot execute
B". Co to oznacza?
W niektórych przypadkach ścieżki do plików są na stałe zapisane w niektórych
programach. Nie zdarza się to zawsze, ale może wyjaśnić dlaczego program nie
może zostać odnaleziony w twoim systemie nawet jeśli jesteś pewien że się
tam znajduje. Możesz sprawdzić, czy program ma zapisaną na stałe lokalizację
jakiegoś innego programu korzystając z komendy strings i przepuszczając
jej wyjście przez filtr grep.
Niektóre znane przypadki zapisanych na stałe lokalizacji:
Niektóre wersje shutdown mają zapisaną na stałe lokalizację
/etc/reboot, tak więc reboot musi zostać umieszczony
w katalogu /etc.
Czasem jądro nie może odnaleźć programu init.
Aby naprawić ten problem przenieś program do odpowiedniego katalogu, lub
zmień pliki konfiguracyjne (np. inittab) aby wskazywały na poprawny
katalog. Jeśli masz wątpliwości, umieść program w tym samym katalogu,
w którym znajdował się na dysku twardym oraz użyj tych samych plików
inittab i /etc/rc.d.
Q. Moje jądro posiada obsługę ramdysku, ale inicjuje go z wielkością 0K.
W takiej sytuacji podczas startu systemu pojawi się informacja:
Ramdisk driver initialized : 16 ramdisks of 0K size
Dzieje się tak dlatego, że rozmiar ramdysko został ustawiony na 0 przez
jądro podczas startu systemu. Najprawdopodobniej dzieje się tak przez
parametr w pliku konfiguracyjnym LILO:
ramdisk= 0
Który w starszych dystrybucjach został umieszczany w przykładowym pliku
konfiguracyjnym LILO. Jeśli posiadasz taką linię, usuń ją.
Skutki korzystania z ramdysku o rozmiarze 0K są nieprzewidywalne i mogą
doprowadzić do błędów jądra.
Następna strona
Poprzednia strona
Spis treści
Wyszukiwarka
Podobne podstrony:
bootdisk howto pl 8DOSEMU HOWTO pl 10 (2)Shadow Password HOWTO pl 10 (2)printing howto pl 10SMB HOWTO pl 10 (2)bootdisk howto pl 13bootdisk howto pl 3bootdisk howto pl 7Cyrillic HOWTO pl 10 (2)bootdisk howto pl 4bootdisk howto pl 5firewall howto pl 10PostgreSQL HOWTO pl 10bootdisk howto pl 6ax25 howto pl 10DNS49 HOWTO pl 10 (2)win95 win linux mini howto pl 10net 3 howto pl 10bootdisk howto pl 9więcej podobnych podstron