Ciao lista, al corso shell come compito Daniela ci ha chiesto un paio di esempi per impratichirci. Visto che questa sera non porterò il PC, posto i miei in lista così: 1. Magari servono a qualcuno. 2. Troverò qualche anima pia al corso che potrà leggere questo messaggio per discutere i miei esempi. Primo esempio: Devo dire a Backuppc di rileggere la configurazione perchè ho variato a mano i file e non tramite interfaccia web. Il comando sarà: # kill -HUP `ps aux | grep "BackupPC \-d" | awk '{ print $2 }'` Secondo esempio: Questo un po' più complicato, uno script non perfetto ma perfezionabile. Voglio migrare tutte le vm da un nodo proxmox ad un'altro, con l'opzione che mi permetta di riportare indietro le vm al loro posto dopo la manutenzione. Incollo lo script: ------------------------------------------------------------------------- #!/bin/bash IDFILE="/root/vmids.$HOSTNAME" uso () { echo "" echo "Usage: `basename $0` [-a <nodo destinazione>|-b <vmids file>]" echo "" echo " -a = migra tutte le vm in running" echo " -b = migra tutte le vm contenute nel file VMIDS passato" echo "" echo "Note:" echo " Col parametro -a viene prodotto un file in /root di nome:" echo " vmids.<nome virtualizzatore origine>" echo " questo viene spedito sul virtualizzatore di destinazione." echo " Servirà poi per riportare le vm al nodo originale." echo "" exit 1 } andata () { qm list | grep running | awk '{print $1}' > $IDFILE for vmid in `cat $IDFILE` do echo "Migro: $vmid su $1" qmigrate --online --verbose $1 $vmid done scp $IDFILE root@$1:$IDFILE rm $IDFILE exit 0 } ritorno () { for vmid in `cat $1` do echo "Migro: $vmid su ${1#vmids.}" qmigrate --online --verbose ${1#vmids.} $vmid done rm $1 exit 0 } if [ $# -lt 2 ] then uso fi case "$1" in "-a" ) andata $2;; "-b" ) ritorno $2;; * ) uso;; esac ------------------------------------------------------------------------- Jan -- Per iscriversi (o disiscriversi), basta spedire un messaggio con OGGETTO "subscribe" (o "unsubscribe") a mailto:linuxtrent-request@xxxxxxxxxxxxx