Maintain our Gentoo: differenze tra le versioni
m (IlarioGelmetti ha spostato la pagina Mantain our Gentoo a Maintain our Gentoo: Maintain non mantain) |
|||
(5 versioni intermedie di 4 utenti non mostrate) | |||
Riga 11: | Riga 11: | ||
*net-analyzer/iptraf-ng visualizza le connessioni attive e diversi tipi di statistiche sul traffico di rete | *net-analyzer/iptraf-ng visualizza le connessioni attive e diversi tipi di statistiche sul traffico di rete | ||
*sys-apps/mlocate indicizza i file e permette di cercarli rapidamente sull'indice | *sys-apps/mlocate indicizza i file e permette di cercarli rapidamente sull'indice | ||
==Astuzie Varie== | ==Astuzie Varie== | ||
Una cosa molto comoda sono gli alias ovvero l'assegnare ad una parola un comando usato di frequente che magari ha molti parametri o che è difficile da ricordare. Per esempio per eseguire un update globale del sisteme: | Una cosa molto comoda sono gli alias ovvero l'assegnare ad una parola un comando usato di frequente che magari ha molti parametri o che è difficile da ricordare. Per esempio per eseguire un update globale del sisteme: | ||
alias fullupdate='emerge - | alias fullupdate='emerge -vq --sync && layman -S && emerge -avq --complete-graph --update --deep --with-bdeps=y --newuse world \ | ||
&& python-updater -- --verbose --quiet' | |||
Se la macchina venisse riavviata mentre state facendo un aggiornamento, i seguenti comandi possono essere utili per capire a che punto fosse arrivato: | |||
qlop -l | |||
per vedere quali aggiornamenti ha fatto, | |||
equery changes <pacchetto> | |||
per i changelog se te li sei persi, | |||
equery check <pacchetto> | |||
se vuoi controllare l'integrità dei file, | |||
eread | |||
per la lista dei messaggi dei pacchetti, dipende da come è configurato, o ti da un file di tutto insieme o un log per pacchetto. | |||
Volete evitare di ripartire con la scelta dei moduli da includere nel kernel ogni volta che lo aggiornate? | Volete evitare di ripartire con la scelta dei moduli da includere nel kernel ogni volta che lo aggiornate? | ||
Riga 44: | Riga 64: | ||
* tutte le righe che si riferiscono a "kernsrc" siano commentate | * tutte le righe che si riferiscono a "kernsrc" siano commentate | ||
* tutte le righe che si riferiscono a console_all non scrivano su /dev/tty12 (che non esiste) ma magari su un altro file. /var/log/messages è una buona scelta in quanto è un file di log generico, ed è già gestito da logrotate. | * tutte le righe che si riferiscono a console_all non scrivano su /dev/tty12 (che non esiste) ma magari su un altro file. /var/log/messages è una buona scelta in quanto è un file di log generico, ed è già gestito da logrotate. | ||
== Aggiornare il sistema == | |||
La maggior parte dei server utilizzati da eigenLab sono server recuperati da [[trashware]] ed utilizzano Gentoo/Linux come sistema operativo. Gentoo non è una distribuzione Linux pensata per essere semplice da usare (come potrebbero essere Ubuntu, Mint e OpenSuse) bensì è una distribuzione pensata per essere estremamente personalizzabile e per sfruttare appieno tutte le potenzialità dell'hardware in uso. L'installazione di Gentoo non è banale ma lo diventa seguendo una lunga [http://www.gentoo.org/doc/en/handbook/ guida]. | |||
Qui riportiamo solo i comandi per aggiornare un sistema Gentoo, escludendo il caso in cui si aggiorni anche il kernel: | |||
emerge --sync && layman -S; | |||
emerge -avq --update --deep --newuse --changed-use --complete-graph=y --with-bdeps=y --keep-going world; | |||
emerge @module-rebuild; | |||
revdep-rebuild -- -vq; | |||
emerge --depclean; | |||
python-updater -- -vq; | |||
perl-cleaner --reallyall -- -vq; | |||
dispatch-conf; | |||
Per semplificare l'installazione di alcuni pacchetti che frequentemente servono sui nostri server abbiamo creato [https://gitorious.org/eigennet/eigenlay un overlay] per Gentoo. |
Versione attuale delle 10:58, 20 gen 2014
Ed ecco la pagina più attesa: tips & tricks per gestire i nostri server, dagli accorgimenti quasi stupidi alle procedure per salvare tempo ed evitare di commettere stupidaggini.
Sui nostri server gira Gentoo: sistema ottimizzato per la macchina e quindi più performante. Di solito sui nostri server usiamo questi pacchetti:
- virtual/ssh client e server SSH per la gestione remota delle macchine
- net-misc/babeld::eigenlay routing a layer 3
- net-misc/batman-adv::eigenlay routing a layer 2
- app-misc/tmux terminal multiplexer
- net-analyzer/jnettop visualizza le connessioni attive ordinandole secondo vari parametri tra cui la banda usata
- net-analyzer/iptraf-ng visualizza le connessioni attive e diversi tipi di statistiche sul traffico di rete
- sys-apps/mlocate indicizza i file e permette di cercarli rapidamente sull'indice
Astuzie Varie
Una cosa molto comoda sono gli alias ovvero l'assegnare ad una parola un comando usato di frequente che magari ha molti parametri o che è difficile da ricordare. Per esempio per eseguire un update globale del sisteme:
alias fullupdate='emerge -vq --sync && layman -S && emerge -avq --complete-graph --update --deep --with-bdeps=y --newuse world \ && python-updater -- --verbose --quiet'
Se la macchina venisse riavviata mentre state facendo un aggiornamento, i seguenti comandi possono essere utili per capire a che punto fosse arrivato:
qlop -l
per vedere quali aggiornamenti ha fatto,
equery changes <pacchetto>
per i changelog se te li sei persi,
equery check <pacchetto>
se vuoi controllare l'integrità dei file,
eread
per la lista dei messaggi dei pacchetti, dipende da come è configurato, o ti da un file di tutto insieme o un log per pacchetto.
Volete evitare di ripartire con la scelta dei moduli da includere nel kernel ogni volta che lo aggiornate?
Supponiamo di avere kernel 1 e kernel 2, ovviamente kernel 2 è il più recente e deve essere configurato.
Da shell:
eselect kernel list eselect kernel set 2 cd /usr/src/linux cp ../kernel1/.config . make oldconfig
Quest'ultimo comando ci dirà cosa è cambiato dal vecchio kernel al nuovo senza dover controllare ogni singola voce.
Per evitare di perdere le configurazioni del kernel prima di modificare una config copiala in /usr/src
cp /usr/src/kernel.x/.config /usr/src/make-old-config
Così se qualcosa va storto oppure un
emerge --depclean
elimina i sorgenti si può fixare velocemente
Per macchine LXC
Logs
syslog-ng ha una configurazione di default che manda i log a una console fisica inesistente. Per sistemare questo bisogna editare
/etc/syslog-ng/syslog-ng.conf
in modo che:
- tutte le righe che si riferiscono a "kernsrc" siano commentate
- tutte le righe che si riferiscono a console_all non scrivano su /dev/tty12 (che non esiste) ma magari su un altro file. /var/log/messages è una buona scelta in quanto è un file di log generico, ed è già gestito da logrotate.
Aggiornare il sistema
La maggior parte dei server utilizzati da eigenLab sono server recuperati da trashware ed utilizzano Gentoo/Linux come sistema operativo. Gentoo non è una distribuzione Linux pensata per essere semplice da usare (come potrebbero essere Ubuntu, Mint e OpenSuse) bensì è una distribuzione pensata per essere estremamente personalizzabile e per sfruttare appieno tutte le potenzialità dell'hardware in uso. L'installazione di Gentoo non è banale ma lo diventa seguendo una lunga guida.
Qui riportiamo solo i comandi per aggiornare un sistema Gentoo, escludendo il caso in cui si aggiorni anche il kernel:
emerge --sync && layman -S; emerge -avq --update --deep --newuse --changed-use --complete-graph=y --with-bdeps=y --keep-going world; emerge @module-rebuild; revdep-rebuild -- -vq; emerge --depclean; python-updater -- -vq; perl-cleaner --reallyall -- -vq; dispatch-conf;
Per semplificare l'installazione di alcuni pacchetti che frequentemente servono sui nostri server abbiamo creato un overlay per Gentoo.