Linux: Come calcolare lo spazio occupato da file e directory

logo ubuntu

Vi siete mai chiesti come sapere lo spazio occupato da una directory ?

La risposta è il comando du la sintassi è la seguente:

du [OPTION]... [FILE]...
du [OPTION]... --files0-from=F

Per visualizzare la dimensione di una directory specifica usate la sintassi:

du /tmp

Il risultato dovrebbe essere (versione permettendo) simile a questo:

9	/tmp/.font-unix
27	/tmp/snap-private-tmp/snap.snap-store/tmp/.snap/snap/snap-store
36	/tmp/snap-private-tmp/snap.snap-store/tmp/.snap/snap
9	/tmp/snap-private-tmp/snap.snap-store/tmp/.snap/var
9	/tmp/snap-private-tmp/snap.snap-store/tmp/.snap/usr/lib
18	/tmp/snap-private-tmp/snap.snap-store/tmp/.snap/usr
72	/tmp/snap-private-tmp/snap.snap-store/tmp/.snap
9	/tmp/snap-private-tmp/snap.snap-store/tmp/.X11-unix
90	/tmp/snap-private-tmp/snap.snap-store/tmp
99	/tmp/snap-private-tmp/snap.snap-store
... (omissis)
521	/tmp

Come potete notare il numero con cui si esprime lo spazio occupato non ci è molto familiare, semplificando sono il numero dei blocchi occupati dal file, la cosa è un po’ più complessa ma trattarla ora farebbe confusione.

Quello che c’è da sapere è che se vogliamo vedere la dimensione del file espresse nelle più comuni unità di misura (kb, mb, gb) tutto quello che dobbiamo fare è specificare, sulla linea di comando, il parametro -h:

du -h /tmp

Vedremo quindi qualcosa del tipo:

9,0K	/tmp/.font-unix
27K	/tmp/snap-private-tmp/snap.snap-store/tmp/.snap/snap/snap-store
36K	/tmp/snap-private-tmp/snap.snap-store/tmp/.snap/snap
9,0K	/tmp/snap-private-tmp/snap.snap-store/tmp/.snap/var
9,0K	/tmp/snap-private-tmp/snap.snap-store/tmp/.snap/usr/lib
18K	/tmp/snap-private-tmp/snap.snap-store/tmp/.snap/usr
72K	/tmp/snap-private-tmp/snap.snap-store/tmp/.snap
9,0K	/tmp/snap-private-tmp/snap.snap-store/tmp/.X11-unix
90K	/tmp/snap-private-tmp/snap.snap-store/tmp
99K	/tmp/snap-private-tmp/snap.snap-store
... (omissis)
521K	/tmp

Se si vuole forzare un’unica unità di misura basta usare: -k per kilobytes, -m per megabytes.

du -k /tmp
du -m /tmp

Per vedere quale directory usa più spazio potresti usare il comando:

du -h --max-depth=1 | sort -hr

La sottodirectory più grande viene visualizata per prima, puoi incrementare la profondità delle directory da considerre con l’opzione: –max-depth parameter.

Il comando du visualizza solo directory e sottodirectory, se volte visualizzare anche i file allora dovete usare il parametro: -a.

du -ah /tmp

Si può inoltre specificare una o più directory a cui si vuole limitare l’analisi:

du -h dir1 dir2

Se vi piace andare subito al sodo potete visualizzare solo il totale con l’opzione: -s.

du -sh /tmp

Avrete in output una sola linea:

521K	/tmp

Ovviamente se, come detto poco fa’, specificate più di una directory sulla linea di comando avrete poi una riga per ogni totale calcolato.

Se volete, alla fine dell’elaborazione, un gran totale basta aggiungere il parametro:-c

du -csh /tmp

Si possono anche escludere dei file tramite una maschera:

du -ch --exclude='*.jpg' | grep total 

il “grep total” server a visualizzare solo le righe di totali

Come sempre potete richiamare l’help completo del comando con:

man du

Ci vediamo alla prossima

Andrea

Cambio Password

Il cambio password è un’attività che prima o poi tutti gli utenti si trovano a dover affrontare: oltre ad essere una buona pratica di sicurezza è  addirittura prevista dall’ordinamento giuridico italiano dalla  legge 196/2003  (legge della privacy) sostituita dal più recente Regolamento UE 2016/679  (GDPR).

Ora mentre su unix, linux e tutta la serie *BSD oltre ai vari MacOS, da sempre, il comando “passwd” dato da linea di comando, provvede al servizio richiesto, su windows la cosa è più articolata: anche qui infatti esiste un metodo presente Leggi tutto “Cambio Password”

Installare PgAdmin 4 in server mode

pgAdmin 4 fin dalla sua comparsa non ha entusiasmato nessuno per le performance, anche perchè lo si usava nello stesso modo di pgAdmin III.

La mia personale considerazione è che il gruppo di sviluppo di pgadmin abbia creato la possibilità di far funzionare pgAdmin come applicazione desktop per dare il tempo di capire che invece va’ usato come un’applicazione web.
Vediamo quindi come installarlo “nativamente” e poi ciascuno farà le proprie considerazioni. Leggi tutto “Installare PgAdmin 4 in server mode”

NGINX utility per la gestione dei siti

Nonostante NGINX somigli molto a Apache come struttura di directory di configurazione si sente la mancanza di quei piccoli comandi a cui ci ha abituato per abilitare e disabilitare un sito per elencare i siti disponibili ecc..
Girando per il web ho trovato questa utility da github a questo indirizzo:

https://github.com/pyghassen/nginx_modsite

potete scaricarla e metterla, ad esempio su:

Metti su /usr/local/sbin/nginx_modsite

Non è specificato nulla riguardo alla licenza ma visto la maniera in cui è pubblicata si può desumere che l’autore la voglia condividere.

Lanciando il comando senza parametri viene visualizzato un testo di aiuto a cui non è necessario aggiungere nulla:

Usage: nginx_modsite [options]
Options:
 <-e|--enable> <site> Enable site
 <-d|--disable> <site> Disable site
 <-l|--list> List sites
 <-h|--help> Display help

If <site> is left out a selection of options will be presented.
 It is assumed you are using the default sites-enabled and
 sites-disabled located at /etc/nginx.

Buon divertimento

Andrea

Installare l’ultima versione di Python

Per installare l’ultima versione di python su ubuntu 16.04 LTS basta impartire i seguenti comandi:

sudo add-apt-repository ppa:jonathonf/python-3.6
sudo apt-get update
sudo apt-get install python3.6

Facile no ?

Per altre distribuzini linux la sintassi potrebbe differire ma i concetti restano gli stessi, per Windows ci sono i pacchetti di installazione per cui basta seguire le indicazioni che vengono date di volta in volta

Andrea

Ubuntu 16.04 LTS: Installare l’ultima versione di Nginx

Non sempre nei repository ufficiali abbiamo l’ultima versione di Nginx, i motivi sono da ricercare nella politica delle varie distro riguardo la gestione dei pacchetti e questo non è il momento di discuterne diciamo che è così e vediamo come rimediare:
Quello che dobbiamo fare è aggiungere i repository del PPA di ubuntu che si occupa di rimediare alla faccenda, pèossiamo aggiungere i repository direttamente nel file:

sudo add-apt-repository ppa:nginx/stable
sudo apt-get update

Ricordiamo di aggiornare la cache dei nostri repository con:

sudo apt-get update

A questo punto l’installazione è come al solito:

apt-get install nginx

Alla prossima

Andrea

Unit Testing di Funzioni su PostgreSQL

Il JUGPD (Java User Group di Padova).
È un’organizzazione che si propone la diffusione delle conoscenze e delle tecnologie legate al linguaggio Java. I soci si trovano con cadenza mensile per scambiarsi conoscenze nel modo JAVA e della programmazione in genere.
Il 27 Maggio p.v. il gruppo si troverà presso il : Verona FabLab, Associazione di Grezzana in provincia di Verona che dà la possibilità a tutti di sviluppare i propri progetti offrendo un’ officina attrezzatissima, per parlare di  PostgreSQL, il più avanzato Database Open Source del mondo, ed in particolare dell’applicazione delle tecniche di Unit Testing nella creazioni delle funzioni di questo DB che sono programmi a tutti gli effetti (e che possono essere scritte anche in JAVA).
La particolarità di questo incontro e che non solo vedremo la teoria ma anche come è stata messa in pratica sul database di Scuola247, un progetto open source che si propone la realizzazione di un registro elettronico per la scuola italiana, si vedrà quindi quanto spiegato in azione su un database di 66 tabelle, 71 query e 124 funzioni con quasi 500.000 righe di dati di test coerenti (non semplici accozzaglie di numeri e caratteri) solo per citare le dimensioni principali del progetto.

L’evento è gratuito.

Per maggiori info e come iscriversi

http://www.jugevents.org/jugevents/event/61026

A presto
Andrea

Ubuntu 14.04 LTS: Installazione e collaudo di Composer

Logo per Composer
Composer è uno dei più popolari tool per la gestione delle dipendenze di progetti PHP.
L’intento è di facilitare l’installazione e l’aggiornamento di un progetto  PHP gestendo automaticamente tutte le dipendenze del programma principale.
Ho avuto necessità di usare Composer perchè il team di Drupal lo usa come programma di installazione.
Questo tutorial vuole spiegare come installarlo e verificarne il funzionamento.
Ho provato personalmente questo tutorial su Ubuntu 14.04 LTS, la teoria vuole che funzioni anche su altre versione, specialmente se successive a quella da me testata, però, come già detto altre volte, le varianti possono essere molte e non è possibile dare certezze.