Comandi utili per la gestione dei package Debian
tasksel
Permette di vedere per quali task è stato creato in origine il sistema
apt list --installed
Fornisce la lista di tutti i pacchetti installati dando anche l’indicazione se è stato installato in automatico.
I package installati in automatico sono quelli installati come dipendenze di un package installato per esplicita richiesta dell’utente.
apt-rdepends -p --state-follow=installed --state-show=installed [package]
Mostra tutte le dipendenze di un package in modo ricorsivo. Il parametro -p
mostra se il package è installato.
E’ possibile anche usare il parametro -r
per vedere le dipendenze inverse
N.B. Generalmente non presente nel sistema base, va installato con apposito package.
dpkg-query -W -f='${Package;24}\t${db-fsys:Last-Modified}\n'
Permette, grazie allo switch -W
di ottenere una lista di package installati. Lo switch -f
permette di definire quali informazioni si vogliono visualizzare e di formattarle opportunamente. Le informazioni che possono essere visualizzate si possono vedere grazie al comando man.
L’esempio specifico visualizza il nome del package in un campo largo 24 caratteri e il timestamp dell’ultima modifica di installazione.
aptitude show [nomepkg]
Mostra tutte le informazioni riguardanti un package, anche non ancora installato.
Altri usi utili di aptitude sono:
aptitude search [parte_di_nomepkg]
Permette di cercare tutti i pacchetti che hanno nel nome la stringa indicata
aptitude search ~prequired
Torna una lista di tutti i pacchetti marcati come “required”
aptitude search ~pimportant
Torna una lista di tutti i pacchetti marcati come “important”
N.B. Generalmente non presente nel sistema base, va installato con apposito package.
Uso di comandi linux per analizzare l’attività di un processo
Il comando “ps”
Il comando ps
permette di mostrare l’elenco dei processi attivi. Le informazioni che il comando può mostrare permettono una prima analisi di ciò che sta facendo un processo. La forma base solitamente è
ps -ely -e -> mostra tutti i processi del sistema -l -> mostra il formato esteso -y -> mostra il valore di RSS (resident set size) al posto di ADDR
Altri switch aggiuntivi utili sono:
-L -> Mostra i singoli thread di ogni processo con LWP associato
-F -> Mostra le informazioni richieste in formato esteso
E’ possibile personalizzare il formato delle informazioni mostrate con lo switch -O
seguito dai campi che si vogliono visualizzare. Un esempio è
ps -eL -O uid,nlwp,lwp,pri,ni,rss,sz,rtprio
Il comando “lsof”
Il comando lsof
mostra i file/socket/device aperti nel sistema.
-n -> Non converte gli indirizzi numerici di rete in indirizzi simbolici -K i -> In caso di processi con più thread evita di ripetere il device aperto da ciascun singolo thread -i[46][protocol][@hostname|hostaddr][:service|port] -> Permette di filtrare per i vari parametri di socket di rete
Il comando “strace”
Il comando strace
mostra le chiamate che un determinato processo sta facendo al kernel.
strace -i -p [pid/tid] -i -> Inserisce l'instruction pointer del programma al momento della chiamata -p [pid/tid] -> Il processo/thread esistente al da monitorare
Il comando “netstat”
Il comando netstat
mostra le connessioni TCP/UDP attive, in chiusura o in listening.
Alcuni switch utili sono:
-n -> mostra solo gli indirizzi numerici senza tentare la risoluzione dei nomi -l -> mostra solo i socket in listening -t -> mostra solo i socket tcp -u -> mostra solo i socket udp -x -> mostra solo i socket unix -p -> mostra il PID/processo proprietario del socket