<para>Benvenuto nel System V Init Editor di &kde;, comunemente noto (e da qui in poi sarà il suo nome) come &ksysv;. Questa sezione introduce un po' di concetti e spiega che cosa si possa fare con &ksysv;. </para>
<title>Una breve descrizione di System V Init</title>
<para>La seguente spiegazione è <quote>presa in prestito</quote> da <application>tksysv</application> (fonte di ispirazione per &ksysv;): </para>
<para>System V init sta diventando velocemente uno standard nel mondo &Linux; per controllare il lancio di programmi all'avvio. Questo perché è decisamente più facile da usare, più potente e flessibile del tradizionale init di <acronym>BSD</acronym>. </para>
<para>Non entro nei dettagli della storia in questa sede (soprattutto perché non la so :-). </para>
<para>L'eseguibile di init è collocato in <filename class="directory">/sbin</filename> e non in <filename class="directory">/etc</filename>. Questo è importante perché si potrebbe tentare di aggiornare una macchina a System V init senza necessariamente ripetere l'installazione e formattare. Il kernel di &Linux; cerca prima in <filename class="directory">/etc</filename> il proprio init, perciò assicurati di eliminare il tuo vecchio init da lì. </para>
<para>SysV init si differenzia pure dall'init <acronym>BSD</acronym> per il fatto che i file di configurazione sono in una sottocartella di <filename class="directory">/etc</filename> invece di risiedere direttamente in <filename class="directory">/etc</filename>. Questa cartella si chiama <filename class="directory">rc.d</filename>. Al suo interno si trovano <filename>rc.sysinit</filename> e le seguenti cartelle: </para>
<para><filename class="directory">init.d</filename> contiene un sacco di script. In sostanza, hai bisogno di uno script per ogni servizio che tu possa aver la necessità di avviare all'avvio o quando entri in un altro runlevel. I servizi includono cose come i servizi di rete, <acronym>NFS</acronym>, &Sendmail;, httpd, &etc;. I servizi non includono cose come <command>setserial</command> che devono solo essere lanciati una volta e poi fermati. Cose così dovrebbero andare nel file <filename>rc.local</filename>. </para>
<para><filename>rc.local</filename> dovrebbe trovarsi in <filename class="directory">/etc/rc.d</filename> se ne vuoi uno. La maggior parte dei sistemi ne include uno anche se non fa poi molto. Puoi anche includere un file <filename>rc.serial</filename> in <filename class="directory">/etc/rc.d</filename> se hai bisogno di compiere operazioni specifiche sulla porta seriale all'avvio. </para>
<para>La catena degli eventi è come segue: </para>
<para>Il runlevel predefinito è stabilito in <filename>/etc/inittab</filename>. Dovresti avere una riga vicino all'inizio simile a: </para>
<screen>id:3:initdefault:</screen>
<para>Da questo, guarderesti seconda colonna e vedresti che il runlevel predefinito è il numero 3, come dovrebbe essere nella maggior parte dei sistemi. Se lo vuoi cambiare, puoi modificare <filename>/etc/inittab</filename> a mano e cambiare il 3. Fai molta attenzione quando manometti inittab. In caso di pasticci, lo si può rimettere a posto riavviando e digitando: </para>
<para>Questo comando <emphasis>dovrebbe</emphasis> consentirti di avviare in modalità a singolo utente per poter sistemare il problema. </para>
<para>Ora, come esegue gli script giusti? Se digiti <userinput><command>ls</command> <option>-l</option></userinput> nella cartella <filename class="directory">rc3.d</filename>, dovresti vedere qualcosa tipo: </para>
<para>Quello che noterai è che non ci sono veri file nella cartella. Tutto quello che c'è lì è un collegamento a uno degli script nella cartella <filename class="directory">init.d</filename>. </para>
<para>I collegamenti hanno anche una <literal>S</literal> e un numero all'inizio. La <literal>S</literal> vuol dire avviare quel particolare script, mentre la <literal>K</literal> servirebbe a fermarlo. Il numero serve solo per motivi di ordinamento. Init avvierà tutti i servizi in base sull'ordine in cui compaiono. Puoi avere numeri duplicati, ma ti confonderanno e basta. Hai solo bisogno di usare un numero di due cifre, preceduto da una lettera <literal>S</literal> o <literal>K</literal> maiuscola per avviare o fermare i servizi di cui hai bisogno. </para>
<para>Come si avviano o si fermano i servizi? Semplice. Ogni script è scritto in modo da accettare un argomento che può essere <option>start</option> o <option>stop</option>. Puoi eseguire quegli script a mano, digitando alla riga di comando: </para>
<para>Per fermare il server httpd. Appena Init legge il nome e se ha una <literal>K</literal>, chiama lo script con l'argomento <option>stop</option>. Se avesse una <option>S</option> chiamerebbe lo script con un argomento <option>start</option>. </para>
<para>Alcuni vogliono un modo semplice di configurare le macchine per avere più usi diversificati. Potrei avere un runlevel da <quote>server</quote> che avvia solo httpd, sendmail, networking, &etc;. Successivamente potrei avere un runlevel da <quote>utente</quote> che avvia <application>tdm</application>, applicazioni di rete, &etc; </para>
<para>Usare &ksysv; con un mouse o un altro dispositivo di puntamento è facile: semplicemente trascina una voce dall'area <guilabel>Servizi disponibili</guilabel> su di uno dei sei runlevel per avviarlo (o rispettivamente fermarlo) in quel runlevel. </para>
<para>Puoi anche spostare gli script tra i runlevel, o cambiarne la posizione in un certo runlevel trascinandoli in giro. Così facendo, si rimuove la voce dal suo runlevel (o posizione) originale. Questo non succede quando trascini una voce dall'area <guilabel>Servizi disponibili</guilabel>. </para>
<para>Le voci sono spostate quando le trascini in una nuova area. Per copiare un servizio in un runlevel diverso, devi selezionare <guimenuitem>Copia</guimenuitem> dal menu <guimenu>Modifica</guimenu> o da quello contestuale e <guimenuitem>Incolla</guimenuitem> nel runlevel di destinazione. </para>
<para>Il <quote>numero d'ordine</quote> di una voce a volte non può essere calcolato. In questo caso, si deve modificare il numero d'ordine delle voci circostanti prima di riprovare ad inserire il servizio. </para>
<para>Si può usare il tasto <keycap>Tab</keycap> per cambiare il fuoco sui diversi pannelli (<guilabel>Servizi disponibili</guilabel>, <guilabel>Runlevel 1 Start</guilabel>, <guilabel>Runlevel 1 Stop</guilabel>, &etc;) e i tasti cursore per muovere la selezione su e giù. </para>
<para>Per spostare una voce ad un runlevel diverso, <guimenuitem>Taglia</guimenuitem>la negli appunti (usando <keycombo action="simul">&Ctrl; <keycap>X</keycap></keycombo>) e <guimenuitem>Incolla</guimenuitem>la nel runlevel di destinazione (con <keycombo action="simul">&Ctrl; <keycap>V</keycap></keycombo>). </para>
<para>Per cambiare manualmente il numero d'ordine o il nome delle voci, premi <keycap>Invio</keycap> per aprire la finestra delle proprietà. Usa il tasto <keycap>Tab</keycap> per passare tra i vari campi. Chiudi la finestra premendo ancora <keycap>Invio</keycap> per accettare le modifiche, o premi <keycap>Esc</keycap> per annullare ogni cambiamento. </para>
<para>A causa del pericolo di perdita di dati, tutti le voci di menu sotto <guimenu>File</guimenu> chiedono conferma prima di fare il loro lavoro. </para>
<para>Tutte le opzioni sono salvate in <filename>$<envar>TDEHOME</envar>/share/config/ksysvrc</filename>. Quelle predefinite sono prese dal file globale (<filename>$<envar>TDEDIR</envar>/share/config/ksysvrc</filename>), se disponibile, o altrimenti sono generate all'interno di &ksysv;. I cambiamenti alle impostazioni predefinite sono conservati nel tuo <filename>ksysvrc</filename> locale. </para>
<para>Digita <userinput>linux single</userinput> al prompt di <acronym>LILO</acronym> e premi <keycap>Invio</keycap> per avviare il computer in modalità a utente singolo. Modifica il file <filename>/etc/inittab</filename> e cambia il runlevel predefinito in qualcosa di funzionante. Normalmente <literal>3</literal> dovrebbe essere sicuro. </para>
<para>Se stai usando le distribuzioni SuSE o Delix (DLD), devi anche modificare un file specifico della distribuzione in <filename class="directory">/etc</filename>. Dai un'occhiata al manuale della tua distribuzione per i dettagli. </para>
<para>L'approccio per lanciare i servizi usati dalle distribuzioni sopra citate facilita la configurazione dei servizi per gli strumenti di configurazione proprietari che queste distribuzioni forniscono, ma sfortunatamente ciò non è standard. Gli autori di &ksysv; hanno in programma di scrivere un'estensione generica di questo approccio in un futuro ipotetico, ma non fateci troppo affidamento. </para>
<para>Se stai usando una distribuzione diversa, controlla di avere tutti i file di configurazione necessari al servizio, e se sono nelle posizioni giuste. Alcuni demoni, per esempio <application>Apache</application>, (noto anche come <command>httpd</command>) muoiono in silenzio se i loro file di configurazione mancano o sono configurati male. </para>
<para>Queste variano a seconda della distribuzione, quindi questo è un elenco incompleto delle distribuzioni &Linux; più comuni. Se hai altre distribuzioni, per piacere invia una email all'autore e fagli aggiungere le informazioni in questo manuale. </para>