Michele Liberi software
versione 1.04, giugno 2026
|
|
Michele Liberi
mail: mliberi@gmail.com
cell: +393485211456
telegram: @MicheleLiberi
|
liberix
- Presentazione
- Librerie
- Servizi
- Comandi
- rxc, esecuzione remota di comandi
- woha, web oriented hyerarchical database
- n, punto unico di controllo per N servers
- ck, controlli sui sistemi
- comm5, sincronizzazione di files
- comm7, sincronizzazione di files e metadati
- gcron, schedulatore globale
- logaway, gestione files di log
- nbru, gestione centralizzata dei backup
- kcc, il compilatore di shell scripts
- upload, accesso a web server
- www, HTTP client
- ftime, stampa informazioni sui files
- cpfl, archiviatore di files
- metafl, archiviatore di metadati
- mvfl, rinomina una lista di files
- lnfl, collegamento di una lista di files
- rmfl, cancellazione di una lista di files
- rxcp, copia di files
- afifo, gestione asincrona code fifo
- mq, interazione con server IBM MQM locale
- mqc, interazione con server IBM MQM remoto
- lra, interazione con il servizio lrm
- cofc, interazione con il servizio cofs
- pst, gerarchia dei processi
- dut, spazio utilizzato dalle directory
- ecut, estrazione dati da un file di testo
- ecomm, confronto righe di due files
- ejoin, unisce le righe di due files
- etee, duplicazione del flusso di input
- etr, converte o cancella caratteri
- ecat, concatenazione di file
- esort, ordinamento lessicografico di un testo
- sortbyll, ordina un testo in base alla lunghezza delle righe
- opmsr, ricerca e sostituzione di stringhe
- match, ricerca di stringhe
- cargs, verifica argomenti
- cenv, print environment variables
- yargs, esecuzione multipla di un comando
- tmout, lancia un comando con un tempo limite
- unchain, cancella catena di link simbolici
- rmlines, rimuove righe da un file
- yar, archiviatore minimale alternativo
- rows, trova righe in comune
- 3comm, comparazione file di testo
- now, cronometro per shell script
- systime, seconds since epoch
- bpwd, cambio della password non interattivo
- ckuserpw, controllo o cambio password
- 1moregrp, lancia un comando previa aggiunta di un gruppo
- memberof, incrocio utenti e gruppi
- lscron, lista di tutti i job lanciati da cron
- fdump, visualizza un file in esadecimale
- pol, calcolo di espressioni
- total, somma algebrica
- pths, ricerca di files nel PATH
- mynames, lista nomi di rete
- hostip, risoluzione nome di rete
- ckhosts, verifica file hosts
- des, data encryption standard
- tea, tiny encryption algorithm
- kc, un cifratore veloce
- keygen, genera una chiave casuale
- crypt, codifica una stringa
- cryptest, verifica validità password
- xor, cifratore binario
- hff, codifica decodifica di Huffmann
- sltn, interazione con un host remoto
- NCgrep, selezione di righe basata su regole
- accessx, accessibilità di files e directories
- rtest, accessibilità per utente reale
- u2d, converte un file da UNIX a DOS
- d2u, converte un file da DOS a UNIX
- ascii, tabella di codifica ASCII
- ebcdic, tabella di codifica EBCDIC
- asc2ebc, conversione da ASCII a EBCDIC
- ebc2asc, conversione da EBCDIC a ASCII
- id3, manipolazione metadati brani MP3
- woha2bash, converte un oggetto woha in una script bash
- img2html, converte immagini in tag HTML
- cgi, interazione con webserver
- cgisu, switch user per utenti CGI
- alert, invio di avvisi su più canali
- lnsm, invio e-mail
- logwriter, scrittura controllata file di log
- lspwdage, resoconto delle età delle password
- mon, lancia ciclicamente un comando
- eddy, selezione con editor di files da rinominare o cancellare
- mutuo, tabella ammortamento a rata costante
- sms, invio messaggi SMS
- aixb, backup completo del sistema AIX
- socktee, monitoraggio traffico su socket
- rowcmp, confronto di file di testo
- comb, combinazioni di N su K elementi
- pty, esecuzione batch di un programma interattivo
- openfds, lista dei descrittori in uso
- msleep, attende N millisecondi
- myid, estensione del comando id
- c7comp, comparatore di filetree
- str, estrazione di una parte di un bytestream
- X client
- Applicazioni web
- Siti web
- Applicazioni Android
- Programmi DOS
- Programmi Windows
- Installazione
- Licenza d'uso
nbru è l'acronimo di Network Backup & Restore Utility, una applicazione web che permette di gestire in modo centralizzato i backup di un insieme di macchine (raggiungibili via TCP/IP), anche con sistemi operativi diversi.
I dati salvati non devono rimanere necessariamente sul disco della macchina che contiene il database, essi possono essere spostati su nastro, su libreria o altrove, in fase di salvataggio, per poi essere recuperati in fase di ripristino.
In ogni caso i dati salvati vengono indicizzati nel DB per consentire ricerche veloci.
nbru salva i file usando il concetto di livello.
- un salvataggio di livello 0 è totale ed incondizionato.
- un salvataggio di livello 1 è incrementale rispetto all'ultimo livello 0 presente nel DB, vengono salvati solo i file modificati.
- un salvataggio di livello 2 è incrementale rispetto ai livelli 0 e 1.
- e così via fino al livello 5.
nbru si basa sul concetto di label, un identificatore univoco, che ha i seguenti attributi:
- purge
- Se questo flag è true il salvataggio ad un certo livello cancella automaticamente tutti i precedenti salvataggi con livello maggiore.
Serve, ad esempio, se quando faccio il salvataggio settimanale voglio cancellare i salvataggi giornalieri fatti durante la settimana.
Se false nbru mantiene tutte le unità di salvataggio, che possono comunque essere cancellate manualmente, in modo da consentire il ripristino a qualunque data.
Se true nbru cancella automaticamente le versioni precedenti dei file appena salvati, in modo da consentire il ripristino solo dell'ultima versione.
- host
- Il nome della macchina (o indirizzo IP) sulla quale risiedono i file da salvare.
- home
- la directory base per eventuali pathname relativi.
- finder
- Il comando di shell che genera su standard output la lista dei file da salvare.
- schedule
- Specifica, se presente, la frequenza con la quale i dati verranno salvati automaticamente (daily, weekly, monthly, yearly).
I salvataggi controllati dall'attributo schedule attribuiscono i livelli in base alla seguente tabella di corrispondenza:
| schedule | livello
|
|---|
| daily | 5
|
| weekly | 4
|
| monthly | 3
|
| yearly | 1
|
nbru può essere utilizzato anche direttamente da linea di comando per:
- listare le label definite
- salvare file sulla base dell'attributo schedule
- salvare file di una o più labels
- ripristinare uno o più unità di salvataggio
- ricostruire una directory ad una data
- cancellare tutte le unità salvate non necessarie per il ripristino alla data dell'ultimo salvataggio
Il programma ha una doppia natura: può essere lanciato da linea di comando o può essere utilizzato come applicazione web.
Alla partenza rileva automaticamente l'environment e si comporta di conseguenza.
In modalità linea di comando nbru offre le seguenti funzionalità:
- list [label_RE]...
- Produce una lista di tutte la label definite nel DB, che sono le unità elementari dei salvataggi.
- schedule [label_RE]...
- Lancia i backup in base al parametro schedule definito per ognuna delle label definite nel DB.
- backup level label_RE...
- Lancia il salvataggio di una o più label.
Il salvataggio viene lanciato incondizionatamente.
- purge label_RE...
- Si perdono alcuni backup intermedi, ma è comunque garantita la presenza di ogni file salvato all'ultima versione disponibile.
- rebuild TS label_RE...
- Questa funzione ripristina il contenuto della label specificata facendo il restore progressivo di tutte le unità di backup fino alla data specificata.
- restore rowid [filename_RE]...
- Quasta funzione ripristina da una specifica unità di backup (identificata dall'id univoco rowid.
La presenza di una o più RE (regular expression) limita il ripristino ai soli file specificati.
Definiamo, ad esempio, una label.
label: test
host: localhost
home: /dati
finder: find .
schedule: daily
purge: true
Salviamo i dati (da linea di comando o interfaccia grafica)
nbru backup 0 test
Verrà creato un nuovo oggetto nella classe /vault del DB nbru
Lanciamo ogni giorno (a crontab o gcron) il comando
nbru schedule
Il primo giorno viene fatto un salvataggio a livello 5, incrementale rispetto al primo fatto a livello 0.
Dal secondo al sesto giorno viene fatto un salvataggio a livello 5, incrementale rispetto al livello 5 del giorno precedente.
Il settimo giorno viene fatto un salvataggio a livello 4, incrementale rispetto al livello 0.
Tutti i backup a livello 5 vengono ignorati in fase di salvataggio, e poi cancellati.
Il primo giorno del mese successivo viene fatto un salvataggio a livello 3, incrementale rispetto al livello 0.
Tutti i backup a livello 5 e 4 vengono ignorati in fase di salvataggio, e poi cancellati.
Il primo giorno del mese successivo viene fatto un salvataggio a livello 3, incrementale rispetto al livello 3 precedente.
Tutti i backup a livello 5 e 4 vengono ignorati in fase di salvataggio, e poi cancellati.
Il primo giorno dell'anno successivo viene fatto un salvataggio a livello 1, incrementale rispetto al livello 0.
Tutti i backup a livello 5, 4, 3, 2 vengono ignorati in fase di salvataggio, e poi cancellati.
Il ripristino di file può avvenire sia selezionando manualmente uno o più blocchi e specificando una RE (regular expression), sia ricostruendo un'intera directory ad una certa data.
Per ulteriori informazioni sulla sintassi di attivazione e sulle opzioni disponibili lanciare il comando con l'opzione -h.
(c) M. Liberi, last updated: 2026-06-15