Quick-init - Fast archlinux init scripts

Condividi con noi i tuoi progetti e guide personali
adriano
Arciere Provetto
Messaggi: 538
Iscritto il: 20 luglio 2008, 13:45
Contatta:

Quick-init - Fast archlinux init scripts

Messaggio da adriano » 14 maggio 2009, 19:36

PKGBUILD - Se hai gradito votalo

L'obiettivo primario del progetto è ottenere un boot rapidissimo senza incompatibilità o problemi di sicurezza. Il progetto si prefissa di non sostituire gli initscripts originari di Archlinux ma solo il file responsabile dell'avvio /etc/inittab.

Dopo le numerose incompatibilità e problemi di sicurezza di finit-arc per effettuare il boot rapido ho deciso di riesumare il vecchio quick-init con molte novità.

ATTENZIONE!
Se avete installato una versione di quick-init precedente alla 1.3-1 dovete rimuoverla e reinstallare gli initscripts!



COME FUNZIONA
La reimplementazione degli initscripts consiste nella modifica dei livelli del file inittab e dell'avvio del sistema e di Xorg senza udev.
Il primo livello del sistema di avvio contiene la creazione dei nodi statici necessari a bootare il sistema sino a check del filesystem. Quindi Xorg e tutti gli altri servizi, compreso udev, vengono avviati nel runlevel 3 successivo.

Quick-init è quasi veloce come finit-arc. Al momento dovrebbe essere perfettamente compatibile con qualsiasi tipo di sistema, ma è comunque un progetto in via sperimentale.


OTTIMIZZARE ULTERIORMENTE IL BOOT
Se vuoi ottimizzare ulteriormente il tuo boot puoi rimuovere con cautela le linee di codice non necessarie dal file qinit.sysinit. Ad esempio il supporto a LVM, RAID, o il caricamento dei moduli.


FAST START X MODE (Xorg, Gdm etc..)
Quick-init ti dà la possibilità di avviare velocemente X-server. Per farlo non devi avviare il tuo login manager come modulo ma devi utilizzare rc.local o inittab.

- INITTAB: Decommenta la linea relativa al tuo login manager in /etc/inittab. (xorg:...)
- RC.LOCAL: Edita /etc/rc.local e inserisci il comando per avviare il tuo login-manager, per esempio: /usr/sbin/gdm --nodaemon

Al momento l'avvio rapido di X funziona al 100% con:
- sched ATI e driver radeon
- schede Intel e driver i915
- alcune schede nvidia

Per capire se l'avvio rapido di X funziona con la tua scheda, puoi provare ad avviare una sessione grafica eliminando temporaneamente udev. Per rimuovere udev dal processo di boot edita il file qinit.multi. Se X parte senza udev, il fast start X funziona, altrimenti no :)

Altri consigli: potreste utilizzare xorg-server-antidesktop ovvero una versione light di X senza Hotplug che non necessita di HAL e quindi potrete eliminare di conseguenza l'avvio automatico di hal inserito in /etc/qinit.multi risparmiando secondi preziosi.

Immagine
Ultima modifica di adriano il 14 maggio 2009, 20:05, modificato 1 volta in totale.

K' Dash
Novello Arciere
Messaggi: 105
Iscritto il: 25 settembre 2007, 10:26
Località: Lucca

Messaggio da K' Dash » 14 maggio 2009, 19:42

intel 915, tutto ok :)

psykopear
Little John
Messaggi: 800
Iscritto il: 28 ottobre 2007, 22:20

Messaggio da psykopear » 14 maggio 2009, 21:14

Mmm, non parte kdm in automatica, eccoti l'inittab

Codice: Seleziona tutto

#
# /etc/inittab
#

#  Runlevels:
#    0    Halt
#    1(S)	Single-user
#    2    Not used
#    3    Multi-user
#    4    Not used
#    5    X11
#    6    Reboot

id:5:initdefault:

rc::sysinit:/etc/qinit.sysinit
rs:S1:wait:/etc/rc.single

#put in xorg: level gdm,kdm,slim,xdm otherwise put one of them in /etc/rc.local
#xorg:2345:respawn:/usr/bin/xdm -nodaemon
#xorg:2345:respawn:/usr/sbin/gdm -nodaemon
xorg:2345:respawn:/usr/bin/kdm -nodaemon
#xorg:2345:respawn:/usr/bin/slim >& /dev/null
#xorg:2345:respawn:/bin/su YOURUSER -l -c "/bin/bash --login -c xinit >/dev/null 2>&1"

c1:2345:respawn:/sbin/agetty -8 38400 vc/1 linux

rm:2345:wait:/etc/qinit.multi > /dev/null
rh:06:wait:/etc/rc.shutdown
su:S:wait:/sbin/sulogin -p

ca::ctrlaltdel:/sbin/shutdown -t3 -r now
Scheda video nvidia con driver nvidia dei repo extra
Arch Linux. Ebbasta
"L'utopia è come l'orizzonte: cammino due passi, e si allontana di due passi. Cammino di dieci passi, e si allontana di dieci passi. E allora, a cosa serve l'utopia? A questo: serve per continuare a camminare."

adriano
Arciere Provetto
Messaggi: 538
Iscritto il: 20 luglio 2008, 13:45
Contatta:

Messaggio da adriano » 14 maggio 2009, 22:03

ok hai degli errori in output? perchè così è un pò difficile comprendere il problema...per capire se dipende dal driver video dovresti provare ad avviare automaticamente Xserver decommentando questa riga:

Codice: Seleziona tutto

#xorg:2345:respawn:/bin/su YOURUSER -l -c "/bin/bash --login -c xinit >/dev/null 2>&1"
e commentando ovviamente quella relativa a kdm.
Ultima modifica di adriano il 14 maggio 2009, 22:03, modificato 1 volta in totale.

psykopear
Little John
Messaggi: 800
Iscritto il: 28 ottobre 2007, 22:20

Messaggio da psykopear » 14 maggio 2009, 22:24

Mi sembra ci fosse un errore, però non faccio in tempo a leggerlo, che log devo vedere? Poi domani faccio tutte le prove, ora vado a letto che son stanco morto.
Arch Linux. Ebbasta
"L'utopia è come l'orizzonte: cammino due passi, e si allontana di due passi. Cammino di dieci passi, e si allontana di dieci passi. E allora, a cosa serve l'utopia? A questo: serve per continuare a camminare."

adriano
Arciere Provetto
Messaggi: 538
Iscritto il: 20 luglio 2008, 13:45
Contatta:

Messaggio da adriano » 14 maggio 2009, 22:54

in /var/log c'è il log di Xorg, poi non so se KDM abbia un suo log...

eee
Novello Arciere
Messaggi: 42
Iscritto il: 14 marzo 2009, 3:50

Messaggio da eee » 15 maggio 2009, 1:07

A me non va. Mi da degli errori al Mountin Filesystem che sono troppo veloci per riuscirli a leggere.

adriano
Arciere Provetto
Messaggi: 538
Iscritto il: 20 luglio 2008, 13:45
Contatta:

Messaggio da adriano » 15 maggio 2009, 2:01

è veramente strano che ti dia errori al mount...la parte che va dall'inizio al fsck è rimasta quasi invariata

eee
Novello Arciere
Messaggi: 42
Iscritto il: 14 marzo 2009, 3:50

Messaggio da eee » 15 maggio 2009, 2:53

Esistono file di log?

(Ricorda che ho la home montata su una partizione diversa dalla root, su una SD card)
Ultima modifica di eee il 15 maggio 2009, 2:53, modificato 1 volta in totale.

adriano
Arciere Provetto
Messaggi: 538
Iscritto il: 20 luglio 2008, 13:45
Contatta:

Messaggio da adriano » 15 maggio 2009, 9:36

ah ecco allora il problema potrebbe essere quello...controlla che sotto /lib/udev/devices ci sia il famoso mmcblkp0

eee
Novello Arciere
Messaggi: 42
Iscritto il: 14 marzo 2009, 3:50

Messaggio da eee » 15 maggio 2009, 9:50

Si e' presente

adriano
Arciere Provetto
Messaggi: 538
Iscritto il: 20 luglio 2008, 13:45
Contatta:

Messaggio da adriano » 15 maggio 2009, 10:41

non ci sono file di log dovresti riuscire a leggere l'errore in qualche modo, così è impossibile capire il problema

kimusico
Newbie
Messaggi: 11
Iscritto il: 28 aprile 2009, 11:19
Località: Palermo

Messaggio da kimusico » 15 maggio 2009, 12:23

Ciao Adriano.
Sto provando il nuovo quick-init e non mi dà problemi. Il boot da Grub al login in console è di 7 secondi, risultato che ottenevo anche con finit-arc.
Adesso volevo provare l'avvio veloce di X-server: quindi ho decommentato "xorg:...." in /etc/inittab, come ci hai indicato. Purtroppo però non noto un avvio più veloce....
Ho provato ad avviare una sessione grafica eliminando temporaneamente udev: X parte (non funziona il mouse, ma X parte). Deduco che fast start X dovrebbe funzionare....ma l'avvio rimane lento.
La mia scheda video è una nVidia GeForce 7300 e uso i driver proprietari del repository extra.
Sono ancora indeciso su xorg-server-antidesktop....perché una sua dipendenza (libgl) va in conflitto con nvidia-utils, che è installato. Se lo disinstallo...posso dire addio anche ai driver!
Hai consigli?

Grazie!!

adriano
Arciere Provetto
Messaggi: 538
Iscritto il: 20 luglio 2008, 13:45
Contatta:

Messaggio da adriano » 15 maggio 2009, 13:00

ciao, che l'avvio di Xorg sia lento è risaputo. Il fast start X non fa altro che avviarlo prima in parallelo al resto del boot. Probabilmente con la tua scheda non noti la differenza a vista d'occhio. Facendo però un paragone con l'avvio classico di Archlinux e X server avviato in runlevel 5 di inittab noteresti una notevole differenza. Non ho nvidia quindi non ti so dire dei conflitti frai driver nvidia e libgl, ma posso documentarmi. Per ora potresti provare a modificare il PKGBUILD di xorg-server eliminando solamente il supporto hotplug
Ultima modifica di adriano il 15 maggio 2009, 13:02, modificato 1 volta in totale.

psykopear
Little John
Messaggi: 800
Iscritto il: 28 ottobre 2007, 22:20

Messaggio da psykopear » 15 maggio 2009, 13:54

Allora, gli unici warning del log di xorg sono questi:

Codice: Seleziona tutto

(WW) AllowEmptyInput is on, devices using drivers 'kbd', 'mouse' or 'vmmouse' will be disabled.
(WW) Disabling Keyboard0
(WW) Disabling Mouse0
(WW) Open ACPI failed (/var/run/acpid.socket) (No such file or directory)
(WW) Warning, couldn't open module type1
(WW) Warning, couldn't open module freetype
(EE) Failed to load module "freetype" (module does not exist, 0)
ed eccoti il log di kdm

Codice: Seleziona tutto

X.Org X Server 1.6.1
Release Date: 2009-4-14
X Protocol Version 11, Revision 0
Build Operating System: Linux 2.6.29-ARCH i686 
Current Operating System: Linux Pera 2.6.29.1 #10 Tue Apr 21 16:35:56 CEST 2009 i686
Build Date: 15 April 2009  11:09:10AM
 
	Before reporting problems, check http://wiki.x.org
	to make sure that you have the latest version.
Markers: (--) probed, (**) from config file, (==) default setting,
	(++) from command line, (!!) notice, (II) informational,
	(WW) warning, (EE) error, (NI) not implemented, (??) unknown.
(==) Log file: "/var/log/Xorg.0.log", Time: Fri May 15 13:06:20 2009
(==) Using config file: "/etc/X11/xorg.conf"

Fatal server error:
xf86OpenConsole: Cannot open virtual console 7 (No such file or directory)


X.Org X Server 1.6.1
Release Date: 2009-4-14
X Protocol Version 11, Revision 0
Build Operating System: Linux 2.6.29-ARCH i686 
Current Operating System: Linux Pera 2.6.29.1 #10 Tue Apr 21 16:35:56 CEST 2009 i686
Build Date: 15 April 2009  11:09:10AM
 
	Before reporting problems, check http://wiki.x.org
	to make sure that you have the latest version.
Markers: (--) probed, (**) from config file, (==) default setting,
	(++) from command line, (!!) notice, (II) informational,
	(WW) warning, (EE) error, (NI) not implemented, (??) unknown.
(==) Log file: "/var/log/Xorg.0.log", Time: Fri May 15 13:06:32 2009
(==) Using config file: "/etc/X11/xorg.conf"
(EE) Failed to load module "type1" (module does not exist, 0)
(EE) Failed to load module "freetype" (module does not exist, 0)
The XKEYBOARD keymap compiler (xkbcomp) reports:
> Warning:          Type "ONE_LEVEL" has 1 levels, but <RALT> has 2 symbols
>                   Ignoring extra symbols
Errors from xkbcomp are not fatal to the X server
Mm, ora che ci faccio caso dice che non riesce ad aprire la console virtuale 7, come si può risolvere?
Arch Linux. Ebbasta
"L'utopia è come l'orizzonte: cammino due passi, e si allontana di due passi. Cammino di dieci passi, e si allontana di dieci passi. E allora, a cosa serve l'utopia? A questo: serve per continuare a camminare."

adriano
Arciere Provetto
Messaggi: 538
Iscritto il: 20 luglio 2008, 13:45
Contatta:

Messaggio da adriano » 15 maggio 2009, 14:00

Allora il log di kdm dice tutto, cerca la console numero questo perchè solitamente vengono create 6 console di default da inittab. Allora è molto semplice aggiungi queste righe al tuo /etc/qinit.sysinit insieme a quelle che ci sono già nella parte iniziale del file:

Codice: Seleziona tutto

/bin/mknod /dev/vc/7 c 4 7
/bin/ln -sfn /dev/vc/7 /dev/tty7
Fammi sapere se così funziona :)

psykopear
Little John
Messaggi: 800
Iscritto il: 28 ottobre 2007, 22:20

Messaggio da psykopear » 15 maggio 2009, 14:14

Perfetto, in 10 secondi sono a kdm (contati a mente, ora risistemo bootchart e ti dò l'immagine)
Arch Linux. Ebbasta
"L'utopia è come l'orizzonte: cammino due passi, e si allontana di due passi. Cammino di dieci passi, e si allontana di dieci passi. E allora, a cosa serve l'utopia? A questo: serve per continuare a camminare."

adriano
Arciere Provetto
Messaggi: 538
Iscritto il: 20 luglio 2008, 13:45
Contatta:

Messaggio da adriano » 15 maggio 2009, 14:23

ok perfetto :)

marcosonoio
Novello Arciere
Messaggi: 57
Iscritto il: 3 dicembre 2008, 0:59

Messaggio da marcosonoio » 15 maggio 2009, 14:55

provato su nvidia 7900gt, con driver proprietari da EXTRA, funziona tutto perfettamente.
ho solo qualche errore, quasi all'inizio, mi sembra qualcosa che riguarda la creazione dei nodi, mi dice che esistono già.
non c'è un modo semplice, per salvare l'output degli script in un file(quindi un log)???
Marco

algol.tr
Novello Arciere
Messaggi: 74
Iscritto il: 27 aprile 2008, 18:47

Messaggio da algol.tr » 15 maggio 2009, 16:38

stesso problema di psykopear e risolto anche per me... va meglio di finit-arc e senza problemi :)
grazie adriano

Pappice
Novello Arciere
Messaggi: 115
Iscritto il: 26 novembre 2008, 23:43

Messaggio da Pappice » 15 maggio 2009, 17:30

OK, ora sono al lavoro... fra un'ora riporterò il risultato del mio test. ;)

adriano
Arciere Provetto
Messaggi: 538
Iscritto il: 20 luglio 2008, 13:45
Contatta:

Messaggio da adriano » 15 maggio 2009, 17:35

@marcosonoio
per ora non c'è un file di log se non dmesg dovresti dirmi gli errori che hai se riesci a individuarli


grazie ragazzi :)

Pappice
Novello Arciere
Messaggi: 115
Iscritto il: 26 novembre 2008, 23:43

Messaggio da Pappice » 15 maggio 2009, 19:08

Fatta la prova sul PC fisso, tutto ok.
E' veloce circa quanto finit-arc...
Quanto prima farò un bootchart.

algol.tr
Novello Arciere
Messaggi: 74
Iscritto il: 27 aprile 2008, 18:47

Messaggio da algol.tr » 15 maggio 2009, 20:03

uffa ho agiornato al quick-init 1.7 ed all'avvio non ho ne tastiera ne mouse.

psykopear
Little John
Messaggi: 800
Iscritto il: 28 ottobre 2007, 22:20

Messaggio da psykopear » 15 maggio 2009, 20:18

Gli errori al boot li ho anche io, dicono qualcosa che riguarda l'impossibilità di creare vc1 e vc2
Arch Linux. Ebbasta
"L'utopia è come l'orizzonte: cammino due passi, e si allontana di due passi. Cammino di dieci passi, e si allontana di dieci passi. E allora, a cosa serve l'utopia? A questo: serve per continuare a camminare."

Rispondi