Official Arch Linux Install Guide Appendix (Italiano)
From ArchWiki
Article summary |
---|
Appendice alla Guida ufficiale di installazione di Arch Linux |
Linguaggi disponibili |
English |
Italiano |
Articoli Collegati |
Beginners Guide (If you are new to Arch) |
Official Arch Linux Install Guide |
Aggiungere un Window Manager/Desktop Environment
Vedere inoltre .xinitrc
Boot Scripts
Arch Linux usa una sequenza di inizializzazione (bootup) relativamente semplice, molto simile a quella dei sistemi *BSD. Il primo script che viene eseguito è /etc/rc.sysinit. Quando è stato eseguito completamente, viene chiamato /etc/rc.multi (in un boot normale). L'ultimo script ad essere chiamato, è /etc/rc.local. Quando partite nel runlevel 1, la modalità ad utente singolo, /etc/rc.single viene chiamato al posto di /etc/rc.multi. Non troverete una infinita serie di collegamenti simbolici nella cartella /etc/rc?.d per definire la sequenza di bootup per tutti i possibili runlevels. Difatto in Arch, a causa del suo approccio troverete realmente solo 3 runlevels, aggiungendo a quelli già citati il runlevel 5 se volete avviare il sistema direttamente con un sistema grafico X. Gli script di boot usano variabili di sistema e definizioni posizionate nel file /etc/rc.conf e inoltre una serie di funzioni generali definite nello script /etc/rc.d/functions. Se avete intenzione di scrivere il vostro file demone personalizzato, considerate l'idea di dare un'occhiata a questi script demoni esistenti.
Prospetto dei Boot Script
- /etc/rc.sysinit
- /etc/rc.single
- /etc/rc.multi
- /etc/rc.local
- /etc/rc.shutdown
- /etc/rc.local.shutdown
- /etc/rc.d/*
/etc/rc.sysinit
The main system boot script. It does boot-critical things like mounting filesystems, running udev, activating swap, loading modules, setting localization parameters, etc. You will most likely never need to edit this file!
/etc/rc.single
Single-user startup. Not used in a normal boot-up. If the system is started in single-user mode, for example with the kernel parameter 1 before booting or during normal multi-user operation with the command init 1, this script makes sure no daemons are running except for the bare minimum; syslog-ng and udev. The single-user mode is useful if you need to make any changes to the system while making sure that no remote user can do anything that might cause data loss or damage.
For desktop users, this mode usually is useless as crud. You should have no need to edit this script, either.
/etc/rc.multi
Multi-user startup script. It starts all daemons you configured in the DAEMONS array (set in /etc/rc.conf) after which it calls /etc/rc.local. You shouldn't feel a pressing need to edit this file.
/etc/rc.local
Local multi-user startup script. It is a good place to put any last-minute commands you want the system to run at the very end of the bootup process. This is finally the one and only script you should modify if needed, and you have total freedom on what to add to this script.
Most common system configuration tasks, like loading modules, changing the console font or setting up devices, usually have a dedicated place where they belong. To avoid confusion, you should make sure that whatever you intend to add to your rc.local isn't feeling just as home in /etc/profile.d/ or any other already existant config location instead.
/etc/rc.shutdown
System shutdown script. It stops daemons, unmounts filesystems, deactivates the swap, etc. Just don't touch.
/etc/rc.local.shutdown
Analogous to the /etc/rc.local file, this file may contain any commands you want to run right before the common rc.shutdown is executed. Please note that this file does not exist by default, and for it to work properly, it must be set as executable.
/etc/rc.d/*
This directory contains the daemon scripts referred to from the rc.conf's DAEMONS array. In addition to being called on bootup, you can use these scripts when the system is running to manage the services of your system. For example the command
/etc/rc.d/postfix stop
will stop the postfix daemon. Of course a script only exists when the appropriate package has been installed (in this case postfix). With a basic system install, you don't have many scripts in here, but rest assured that all relevant daemon scripts end up here. This directory is pretty much the equivalent to the /etc/rc3.d/ or /etc/init.d/ directories of other distributions, without all the symlink hassle.
Gestione degli utenti
Utenti e gruppi possono essere aggiunti e rimossi con i comandi standard forniti con il pacchetto util-linux: useradd, userdel, gropuadd, groupdel, passwd e gpasswd. Il modo tipico per aggiungere un utente è simile a questa procedura:
useradd -m -s /bin/bash johndoe passwd johndoe
Il primo comando aggiungerà l'utente johndoe al sistema, creerà una directory home per lo stesso al path /home/johndoe, e piazzerà alcuni file di default nella home stessa. Inoltre, setterà la sua shell di login come /bin/bash. Il secondo comando vi chiederà una password per l'utente johndoe, password che sarà necessaria per attivare l'account.
Come via alternativa al comando useradd, esiste lo script adduser che vi guiderà interrattivamente nella creazione del nuovo utente, dovrete limitarvi a rispondere alle domande che vi verranno poste.
Fare riferimento alle manpages per maggiori informazioni sui restanti comandi. È una buona idea creare uno o più utenti normali per le vostre operazioni comuni, evitando di utilizzare per la normale attività l'utente root, dato che i maggiori privilegi di quest'ultimo potrebbero portare a spiacevoli conseguenze. Utilizzare i privilegi di amministratore solo per le attività di amministrazione di sistema.
Accesso a Internet
A causa della mancanza di sviluppatori per le utility relative agli utenti dial-up (56k), connettersi con Arch a internet tramite linea analogica necessita di un po' di configurazioni manuali. Se vi è possibile, sarebbe enormemente più semplice connettersi tramite un router dedicato, da utilizzare come gateway per la Arch box.
Inoltre, anche se poche, ci sono delle pagine del Wiki dedicate a questo tipo di connessione. Usate la ricerca nel caso.
Modem Analogici
Per poter usare a modem analogico, esterno, Hayes-compatibile, è necessario avere installato almeno il pacchetto ppp. Modificate il file /etc/ppp/options secondo le vostre esigenze e tenendo presente il man di pppd. Avrete bisogno di definire un chat script per fornire il proprio nome utente e la password all'ISP dopo aver stabilito la connessione iniziale. Le pagine man per pppd e chat contengono esempi che dovrebbero essere sufficienti ad ottenere una connessione attiva e funzionante se siete esperti o abbastanza ostinati. Con udev, le vostre porte seriali solitamente sono /dev/tts/0 e /dev/tts/1.
Invece di combattere una gloriosa battaglia con pppd, potreste decidere di installare wvdial o un simile strumento per rendere il processo di configurazione molto più semplice.
Nel caso stiate usando un WinModem, che non è altro che una scheda PCI che lavora come un modem interno analogico, dovreste guardare nel grande numero di informazioni sull'homepage di LinModem.
ISDN
Setting up ISDN is done in three steps:
- Install and configure hardware
- Install and configure the ISDN utilities
- Add settings for your ISP
The current Arch stock kernels include the necessary ISDN modules, meaning that you won't need to recompile your kernel unless you're about to use rather odd or old ISDN hardware. After physically installing your ISDN card in your machine or plugging in your USB ISDN-Box, you can try loading the modules with modprobe. Nearly all passive ISDN PCI cards are handled by the hisax module which needs two parameters; type and protocol. You must set protocol to '1' if your country uses the 1TR6 standard, '2' if it uses EuroISDN (EDSS1), '3' if you're hooked to a so called leased-line without D-channel, and '4' for US NI1.
Details on all those settings and how to set them is included in the kernel documentation, more specifically in the isdn subdirectory, available online. The type parameter depends on your card; A list of all possible types is to be found in the README.HiSax kernel documentation. Choose your card and load the module with the appropriate options like this:
modprobe hisax type=18 protocol=2
This will load the hisax module for my (Dennis) ELSA Quickstep 1000PCI, being used in Germany with the EDSS1 protocol. You should find helpful debugging output in your /var/log/everything.log file in which you should see your card being prepared for action. Please note that you will probably need to load some usb modules before you can work with an external USB ISDN Adapter.
Once you confirmed that your card works with certain settings, you can add the module options to your /etc/modprobe.conf:
alias ippp0 hisax options hisax type=18 protocol=2
Alternatively you can only add the options line here, and add hisax to your MODULES array in the rc.conf. Your choice, really, but this example has the advantage that the module will not be loaded until it's really needed.
That being done you should have working, supported hardware. Now you need the basic utilities to actually use it!
Install the isdn4k-utils package, and read the manpage to isdnctrl, it'll get you started. Further down in the manpage you will find explanations on how to create a configuration file that can be parsed by isdnctrl, as well as some helpful setup examples.
Please note that you have to add your SPID to your MSN setting separated by a colon if you use US NI1.
After you configured your ISDN card with the isdnctrl utility, you should be able to dial into the machine you specified with the PHONE_OUT parameter, but fail the username and password authentication. To make this work add your username and password to /etc/ppp/pap-secrets or /etc/ppp/chap-secrets as if you were configuring a normal analogous PPP link, depending on which protocol your ISP uses for authentication. If in doubt, put your data into both files.
If you set up everything correctly, you should now be able to establish a dialup connection with isdnctrl dial ippp0 as root. If you have any problems, remember to check the logfiles!
DSL (PPPoE)
Queste istruzioni sono importanti solo se è il vostro PC a gestire la connessione all'ISP. Se invece usate un router separato, di qualunque sorta, non dovete far altro che definire un gateway di default corretto per lasciare ad esso il "lavoro sporco".
Prima di poter usare la vostra connessione DSL, dovrete fisicamente installare nel computer la scheda di rete che dovrà connettersi al modem DSL. Dopo aver aggiunto il modulo corretto per la vostra scheda di rete a /etc/modprobe.conf o all'array MODULES di /etc/rc.conf
, dovete installare il pacchetto rp-pppoe e avviare da terminale lo script pppoe-setup per configurare la connessione. Dopo aver inserito tutti i dati richiesti, potete connettervi e disconnettervi dalla rete con
# /etc/rc.d/adsl start # /etc/rc.d/adsl stop
rispettivamente. La configurazione è normalmente piuttosto facile e diretta, ma non abbiate timore di leggere le pagine di man per suggerimenti. Se volete connettervi automaticamente all'avvio, aggiungete adsl
al vostro array DAEMONS.
Gestione dei pacchetti
Pacman
Pacman è il gestore dei pacchetti di Arch, esso si occupa di tener traccia di tutto il software installato sul sistema. Ha un sistema semplice di supporto per le dipendenze e usa il formato standard .tar.gz per la compressione\archiviazione dei pacchetti. Alcune delle sue funzioni basilari sono spiegate qua sotto, unite al comando sia in forma breve che estesa necessario per sfruttarle. Per una spiegazione più completa e aggiornata delle opzioni di pacman, fate riferimento al man di pacman, poichè quella che segue è solo una piccola introduzione, che non tratta tutte le sue (enormi) funzionalità e capacità.
Ecco una lista delle funzioni base:
Installare un nuovo software disponibile in un pacchetto
pacman --upgrade foo.pkg.tar.gz pacman -U foo.pkg.tar.gz
Questo comando installerà il pacchetto foo.pkg.tar.gz nel sistema. Se pacman noterà la mancanza di alcune dipendenze, uscirà restituendo un errore e segnalando le dipendenze mancanti, ma non tenterà autonomamente di risolvere le dipendenze.. per questa funzionalità, fate riferimento all'opzione --sync. È possibile aggiungere più pacchetti in una volta sola, e se i file aggiunti dipendono l'uno dall'altro, verranno installati nell'ordine corretto in modo da soddisfare le relazioni di dipendenza.
Aggiornare un software disponibile in un pacchetto
pacman --upgrade foo.pkg.tar.gz pacman -U foo.pkg.tar.gz
Questo comando è praticamente uguale al precedente e provvede ad aggiornare il pacchetto già presente nel sistema.
Rimuovere un pacchetto
pacman --remove foo pacman -R foo
Questo comando rimuoverà il pacchetto foo e quindi tutti i file del sistema ad esso imputabili, eccetto i file di configurazione eventualmente modificati. È necessario indicare al comando il nome del pacchetto, senza il suffisso .tar.gz
Per rimuovere qualsiasi traccia del pacchetto dal sistema, aggiungete l'opzione --nosave al comando.
Aggiornare il database dei pacchetti
pacman --sync --refresh pacman -Sy
Questo comando si occuperà di scaricare dai server una lista aggiornata dei pacchetti disponibili nei repository definiti nel file /etc/pacman.conf e la decomprimerà nell'area database. Dovreste usare questo comando prima del comando --sysupgrade per essere certi di scaricare i pacchetti più aggiornati. A seconda del vostro pacman.conf, questo comando potrebbe necessitare di una connessione ad internet attiva per accedere ai repository FTP/HTTP. È un'opzione molto simile al comando "apt-get update" delle distribuzioni basate su debian.
Aggiornare il sistema
pacman --sync --sysupgrade pacman -Su
Questo è il comando che vi permetterà di aggiornare tutti i pacchetti che sono presenti nel vostro sistema, comparando le versioni dei pacchetti installati con quelli presenti nel database che avete aggiornato precedentemente col comando --refresh. È una buona idea dare regolarmente questo comando per mantenere il sistema aggiornato. Notare che questo comando NON aggiorna implicitamente il database dei pacchetti, per questo motivo è meglio utilizzare sempre la 'fusione' di questo comando e di quello precedente, in questa maniera:
pacman --sync --refresh --sysupgrade pacman -Syu
Con queste opzioni, pacman si occuperà di aggiornare i database dei pacchetti, e successivamente si occuperà di aggiornare il sistema nel caso nel database siano rilevati dei pacchetti più aggiornati di quelli installati, oltre ad aggiornare le eventuali dipendenze in maniera completamente automatica. È un comando fondamentale, imparate ad usarlo e usatelo spesso per manterere il sistema in splendida forma.
Aggiungere/Aggiornare un pacchetto dai repository
pacman --sync foo pacman -S foo
Il comando trova il pacchetto foo dai repository, lo scarica e lo installa, così come tutte le sue dipendenze. Prima di utilizzare questa funzione, è consigliabile aver aggiornato il database dei pacchetti in precedenza, o addirittura è possibile fare le due operazioni in contemporanea aggiungendo nello stesso comando l'opzione --refresh (o -y) appunto. A differenza di --add, la funzione --sync non fa differenze fra installare o aggiornare un pacchetto. A seconda del vostro pacman.conf e dei settaggi al suo interno, questa funzione necessita di un collegamento a internet per funzionare.
Nel caso otteniate strani errori durante lo scaricamento di un pacchetto da un server (es. download interrotti, file non trovati) essi sono solitamente causati dal non aver aggiornato il database dei pacchetti con --refresh, o nel caso siate veramente sfortunati, può essere che nel momento in cui stavate scaricando, il mirror era in fase di aggiornamento dei pacchetti, e di conseguenza poteva trovarsi in uno stato temporaneo di inconsistenza.
Elenca i pacchetti installati
pacman --query pacman -Q
Il comando visualizza una lista dei pacchetti installati nel sistema.
Controlla se un pacchetto particolare è installato
pacman --query foo pacman -Q foo
Invece di utilizzare il comando grep sulla lista completa alla ricerca di un particolare nome, potete accodare il nome del pacchetto che cercate al comando precedente (query). In questo modo, pacman vi restituirà il nome del pacchetto, insieme all'indicazione della versione installata (solo se il pacchetto risulta installato ovviamente).
Visualizza informazioni su un pacchetto specifico
pacman --query --info foo pacman -Qi foo
Il comando visualizza informazioni sul pacchetto installato foo (dimensione, data di installazione, data di compilazione, dipendenze, conflitti, ecc..). Per visualizzare queste informazioni relativamente a un pacchetto non ancora installato, è necessario aggiungere l'opzione --file (o -p) in questo modo:
pacman --query --info --file foo.pkg.tar.gz pacman -Qip foo.pkg.tar.gz
Visualizza una lista dei file contenuti in un pacchetto
pacman --query --list foo pacman -Ql foo
Questo comando elenca tutti i file che appartengono ad un pacchetto (nell'esempio, il pacchetto foo).
Trova a quale pacchetto appartiene un particolare file
pacman --query --owns /path/to/file pacman -Qo /path/to/file
In questo caso, verrà visualizzato il nome e la versione del pacchetto che contiene il file indicato dalla sua path completa. Indicare solo il nome del file, senza il suo percorso, non visualizzerà nessuna informazione.
Accedere ai repository
Un repository di pacchetti è una collezione di pacchetti e di meta-pacchetti che può essere contenuta in una directory locale o in un server remoto HTTP/FTP. Il reposotyro di default di Arch è il repository core, il quale è mantenuto da alcuni sviluppatori con le ultime versioni dei vari software e che di conseguenza rappresenta un deposito di pacchetti praticamente aggiornatissimo.
Molti utenti inoltre scelgono di attivare il repository extra, il quale contiene molti pacchetti aggiuntivi che però non fanno parte di quelli presenti nel repository fondamentale di Arch, il core appunto. Potreste attivare questo repository aggiuntivo decommentando le righe appropriate nel vostro /etc/pacman.conf. Di default comunque questo repository è già attivato.
Potete inoltre decidere di compilare, mantenere e usare un vostro repository personalizzato. A questo proposito, vi rimando alla manpage di pacman.
Se installate il sistema da CD e alla fine avete dei problemi ad accedere ad internet, potreste aver bisogno di installare dei pacchetti aggiuntivi dal CD. Fate riferimento alle FAQ in questa pagina, in particolare alla numero 2, per capire come definire un repository che faccia riferimento al CD invece che ad un server in rete come sorgente dei pacchetti.
Arch Build System (ABS)
Binari vs Sorgenti
Laddove pacman è il 'responsabile' per il 'lato binario' dei pacchetti (cioè, per i pacchetti precompilati), ABS è il responsabile per il 'lato sorgenti': esso vi aiuterà nel compilare i vostri pacchetti personalizzati da codice sorgente, oltre a permettervi di ricompilare i pacchetti Arch con le vostre personalizzazioni.
La procedura di solito è la seguente:
- Installare il pacchetto abs grazie a pacman
- Sincronizzare il vostro 'albero ABS' con i server, eseguendo il comando abs come root.
- Creare una build directory, col nome del pacchetto che state per creare.
- Copiare il prototipo di PKGBUILD, PKGBUILD.proto, da /var/abs/ nella cartella appena creata, rimuovere poi il suffisso .proto, e modificarlo in modo da renderlo conforme al nuovo pacchetto che si vuole creare.
- Eseguire makepkg nella directory contentente il PKGBUILD.
- Infine, installare il nuovo pacchetto compilato con pacman -U.
- Mandate il pacchetto ai vostri amici e vantatevi a manetta per il lavoro svolto (or give it to an Archer so s/he can stick it in the master ABS tree).
Sincronizzare il vostro albero ABS
Potete sincronizzare tutti i file per la compilazione dei pacchetti di cui abbiate bisogno in /var/abs eseguendo il comando abs come root. È inoltre necessaria una connessione ad internet funzionante, ovviamente. Usando SVN come mezzo di trasporto permette di seguire differenti rami di sviluppo restando all'interno di ABS - potete configurare ciò tramite il file /etc/abs/supfile.arch.. per esempio, il supfile di default è configurato per controllare il ramo dei pacchetti core, che è "bleeding-edge" e di fatto è il ramo che si raccomanda di seguire. Potete però oltre a ciò, seguire specifiche versioni dei pacchetti. Vedere i commenti nei supfiles per maggiori informazioni.
Lascio anche l'originale così che se qualcuno riesce a tradurre meglio questo pezzo, possa farlo al volo
You can synchronize all the required package building files in /var/abs by running the abs script as root. A working internet connection is also required, of course. Using SVN as the transfer medium allows you to follow different version trees within ABS - this can be configured in /etc/abs/supfile.arch. For example, the default supfile is set to track the core package tree, which is bleeding-edge and the recommended source to follow. You can also follow specific versions. See the comments in the supfiles for more info.
ABS supporta repository multipli, i quali possono essere abilitati o disabilitati in /etc/abs/abs.conf. Di default, abs seguirà solo le modifiche ai repository core ed extra, nient'altro.
Vi accorgerete inoltre della presenza di un file /etc/abs/supfile.extra. Questo vi darà accesso a tutti gli script di compilazione non ufficiali, che non sono stati inclusi nel repository principale ABS. Se non volete usare questo repository, potete anche eliminare questo file, ma generalmente ha più senso limitarsi a editare accuratamente il file abs.conf e disabilitare da li i repository di cui non necessitiamo.
Come compilare i pacchetti
Il processo di compilazione è prevalentemente spiegato nella pagina man di makepkg. Leggetela per avere istruzioni dettagliate su come compilare i vostri pacchetti. Se ciò non vi è d'aiuto, tenete gli occhi aperti per eventuali nuovi tutorial nel Wiki, o chiedete aiuto nei forum o in chat su IRC.
Linee guida per i pacchetti
Quando vi mettete a realizzare un pacchetto per Arch Linux, dovreste aderire alle linee guida descritte qui sotto, specialmente se volete poi distribuire il vostro pacchetto agli altri utenti Arch Linux.
Nome dei pacchetti Il nome di un pacchetto è composto da almeno 3 tag (o parti):
- Il nome del pacchetto deve essere composto da soli caratteri alfanumerici; tutte le lettere devono essere in minuscolo.
- La versione del pacchetto deve essere uguale alla versione del programma rilasciata dall'autore. L'indicazione della versione può includere delle lettere se necessarie (es tempo fa nmap era alla versione 2.54beta32). I tag di versione non devono includere trattini! Sono ammesse solo lettere, numeri e periodi.
- Il contatore del pacchetto è specifico per i pacchetti Arch Linux. Questo, dà la possibilità all'utente di differenziare fra vecchi e nuovi rilasci del pacchetto medesimo. Quando un pacchetto è rilasciato per la prima volta, questo contatore sengerà 1. In seguito, man mano che vengono apportate migliorie, correzioni e ottimizzazioni, il pacchetto potrà essere ricompilato e ri-rilasciato presso il pubblico e il contatore sarà incrementato. Quando una nuova versione del programma verrà rilasciata, verrà fatto un nuovo pacchetto e il contatore verrà resettato a 1. Il tag del contatore del pacchetto segue le stesse limitazioni presenti per il tag della versione dei pacchetti.
Directory
I file di configurazione devono essere posti nella directory /etc. Se c'é piú di un file di configurazione, é di norma usare una sottodirectory in modo da tenere l'area /etc la piú pulita possibile. Usate /etc/{pkgname}/ dove {pkgname} é il nome del vostro pacchetto (od una valida alternativa, per esempio, apache usa /etc/httpd/).
I file del pacchetto devono seguire le seguenti linee generali per le directory:
/etc File di configurazione essenziali per il sistema /usr/bin Binari dell'applicazione /usr/sbin Binari di sistema /usr/lib Librerie /usr/include File di header /usr/lib/{pkg} Moduli, plugin, ecc. /usr/share/man Pagine di man /usr/share/{pkg} Dati delle applicazioni /etc/{pkg} File di configurazione per {pkg} /opt I pacchetti che non rientrano chiaramente nel layout del filesystem GNU possono essere posti qui. Se i file di un pacchetto possono essere posti in modo pulito nelle directory di cui sopra, allora quello é il loro posto. Se ci sono altre directory di alto livello che non rientrano, allora dovreste usare /opt.
Per esempio, il pacchetto acrobat ha le directory Browser, Reader, and Resource poste allo stesso livello della directory bin. Questo non rientra in un layout di filesystem GNU normale, quindi mettiamo tutti i file in una sottodirectory di /opt.
Chiaro?
I compiti di makepkg
Quando usate makepkg per compilare un pacchetto per voi, esegue le seguenti operazioni in automatico:
- Controlla che le dipendenze siano installate
- Scarica i file sorgente dai server
- Decomprime i file sorgente
- Applica ogni patch necessaria, se specificato nello script PKGBUILD
- Compila il software e lo installa in fake root
- Rimuove /usr/doc, /usr/info, /usr/share/doc, e /usr/share/info dal pacchetto
- Rimuove i simboli dai binari
- Rimuove i simboli di debug dalle librerie
- Genera il meta file del pacchetto che é incluso in ogni pacchetto
- Comprime il fake root nel file pacchetto
- Salva il file pacchetto nella directory di destinazione configurata (cwd di default)
Altro
Non introducete nuove variabili nei vostri script build del PKGBUILD, a meno che il pacchetto non sia compilabile senza, dato che queste potrebbero confliggere con le variabili usate in makepkg. Se é strettamente necessaria una nuova variabile, inserite come prefisso della variabile un underscore.
Evitate di usare /usr/libexec/ per qualunque cosa. Usate /usr/lib/{pkgname} al suo posto.
Il campo "Packager" dal meta file del pacchetto può essere personalizzato dal creatore del pacchetto modificando l'appropriata opzione nel file /etc/makepkg.conf, od altrimenti esportando la variabile d'ambiente PACKAGER prima di compilare i pacchetti con makepkg:
export PACKAGER="John Doe <vostra.email>"
Contribuire con un pacchetto
Se voleste contribuire con dei pacchetti, date uno sguardo all'Arch User Repository e alle sue linee guida. I nuovi pacchetti devono essere presentati su AUR.
Se state contribuendo con un pacchetto, dovete compiere le seguenti operazioni:
- Aggiungete una linea di commento al vostro file PKGBUILD che segua questo formato:
Contributor: Your Name <your.email>
- Verificate le dipendenze del pacchetto (ovvero, date il comando ldd sugli eseguibili dinamici, controllate gli strumenti richiesti dagli script, ecc.). E' anche una buona idea usare l'utility namcap, scritta da Jason Chu jason@archlinux.org, per analizzare la sanità del vostro pacchetto. namcap vi informerà su permessi mal impostati, dipendenze mancanti, dipendenze non necessarie e altri errori comuni. Potete installare il pacchetto namcap con pacman, come usuale.
- Tutti i pacchetti sono compressi in un file tar contenente una directory con il pacchetto appena compilato, il PKGBUILD, la lista dei file e eventuali file addizionali (patch, install, ...). Il nome dell'archivio dovrebbe contenere almeno il nome del pacchetto.
- Leggete gli appositi documenti riguardanti AUR e l'ultima versione delle linee guida per i pacchetti sull'Homepage di AUR.
Domande Frequenti (Frequently Asked Questions)
Le FAQs qui elencate coprono solo alcuni dei problemi che si possono presentare impedendovi di far partire o installare un sistema Arch Linux iniziale. Se avete ulteriori domande relative all'utilizzo del sistema, al setup del server grafico X11, ecc ecc o su come configurare il vostro hardware, per favore fate una ricerca nel wiki. Se pensate di avere una domanda relativa all'installazione, e che qui non è contemplata, riferite questa domanda all'autore di questo documento il cui indirizzo può essere trovato all'inizio di questo documento.
Durante l'installazione dei pacchetti, pacman fallisce nel risolvere le dipendenze del pacchetto A perchè il pacchetto B non è nel set di pacchetti
A meno che qualcosa sia realmente fallato, e quindi sia un difetto riportato da più persone, avete probabilmente dimenticato di montare appropriatamente le partizioni d'installazione. Questo porta Pacman a decomprimere il database dei pacchetti nel ramdisk iniziale, che ha la caratteristica di esaurire in fretta lo spazio disponibile, conducendo infine a errori di questo tipo.
Assicuratevi di aver selezionato il pulsante DONE e non il pulsante CANCEL offertovi dal menu Filesystem Mountpoints per confermare le vostre scelte. Questo errore non dovrebbe capitare se utilizzate la funzionalità di Auto-Preparazione dell'hard disk; se però vi capita anche in questo caso, segnalate per favore questo problema come se fosse un bug.
Come posso installare pacchetti dal cd di installazione con pacman --sync (cosicchè esso risolva le dipendenze per me)?
Se preferite installare dei pacchetti da CD invece che scaricarli da Internet, allora fate il mount del CD di installazione da qualche parte (es. /mnt/cd) e aggiungete poi questa riga al file /etc/pacman.conf appena sotto la linea [core]:
Server = file:///mnt/cd
Ovviamente sostituite a /mnt/cd con il punto di mount da voi scelto. Usate poi pacman --sync come fareste normalmente, così facendo verrà scandagliato innanzitutto il CD per recuperare eventuali pacchetti.
Come posso creare partizioni di swap multiple durante l'installazione?
Ovviamente non potrete utilizzare l'opzione automatica di partizionamento se volete creare partizioni di swap multiple. Create invece le partizioni manualmente, creando quante partizioni swap desiderate. Continuate poi normalmente il processo di perparazione del disco, ignorando il fatto che la procedura vi chiederà solo una volta quale partizione usare per la swap. Arrivati al punto di dover editare i file di configurazione, potrete procedere ad editare il file /etc/fstab e includere li dentro tante righe quante saranno le vostre partizioni swap, semplicemente copiando l'unica riga per la swap generata automaticamente, e adattandola alle ulteriori swap presenti. Tutte le swap verranno attivate al successivo riavvio, quando il processo di init eseguirà il comando swapon -a. Assicuratevi ovviamente di aver eseguito mkswap su tutte le vostre partizioni swap, o altrimenti il sistema si lamenterà non poco al primo riavvio..
Se, per qualsiasi malsana ragione, non potete aspettare il riavvio per avere le partizioni swap attive, potete eseguire manualmente swapon <partizione> su tutte le partizioni su cui avrete eseguito precedentemente il comando mkswap. Continuate poi normalmente il processo di installazione.
Nel caso vogliate veramente creare partizioni di swap multiple, ricordatevi solo che un kernel che necessita di utilizzare memoria swap, in genere indica solo che avrebbe bisogno di più memoria RAM, piuttosto che più spazio swap... Nutrite il vostro pinguino in maniera corretta. Grazie
Come posso riconfigurare LILO dal sistema di ripristino?
As a first step you simply boot from the Arch Install CD or disks. If your partitions are intact and don't need checking, you can try choosing one of the recovery boot options according to your partition layout, or fiddle with the GRUB boot manager settings on your own to get your existing system to boot properly. That will boot directly into your system, and you can skip all but the last step of actually reconfiguring and running LILO.
If you cannot boot your old root directly, boot from the CD as if you were going to start an installation. Once you're in a shell, you mount the root partition of your harddisk into the /mnt directory, for example like this:
mount /dev/hda3 /mnt
Then you mount any other partitions to their respective mount points within that root of yours, for example a /boot partition:
mount /dev/hda1 /mnt/boot
Now you need to mount a /dev tree in the /mnt area, where LILO will be able to find it:
/mnt/bin/mount --bind /dev /mnt/dev
Once everything is mounted, make this /mnt directory your new root with the chroot /mnt command. This will start a new shell and drop you into the /mnt directory, which will be considered your / from then on.
Now you can edit /etc/lilo.conf to your liking and run lilo to fix anything that needs fixing. Simply type exit when you want to break out of this root again, back into the original file tree. You can now reboot and test your changes.
Non riesco a connettermi alla mia linuxbox via ssh!
La configurazione di default rifiuta automaticamente qualsiasi connessione in entrata, non limitandosi alle sole connessioni ssh. Modificate il vostro /etc/hosts.allow e aggiungete la riga:
sshd:all
per abilitare tutte le connessioni ssh in entrata.
Come posso caricare i moduli durante il boot?
Se volete caricare incondizionatamente un modulo senza legarlo all'accesso ad un device particolare, aggiungete il nome del suddetto nell'array MODULES del vostro /etc/rc.conf. Per un caricamento "on demand" all'accesso di un particolare device, aggiungetelo come fate abitualmente con i comandi alias e optioncommands nel vostro /etc/modprobe.conf, nei rari casi in cui gli automatismi impiegati da udev non lo facciano già. Per passare delle opzioni ai moduli caricati attraverso l'array MODULES, aggiungete le necessarie righe di opzioni al file /etc/modprobe.conf
Il kernel si rifiuta di partire a causa di un "lost interrupt"
Il kernel si rifiuta di partire, bloccandosi al messaggio:
IRQ probe failed for hda hda lost interrupt
Questo errore o uno simile capita a causa di alcuni controller degli HD con i kernel 2.6.x. Per aggirare il problema, provate a passare l'opzione acpi=off al kernel per il boot.
Ottengo un errore di "access denied" se tento di ascoltare della musica o se eseguo un DVD
Aggiungete il vostro utente ai gruppi optical e audio (nell'esempio, usiamo l'utente johndoe):
gpasswd -a johndoe optical gpasswd -a johndoe audio
Fate il logout, poi loggatevi di nuovo cosicchè le modifiche ai gruppi abbiano effetto, dopodichè i permessi di accesso alle periferiche non dovrebbero più costituire un problema.
Se avete un lettore DVD, potreste voler creare un link simbolico /dev/dvd verso il vostro vero device DVD. Solitamente, udev fa questo automaticamente per voi, potreste però voler creare dei link similari..
Per esempio, se il vostro lettore DVD è accessibile da /dev/sdc, potete fare così da root:
cat >>/etc/udev/rules.d/00.rules <<EOF > KERNEL="sdc", NAME="sdc", SYMLINK="dvd" > EOF /etc/start_udev mount /dev/pts mount /dev/shm