Windows 2003: Espandere disco di sistema

Come ben saprete Windows 2003 a differenza del 2008 non permette di espandere il disco di sistema a caldo ma c’è sempre o quasi una soluzione a tutto..

Dell ha questo simpatico tool chiamato extpart: http://www.dell.com/support/drivers/us/en/19/DriverDetails?driverId=R64398 è un zip autoestraente…su un 64 bit va estratto a mano che se no da errore

Questo programma serve per evitare di spegnere la macchina, agganciare il disco a un’altra VM, espanderlo, riagganciare il disco alla vm corretta e avviarla..si risparmia un sacco di tempo!

Come funziona? Facile..

– Espandere il disco in VMware.
– Estrarre ed eseguire extpart.
– Chiede il volume nel nostro caso C: (i due punti li vuole)
– Poi chiede di quanto espanderlo in MB in questo caso 5000 (5GB)
– Fine

Peace and love!

Linux: Montare un disco di un Raid1 Software

L’altro giorno in azienda ci è scoppiato il processore del nostro firewall secondario per cui da un “PC” un po’ carrozzato siamo passati a un serverino decente con almeno il raid hw, ma avevo bisogno di alcune configurazioni che si trovavano sul vecchio disco.

Il problema è sorto quando ho collegato il disco, un normale SATA, a un altro pc e facendolo bootare con una Debian Live Rescue, ovviamente il mount non me lo faceva fare perchè il disco faceva parte di un RAID1, questo l’errore:

root@debian:~# mount /dev/sda1 /mnt/
mount: unknown filesystem type 'linux_raid_member'

ovviamente ci ho ragionato un po’ e ho provato a creare un array md0 con un solo disco per provare a montarlo:

root@debian:~# mdadm -A -R /dev/sda1 /dev/md0

Vediamo nello specifico cosa significano le opzioni usate:
-A : Assemble a pre-existing array, per cui crea l’array con un disco già configurato, era già un raid1
-R : Insist that mdadm run the array […], per cui forza l’avvio dell’array senza fare ulteriori domande, di solito chiede delle conferme se trova componenti di altri array attivi.

Ora dato che non vi sono problemi di creazione, possiamo montare l’array:

root@debian:~# mount /dev/md0 /mnt

Se non vi ritrovate errori in fase di mount potete leggere tranquillamente il contenuto del disco.

Alla prossima!

Red Hat vs Debian: Come trasferire la lista dei pacchetti e installarli

Qualche tempo fa mi sono imbattuto in un problema che con Debian ho sempre risolto in una manciata di secondi con Red Hat ci ho dovuto pensare su un po’…

In Debian mi capita spesso di fare due macchine identiche per un cluster in HA, e dopo che ne ho configurata una preparo l’altra e gli passo la lista dei pacchetti e li installo, come?

Ecco qua, dalla prima Debian estrapolo la lista dei pacchetti con “dpkg” e la metto su un file:

root@debian1:~# dpkg –get-selections > debian1-pkgs

poi bisogna copiare la lista sulla macchina secondaria, solitamente uso scp:

root@debian1:~# scp debian1-pkgs root@debian2:/root/.

ora che abbiamo la lista sulla secondaria, la carichiamo sempre usando “dpkg”:

root@debian2:~# dpkg –set-selections < debian1-pkgs

adesso non ci resta che fargli installare i pacchetti usando “apt”:

root@debian2:~# apt-get dselect-upgrade

Et voilà! Le jeux son fait!

E con Reh Hat?!?

per prima cosa recuperiamo tutti i pacchetti installati su un file, usando “yum” (il gestore dei pacchetto di RedHat et simili), e copiamolo sull’altro nodo:

[root@redhat1 ~]# yum list installed > redhat1-pkg
[root@redhat1 ~]# scp redhat1-pkg root@redhat2:/root/.

ora dovremmo dire a “yum” di installare la lista, ma sfortunatamente ha delle diciture in più che non ci servono, questo che segue è l’esempio di come si presenta il file:

Loaded plugins: rhnplugin, security
Installed Packages
Deployment_Guide-en-US.noarch             5.2-11                       installed
GConf2.i386                               2.14.0-9.el5                 installed
GConf2.x86_64                             2.14.0-9.el5                 installed
GConf2-devel.x86_64                       2.14.0-9.el5                 installed
MAKEDEV.x86_64                            3.23-1.2                     installed
NetworkManager.i386                       1:0.7.0-10.el5_5.2           installed
NetworkManager.x86_64                     1:0.7.0-10.el5_5.2           installed
NetworkManager-glib.i386                  1:0.7.0-10.el5_5.2           installed
NetworkManager-glib.x86_64                1:0.7.0-10.el5_5.2           installed
NetworkManager-gnome.x86_64               1:0.7.0-10.el5_5.2           installed

puliamo tutto con il comando “cut” e  prendiamo la prima parte di ogni riga, per cui il solo nome del pacchetto, e lo diamo in pasto a “yum” direttamente

[root@phbe2pr ~]# yum -y install $(cut -f 1 -d” ” < redhat1-pkg)

Ora inizierà il download e l’installazione di tutto.

Spero che vi sia stato utile :-)

Linux: routing fra piu’ provider (multiple gateway)

Non è cosa da tutti i giorni ma è possibile che un cliente abbia 2 o piu’ connessioni internet e le voglia sfruttare contemporaneamente su una stessa macchina, come fare?

Ecco qua, farò un esempio con 2 connessioni una HDSL (eth0) e una WIFI (eth1).

Questa sarà la configurazione delle interfaccie, ovviamente senza gateway (Es: /etc/network/interfaces di Debian).

auto eth0
iface eth0 inet static
address 1.1.1.2
netmask 255.255.255.0
broadcast 1.1.1.255
#gateway 1.1.1.1
network 1.1.1.0

auto eth1
iface eth1 inet static
address 2.2.2.2
netmask 255.255.255.0
broadcast 2.2.2.255
#gateway 2.2.2.1
network 2.2.2.0

Per prima cosa nel file /etc/iproute2/rt_tables bisogna aggiungere 2 tabelle di routing:

200     hdsl
201     wifi

Ora che abbiamo le due nuove tabelle non ci resta che popolarle, passo passo i comandi necessari.

Aggiungiamo le rotte per le nostre reti:

ip route add 1.1.1.0/24 dev eth0 src 1.1.1.2 table hdsl
ip route add default via 1.1.1.1 table hdsl
ip route add 2.2.2.0/24 dev eth1 src 2.2.2.2 table wifi
ip route add default via 2.2.2.1 table wifi

Aggiungiamo le regole di utilizzo:

ip rule add from 1.1.1.2 table hdsl
ip rule add from 2.2.2.2 table wifi

Aggiungiamo la loopback:

ip route add 127.0.0.0/8 dev lo   table hdsl
ip route add 127.0.0.0/8 dev lo   table wifi

Ora possiamo aggiungere la rotta di default del sistema:

ip route add default scope global nexthop via 1.1.1.1 dev eth0 weight 1 nexthop via 2.2.2.1 dev eth1 weight 1

Il weight è stato messo volutamente a 1 in modo tale che ci sia un load balancing fra i due provider, potete variare il peso di uno o dell’altro per privilegiare una linea o l’altra.

N.B. Al riavvio del sistema questi comandi spariscono, per cui vi consiglio di metterli in un file che viene eseguito all’avvio, tipo rc.local

Spero di essere stato utile a qualcuno.

A presto!

Cisco: Collage

Qualche settimana fa, in azienda, mi sono trovato in una situazione quasi critica, ci si è rotto il router adsl della linea di backup/navigazione (i servizi primari sono su un’altra linea) e il router di backup che avevamo è finito nelle mani di un cliente per il medesimo problema. A ‘sto punto ravano un po’ in magazzino e trovo un vecchio cisco 801 ma aimè è isdn poi trovo un cisco 827  adsl con un vecchissimo IOS, l’idea è quella di aggiornare il sistema all’utima release ovvero la 12.4 ma qui sorge un’altro problema, poca ram e poca flash.

Cosa fare in casi come questi??

Ho aperto i router 801 e 827 e ho notato che l’801 ha una flash aggiuntiva, la stacco e la metto nell’827 per cui 12(8+4)MB di flash e adesso il problema era la ram guardo un po’ lo slot e penso a quella volta che ho aggiunto la ram su una stampante laser HP, corro nel cimitero delle stampanti ma non trovo nessuna HP, casualmente il mio occhio cade su una vecchia lexmark T610 e vedo che lo slot è identico ma della ram nessuna traccia..sto per andarmene sconfitto quando vedo una T630 con scritto “Non riconosce nessuna scheda di rete ed è senza fusore” ovvero inutillizzabile e noto che nella mainboard c’è lo slot con la ram che tanto desideravo, 32MB!!! Corro in sala sistemisti la monto sul mio router lo accendo e con gran stupore vedo un bellisimo 827 con 12MB di flash e 48MB di ram ora non mi restava che aggiornare l’IOS e modificare la configurazione..peccato che non si sapeva la password di “enable”. Mi precipito si google digito “cisco 827 password recovery” e clicco su “Mi sento fortunato” mi si apre http://www.cisco.com/en/US/products/hw/routers/ps380/products_password_recovery09186a00800942bc.shtml faccio la procedura come descritto riconfiguro il mio router, lo vado a collegare ma la parte ATM sta in shutdown, controllo la conf magari ho lasciato io l’interfaccia in shutdown, ma nulla da fare..la parte ATM è bruciata.

Ho comprato al volo un router AtlantisLand l’ho configurato con l’IP esposto, con quello di PTP ed è stato molto piu’ difficile configurare questo giocattolo che il cisco.

Alla fine della giornata ho rimigrato la navigazione sulla linea di backup.