Inviata il Ven 20 Gen, 2012 12:00 Da walter |
|
|
 Anche se un sistema Linux è in grado di rilevare una miriade di informazioni relative all’hardware su cui gira, il problema è che queste ultime sono disponibili in maniera frammentata, per cui bisogna ricorrere a diversi strumenti per reperirle.
Se vogliamo che tali informazioni ci vengano presentate in modo più organico rispetto alle utility “convenzionali” contenute in una normale distribuzione, possiamo servirci di lshw.
Il programma lshw consente di identificare le caratteristiche dell’hardware in nostro possesso (es. tipo di motherboard, versioni del firmware, info del BIOS, configurazione della memoria, velocità CPU, dettagli sulle periferiche PCI, USB, PCCard, dispositivi collegati ai canali IDE e SCSI, etc).
Inoltre la principale peculiarità di questo versatile tool è di poter esportare il risultato ottenuto in un pratico report HTML o XML.
Di norma, il software dovrebbe essere già presente sulla nostra distro, in caso contrario è possibile installarlo con il seguente comando:
per Fedora/CentOS/Red Hat:
sudo yum install lshw
per Debian/Ubuntu:
sudo apt-get install lshw
Per usarlo basterà digitare da terminale:
sudo lshw
Se vogliamo che lshw ci mostri le info relative all’hardware in un report HTML chiamato (ad esempio) hardware_info.html, scriviamo:
cd && sudo lshw –html > hardware_info.html
il file risultante verrà salvato nella nostra cartella home e potremo visualizzarlo mediante un comune browser.
Chi preferisce l’interfaccia grafica al terminale può optare per: lshw-gtk.
Per installarlo su Ubuntu/Debian:
sudo apt-get install lshw-gtk
per Fedora/CentOs/Red Hat:
sudo yum install lshw-gtk
Su Debian/Ubuntu lanciamo l’applicazione in questo modo:
gksu lshw-gtk
mentre su Fedora/CentOS/Red Hat:
lshw-gui
|
|
|
 | |  |
Inviata il Mer 21 Dic, 2011 14:10 Da walter |
|
|
 Se vogliamo apportare la stessa modifica a più immagini contemporaneamente, o desideriamo operare rapidamente su una immagine singola, possiamo ricorrere anche alla linea di comando a patto che sul nostro sistema Linux sia presente il pacchetto Imagemagick, se così non fosse, installiamolo dal package manager della nostra distribuzione.
Fatto questo, posizioniamoci nella cartella contenente le immagini da modificare e digitiamo, per esempio:
mogrify –resize 1024x800 *.jpg
con questo comando, abbiamo ridimensionato tutte le immagini nel formato .jpg contenute nella nostra cartella ad una taglia di 1024x800 pixel, ma se volessimo ridimensionare solo l’immagine prova.jpg?
mogrify –resize 1024x800 prova.jpg
Volendo, al posto delle dimensioni delle immagini è possibile inserire la percentuale di riduzione:
mogrify –resize 50% *.jpg
in questo esempio abbiamo ridotto tutte le immagini .jpg del 50%.
I comandi a seguire hanno le stesse funzionalità dei precedenti, l’unica differenza è che lasciano inalterata l’immagine di input e salvano il risultato in un'altra immagine:
convert –sample 80x40 input.jpg output.jpg
convert –sample 25%x25% input.jpg output.jpg
convert –sample 50% input.jpg output.jpg
mogrify –format jpg *.png
converte tutte le immagini dal formato .png a .jpg , senza modificare i file .png.
convert *.png *.jpg
converte tutte le immagini dal formato .png a .jpg , i file png non vengono modificati.
E se volessimo ruotare un immagine di 90 gradi?
mogrify –rotate 90 prova.png
invece con il comando:
mogrify –rotate 90 *.jpg
verranno ruotate di 90° tutte le immagini .jpg contenute nella cartella corrente.
E per finire:
convert –rotate 90 input.jpg output.jpg
ruota di 90 gradi l’immagine input.jpg e salva il risultato in output.jpg.
L’immagine input.jpg resta inalterata.
Queste sono solo alcune delle tante funzioni offerte da imagemagick.
Indubbiamente, utilizzare una applicazione di grafica dalla linea di comando è un po’ scomodo, tuttavia se dobbiamo eseguire una stessa operazione su centinaia di immagini questo metodo può rivelarsi di estrema utilità.
I manuali completi dei suddetti comandi sono disponibili direttamente da terminale: “man mogrify” e “man convert”.
|
|
|
 | |  |
Inviata il Gio 24 Nov, 2011 08:58 Da walter |
|
|
 Usare l’interfaccia a linea di comando a mio parere rappresenta un’occasione per imparare qualcosa in più sui computer e i sistemi operativi.
Ci permetterà di diventare degli utenti più smaliziati, che sanno sfruttare a fondo le risorse di un computer e non sono costretti a ricorrere sempre all’amico o al familiare di turno per risolvere un problema.
Saremo noi, insomma a guidare il sistema e non viceversa.
La shell negli ambienti Unix (e Linux non fa eccezione) è un elemento fondamentale del sistema operativo.
Solo chi sa usare correttamente questo ambiente può affermare di conoscere i sistemi *nix, altrimenti è solo un semplice utilizzatore.
Lo scopo di questo post è di condividere con voi alcuni comandi bash interessanti che possono rivelarsi utili nell’utilizzo quotidiano di un OS Unix-Like.
Eccone 15, mi auguro che siano di vostro gradimento.
1) Trovare file più grandi di 10 Mega, modificati negli ultimi 3 giorni:
find / -size +10000k -mtime –3
2) Copiare la chiave pubblica ssh su un server da una macchina che non ha ssh-copy-id, es. Mac OS X o altre varianti di *nix:
cat ~/.ssh/id_rsa.pub | ssh user@machine “mkdir ~/.ssh; cat >> ~/.ssh/authorized_keys”
3) Sostituire tutte le occorrenze di “pippo” con “pluto” per ogni file con estensione .txt nella cartella corrente:
for NOMEFILE in *.txt; do sed -i 's/pippo/pluto/g' "${NOMEFILE}"; done
4) Sapere quanti MegaByte liberi abbiamo nella RAM:
free | awk '/Mem/ {print $4 / 1024}'
5) In alcune situazioni è necessario riuscire a trovare i file modificati “n” minuti fa .
Come fare a individuare il file che ci interessa?
Avvaliamoci del comando “find” assieme alla sua opzione “-cmin”.
Supponiamo ad esempio di voler individuare tutti i file modificati entro 30 minuti, per cui digitiamo:
find / -cmin 30
6) Nascondere i comandi dentro la shell.
Se abbiamo la necessità di nascondere a video i comandi che impartiamo all’interno della shell, attiviamo tale funzione in questo modo:
stty –echo
e disattiviamola così:
stty echo
7) Stabilire se la CPU supporta la virtualizzazione dell’hardware.
Qualora ci interessi sapere se il processore supporta la virtualizzazione serviamoci di questo comando:
egrep -c '(vmx|svm)' /proc/cpuinfo
Se la risposta è 0 significa che la CPU non supporta la virtualizzazione dell’hardware, se invece la risposta è 1, la virtualizzazione è supportata, ma è necessario accertarsi che nel BIOS sia abilitata la relativa opzione.
8)Backup dell’Hard Disk su una partizione o su un disco esterno.
Di seguito, un classico esempio di dd che ci permette di eseguire un backup di una partizione del nostro hard disk su una partizione o su un disco esterno:
sudo dd if=/dev/sda1 of=/dev/sdc1 bs=4096 conv=noerror,sync
in questo caso abbiamo un blocksize di 4096 e l’opzione “noerror” per indicare a “dd” di continuare la copia dei file anche nel caso di settori illeggibili che potrebbero generare errori.
Se volessimo salvare il contenuto copiato con “dd” su un file immagine, facciamolo così:
sudo dd if=/dev/sda1 of=/dev/sdc1/hddbackup.img
9) Redirezione dell’output ed errori.
Per redirezionare l’output e gli errori di un comando in un file digitiamo:
command &> file
possiamo usare anche strace:
strace badapp &> errors_and_output
sapendo che il valore 1 rappresenta lo standard output e il valore 2 lo standard error, possiamo redirezionare usando anche 1> o 2>.
10) Aggiungere una chiave pubblica su macchine remote.
Se abbiamo più chiavi pubbliche abilitate alla connessione su un server via ssh, scriviamo:
ssh-copy-id –i .ssh/id_rsa.pub hostname
Generalmente ssh risponderà:
Now try logging into the machine, with “ssh ‘hostname’” , and check in:
.ssh/authorized_keys
to make sure we haven’t added extra keys that you weren’t expecting.
11) Parallelizzare i cicli (loops).
Un Sysadmin sicuramente conosce la potenza del ciclo for (fare qualcosa per uno, dieci, cento utenti o macchine).
Di solito ogni utente mette i propri cicli in sequenza, quindi bisogna attendere che un ciclo di lavoro sia terminato prima di farne un altro.
Tramite questo trucchetto ogni lavoro o compito dei nostri cicli possono essere fatti girare in background, evitando di aspettare la fine di un ciclo prima di compiere un’altra operazione.
A seguire, un esempio con ‘sudo apt-get update’:
for HOST in $(cat ListOfHosts); do ssh $HOST ´sudo apt-get update´ & done
sfruttiamolo anche per un tunnel:
for HOST in $(cat ListOfHosts); do ssh -C -N -R 80:localhost:80 $HOST & done
12) Estrarre un RPM senza software aggiuntivo.
Con il trucco seguente, invece di utilizzare rpm2cpio, adopereremo questi comandi per installare/estrarre un pacchetto in una directory temporanea evitando di alterare il database RPM di sistema.
Possiamo anche disabilitare gli script e le dipendenze:
mkdir /tmp/deleteme
rpm -ivh -root /tmp/deleteme -nodeps -noscripts package.rpm
il pacchetto viene inserito in /tmp/deleteme e la sua eliminazione non comporterà problemi di sorta.
13) Eseguire un comando su più host in parallelo (è consigliabile prima uno scambio di chiavi pubbliche, altrimenti dovremo immettere la password più volte):
for host in host1 host2 host3; do echo -n $host:; ssh $host uptime; done;
14) Generare una lista di tutti i pacchetti RPM installati sul sistema:
rpm -qa > pacchetti.txt
15) Verifica del kernel in esecuzione.
Per verificare se sia in esecuzione un kernel a 64 bit lanciamo questo comando:
uname –m
il risultato sarà simile ai seguenti:
x86_64 indica che il kernel è a 64 bit, mentre i386, i486, i586, i686 indicano un kernel a 32 bit.
|
|
|
 | |  |
Inviata il Mer 26 Ott, 2011 16:08 Da walter |
|
|
 Cos’è Fedora Utils?
Fedora Utils è un applicativo per Fedora Linux che ci consente di “perfezionare” l’installazione di questa distro, arricchendola di tutto quel software di terze parti che per incompatibilità di licenza non risulta presente nei repo ufficiali della distribuzione.
In più, grazie a questo tool saremo in grado di applicare una serie di tweak atti a velocizzare il sistema, in modo molto semplice.
Tramite Fedora Utils è possibile aggiungere i repository RPM Fusion, installare i principali codec multimediali proprietari, il player Flash, Sun Java, Google Chrome, VirtualBox, Skype, Google Earth, Picasa, Wine, Adobe Air, etc.
Ma le funzionalità del programma non finiscono qui, infatti come accennato in precedenza possiamo modificare delle impostazioni di sistema, come ad esempio disabilitare SELinux, fixare i problemi con i font Smoothing, i malfunzionamenti di: Mplayer, Anaconda, rpmdb, gnome keyring, etc, disattivare i processi inutilizzati e altro ancora.
L’applicazione non necessita di essere installata è sufficiente eseguire il download dello script da qui e renderlo eseguibile in questo modo:
chmod +x fedorautils-*
per lanciarlo digitiamo:
sudo ./fedorautils-*
oppure:
su –c "./fedorautils-*"
Per ulteriori info, vi rimando al sito di Fedora Utils.
|
|
|
 | |  |
Inviata il Lun 26 Set, 2011 11:39 Da walter |
|
|
 Personalmente preferisco Linux, perché offre una scalabilità estrema e proprio per le sue caratteristiche di apertura, permette di lavorare su computer di tutte le piattaforme (da Intel a Alpha-DEC, da S/390 ad Apple) e di tutte le potenze (dai piccoli dispositivi elettronici, ai server aziendali professionali).
Inoltre visto che il software di Linux viene concesso in base alle norme della licenza Open Source, chiunque è libero di configurare e distribuire una propria versione di questo sistema operativo, sempre sostanzialmente in modo gratuito.
Ciò ha portato alla proliferazione delle cosiddette distribuzioni, ovvero vari “gusti” di Linux, ognuno con caratteristiche specifiche.
Oggi vorrei parlarvi di una mini distro, che per via delle sue ridotte dimensioni ha attirato la mia attenzione: Tiny Core.
Tiny Core è una distribuzione minimalista, capace di funzionare con soli 10 MB di spazio libero, che adotta un kernel 2.6, Busybox, Tiny X e Fltk (Fast Light Toolkit).
Grazie a questa “micro” distro è possibile tramutare un Pc obsoleto dalle risorse hardware limitate in una Linux box utilizzabile sia per amministrazione e recovery che per normale produttività (desktop environment), ma nessuno ci vieta di usarla su una macchina più performante tipo un moderno notebook o un netbook.
Il sistema gira in memoria RAM, per cui è molto rapido anche in fase di boot.
Tiny Core nella versione base non fornisce nessuna applicazione, eccetto un browser che ci consente di prelevare le estensioni di cui abbiamo bisogno, ad esempio Opera, Kompozer, Mplayer, Inkscape, etc…da un repository online dedicato.
Le estensioni sono file compressi di tipo squashfs, inoltre nel repository ufficiale è disponibile l’estensione base-locale che contiene la traduzione delle interfacce grafiche.
Se abbiamo intenzione di provarla, eseguiamo il download dell’ultima versione disponibile da qui.
|
|
|
 | |  |
|