domenica 27 novembre 2011

Configurazione di apt-proxy

Fui incuriosito tempo fa`, in merito alla realizzazione di un mirror per le distribuzioni, leggendo che, per un'utilizzo "casereccio", fosse consigliato l'uso di un proxy per i pacchetti.

Recuperate e lette le dovute guide, howto e quant'altro, c'ho provato (e penso di esserci riuscito).

Ho optato per apt-proxy, forse un poco 'brigosa' da configurare e capire, ma mi e` sembrata la miglior soluzione.

Ho cominciato seguendo questa guida http://guide.debianizzati.org/index.php/Apt-Proxy:_un_proxy_per_i_pacchetti_Debian, che mi ha un po` confuso le idee nell'ultima parte, dove e` spiegato, ma proprio non avevo capito.

Poi ho trovato questa https://help.ubuntu.com/community/AptProxy, che mi ha fatto riflettere sugli errori che avevo commesso.

Mentre cercavo di sistemare le configurazioni dei client, ho anche abbozzato svariate configurazioni del file /etc/apt/sources.list, tramite il generatore online http://debgen.simplylinux.ch/generate.php

L'errore che mi si presentava era dato dal fatto che cercavo di scaricare una versione errata dal mirror che non l'aveva, per esempio, per intenderci, cercavo di scaricare da "multimedia" la versione (sempre per esempio), "stable/updates", sbagliavo anche indicando l'errata directory.

Per (cercare di) spiegarmi meglio, nel "source.list" del client si deve indicare:
deb http://<host apt proxy>:<porta>/<identificazione assegnata> <tipi (per esempio: stable main contrib non-free)>
cioe`, se il file di configurazione nel server /etc/apt-proxy/apt-proxy-v2.conf contiene le indicazioni
[multimedia]
;; Debian Multimedia
backends = http://www.debian-multimedia.org
min_refresh_delay = 1d
la corretta riga da utilizzare lato client nel file /etc/apt/source.list e`
deb http://<host apt proxy>:<porta>/multimedia stable main non-free

Tutto chiaro ?

mercoledì 23 novembre 2011

Virtualizzazione PC Portatile

Cerchero` di riassumere qui i passi effettuati per questo spostamento del sistema operativo "Ubuntu 10.04 LTS" da pc portatile a Virtualizzato KVM.
Al solito, sicuramente dimentichero` qualche passaggio e/o qualche comando dato, regolatevi di conseguenza.

Impresa lunga e laboriosa, ho fatto numerosi tentativi e ho scritto un block notes intero (di cavolate pressoche` inutili).
Per prima cosa mi sono 'informato' su come fare, leggendo svariate guide, howto e manuali in giro per la rete, troverete qualche riferimento in fondo a questo post.

Indicativamente il portatile ha/aveva queste caratteristiche:
  • Monitor 16/9
  • RAM 2GB
  • HDD 60GB (partizione ubuntu)
  • Scheda rete
  • ecc.ecc.

La macchina virtuale che ho predisposto ha:
  • Monitor virtuale 4/3
  • RAM 1GB
  • HDD 55GB (circa)
  • Rete
  • ecc.ecc.

Il primo problema da risolvere e` stato il ridimensionamento dello spazio, che mi ha fatto scartare tutte le distribuzioni "gia` pronte", partimage, clonezilla, g4u e g4l, altre non ne conosco.
Questo problema mi ha anche fatto scartare l'uso del comando "dd".
Ho fatto un tentativo "strano" con un disco esterno usb, che poteva anche funzionare, ma resomi conto della difficolta` ho desistito ed optato per un'altra soluzione.

Copia del sistema
Ho avviato entambi i sistemi, portatile e virtuale con la "Knoppix", ho messo in esecuzione sulla virtuale il server "ssh"
/etc/init.d/ssh start
su entrambe ho impostato la password di root
su -
passwd
dopo aver montato i rispettivi dischi, portatile
mount /dev/sda2 /media/sda2
e virtualizzato
mount /dev/sda1 /media/sda1
nel portatile mi sono spostato nella directory del disco montato
cd /media/sda2
e da qui ho eseguito una copia di tutti i files sul disco della virtualizzata
tar cf -. | ssh <hostdestinazione> "(cd /media/sda1; tar xvf -)"
come host di destinazione ho messo l'indirizzo ip per ovvi motivi, vorrei far notare che tutti i comandi sono stati eseguiti con permessi/diritti del superutente "root", mi raccomando.

Manca ancora una cosa ..

Ripristino del bootloader
Ho riavviato il sistema virtuale col disco originale Ubuntu 10.04 selezionando l'uso del livecd (no installazione), mi sono chroot-ato
mount /dev/sda1 /mnt
mount -t proc none /mnt/proc
mount -o bind /dev /mnt/dev
chroot /mnt /bin/bash
ho sistemato i files
/etc/fstab
/etc/mtab
e non so quali altri :(
ho eliminato tutto il contenuto di /boot/grub, sottodirectory comprese e ho proseguito con i comandi
grub-install /dev/sda
update-grub
devo pero` aprire una parentesi, prima di fare questo avevo gia` fatto svariati tentativi perche` c'era un'errore nei files "fstab" e "mtab" che mi precludevano la corretta installazione di grub, avevo infatti gia` provato a configurare cosi`
grub
root (hd0,0)
setup (hd0)
quit
tenetelo presente, perche` potrebbe essere che "servano".
:D

Tutto qui, semplice vero ?
Be`, non tanto quando lo esegui per la prima volta, o meglio, ci si ritrova davanti problemi non previsti o valutati inizialmente, che fanno perdere tempo nella ricerca (o nel 'pensamento') delle soluzioni corrette, ma effettivamente e` tutto abbastanza semplice.

Reboot
Tutto liscio fino al server X, qua ha rilevato una configurazione errata, ovviamente, e` cambiato il monitor, ma e` stato sufficiente rispondere di "rifare" la configurazione e riavviare il server, adesso non ricordo bene le esatte domande, ma una volta riconfigurato vi ripresentera` di nuovo la richiesta, per riavviare cliccate su "canc" o "annulla" (non ricordo), verrete riportati alla maschera precedente dove e` inclusa la voce per il riavvio del server X.

Riferimenti:
man tar
man ssh
gunzip -c /usr/share/doc/HOWTO/en-txt/Tips-HOWTO.gz | less
http://www.knoppix.org/
http://ubuntuforums.org/showthread.php?t=224351
http://www.edmondweblog.com/index.php/2011/09/21/update-grub-da-chroot/
http://sourceforge.net/apps/mediawiki/bootinfoscript/index.php?title=Boot_Problems:Windows_Writes_To_MBR
http://ubuntuforums.org/showthread.php?t=1014708&highlight=howto+bootloader

martedì 15 novembre 2011

Backuppc, correzione configurazione rsync

Corretto precedente post, la configurazione "rsync" conteneva un'errore, qui di seguito la nuova 'foto' che ha sostituito la precedente:

venerdì 11 novembre 2011

Backuppc su Debian

Volevo aggiungere la correzione di un'errore sul backup di localhost con tar nel wiki ufficiale, ma oltre all'ostacolo inglese, non ho capito dove e come ci si debba registrare per avere l'accesso in scrittura/modifica.
Quindi, ho pensato di scrivere un post sulla prima installazione e configurazione di questo software sperando di essere di aiuto a qualcuno.
E magari, quel qualcuno riesca ad aggiornare quel wiki, che in questo istante manco e` raggiungibile.

Tutto e` stato installato su una macchina virtualizzata con "kvm", il sistema operativo scelto e` "Debian Lenny", questo perche` non sono riuscito con "Squeeze", probabilmente perche` la macchina che lo ospita e` "Lenny", ma va bene cosi`, l'importante e` che funzioni (e comunque so`, perche` ho un'altra installazione, che funziona anche su "Squeeze/Squeeze").

Durante l'installazione del sistema operativo (dicevo) ho scelto di partizionare utilizzando LVM e scegliendo di installare tutto su un'unica partizione, in effetti, sulla macchina virtuale si tratta di un disco fisso fisco vero e proprio, quindi utilizzando LVM dovrei avere in fututo tutte le possibilita` che derivano da questa scelta (ampliare e/o modificare aggiungendo dischi e/o partizioni LVM).

Terminata l'installazione, solo sistema di base, nient'altro, ho effettuato un controllo sull'aggiornamento:
apt-get update
apt-get upgrade
Poi ho continuato installando:
apt-get install backuppc
L'installazione ha chiesto di rispondere a qualche quesito, queste le risposte:
WINS settings from DHCP
apache2
Solo mi e` sfuggita la maschera della password autogenerata dell'utente backuppc dell'interfaccia web, ho provveduto a crearne una nuova col comando:
htpasswd -b /etc/backuppc/htpasswd backuppc NEWPASSWORD
L'installazione sarebbe terminata qui, manca solo una correzione:
vi /etc/dhcp3/dhclient.conf
Abilito e correggo la linea:
send host-name "backuppc";
Riavvio, perche` il restart della rete non mi funziona mai :( e passo alla configurazione.

Vado col browser all'indirizzo "backuppc/backuppc", viene chiesto username/password, digito, entro e modifico subito la configurazione base, la voce "Edit Config" nel menu a sinistra.
Nelle figure che seguono, le modifiche alle configurazioni.



Qui vorrei aprire una parentesi, in un caso sono riuscito a (ri)configurare "exim4" come SMTP, nell'altro ho dovuto impostarlo come local delivery only, ma e` un'altra storia ...


Bene, la "base" e` impostata, passiamo a "localhost", la mcchina di default gia` inserita.
Per questa, la configurazione di base non funziona, l'errore e`:
Running: /usr/bin/env LC_ALL=C /bin/tar -c -v -f - -C /etc --totals .
full backup started for directory /etc
Xfer PIDs are now 17073,17072
/bin/tar: ./shadow: Cannot open: Permission denied
/bin/tar: ./group-: Cannot open: Permission denied
[ skipped 78 lines ]
/bin/tar: ./X11/Xwrapper.config: Cannot open: Permission denied
/bin/tar: ./gshadow-: Cannot open: Permission denied
/bin/tar: ./ssh/ssh_host_rsa_key: Cannot open: Permission denied
/bin/tar: ./ssh/ssh_host_dsa_key: Cannot open: Permission denied
/bin/tar: ./.pwd.lock: Cannot open: Permission denied
[ skipped 62 lines ]
/bin/tar: ./gshadow: Cannot open: Permission denied
/bin/tar: ./apt/trusted.gpg: Cannot open: Permission denied
/bin/tar: ./apt/trusted.gpg~: Cannot open: Permission denied
/bin/tar: ./apt/trustdb.gpg: Cannot open: Permission denied
/bin/tar: ./apt/secring.gpg: Cannot open: Permission denied
[ skipped 219 lines ]
/bin/tar: ./exim4/passwd.client: Cannot open: Permission denied
/bin/tar: ./security/opasswd: Cannot open: Permission denied
[ skipped 127 lines ]
/bin/tar: ./shadow-: Cannot open: Permission denied
[ skipped 268 lines ]
/bin/tar: ./at.deny: Cannot open: Permission denied
[ skipped 76 lines ]
/bin/tar: ./passwd-: Cannot open: Permission denied
[ skipped 188 lines ]
/bin/tar: ./ssl/private: Cannot open: Permission denied
[ skipped 1 lines ]
/bin/tar: Exiting with failure status due to previous errors
Tar exited with error 512 () status
Per ovviare a questo problema di permessi ho dovuto modificare la variabile
$Conf{TarClientCmd}
cosi`
$sshPath -q -x -n -l root $host /usr/bin/env LC_ALL=C $tarPath -c -v -f - -C $shareName --totals
vedi immagine seguente

A questo punto sono andato a configurare le chiavi ssh, da linea di comando nel computer "backuppc":
apt-get install openssh-server
su backuppc
cd
ssh-keygen -t rsa
ssh-copy-id root@localhost
Finito, il primo backup ora funziona.

Sarebbe finita qui, senonche` per gli altri pc da "backup-pare" ho avuto altri piccoli disguidi, per esempio uno che non risponde al ping:

Un'altro che non aveva "rsync", il default che utilizzo (vedi configurazione di base in un'immagine fra le precedenti):
apt-get install rsync

Riferimenti:
backuppc.sourceforge.net
http://backuppc.sourceforge.net/faq/BackupPC.html#_conf_tarclientcmd_
http://backuppc.sourceforge.net/faq/ssh.html#how_do_i_setup_openssh
http://www.mail-archive.com/backuppc-users@lists.sourceforge.net/msg09026.html