Repository 32bit  Forum
Repository 64bit  Wiki

Velocizzare l'avvio.

Se avete problemi con l'installazione e la configurazione di Slackware64 postate qui. Non usate questo forum per argomenti che trattano la Slackware32 o generali... per quelli usate rispettivamente il forum Slackware e Gnu/Linux in genere.

Moderatore: Staff

Regole del forum
1) Citare sempre la versione di Slackware64 usata, la versione del Kernel e magari anche la versione della libreria coinvolta. Questi dati aiutano le persone che possono rispondere.
2) Per evitare confusione prego inserire in questo forum solo topic che riguardano appunto Slackware64, se l'argomento è Slackware32 o generale usate rispettivamente il forum Slackware o Gnu/Linux in genere.
3) Leggere attentamente le risposte ricevute
4) Scrivere i messaggi con il colore di default, evitare altri colori.
5) Scrivere in Italiano o in Inglese, se possibile grammaticalmente corretto, evitate stili di scrittura poco chiari, quindi nessuna abbreviazione tipo telegramma o scrittura stile SMS o CHAT.
6) Appena registrati è consigliato presentarsi nel forum dedicato.

La non osservanza delle regole porta a provvedimenti di vari tipo da parte dello staff, in particolare la non osservanza della regola 5 porta alla cancellazione del post e alla segnalazione dell'utente. In caso di recidività l'utente rischia il ban temporaneo.

Velocizzare l'avvio.

Messaggioda lupass93 » lun gen 11, 2010 22:27

Ciao a tutti, ho letto http://book.slackware.it/system-configuration.html e http://book.slackware.it/x-window-system-xdm.html per capire il sistema init di Slackware.
Per quello che ho capito (correggetemi se sbaglio :D ), all'avvio dopo aver preparato il sistema con la lettura di inittab e di rc.S, rc.S avvierà gli script che sono in /etc/rc.d.
Ora gli script che non ha i dirritti di essere esecutibili non si avviano mentre gli altri si:
Codice: Seleziona tutto
root@lupass:/etc/rc.d# ls -l /etc/rc.d                                                     
total 276                                                                                 
drwxr-xr-x 2 root root    45 2008-09-23 19:55 init.d                                       
lrwxrwxrwx 1 root root     4 2010-01-08 22:44 rc.0 -> rc.6                                 
-rwxr-xr-x 1 root root  1282 2007-03-27 03:12 rc.4                                         
-rwxr-xr-x 1 root root  7453 2008-12-02 21:32 rc.6                                         
-rwxr-xr-x 1 root root  2425 2008-12-02 21:31 rc.K                                         
-rwxr-xr-x 1 root root 10906 2009-04-26 00:01 rc.M                                         
-rwxr-xr-x 1 root root 14253 2009-04-22 04:48 rc.S                                         
-rw-r--r-- 1 root root   466 2008-11-26 22:39 rc.acpid                                     
-rwxr-xr-x 1 root root  2672 2009-05-23 06:17 rc.alsa                                     
-rw-r--r-- 1 root root  1032 2009-08-11 02:22 rc.atalk                                     
-rw-r--r-- 1 root root  3116 2008-04-13 23:48 rc.bind                                     
-rw-r--r-- 1 root root  3301 2009-08-24 11:09 rc.bluetooth                                 
-rw-r--r-- 1 root root  1051 2009-08-24 11:09 rc.bluetooth.conf                           
-rw-r--r-- 1 root root  4318 2009-08-22 07:31 rc.cups                                     
-rw-r--r-- 1 root root   512 2009-07-01 05:46 rc.dnsmasq                                   
-rwxr-xr-x 1 root root   119 2009-08-25 03:23 rc.font.new                                 
-rwxr-xr-x 1 root root  1893 2008-10-23 01:03 rc.fuse                                     
-rw-r--r-- 1 root root  1156 2010-01-08 23:19 rc.gpm                                       
-rwxr-xr-x 1 root root   906 2009-08-01 07:47 rc.hald                                     
-rw-r--r-- 1 root root   703 2009-08-10 21:08 rc.httpd                                     
-rwxr-xr-x 1 root root  9579 2009-08-25 06:37 rc.inet1                                     
-rw------- 1 root root  3579 2010-01-08 23:19 rc.inet1.conf                               
-rwxr-xr-x 1 root root  4847 2007-09-18 00:07 rc.inet2                                     
-rwxr-xr-x 1 root root   497 2003-09-12 05:27 rc.inetd                                     
-rw-r--r-- 1 root root  2684 2008-12-03 23:58 rc.ip_forward                               
-rwxr-xr-x 1 root root   126 2010-01-10 00:52 rc.kdm                                       
-rwxr-xr-x 1 root root   140 2010-01-08 23:13 rc.keymap                                   
-rwxr-xr-x 1 root root   272 2006-08-12 04:07 rc.local                                     
-rwxr-xr-x 1 root root  1740 2009-06-09 04:52 rc.messagebus                               
lrwxrwxrwx 1 root root    19 2010-01-08 22:44 rc.modules -> rc.modules-2.6.29.6           
-rwxr-xr-x 1 root root 35406 2009-08-17 18:53 rc.modules-2.6.29.6                         
-rw-r--r-- 1 root root  2585 2009-08-04 03:45 rc.mysqld                                   
-rw-r--r-- 1 root root  2457 2008-10-28 11:49 rc.nfsd                                     
-rw-r--r-- 1 root root   749 2009-06-03 23:07 rc.ntpd                                     
-rw-r--r-- 1 root root   760 2009-12-09 23:33 rc.ntpd.new
-rw-r--r-- 1 root root  1722 2007-03-16 22:09 rc.pcmcia
-rw-r--r-- 1 root root  1402 2008-10-14 20:37 rc.rpc
-rw-r--r-- 1 root root   791 2009-06-26 06:21 rc.samba
-rw-r--r-- 1 root root  1169 2009-05-15 19:09 rc.saslauthd
-rw-r--r-- 1 root root   687 2002-06-04 23:09 rc.sendmail
-rw-r--r-- 1 root root  2895 2009-05-23 08:43 rc.serial
-rw-r--r-- 1 root root   895 2009-05-23 09:13 rc.snmpd
-rw-r--r-- 1 root root  1477 2009-05-23 08:04 rc.sshd
-rwxr-xr-x 1 root root   981 2007-04-10 01:10 rc.syslog
-rwxr-xr-x 1 root root  1740 1999-09-11 22:48 rc.sysvinit
-rwxr-xr-x 1 root root  4231 2009-04-22 04:01 rc.udev
-rw-r--r-- 1 root root 12494 2009-04-28 19:32 rc.wireless
-rw------- 1 root root  7320 2009-04-28 19:32 rc.wireless.conf
-rwxr-xr-x 1 root root  2323 2008-10-31 15:00 rc.yp
drwxr-xr-x 2 root root     6 2008-09-23 19:55 rc0.d
drwxr-xr-x 2 root root     6 2008-09-23 19:55 rc1.d
drwxr-xr-x 2 root root     6 2008-09-23 19:55 rc2.d
drwxr-xr-x 2 root root     6 2008-09-23 19:55 rc3.d
drwxr-xr-x 2 root root     6 2010-01-11 21:44 rc4.d
drwxr-xr-x 2 root root     6 2008-09-23 19:55 rc5.d
drwxr-xr-x 2 root root     6 2008-09-23 19:55 rc6.d
root@lupass:/etc/rc.d#

PS: in rc0.d fino a rc6.d non c'è nulla all'interno, gli script sono tutti in /etc/rc.d
Ora kdm è di default messo nel runlevel 4, giusto? E quindi si avvia tra gli ultimi.
Ora vorrei sapere se è possibile spostare kdm in un runlevel precedente per velocizzare l'avvio perchè è lento, o comunque se non è possibile cercare di velocizzare l'avvio :o .
Grazie in anticipo per gli aiuti!
Ciao ciao!
lupass93
Linux 1.0
Linux 1.0
 
Messaggi: 43
Iscritto il: ven giu 26, 2009 10:46
Località: Sessa Aurunca (CE)
Nome Cognome: Luca Passaretta
Slackware: Slackware64 13.0
Kernel: 2.6.32-zen5-lupass2-06649-g632
Desktop: KDE
Distribuzione: Slackware64 13.0

Re: Velocizzare l'avvio.

Messaggioda targzeta » mar gen 12, 2010 0:28

Non esiste una precedenza tra i runlevel. Di runlevel se ne sceglie uno e poi init leggendo la sua inittab eseguirà tutti i processi che avranno quel determinato runlevel. Quindi quello che chiedi non ha senso, cambiare il runlevel generalmente significa anche cambiare il pool di processi da avviare, tu non devi agire in questo senso.

Per velocizzare l'avvio generalmente occorre mettere mano in quei file ed eliminare (commentare) ciò di cui non necessiti. Io ad esempio ho un avvio di circa 20 secondi, però non uso kde ma il più semplice icewm. Inoltre ho eliminato il controllo di consistenza sui dischi rigidi, il controllo lo eseguo se e solo se il PC non viene spento correttamente. Ancora, ho detto a udev di non fare il trigger per vari device, etc..etc.. In pratica io mi sono personalizzato tutti i file di avvio della Slackware.

Quindi la risposta è si, si può velocizzare l'avvio di Slackware, però devi sapere cosa fai (ad esempio eliminare il controllo di consistenza sui dischi non è proprio il massimo e non so se lo consiglierei, però fin'ora non mai perso né un disco né un filesystem).

Emanuele
Linux Registered User #454438
Se pensi di essere troppo piccolo per fare la differenza, prova a dormire con una zanzara -- Dalai Lama
20/04/2013 - Io volevo Rodotà
Avatar utente
targzeta
Iper Master
Iper Master
 
Messaggi: 6194
Iscritto il: gio nov 03, 2005 14:05
Località: Carpignano Sal. (LE) <-> Pisa
Nome Cognome: Emanuele Tomasi
Slackware: current
Kernel: latest stable
Desktop: IceWM

Re: Velocizzare l'avvio.

Messaggioda Blallo » mar gen 12, 2010 0:35

spina ha scritto:Ancora, ho detto a udev di non fare il trigger per vari device

cosa cambia se attui questa modifica?
Io sono il detective Arsenio Magret, e porto sempre la camicia TATUATA!
Avatar utente
Blallo
Packager
Packager
 
Messaggi: 3243
Iscritto il: ven ott 12, 2007 10:37
Località: Torino / Torremaggiore (FG)
Nome Cognome: Savino Liguori
Slackware: 14.1 / 12.2
Kernel: 3.12.2-ck
Desktop: Openbox

Re: Velocizzare l'avvio.

Messaggioda targzeta » mar gen 12, 2010 0:41

jimmy_page_89 ha scritto:
spina ha scritto:Ancora, ho detto a udev di non fare il trigger per vari device

cosa cambia se attui questa modifica?

In tempo praticamente niente, semplicemento evito di caricare i moduli del kernel. I moduli li gestisco via /etc/modprobe.d e quindi evito di caricarli all'avvio.

Emanuele
Linux Registered User #454438
Se pensi di essere troppo piccolo per fare la differenza, prova a dormire con una zanzara -- Dalai Lama
20/04/2013 - Io volevo Rodotà
Avatar utente
targzeta
Iper Master
Iper Master
 
Messaggi: 6194
Iscritto il: gio nov 03, 2005 14:05
Località: Carpignano Sal. (LE) <-> Pisa
Nome Cognome: Emanuele Tomasi
Slackware: current
Kernel: latest stable
Desktop: IceWM

Re: Velocizzare l'avvio.

Messaggioda ZeroUno » mar gen 12, 2010 15:19

lupass93 ha scritto:Ora vorrei sapere se è possibile spostare kdm in un runlevel precedente

Quindi vuoi caricare kde mentre il resto è ancora in fase di inizializzazione.
E' una porcata ma dovrebbe funzionare, ma non so quant'è il tempo che ti fa risparmiare:
- edita rc.M e cerca rc.inet2
- prima del blocco if metti questa riga:
Codice: Seleziona tutto
/opt/kde/bin/kdm -nodaemon &

- sposta la riga rm -f /var/lock ...... prima di questo kdm
ASSICURATI di fare il boot in runlevel 3 e NON 4!!

Procedura non testata.

Ciao
01
Packages finder: slakfinder.org | Slackpkg+, per aggiungere repository a slackpkg
Codice: Seleziona tutto
1011010 1100101 1110010 1101111 - 0100000 - 1010101 1101110 1101111
Avatar utente
ZeroUno
Staff
Staff
 
Messaggi: 4414
Iscritto il: ven giu 02, 2006 13:52
Località: Roma / Castelli
Nome Cognome: Matteo Rossini
Slackware: current
Kernel: slack-current
Desktop: ktown-latest
Distribuzione: 01000000-current

Re: Velocizzare l'avvio.

Messaggioda lupass93 » mar gen 12, 2010 18:05

Prima di tutto grazie per le risposte :) .
Non esiste una precedenza tra i runlevel. Di runlevel se ne sceglie uno e poi init leggendo la sua inittab eseguirà tutti i processi che avranno quel determinato runlevel. Quindi quello che chiedi non ha senso, cambiare il runlevel generalmente significa anche cambiare il pool di processi da avviare, tu non devi agire in questo senso.

Grazie per l'informazione, non avevo capito proprio....quindi comunque il runlevel deve essere impostato sempre il 4 perchè kdm è in quel runlevel.
Ancora, ho detto a udev di non fare il trigger per vari device [...] In tempo praticamente niente, semplicemento evito di caricare i moduli del kernel. I moduli li gestisco via /etc/modprobe.d e quindi evito di caricarli all'avvio.

Interessante... in questo modo quindi si caricano solo i moduli che decidi tu, giusto? E se volessi. come potrei farlo?
E' una porcata

Concordo, si è avviato sempre come ultimo, non ho capito come mai però....
Quando ho messo il runlevel 3, non si è avviato perchè è nel runlevel4.
E' nel runlevel 4 quindi si avvia quando si avvia il runlevel4 ma vorrei che magari almeno si avviasse come il primo del runlevel 4, o comunque trai primi, e magari spostare il dhcpcd dopo dell'avvio di kdm, se è possibile.
lupass93
Linux 1.0
Linux 1.0
 
Messaggi: 43
Iscritto il: ven giu 26, 2009 10:46
Località: Sessa Aurunca (CE)
Nome Cognome: Luca Passaretta
Slackware: Slackware64 13.0
Kernel: 2.6.32-zen5-lupass2-06649-g632
Desktop: KDE
Distribuzione: Slackware64 13.0

Re: Velocizzare l'avvio.

Messaggioda conraid » mar gen 12, 2010 18:45

Teoricamente puoi fare molte cose, ma molte non sono generalizzabili.
Per esempio dici di avviare kdm dopo il dhcp, ma se il dhcp ti serve per avere ip ed il resto? magari per montare una partizione nfs che contiene /home?
ZeroUno ti ha detto di usare runlevel3, perché se inserisci kdm dove dice lui, poi avresti due avvi, e non va bene

Se fossi in te lascerei kdm per ultimo, togliendo tutto ciò che non ti serve dagli script precedenti, ma devi sapere "bene" quel che fai.
Nel forum ne abbiamo parlato varie volte, se fai qualche ricerca trovi spunti interessanti
Avatar utente
conraid
Staff
Staff
 
Messaggi: 12022
Iscritto il: mer lug 13, 2005 23:00
Località: Livorno
Nome Cognome: Corrado Franco
Slackware: current

Re: Velocizzare l'avvio.

Messaggioda lupass93 » mar gen 12, 2010 20:45

Ciao,
Si il dhcpcd mi serve pèer connettersi alla rete con il Server DHCP, ma non mi dà problemi anteporre kdm a dhcpcd, l'ho fatto anche con Gentoo e Arch e non ho mai avuto problemi :o , poi anche perchè vorrei capire come anteporre un servizio ad un altro :) .
Io ho tolto tutto ciò chen non mi serve togliendo i dirtti di avviarsi con chmod -x nomeservizio, ma ci mette sempre circa 40-45 secondi e sono davvero troppo, almeno riuscire ad avviare a 30 secondi come minimo, comunque ora posto i servizi che hanno il diritto di avviarsi:
Codice: Seleziona tutto
 luca@lupass:~$ ls -l /etc/rc.d
total 272                     
drwxr-xr-x 2 root root    45 2008-09-23 19:55 init.d/
lrwxrwxrwx 1 root root     4 2010-01-08 22:44 rc.0 -> rc.6*
-rwxr-xr-x 1 root root  1282 2007-03-27 03:12 rc.4*       
-rwxr-xr-x 1 root root  7453 2008-12-02 21:32 rc.6*       
-rwxr-xr-x 1 root root  2425 2008-12-02 21:31 rc.K*       
-rwxr-xr-x 1 root root 11033 2010-01-12 17:47 rc.M*       
-rwxr-xr-x 1 root root 14253 2009-04-22 04:48 rc.S*       
-rw-r--r-- 1 root root   466 2008-11-26 22:39 rc.acpid     
-rwxr-xr-x 1 root root  2672 2009-05-23 06:17 rc.alsa*     
-rw-r--r-- 1 root root  1032 2009-08-11 02:22 rc.atalk     
-rw-r--r-- 1 root root  3116 2008-04-13 23:48 rc.bind     
-rw-r--r-- 1 root root  3301 2009-08-24 11:09 rc.bluetooth
-rw-r--r-- 1 root root  1051 2009-08-24 11:09 rc.bluetooth.conf
-rw-r--r-- 1 root root  4318 2009-08-22 07:31 rc.cups         
-rw-r--r-- 1 root root   512 2009-07-01 05:46 rc.dnsmasq       
-rwxr-xr-x 1 root root   119 2009-08-25 03:23 rc.font.new*     
-rwxr-xr-x 1 root root  1893 2008-10-23 01:03 rc.fuse*         
-rw-r--r-- 1 root root  1156 2010-01-08 23:19 rc.gpm           
-rwxr-xr-x 1 root root   906 2009-08-01 07:47 rc.hald*         
-rw-r--r-- 1 root root   703 2009-08-10 21:08 rc.httpd         
-rwxr-xr-x 1 root root  9579 2009-08-25 06:37 rc.inet1*       
-rw------- 1 root root  3178 2010-01-12 18:32 rc.inet1.conf   
-rwxr-xr-x 1 root root  4847 2007-09-18 00:07 rc.inet2*       
-rwxr-xr-x 1 root root   497 2003-09-12 05:27 rc.inetd*       
-rw-r--r-- 1 root root  2684 2008-12-03 23:58 rc.ip_forward   
-rwxr-xr-x 1 root root   140 2010-01-08 23:13 rc.keymap*       
-rwxr-xr-x 1 root root   293 2010-01-12 18:39 rc.local*       
-rwxr-xr-x 1 root root  1740 2009-06-09 04:52 rc.messagebus*   
lrwxrwxrwx 1 root root    19 2010-01-08 22:44 rc.modules -> rc.modules-2.6.29.6*
-rwxr-xr-x 1 root root 35433 2010-01-12 18:17 rc.modules-2.6.29.6*             
-rw-r--r-- 1 root root  2585 2009-08-04 03:45 rc.mysqld                         
-rw-r--r-- 1 root root  2457 2008-10-28 11:49 rc.nfsd                           
-rw-r--r-- 1 root root   749 2009-06-03 23:07 rc.ntpd                           
-rw-r--r-- 1 root root   760 2009-12-09 23:33 rc.ntpd.new                       
-rw-r--r-- 1 root root  1722 2007-03-16 22:09 rc.pcmcia                         
-rw-r--r-- 1 root root  1402 2008-10-14 20:37 rc.rpc
-rw-r--r-- 1 root root   791 2009-06-26 06:21 rc.samba
-rw-r--r-- 1 root root  1169 2009-05-15 19:09 rc.saslauthd
-rw-r--r-- 1 root root   687 2002-06-04 23:09 rc.sendmail
-rw-r--r-- 1 root root  2895 2009-05-23 08:43 rc.serial
-rw-r--r-- 1 root root   895 2009-05-23 09:13 rc.snmpd
-rw-r--r-- 1 root root  1477 2009-05-23 08:04 rc.sshd
-rwxr-xr-x 1 root root   981 2007-04-10 01:10 rc.syslog*
-rwxr-xr-x 1 root root  1740 1999-09-11 22:48 rc.sysvinit*
-rwxr-xr-x 1 root root  4231 2009-04-22 04:01 rc.udev*
-rw-r--r-- 1 root root 12494 2009-04-28 19:32 rc.wireless
-rw------- 1 root root  7320 2009-04-28 19:32 rc.wireless.conf
-rw-r--r-- 1 root root  2323 2008-10-31 15:00 rc.yp
drwxr-xr-x 2 root root     6 2008-09-23 19:55 rc0.d/
drwxr-xr-x 2 root root     6 2008-09-23 19:55 rc1.d/
drwxr-xr-x 2 root root     6 2008-09-23 19:55 rc2.d/
drwxr-xr-x 2 root root     6 2008-09-23 19:55 rc3.d/
drwxr-xr-x 2 root root     6 2010-01-11 21:44 rc4.d/
drwxr-xr-x 2 root root     6 2008-09-23 19:55 rc5.d/
drwxr-xr-x 2 root root     6 2008-09-23 19:55 rc6.d/
luca@lupass:~$

Comunque intanto darò un'occhiata sul forum :D
lupass93
Linux 1.0
Linux 1.0
 
Messaggi: 43
Iscritto il: ven giu 26, 2009 10:46
Località: Sessa Aurunca (CE)
Nome Cognome: Luca Passaretta
Slackware: Slackware64 13.0
Kernel: 2.6.32-zen5-lupass2-06649-g632
Desktop: KDE
Distribuzione: Slackware64 13.0

Re: Velocizzare l'avvio.

Messaggioda ZeroUno » mar gen 12, 2010 22:19

Comunque togliere tanta roba e fare tanti chmod -x o tagli in rc.M potrebbe andar bene se sai quello che fai, ma direi che come prima cosa dovresti metterti ad analizzare quale è la parte più lenta a caricare. Ci sono alcuni servizi che impiegano un microsecondo a caricarli quindi, superflui o meno, se li metti o non li metti non trovi differenze.

Quando si vuole _veramente_ ottimizzare allora si fa
rm rc.S rc.M
vi rc.S
vi rc.M
e te li scrivi da te, così hai un boot alla spina (eeehm, scusa manu ;-) ).

Il massimo si ottiene aggiungendo 'init=/bin/bash' al prompt di lilo

comunque domani (o dopo?) provo la procedura che avevo scritto sopra, perchè voglio scoprire perchè non parte (l'avevo detto che non era stata testata)

Ciao
01
Packages finder: slakfinder.org | Slackpkg+, per aggiungere repository a slackpkg
Codice: Seleziona tutto
1011010 1100101 1110010 1101111 - 0100000 - 1010101 1101110 1101111
Avatar utente
ZeroUno
Staff
Staff
 
Messaggi: 4414
Iscritto il: ven giu 02, 2006 13:52
Località: Roma / Castelli
Nome Cognome: Matteo Rossini
Slackware: current
Kernel: slack-current
Desktop: ktown-latest
Distribuzione: 01000000-current

Re: Velocizzare l'avvio.

Messaggioda lupass93 » mar gen 12, 2010 22:44

Capito, capito, però per far questo devo sapere bene cosa scrivere in rc.S e in rc.M, e mi ci vuole un pò di tempo :D , o almeno memorizzare solo le cose più importanti dei 2 file.
Alla riga del kernel lo devo aggiungere init=/bin/bash vero? ma facendo questo si avvierà kdm?
Se vorrei anteporre il servizio kdm a per esempio quello dhcpcd, ovvero della rete, come posso fare?
lupass93
Linux 1.0
Linux 1.0
 
Messaggi: 43
Iscritto il: ven giu 26, 2009 10:46
Località: Sessa Aurunca (CE)
Nome Cognome: Luca Passaretta
Slackware: Slackware64 13.0
Kernel: 2.6.32-zen5-lupass2-06649-g632
Desktop: KDE
Distribuzione: Slackware64 13.0

Re: Velocizzare l'avvio.

Messaggioda ZeroUno » mar gen 12, 2010 23:11

lupass93 ha scritto:Capito, capito, però per far questo devo sapere bene cosa scrivere in rc.S e in rc.M, e mi ci vuole un pò di tempo :D

Chiaro, la riscrittura è una estrematizzazione. rc.S serve quasi tutto per intero e quasi tutto in quell'ordine.
I file sono scritti così perchè devono andar bene per tutte le esigenze. Ovviamente se io metto la /home su una macchina remota devo sicuramente inizializzare la rete; ma se la mia macchina è un pc casalingo non ne ho bisogno e potrei pure inizializzare la rete come ultimo; così tutto il resto; rc.inet2 lo minimizzerei di brutto. Quindi bisogna:
1) sapere bene cosa avviene al boot
2) sapere _come_ avviene
3) sapere _perchè_ vanno caricati alcuni componenti
4) sapere _quali_ è necessario che vadano prima, quali vadano dopo, e quali "dove li metto li metto"
un primo passo per velocizzare è aggiungere un "&" quà e là ovunque possibile (ma senza esagerare)

[quotre]Alla riga del kernel lo devo aggiungere init=/bin/bash vero?[/quote]
quando accendendo la macchina ti arriva la scelta linux/windows (o quello che hai), scegli linux ma non premere invio ma TAB
lì aggiungi alla riga init=/bin/bash
ad un certo punto forse noterai che sembra bloccato (ovvero che non vada avanti); allora premi invio qualche volta

ma facendo questo si avvierà kdm?

prova

Se vorrei anteporre il servizio kdm a per esempio quello dhcpcd, ovvero della rete, come posso fare?

Ho appena testato la 'porcata' che avevo scritto sopra.
Non funzionava perchè non bisogna mettere /opt/kde/bin/kdm ma /usr/bin/kdm, però se la metti dove ti ho detto troverai che tastiera e mouse non sono ancora inizializzati, con spiacevoli conseguenze; per andar bene và messo almeno dopo hald che è molto più avanti; a questo punto non ne vale più la pena però.

Ciao
01
Packages finder: slakfinder.org | Slackpkg+, per aggiungere repository a slackpkg
Codice: Seleziona tutto
1011010 1100101 1110010 1101111 - 0100000 - 1010101 1101110 1101111
Avatar utente
ZeroUno
Staff
Staff
 
Messaggi: 4414
Iscritto il: ven giu 02, 2006 13:52
Località: Roma / Castelli
Nome Cognome: Matteo Rossini
Slackware: current
Kernel: slack-current
Desktop: ktown-latest
Distribuzione: 01000000-current

Re: Velocizzare l'avvio.

Messaggioda Calzo » mer gen 13, 2010 8:49

lupass93 ha scritto:[...] ma vorrei che magari almeno si avviasse come il primo del runlevel 4, o comunque trai primi, e magari spostare il dhcpcd dopo dell'avvio di kdm, se è possibile.
Premesso che la soluzione migliore è quella che ti hanno consigliato Spina e gli altri, quello che vuoi fare non è un problema realizzarlo, nel senso che puoi editare l'inittab. E' sufficiente che sposti la riga "x1:4:respawn:/etc/rc.d/rc.4" prima che vengano caricati l'rc.M o l'rc.S e comunque prima degli script "marcati" con /wait/.
Io però te lo sconsiglio vivamente perchè KDM e i DE in generale, oggi hanno bisogno che udev, dBus e HAL vengano caricati (in quest'ordine e non parallelamente) altrimenti mouse e tastiera non ti funzioneranno più... però il KDM sarà stato caricato :D

Quindi edita l'rc.M e/o l'rc.S. Il grosso delle perdite di tempo secondo me sta nell'rc.M. Per esempio, se ti può servire, alcune delle cose che faccio io sono:
Codice: Seleziona tutto
[...]
/bin/dmesg -s 65536 > /var/log/dmesg &
[...]
if [ -x /etc/rc.d/rc.pcmcia ]; then
  . /etc/rc.d/rc.pcmcia start  &
  # The cards might need a little extra time here to initialize.
  ###sleep 5 #non so perchè devo aspettare 5s
fi
[...]
  . /etc/rc.d/rc.syslog start &
[...]
  . /etc/rc.d/rc.inet2 &
[...]
# These GTK+/pango files need to be kept up to date for
# proper input method, pixbuf loaders, and font support.
(
if [ -x /usr/bin/update-gtk-immodules ]; then
  /usr/bin/update-gtk-immodules ## --verbose ## niente verbose, non mi interessa
fi
if [ -x /usr/bin/update-gdk-pixbuf-loaders ]; then
  /usr/bin/update-gdk-pixbuf-loaders ## --verbose ## niente verbose, non mi interessa
fi
if [ -x /usr/bin/update-pango-querymodules ]; then
  /usr/bin/update-pango-querymodules ## --verbose ## niente verbose, non mi interessa
fi
) &  ### mando tutti gli if in backgroung
Questo è uno stralcio di come su certi PC datati ho ritoccato il mio rc.M, ma ci sono anche altri punti in cui ci sono degli sleep di qualche secondo secondo me inutili, o mandare in backgroung il caricamento di certi servizi che magari tu usi.

Forse editando pesantemente gli script come diceva ZeroUno, se riesci a caricare subito tutti i demoni che servono al KDM (HAL&Co) e posticipare tutto il resto, magari funziona. Questo non l'ho mai provato.
Con queste modifiche ho raggiunto grosso modo i tempi di Spina (20s di boot), ma in init 3.

bye
Avatar utente
Calzo
Linux 2.0
Linux 2.0
 
Messaggi: 112
Iscritto il: sab ott 06, 2007 21:21
Località: MN
Slackware: 10.2 | 13
Desktop: Fluxbox | KDE

Re: Velocizzare l'avvio.

Messaggioda lupass93 » mer gen 13, 2010 23:32

Rieccomi,
Ho provato a fare un po di tutto ma sempre con scarsi risultati, a volta era anche veloce il boot ma poi o non funzionava qualcosa o per un'altra cosa non andava bene.
Quindi alla fine ho ripristinato tutti i file e dato i permessi di avvio a tutti gli script perche ad un certo punto non funzionava quasi niente, ne mouse,ne tastiera, montava gli hd in read-only, insomma un casino.
Se magari vi allego rc.S e rc.M e vi posto la lista di script, mica mi potreste aiutare perfavore a snellire i 2 file e la lista? perche davvero e molto lento...poi e' la prima volta che mi ritrovo davanti a questo tipo di init, con gentoo, con arch era tutto piu semplice da questo punto di vista, ma daltronte mi fa anche piacere ritrovarmi di fronte a qualcosa di piu difficile (almeno sotto questo aspetto).
Intanto vi allego i 2 file, rc.S e rc.M se magari avete tempo e vi va :)
Codice: Seleziona tutto
luca@lupass:~$ ls -l /etc/rc.d
total 344                     
drwxr-xr-x 2 root root  4096 2008-09-23 19:55 init.d/
lrwxrwxrwx 1 root root     4 2010-01-12 22:58 rc.0 -> rc.6*
-rwxr-xr-x 1 root root  1282 2007-03-27 03:12 rc.4*       
-rwxr-xr-x 1 root root  7453 2008-12-02 21:32 rc.6*       
-rwxr-xr-x 1 root root  2425 2010-01-13 23:58 rc.K*       
-rwxr-xr-x 1 root root  2425 2010-01-13 22:28 rc.K.backup*
-rwxr-xr-x 1 root root 10906 2010-01-13 23:16 rc.M*       
-rwxr-xr-x 1 root root 10906 2010-01-13 22:19 rc.M.backup*
-rwxr-xr-x 1 root root  9244 2010-01-13 23:06 rc.M.backup2*
-rwxr-xr-x 1 root root 14253 2010-01-13 23:16 rc.S*       
-rwxr-xr-x 1 root root 14253 2010-01-13 22:19 rc.S.backup*
-rwxr-xr-x 1 root root   466 2008-11-26 22:39 rc.acpid*   
-rwxr-xr-x 1 root root  2672 2009-05-23 06:17 rc.alsa*     
-rwxr-xr-x 1 root root  1032 2009-08-11 02:22 rc.atalk*   
-rwxr-xr-x 1 root root  3116 2008-04-13 23:48 rc.bind*     
-rwxr-xr-x 1 root root  3301 2009-08-24 11:09 rc.bluetooth*
-rwxr-xr-x 1 root root  1051 2009-08-24 11:09 rc.bluetooth.conf*
-rwxr-xr-x 1 root root  4318 2009-08-22 07:31 rc.cups*         
-rwxr-xr-x 1 root root   512 2009-07-01 05:46 rc.dnsmasq*       
-rwxr-xr-x 1 root root   119 2009-08-25 03:23 rc.font.new*     
-rwxr-xr-x 1 root root  1893 2008-10-23 01:03 rc.fuse*         
-rwxr-xr-x 1 root root  1156 2010-01-12 23:12 rc.gpm*           
-rwxr-xr-x 1 root root   906 2009-08-01 07:47 rc.hald*         
-rwxr-xr-x 1 root root   703 2009-08-10 21:08 rc.httpd*
-rwxr-xr-x 1 root root  9579 2009-08-25 06:37 rc.inet1*
-rwxr-xr-x 1 root root  3579 2010-01-12 23:12 rc.inet1.conf*
-rwxr-xr-x 1 root root  4847 2007-09-18 00:07 rc.inet2*
-rwxr-xr-x 1 root root   499 2010-01-13 22:21 rc.inetd*
-rwxr-xr-x 1 root root  2684 2008-12-03 23:58 rc.ip_forward*
-rwxr-xr-x 1 root root   140 2010-01-12 23:13 rc.keymap*
-rwxr-xr-x 1 root root   272 2006-08-12 04:07 rc.local*
-rwxr-xr-x 1 root root  1740 2009-06-09 04:52 rc.messagebus*
lrwxrwxrwx 1 root root    19 2010-01-12 22:58 rc.modules -> rc.modules-2.6.29.6*
-rwxr-xr-x 1 root root 35406 2009-08-17 18:53 rc.modules-2.6.29.6*
-rwxr-xr-x 1 root root  2585 2009-08-04 03:45 rc.mysqld*
-rwxr-xr-x 1 root root  2457 2008-10-28 11:49 rc.nfsd*
-rwxr-xr-x 1 root root   749 2009-06-03 23:07 rc.ntpd*
-rwxr-xr-x 1 root root  1722 2007-03-16 22:09 rc.pcmcia*
-rwxr-xr-x 1 root root  1402 2008-10-14 20:37 rc.rpc*
-rwxr-xr-x 1 root root   791 2009-06-26 06:21 rc.samba*
-rwxr-xr-x 1 root root  1169 2009-05-15 19:09 rc.saslauthd*
-rwxr-xr-x 1 root root   687 2002-06-04 23:09 rc.sendmail*
-rwxr-xr-x 1 root root  2895 2009-05-23 08:43 rc.serial*
-rwxr-xr-x 1 root root   895 2009-05-23 09:13 rc.snmpd*
-rwxr-xr-x 1 root root  1477 2009-05-23 08:04 rc.sshd*
-rwxr-xr-x 1 root root   981 2007-04-10 01:10 rc.syslog*
-rwxr-xr-x 1 root root  1740 1999-09-11 22:48 rc.sysvinit*
-rwxr-xr-x 1 root root  4231 2009-04-22 04:01 rc.udev*
-rwxr-xr-x 1 root root 12494 2009-04-28 19:32 rc.wireless*
-rwxr-xr-x 1 root root  7320 2009-04-28 19:32 rc.wireless.conf*
-rwxr-xr-x 1 root root  2323 2008-10-31 15:00 rc.yp*
drwxr-xr-x 2 root root  4096 2008-09-23 19:55 rc0.d/
drwxr-xr-x 2 root root  4096 2008-09-23 19:55 rc1.d/
drwxr-xr-x 2 root root  4096 2008-09-23 19:55 rc2.d/
drwxr-xr-x 2 root root  4096 2008-09-23 19:55 rc3.d/
drwxr-xr-x 2 root root  4096 2008-09-23 19:55 rc4.d/
drwxr-xr-x 2 root root  4096 2008-09-23 19:55 rc5.d/
drwxr-xr-x 2 root root  4096 2008-09-23 19:55 rc6.d/
luca@lupass:~$

Grazie comunque per la disponibilita e per gli aiuti!
Allegati
rc.S.txt
Rc.S
(13.92 KiB) Scaricato 12 volte
rc.M.txt
Rc.M
(10.65 KiB) Scaricato 10 volte
lupass93
Linux 1.0
Linux 1.0
 
Messaggi: 43
Iscritto il: ven giu 26, 2009 10:46
Località: Sessa Aurunca (CE)
Nome Cognome: Luca Passaretta
Slackware: Slackware64 13.0
Kernel: 2.6.32-zen5-lupass2-06649-g632
Desktop: KDE
Distribuzione: Slackware64 13.0

Re: Velocizzare l'avvio.

Messaggioda Darkstar89 » dom gen 17, 2010 23:54

Ciao... io ho modificato il mio rc.M così:
Codice: Seleziona tutto
#!/bin/sh
echo "Going multiuser..."

# Start the system logger.
if [ -x /etc/rc.d/rc.syslog -a -x /usr/sbin/syslogd -a -d /var/log ]; then
  . /etc/rc.d/rc.syslog start
fi
######################################################################################### HARDWARE
# Save the contents of 'dmesg':
/bin/dmesg -s 65536 > /var/log/dmesg

# Initialize PCMCIA devices:
if [ -x /etc/rc.d/rc.pcmcia ]; then
  . /etc/rc.d/rc.pcmcia start
  # The cards might need a little extra time here to initialize.
  sleep 1
fi

# If we are returning from single-user mode we will need to restart
# udevd on systems that use udev:
if grep -wq sysfs /proc/mounts && grep -wq tmpfs /proc/filesystems ; then
  if ! grep -wq nohotplug /proc/cmdline ; then
    if [ -x /etc/rc.d/rc.udev ]; then
      /bin/sh /etc/rc.d/rc.udev start
    fi
  fi
fi

# Start APM or ACPI daemon.
# If APM is enabled in the kernel, start apmd:
if [ -e /proc/apm ]; then
  if [ -x /usr/sbin/apmd ]; then
    echo "Starting APM daemon:  /usr/sbin/apmd"
    /usr/sbin/apmd
  fi
elif [ -x /etc/rc.d/rc.acpid ]; then # otherwise, start acpid:
  . /etc/rc.d/rc.acpid start
fi

# Start D-Bus:
if [ -x /etc/rc.d/rc.messagebus ]; then
  sh /etc/rc.d/rc.messagebus start
fi

# Start HAL:
if [ -x /etc/rc.d/rc.hald ]; then
  sh /etc/rc.d/rc.hald start
fi

# Start the local setup procedure.
if [ -x /etc/rc.d/rc.local ]; then
  . /etc/rc.d/rc.local &
fi
######################################################################################### MOUNT

# Mount any additional filesystem types that haven't already been mounted:
mount -a -v 2> /dev/null | grep -v "already mounted"

# Remove stale locks and junk files (must be done after mount -a!)
# Remove stale hunt sockets so the game can start.
/bin/rm -f /var/lock/* /var/spool/uucp/LCK..* /tmp/.X*lock /tmp/core /core 2> /dev/null
if [ -r /tmp/hunt -o -r /tmp/hunt.stats ]; then
  echo "Removing your stale hunt sockets from /tmp."
  /bin/rm -f /tmp/hunt*
fi

# Ensure basic filesystem permissions sanity.
chmod 755 / 2> /dev/null
chmod 1777 /tmp /var/tmp

#########################################################################################
if [ -x /sbin/ldconfig ]; then
  echo "Updating shared library links:  /sbin/ldconfig &"
  /sbin/ldconfig &
fi

# Load a custom screen font if the user has an rc.font script.
if [ -x /etc/rc.d/rc.font ]; then
  . /etc/rc.d/rc.font &
fi
######################################################################################### NETWORK

# Set the hostname.
if [ -r /etc/HOSTNAME ]; then
  /bin/hostname $(cat /etc/HOSTNAME | cut -f1 -d .)
else
  # fall back on this old default:
  echo "darkstar.example.net" > /etc/HOSTNAME
  /bin/hostname darkstar
fi

# Initialize the networking hardware.
if [ -x /etc/rc.d/rc.inet1 ]; then
  . /etc/rc.d/rc.inet1
fi

# Start networking daemons:
if [ -x /etc/rc.d/rc.inet2 ]; then
  . /etc/rc.d/rc.inet2
fi

# Start wicd:
if [ -x /etc/rc.d/rc.wicd ]; then
  sh /etc/rc.d/rc.wicd start &
fi
#########################################################################################
# Load ALSA (sound) defaults:
if [ -x /etc/rc.d/rc.alsa ]; then
  . /etc/rc.d/rc.alsa &
fi
#########################################################################################

echo "<--RC.SYSVINIT-->"
# If there are SystemV init scripts for this runlevel, run them.
if [ -x /etc/rc.d/rc.sysvinit ]; then
  . /etc/rc.d/rc.sysvinit
fi

# Load a custom keymap if the user has an rc.keymap script.
if [ -x /etc/rc.d/rc.keymap ]; then
  . /etc/rc.d/rc.keymap &
fi

# Start the GPM mouse server:
if [ -x /etc/rc.d/rc.gpm ]; then
  . /etc/rc.d/rc.gpm start
fi

sleep 240

# Start smartd, which monitors the status of S.M.A.R.T. compatible
# hard drives and reports any problems.  Note some devices (which aren't
# smart, I guess ;) will hang if probed by smartd, so it's commented out
# by default.
#if [ -x /usr/sbin/smartd ]; then
#  /usr/sbin/smartd
#fi

# If we're using udev, make /dev/cdrom and any other optical drive symlinks
# if some udev rule hasn't made them already:
if grep -wq sysfs /proc/mounts && grep -wq tmpfs /proc/filesystems; then
  if ! grep -wq nohotplug /proc/cmdline ; then
    if [ -x /lib/udev/rc.optical-symlinks -a -x /etc/rc.d/rc.udev ]; then
      /bin/sh /lib/udev/rc.optical-symlinks
    fi
  fi
fi

# Turn on process accounting.
if [ -x /sbin/accton -a -r /var/log/pacct ]; then
  chmod 640 /var/log/pacct
  /sbin/accton /var/log/pacct
fi

# Start crond (Dillon's crond):
# If you want cron to actually log activity to /var/log/cron, then change
# -l10 to -l8 to increase the logging level.
if [ -x /usr/sbin/crond ]; then
  /usr/sbin/crond -l10 >>/var/log/cron 2>&1
fi

# Start atd (manages jobs scheduled with 'at'):
if [ -x /usr/sbin/atd ]; then
  /usr/sbin/atd -b 15 -l 1
fi

# Check quotas and then turn quota system on:
if grep -q quota /etc/fstab ; then
  for quotafs in $(awk '/quota/ {print $2}' /etc/fstab) ; do
    /bin/rm -f $quotafs/{a,}quota.{group,user}.new
  done
  if [ -x /sbin/quotacheck ]; then
    echo "Checking filesystem quotas:  /sbin/quotacheck -avugm"
    /sbin/quotacheck -avugm
  fi
  if [ -x /sbin/quotaon ]; then
    echo "Activating filesystem quotas:  /sbin/quotaon -avug"
    /sbin/quotaon -avug
  fi
fi

# Start the print spooling system.  This will usually be LPRng (lpd) or CUPS.
if [ -x /etc/rc.d/rc.cups ]; then
  # Start CUPS:
  /etc/rc.d/rc.cups start
elif [ -x /etc/rc.d/rc.lprng ]; then
  # Start LPRng (lpd):
  . /etc/rc.d/rc.lprng start
fi

# Screen blanks after 15 minutes idle time, and powers down in one hour
# if the kernel supports APM or ACPI power management:
/bin/setterm -blank 15 -powersave powerdown -powerdown 60


# Update the X font indexes:
if [ -x /usr/bin/fc-cache ]; then
  echo "Updating X font indexes:  /usr/bin/fc-cache -f &"
  /usr/bin/fc-cache -f &
fi

# Update any existing icon cache files:
if find /usr/share/icons 2> /dev/null | grep -q icon-theme.cache ; then
  for theme_dir in /usr/share/icons/* ; do
    if [ -r ${theme_dir}/icon-theme.cache ]; then
      echo "Updating icon-theme.cache in ${theme_dir}..."
      /usr/bin/gtk-update-icon-cache -t -f ${theme_dir} 1> /dev/null 2> /dev/null
    fi
  done
  # This would be a large file and probably shouldn't be there.
  if [ -r /usr/share/icons/icon-theme.cache ]; then
    echo "Deleting icon-theme.cache in /usr/share/icons..."
    #/usr/bin/gtk-update-icon-cache -t -f /usr/share/icons 1> /dev/null 2> /dev/null &
    rm -f /usr/share/icons/icon-theme.cache
  fi
fi


# Update mime database:
if [ -x /usr/bin/update-mime-database -a -d /usr/share/mime ]; then
  echo "Updating MIME database:  /usr/bin/update-mime-database /usr/share/mime &"
  /usr/bin/update-mime-database /usr/share/mime 1> /dev/null 2> /dev/null &
fi

# These GTK+/pango files need to be kept up to date for
# proper input method, pixbuf loaders, and font support.
if [ -x /usr/bin/update-gtk-immodules ]; then
  /usr/bin/update-gtk-immodules
fi
if [ -x /usr/bin/update-gdk-pixbuf-loaders ]; then
  /usr/bin/update-gdk-pixbuf-loaders
fi
if [ -x /usr/bin/update-pango-querymodules ]; then
  /usr/bin/update-pango-querymodules
fi


Secondo mè bisogna caricare solo il neccessario, e non cose come cups, bluetooth etc.... :?
Dopo il neccessario, lanciare rc.sysvinit
e dopo rc.sysvinit,aggiungere una pausa di 240 sec almeno, il tempo di far caricare
kde... dopo la pausa tutti i servizi quali stampanti ecc....
Devo dare un'ultima ordinata al file comunque il pc và molto più veloce... devo ancora cronometrare :)


Mi sapete dire invece se posso lanciare in background:
/etc/rc.d/rc.udev
/usr/sbin/apmd
/etc/rc.d/rc.acpid
/etc/rc.d/rc.messagebus
/etc/rc.d/rc.hald
Avatar utente
Darkstar89
Packager
Packager
 
Messaggi: 372
Iscritto il: mer dic 17, 2008 19:06
Località: Sassari
Nome Cognome: Francesco
Slackware: 13


Torna a Slackware64

Chi c’è in linea

Visitano il forum: Nessuno e 1 ospite