Rozszeżenie dzia

Tematy związane z oprogramowaniem, instalacją, konfiguracją
Demerzel
Beginner
Posty: 187
Rejestracja: 06 czerwca 2007, 14:44

RozszeŻenie działania polecenia halt

Post autor: Demerzel »

Witam, mam moduł apm bez którego komputer się nie wyłączy. Szkoda żeby zajmował pamięć przez cały czas pracy systemu. Jak zrobić żeby przy wywołaniu komendy halt moduł ten był ładowany i dopiero rozpoczynało się zamykanie systemu?
Awatar użytkownika
Yampress
Administrator
Posty: 6427
Rejestracja: 09 sierpnia 2007, 21:41
Lokalizacja: PL

Post autor: Yampress »

usuń moduł z pamięci przy starcie


napisz sobie skrypt :P
który go ponownie łąduje a potem uruchamia shutdown
Ventrue
Junior Member
Posty: 532
Rejestracja: 06 lipca 2007, 12:10
Lokalizacja: Lubin

Post autor: Ventrue »

A zdaje się, że nie możnaby podczepić tego "skryptu" pod odpowiedniego inita?
Demerzel
Beginner
Posty: 187
Rejestracja: 06 czerwca 2007, 14:44

Post autor: Demerzel »

Moduł przy starcie systemu się nie ładuje, i tak być powinno.
Z bash-em u mnie nie najlepiej. Jak się w ogóle zabrać za taki skrypt?
Ventrue
Junior Member
Posty: 532
Rejestracja: 06 lipca 2007, 12:10
Lokalizacja: Lubin

Post autor: Ventrue »

Być może dodanie

Kod: Zaznacz cały

modprobe apm
do /etc/rc0.d/S90halt pomogłoby, ew. dorobienie tam własnego skryptu (o zawartości powyższej)


UPDATE:
Poszperałem, poszperałem i chyba mam :mrgreen:

Wejdź do /etc/init.d

Kod: Zaznacz cały

cd /etc/init.d
Zaloguj się jako root i wyedytuj plik halt (wcześniej zrób kopię zapasową!!!):

Kod: Zaznacz cały

su
...
nano halt


Pomiędzy
. /lib/lsb/init-functions

do_stop () {
a przed
if [ "$INIT_HALT" = "" ]
Naciśnij TAB, aby zrobić odstęp i wpisz:

Kod: Zaznacz cały

modprobe apm
Dokładnie tak samo zrób z plikiem reboot (kopia zapasowa, pamiętaj!):

Kod: Zaznacz cały

do_stop () {
        /sbin/modprobe apm
	# Message should end with a newline since kFreeBSD may
	# print more stuff (see #323749)
	log_action_msg "Will now restart"
	reboot -d -f -i
}
Zapisz.
Jak zadziałą - miło. Nie zadziała - będziem kombinować dalej :-)

UPDATE2:
Widzę, że poprzedni sposób działa. Gicior :mrgreen:
Demerzel
Beginner
Posty: 187
Rejestracja: 06 czerwca 2007, 14:44

Post autor: Demerzel »

Do katalogu /bin dodałem plik stop.

Kod: Zaznacz cały

#/bin/bash
modprobe apm;
halt;
Załatwia sprawę.

[ Dodano: 2007-08-16, 18:10 ]
Venture, zrobiłem jak napisałeś i działa ładnie. To może jeszcze powiesz jak w trakcie uruchamiania systemu pozbyć się komunikatu o nieudanej próbie ładowania modułu karty dźwiękowej? Karta jest w kompilowana w kernel. Nie wiem skąd on bierze pomysł na ładowanie jej modułu.
Ventrue
Junior Member
Posty: 532
Rejestracja: 06 lipca 2007, 12:10
Lokalizacja: Lubin

Post autor: Ventrue »

Spróbuj dodać ten moduł do /etc/modprobe.d/blacklist
w takiej postaci:

Kod: Zaznacz cały

blacklist nazwa_modułu
Demerzel pisze:Venture,
Ventrue ;-)
Demerzel
Beginner
Posty: 187
Rejestracja: 06 czerwca 2007, 14:44

Post autor: Demerzel »

Ventrue, przepraszam postaram się pamiętać. Dodanie do black list nie pomogło komunikat dokładnie brzmi

Kod: Zaznacz cały

Detecting hardware FATAL: Module snd_via82xx not found
¯eby było lepiej tego komunikatu niema nigdzie w logach jest tylko w czasie uruchamiania systemu.
Cóż to próbuje wykrywać sprzęt i ładować ten moduł.
Ventrue
Junior Member
Posty: 532
Rejestracja: 06 lipca 2007, 12:10
Lokalizacja: Lubin

Post autor: Ventrue »

Gdzieś wyczytałem, że zainstalowanie kernel-source może pomóc. Ew. odbudowanie listy modułów poprzez

Kod: Zaznacz cały

depmod -a
, ew.

Kod: Zaznacz cały

 modprobe -v snd-via82xx
Albo... skompiluj od nowa jądro, ale wkompiluj tego na stałe, tylko zostaw jako moduł.
Demerzel
Beginner
Posty: 187
Rejestracja: 06 czerwca 2007, 14:44

Post autor: Demerzel »

Depmod nie mam w systemie, drugie polecenie wyrzuciło

Kod: Zaznacz cały

:~# modprobe -v snd-via82xx
install /sbin/modprobe --ignore-install snd-via82xx  && { /lib/alsa/modprobe-post-install snd-via82xx ; /sbin/modprobe --quiet snd-seq ; }
FATAL: Module snd_via82xx not found.
FATAL: Error running install command for snd_via82xx
Kompilacje kernela z tym modułem próbowałem jakiś czas temu też nie pomogło.
ODPOWIEDZ