Aggiornare un server Ubuntu LTS 10.04 dietro a un proxy

Quanto scritto di seguito vale, ovviamente, anche per le ultime release di Debian.

Appunto veloce veloce…

La soluzione più immediata è quella di scrivere questa riga nel nostro bel terminale
export http_proxy="http://nostro.proxy.it:3128" e lanciare il solito apt-get update && apt-get upgrade.
Bene sul momento, ma dovremo rifarlo tutte le volte (o valorizzare la variabile http_proxy per il nostro ambiente, cosa che forse non ci interessa fare). Se invece vogliamo aggiungere la configurazione del proxy per apt al nostro server Ubuntu (continuo a riferirmi alla versione server perché con l’ambiente grafico è tutto più semplice) è sufficiente creare il file proxy all’interno della cartella /etc/apt/apt.conf.d e scriverci dentro la riga seguente: Acquire::http::Proxy "http://nostro.proxy.it:3128";

Installazione automatica di Red Hat (ma anche CentOS o Fedora) con un file kickstart remoto

Kickstart è lo strumento che Red Hat (e tutte le sue derivate di conseguenza) utilizza per automatizzare completamente l’installazione di un nuovo sistema. Avete presente tutte quelle schermate che via via anaconda vi presenta, dove si scelgono (quasi) sempre le stesse opzioni? Bene, con kickstart potete evitarvene un bel po’, se non tutte.

Se avrò voglia e tempo, prima o poi vi parlerò più diffusamente di questo utilissimo strumento.

Qui mi interessa più che altro appuntarmi come lanciare un’installazione automatica da CD/DVD (ma da rete cambierebbe ben poco) usando file di kickstart, pronto e corretto, raggiungibile via rete (in questo caso su un server ftp, ma funzionerebbe lo stesso con nfs o http). Il comando da usare alla prima schermata dopo l’avvio da CD è:
boot: linux ks=ftp://serverftp.dominio.it/filekickstart.ksIn questo caso l’installer cercherà di configurare la rete via DHCP, se non riuscirà a farlo chiederà a voi i parametri. Troppa interattività. Molto meglio, se non si dispone di un server DHCP, passargli tutto quello che gli serve al rigo di prima scrivendo così:
boot: linux ks=ftp://serverftp.dominio.it/filekickstart.ks ksdevice=eth0 ip=0.0.0.3 netmask=255.255.255.0 gateway=0.0.0.1 dns=10.10.10.10A questo punto possiamo quasi dirci soddisfatti e andare a strafarci di caffeina. Tempo 4/5 minuti e il nostro server dovrebbe essere pronto.

Simulare l’installazione di un pacchetto rpm

Può essere utile (in alcuni casi molto utile) simulare l’installazione, o la disinstallazione, di un pacchetto senza realmente portare a termine nessuna delle due operazioni.

Il comando rpm ha un’ opzione dedicata –test che può essere usata come nei due esempi che seguono:

Nel caso ci interessi simulare l’installazione:

rpm -ivh nomepacchetto.rpm --test

Nel caso ci interessi simulare la disinstallazione:

rpm -e nomepacchetto.rpm --test

Scegliere automaticamente il mirror più veloce per yum

Fedora e CentOS usano per distribuire i propri pacchetti una nutrita serie di mirror. Per scaricare sempre dal mirror più veloce si può usare un plugin per yum che si chiama yum-fastestmirror.
Per installarlo è sufficiente aprire un terminale e digitare il comando: yum install yum-fastestmirror Il plugin si occuperà di monitorare i tempi di risposta dei server dove si trovano i pacchetti e cercherà di scaricarli sempre da quello più veloce, senza nessun nostro ulteriore intervento.

Il modo più semplice per sapere su quale distro stiamo lavorando

Ho scoperto casualmente un comando che potrebbe tornare utile in diverse occasioni, il primo esempio che mi viene in mente è uno script che debba comportarsi in maniera diversa su distribuzioni diverse.
Il comando è questo:
lsb_release -is
Il risultato potrà essere ad esempio: Debian, Ubuntu, SUSE LINUX, CentOS ecc. ecc.
Con -i chiediamo l’identificativo per la distribuzione, mentre con il -s abbiamo scelto di avere un output short, senza intestazioni.

Altre opzioni interessanti sono:

  • -r per stampare il numero di release
  • -d che mostra una breve descrizione della distribuzione
  • -a che mostra tutte le informazioni disponibili

Ordinare un elenco di indirizzi ip da riga di comando

Mi è appena capitato di dover ordinare una lista piuttosto lunga di indirizzi ip. Si sa che il sysadmin di suo è fondamentalmente pigro, quindi nessuna voglia di farlo a manina. Dopo aver spulciato le pagine man di sort, ecco il comando che ne è venuto fuori:

sort -t . -k 1,1n -k 2,2n -k 3,3n -k 4,4n lista_di_ip
Una righetta facile facile da ricordare, non trovate? Proviamo a capire un po’ più in dettaglio che cosa fa.

  • Con il -t diciamo che vogliamo usare come separatore dei campi il punto (.)
  • Il -k serve a specificare la chiave di ordinamento, ne specifichiamo più di una in cascata: prima ordiniamo il campo uno fino al primo punto, poi il campo due e via di seguito.
  • -k 1,1n significa appunto dal primo campo (1) al (,) primo campo (1) effettua un ordinamento numerico (n). Lo stesso vale per il resto del comando.

Installare un gruppo di pacchetti con Yum


Yum è il gestore di pacchetti di default delle ultime versioni di Red Hat Enterprise Linux, CentOS e Fedora. In sostanza è l’analogo di apt.

Vediamo come si installa un intero gruppo di pacchetti

1. Elenchiamo i gruppi disponibili
yum grouplist
2. Ok, nel mio elenco c’è un bel gruppo che si chiama “Clustering”, sembra interessante, vediamo un po’ cosa c’è dentro
$ yum groupinfo "Clustering"

Group: Clustering
Description: Clustering Support.
Default Packages:
clustermon
conga-devel
ricci
system-config-cluster
ipvsadm
piranha
cluster-snmp
modcluster
ricci-modcluster
cluster-cim
rgmanager
luci

3. È esattamente quello che cercavo: luci, ricci, piranha e conga… si installa di corsa!
yum groupinstall "Clustering"
4. Mi sono sbagliato, e poi tutte quelle bestie nel case mi spaventano un po’. Ranziamo via tutto
yum groupremove "Clustering"
E ora, per finire, si potrebbe imbastire una bella flame war con i talebani di apt… Uhm.. m’importa sega…