From: Marcello Magaldi <magowiz@gmail.com>
To: gentoo-docs-it@lists.gentoo.org
Subject: Re: [gentoo-docs-it] openrc-migration.xml : dubbi e revisione pre-commit
Date: Tue, 06 May 2008 16:36:28 +0200 [thread overview]
Message-ID: <48206CEC.6040904@gmail.com> (raw)
In-Reply-To: <efcf0a8c0805060604m6f53e147x3b82fc782d879957@mail.gmail.com>
[-- Attachment #1: Type: text/plain, Size: 1251 bytes --]
Andrea Menegolo ha scritto:
> Devo abituarmi anch'io ad inviare il file in mailing-list... magari
> qualcuno lo legge e mi corregge gli errori!!!
da quando ho iniziato a collaborare alla documentazione ho sempre
postato qui ;-)
>
> L'ho letto un po' in velocità. Ho tolto qualche spazio doppio
> modificato delle accentate e cambiato un paio di frasi che secondo me
> erano poco chiare.
> Spero di non offendere nessuno con queste correzioni!!!
ci mancherebbe, anzi ti ringrazio per le correzioni, le ho controllate e
integrate subito nel file(che riallego);
mi sono accorto inoltre che la versione che ho tradotto io è stata
rapidamente deprecata, (come mi aveva già detto Scen d'altronde) presto
dovrò quindi rimettermi al lavoro per aggiornare la mia traduzione.
>
> Allego il diff (patch?)
grazie! Sono riuscito comunque ad applicarla al file, tuttavia la
prossima volta creala con gli argomenti -Naur così dovrebbe crearti una
patch che non mi chieda di specificare il nome del file ;-)
> Ciao e in bocca al lupo per gli esami.
crepi!
>
> PS: ho notato che i miei messaggi arrivano tardi in mailing lista. È
> colpa di @google.com <http://google.com>?
non ne ho idea, forse è un ritardo "generico"
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: openrc-migration.xml --]
[-- Type: text/xml; name="openrc-migration.xml", Size: 12722 bytes --]
<?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE guide SYSTEM "/dtd/guide.dtd">
<!-- $Header: /var/www/viewcvs.gentoo.org/raw_cvs/gentoo/xml/htdocs/doc/en/openrc-migration.xml,v 1.10 2008/04/16 00:40:11 nightmorph Exp $ -->
<guide link="/doc/it/openrc-migration.xml">
<title>Guida alla Migrazione di Baselayout e OpenRC</title>
<author title="Autore">
<mail link="cardoe"/>
</author>
<author title="Autore">
<mail link="nightmorph"/>
</author>
<author title="Collaboratore">
<mail link="uberlord"/>
</author>
<author title="Traduzione">
<mail link="magowiz@gmail.com">Marcello Magaldi</mail>
</author>
<abstract>
Questa guida illustra come migrare da baselayout-1 a baselayout-2 e OpenRC.
</abstract>
<!-- The content of this document is licensed under the CC-BY-SA license -->
<!-- See http://creativecommons.org/licenses/by-sa/2.5 -->
<license/>
<version>1.6</version>
<date>2008-04-15</date>
<chapter>
<title>Background</title>
<section>
<title>Cos'è baselayout?</title>
<body>
<p>
Baselayout fornisce un insieme base di file che sono necessari per far
funzionare adeguatamente tutti i sistemi, come ad esempio <path>/etc/hosts</path>.
Fornisce anche il layout base del filesystem usato da Gentoo (ad es. le
directory <path>/etc</path>, <path>/var</path>,<path>/usr</path>, <path>/home</path>).
</p>
</body>
</section>
<section>
<title>Cos'è OpenRC?</title>
<body>
<p>
OpenRC è un sistema rc basato sulle dipendenze che funziona con qualsiasi init
fornito dal sistema, normalmente <path>/sbin/init</path>. Comunque, <e>non</e>
è un sostituto per <path>/sbin/init</path>. L'init di default usato da Gentoo
Linux è <c>sys-apps/sysvinit</c>, mentre Gentoo/FreeBSD utilizza l'init di
FreeBSD fornito da <c>sys-freebsd/freebsd-sbin</c>.
</p>
</body>
</section>
<section>
<title>Perché migrare?</title>
<body>
<p>
Inizialmente il sistema rc di Gentoo è stato compilato dentro baselayout 1 e
scritto interamente in bash. Questo porta a molte limitazioni. Per esempio,
certe chiamate di sistema hanno bisogno di essere effettuate durante il boot e
ciò ha richiesto l'aggiunta di chiamate basate su C. Ognuna di queste chiamate
era linkata staticamente, facendo in modo che il sistema rc
causing the rc system to bloat over time.
</p>
<p>
Inoltre, siccome Gentoo si è espansa ad altre piattaforme come Gentoo/FreeBSD e
Gentoo Embedded, è diventato impossibile mantenere un sistema rc basato su
bash. Questo ha portato allo sviluppo di baselayout 2, che è scritto in C e
richiede unicamente una shell POSIX-compliant. Durante lo sviluppo di
baselayout 2, è stato deciso che era più appropriato che baselayout avesse
fornito meramente i file base e il layout del filesystem per Gentoo e il sistema
rc fu spostato in un suo pacchetto. Sicché abbiamo OpenRC.
</p>
<p>
OpenRC è sviluppato principalmente da <uri link="http://roy.marples.name/openrc">Roy
Marples</uri> e supporta tutte le correnti variazioni di Gentoo (es. Gentoo Linux,
Gentoo/FreeBSD, Gentoo Embedded, e Gentoo Vserver) e altre piattaforme come FreeBSD
e NetBSD.
</p>
</body>
</section>
</chapter>
<chapter>
<title>Migrazione a OpenRC</title>
<section>
<body>
<p>
La migrazione a OpenRC è piuttosto diretta; sarà introdotta come parte del
proprio processo di aggiornamento dal gestore dei pacchetti. Il passo più
importante attualmente avviene dopo l'installazione dei nuovi pacchetti
<c>>=sys-apps/baselayout-2</c> e <c>sys-apps/openrc</c>. È <e>fondamentale</e> che
si esegua <c>dispatch-conf</c> e che <path>/etc</path>
sia aggiornato prima di riavviare. <brite>Un fallimento nel farlo produrrà un
sistema non più avviabile</brite> e richiederà l'uso del Gentoo LiveCD per
effettuare i passaggi seguenti per riparare il proprio sistema.
</p>
<p>
Una volta finito di aggiornare i propri file di configurazione, ci sono alcune
cose da verificare prima di riavviare.
</p>
</body>
</section>
<section id="rc_conf">
<title>/etc/conf.d/rc</title>
<body>
<p>
Il file <path>/etc/conf.d/rc</path> è stato deprecato e tutte le impostazioni
in esso contenute avranno bisogno di essere trasferite alle impostazioni
appropriate in <path>/etc/rc.conf</path>. Si prega di leggere interamente
<path>/etc/rc.conf</path> e <path>/etc/conf.d/rc</path> e migrare le
impostazioni. Una volta finito, cancellare <path>/etc/conf.d/rc</path>.
</p>
</body>
</section>
<section id="moduli">
<title>Moduli del Kernel</title>
<body>
<p>
Normalmente, quando si vuole che certi moduli del kernel siano caricati
all'avvio, li si mette in <path>/etc/modules.autoload.d/kernel-2.6</path>insieme
ad ogni parametro che gli si vuole passare. Nel baselayout-2, questo file non è
più utilizzato. Invece, i moduli caricati automaticamente e i loro parametri
sono situati in un file, <path>/etc/conf.d/modules</path>, qualsiasi sia la
versione del kernel.
</p>
<p>
Un esempio di configurazione vecchio stile sarebbe:
</p>
<pre caption="/etc/modules.autoload.d/kernel-2.6">
ivtv
cx88_dvb video_br=2
</pre>
<p>
Convertire l'esempio precedente risulterà nel seguente:
</p>
<pre caption="/etc/conf.d/modules">
<comment># Moduli caricati automaticamente all'avvio</comment>
modules_2_6="ivtv cx88_dvb"
<comment># Parametri dei Moduli</comment>
module_cx88_dvb_args_2_6="video_br=2"
</pre>
<p>
Negli esempi precedenti, i moduli e i loro parametri saranno passati soltanto
ai kernel della serie 2.6.x. La nuova configurazione permette un controllo più
preciso sui moduli e sui parametri basato sulla versione del kernel.
</p>
<p>
Un esempio approfondito sarà:
</p>
<pre caption="esempio dettagliato di /etc/conf.d/modules">
<comment># Carica sempre ochi1394 e ieee1394, per qualsiasi versione di kernel</comment>
modules="ohci1394 ieee1394"
<comment># Carica tun e usbserial solo per i kernel della serie 2.6.x</comment>
modules_2_6="tun usbserial"
<comment># Carica cx88_dvb solo per i kernel 2.6.23</comment>
modules_2_6_23="cx88_dvb"
<comment># Carica ivtv solo per il kernel 2.6.23-gentoo-r5</comment>
modules_2_6_23_gentoo_r5="ivtv"
<comment># Solo per il kernel 2.6.23-gentoo-r5, passa come argomento video_br=2
# a cx88_dvb</comment>
module_cx88_dvb_args_2_6_23_gentoo_r5="video_br=2"
<comment># Per i kernel della serie 2.6.x passa sempre vendor e product</comment>
module_usbserial_args_2_6="vendor=0x1410 product=0x2110"
<comment># Passa sempre debug a ieee1394</comment>
module_ieee1394_args="debug"
</pre>
<note>
Prego notare la differenza tra <b>module_</b> e <b>modules_</b>.
</note>
</body>
</section>
<section id="boot">
<title>Runlevel di Boot</title>
<body>
<p>
Il runlevel di <c>boot</c> esegue molti passi importanti per ogni macchina. Per
esempio, assicurarsi che il proprio filesystem root sia montato in lettura/scrittura,
che i propri filesystem siano controllati, che i propri mountpoint siano
disponibili, e che lo pseudo-filesystem <path>/proc</path> sia avviato al boot.
</p>
<p>
Con OpenRC, i servizi di gestione del volume per i propri dispositivi a blocchi
non sono più avviati automaticamente al boot. Questo include lvm, raid, swap,
device-mapper (dm), dm-crypt, evms, e il like. Bisogna assicurarsi che
l'initscript appropriato per questi servizi nel runlevel di <c>boot</c>,
altrimenti sarà possibile che il proprio sistema non si avvii!
</p>
<p>
Sebbene l'ebuild di OpenRC proverà a fare questa migrazione, si dovrà
verificare che migri tutti i servizi di gestione di volume correttamente:
</p>
<pre caption="Mostrare tutti i servizi nel runlevel boot">
# <i>ls -l /etc/runlevels/boot/</i>
</pre>
<p>
Se non si vede root, procfs, mtab, swap e fsck con il precedente comando,
effettua le seguenti istruzioni per aggiungerli al runlevel <c>boot</c>:
</p>
<pre caption="Aggiungere servizi critici al runlevel boot">
# <i>rc-update add root boot</i>
# <i>rc-update add procfs boot</i>
# <i>rc-update add mtab boot</i>
# <i>rc-update add fsck boot</i>
# <i>rc-update add swap boot</i>
</pre>
<p>
Se si utilizza mdraid e lvm ma non li si vede sopra, si
dovranno eseguire le seguenti istruzioni per aggiungere gli initscripts al
runlevel <c>boot</c>:
</p>
<pre caption="Aggiungere raid e lvm al runlevel boot">
# <i>rc-update add raid boot</i>
# <i>rc-update add lvm boot</i>
</pre>
</body>
</section>
<section>
<title>Rete</title>
<body>
<p>
Siccome baselayout e OpenRC sono stati divisi in due pacchetti differenti,
il proprio initscript net.eth0 può scomparire durante il processo di
aggiornamento. Per sostituire questo initscript si eseguano i seguenti
comandi:
</p>
<pre caption="Riaggiungere lo script net.eth0 mancante">
# <i>cd /etc/init.d</i>
# <i>ln -s net.lo net.eth0</i>
</pre>
<p>
Se manca qualsiasi altro initscript di rete, seguire le istruzioni menzionate
sopra per riaggiungerlo. Semplicemente si sostituisca <c>eth0</c> con il nome
del proprio dispositivo di rete.
</p>
<p>
Inoltre, <path>/etc/conf.d/net</path> non utilizza più gli array stile bash per
la configurazione. Prego consultare <path>/usr/share/doc/openrc/net.example</path>
per le istruzioni di configurazione. La conversione dovrebbe essere relativamente
diretta, per esempio un assegnamento statico di IP cambierà in questo modo:
</p>
<pre caption="Vecchio stile di /etc/conf.d/net">
config_eth0=( "192.168.1.37 netmask 255.255.255.0 brd 192.168.1.255" )
routes_eth0=( "default via 192.168.1.100" )
</pre>
<pre caption="Nuovo stile di /etc/conf.d/net">
config_eth0="192.168.1.37 netmask 255.255.255.0 brd 192.168.1.255"
routes_eth0="default via 192.168.1.100"
</pre>
</body>
</section>
<section>
<title>Orologio</title>
<body>
<p>
Le impostazioni dell'orologio sono state rinominate da <path>/etc/conf.d/clock</path>
al proprio strumento di impostazione di orologio nativo di sistema. Questo
significa che in Linux sarà <path>/etc/conf.d/hwclock</path> e in FreeBSD sarà
<path>/etc/conf.d/adjkerntz</path>. L'initscript in <path>/etc/init.d/</path>
è anch'esso stato rinominato conseguentemente, quindi assicurarsi che sia nel
runlevel appropriato.
</p>
<p>
Inoltre, la variabile <c>TIMEZONE</c> non è più in questo file. I suoi contenuti
sono invece nel file <path>/etc/timezone</path>. Se non esiste, bisognerà
certamente crearlo con il proprio timezone. Prego controllare entrambi questi file
per assicurarsi della loro correttezza.
</p>
<p>
Il valore appropriato per questo file è il path relativo al proprio timezone
a partire da <path>/usr/share/zoneinfo</path>. Per esempio, per quelli che
vivono nella costa orientale degli Stati Uniti,
l'impostazione corretta sarà:
</p>
<pre caption="/etc/timezone">
America/New_York
</pre>
</body>
</section>
<section>
<title>XSESSION</title>
<body>
<p>
La variabile XSESSION non si trova più in <path>/etc/rc.conf</path>. Il pacchetto
<c>x11-apps/xinit</c> ora fornisce <path>/etc/env.d/90xsession</path>, che può
essere usato per impostare la variabile XSESSION.
</p>
<p>
Questa variabile <b>NON</b> sarà migrata di default, quindi bisognerà modificare
<path>/etc/env.d/90xsession</path>.
</p>
<impo>
Bisogna eseguire <c>env-update</c> dopo aver creato un file in <path>/etc/env.d</path>,
e successivamente effettuare il logout e poi il login perché abbia effetto.
</impo>
</body>
</section>
<section>
<title>EDITOR / PAGER</title>
<body>
<p>
La variabile EDITOR non si trova più in <path>/etc/rc.conf</path>. Sia EDITOR
che PAGER sono impostati di default in /etc/profile. Si dovrebbe cambiare ciò
se se ne ha bisogno nel proprio file <path>~/.bashrc</path> (o equivalente) o
creare <path>/etc/env.d/99editor</path> e impostare l'impostazione di default
del sistema in esso.
</p>
<impo>
Bisogna eseguire <c>env-update</c> dopo aver creato un file in <path>/etc/env.d</path>,
e successivamente effettuare il logout e poi il login perché abbia effetto. Se
si è impostato la variabile in <path>~/.bashrc</path>, si può rifare il source
del file con <c>source ~/.bashrc</c>.
</impo>
</body>
</section>
<section>
<title>Finalizzare</title>
<body>
<p>
Una volta terminato e aggiornato i propri file di configurazione e gli
initscript, l'ultima cosa da fare è <b>reboot</b>. Questo è necessario perchè
le informazioni di stato del sistema non sono preservate durante
l'aggiornamento, quindi bisognerà fornirle con un boot pulito.
provide it with a fresh
boot.
</p>
</body>
</section>
</chapter>
</guide>
next prev parent reply other threads:[~2008-05-06 14:36 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-05-06 10:20 [gentoo-docs-it] openrc-migration.xml : dubbi e revisione pre-commit Marcello Magaldi
2008-05-06 13:04 ` Andrea Menegolo
2008-05-06 14:36 ` Marcello Magaldi [this message]
2008-05-06 14:43 ` Marcello Magaldi
2008-05-06 15:39 ` Marcello Magaldi
2008-05-07 9:27 ` Marcello Magaldi
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=48206CEC.6040904@gmail.com \
--to=magowiz@gmail.com \
--cc=gentoo-docs-it@lists.gentoo.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox