Le persone sono creature abitudinarie. Tale affermazione ha connotazioni sia buone che cattive. Il bello è che tendiamo a fare le cose allo stesso modo ogni volta che le facciamo. La parte negativa è che non tendiamo ad avventurarci fuori dalla nostra routine. Quella routine mantiene i cambiamenti coerenti e le sorprese al minimo. L'ultima cosa qualsiasi amministratore di sistema vuole sentire un altro amministratore di sistema dire "Whoops". Ma questa è tutta un'altra storia. L'argomento di oggi sono i comandi sconosciuti. Sei comandi sconosciuti per l'esattezza. Penso che ti piaceranno perché sono utili e al di fuori della visione periferica della maggior parte degli amministratori di sistema. Sono presentati in ordine alfabetico.
[ Potrebbe piacerti anche: 11 comandi Linux senza i quali non posso vivere ]
1. ac (Contabilità)
Il comando di contabilità utente, ac
, fornisce all'amministratore di sistema le statistiche sul tempo di connessione per tutti gli utenti del sistema lette da /var/log/wtmp
file. Ciò è utile se un amministratore di sistema o un manager desidera registrare il tempo di connettività di un utente su un sistema. Ovviamente, tiene traccia solo della connettività e non dell'attività, quindi non dare per scontato che un utente che si mostra connesso per sei ore abbia effettivamente lavorato per tutte le sei ore su una particolare attività.
Qualsiasi utente può eseguire ac
comando. Le opzioni più utili sono -dp
. Il -d
l'opzione visualizza i "totali giornalieri" del tempo di connessione. Il -p
l'opzione fornisce statistiche di connessione per utente. Puoi utilizzare le opzioni singolarmente o combinate per fornire un'analisi più dettagliata.
$ ac -d
Apr 21 total 8.16
Apr 26 total 119.99
Apr 27 total 18.41
Today total 0.06
$ ac -p
bob 2.28
root 140.48
khess 3.87
total 146.62
$ ac -dp
root 8.16
Apr 21 total 8.16
root 119.99
Apr 26 total 119.99
root 12.33
bob 2.28
khess 3.80
Apr 27 total 18.41
khess 0.12
Today total 0.12
Come puoi vedere, il ac
comando fornisce alcune informazioni utili e interessanti sulla connettività. La statistica più significativa dal display sopra è quanto tempo di connettività ha registrato l'utente root. Le implicazioni sono che un amministratore di sistema si è lasciato connesso a un sistema mentre era assente o si è verificata una violazione della sicurezza. In entrambi i casi, è necessario approfondire la situazione.
2. approfondire
Undici, dodici, scava e approfondisci o così va la filastrocca. Sembra adattarsi al fatto che dig
e delv
sono entrambi correlati al DNS, quindi ci vado. Il delv
il comando è correlato a dig
e nslookup
ma approfondisce ulteriormente nel record DNS non solo inviando una query DNS ma convalidandola.
È probabile che tu riceva molte risposte non firmate messaggi nelle tue risposte. Se una zona DNS non include record DS (obbligatorio quando (Sicurezza DNS) DNSSEC è attivato), si presume che sia DNS non firmato anziché DNSSEC. Le risposte vengono fornite come completamente convalidate, non firmate o non valide. Se non specifichi un server DNS nella tua query, delv
usa quelli nel tuo /etc/resolv.conf
locale . Se un record non è valido, delv
solitamente fornisce una motivazione sul motivo per cui il record non è valido.
Non pretendo di conoscere tutti i dettagli di DNSSEC o delv
, lo so solo per coloro che hanno bisogno di sapere, è un comando molto utile. Ecco tre esempi pratici di delv
utilizzo. Il primo è un esempio di dominio completamente convalidato, dnsworkshop.org.
$ delv dnsworkshop.org mx +multi
; fully validated
dnsworkshop.org. 3600 IN MX 10 smtp5.strotmann.de.
dnsworkshop.org. 3600 IN MX 200 smtp3.strotmann.de.
dnsworkshop.org. 3600 IN RRSIG MX 8 2 3600 (
20210530204044 20210430195221 63654 dnsworkshop.org.
t+sjQNNTOD0q3cCAqUlmzs2OaRapez++9HnjQ0zbYYP7
go3pu6xUjFmGP1OrDhI+Udhfma1BGxqmHTwHo7UotXDx
S9emNuDZVESV6D07HxHbhNqFYjt2jHc8dpLtKjAOmWpA
Lf8fhHRjfNpkng5zoTBKLmghWlLnBPpXy0p6gU8= )
Il secondo, non firmato, che forse è più comune da vedere:
$ delv pbs.org mx +multi
; unsigned answer
pbs.org. 300 IN MX 10 mxb-00303201.gslb.pphosted.com.
pbs.org. 300 IN MX 10 mxa-00303201.gslb.pphosted.com.
Il terzo è un esempio di dominio "parcheggiato".
$ delv sillygoose.org mx +multi
;; resolution failed: ncache nxrrset
; negative response, unsigned answer
; sillygoose.org. 300 IN \-MX ;-$NXRRSET
; sillygoose.org. SOA ns1.namefind.com. dns.jomax.net. 2019022600 28800 7200 604800 300
Per favore, sentiti libero di esplorare delv
inoltre per tutte le tue esigenze DNS e DNSSEC.
3. dir
No, questa non è una delle battute del mio cattivo papà. La dir
il comando è reale. Sì, è davvero una copia di ls
comando ma è per quelli di voi che potrebbero digitare accidentalmente dir
anziché ls
perché hai lavorato con la riga di comando di Microsoft Windows e non riesci a rompere l'abitudine.
$ ls -la /usr/bin/dir
-rwxr-xr-x. 1 root root 143368 Apr 14 2020 /usr/bin/dir
$ ls -la /usr/bin/ls
-rwxr-xr-x. 1 root root 143368 Apr 14 2020 /usr/bin/ls
E no, non è un collegamento fisso. I due comandi hanno numeri di inode diversi. Per favore, provalo se non mi credi.
4. dos2unix
Ecco un altro comando che tenta di aiutare con la compatibilità multipiattaforma. Mi è successo più volte di quante ne possa contare che creo o ricevo un file creato su Microsoft Windows che sembra non riuscire se lo uso su Linux. I file di testo avranno spesso caratteri di "controllo" invisibili alla fine delle righe che impediscono l'analisi su Linux. Qui è dove il dos2unix
il comando si precipita a sistemare queste cose. Dos2unix
rimuove quei ^M e ^V caratteri di controllo situati alla fine delle righe che potresti vedere quando vi
/vim
un file. Certo, puoi rimuoverli se sai come sostituire globalmente tali caratteri con vi
, ma altrimenti è una seccatura.
one^M^V
two^M^V
three^M^V
four^M^V
five^M^V
o
one^M
two^M
three^M
four^M
five^M
Questi caratteri di "controllo" appariranno spesso in un colore diverso che non posso riprodurre qui. Il dos2unix
il comando rimuove quelli per te. Prima di scoprirlo, dovevo entrare e rimuoverli manualmente con una macro di sostituzione globale o utilizzare sed
alla riga di comando.
5. piega
Il fold
comando è nuovo per me ma è utile per quelli di noi che tendono a scrivere righe di codice o documentazione molto lunghe all'interno di un file. Questo comando ha un unico scopo:"avvolgere ogni riga di input per adattarla alla larghezza specificata (dalla pagina man di piega)." In altre parole, se hai un limite di 80 caratteri in un display o sistema di gestione dei contenuti (CMS), puoi regolare la larghezza di un file piegando all'80° carattere. La piegatura a 80 caratteri è l'impostazione predefinita.
$ cat test.txt
This is a folding test.
obomb9jdf;amfd;asmf;dasjpsdaoddsofdsfmdsfmdsofsdjsdmfl.dsfmsdhsdlfsdlfjmds.fmsd.fndsdjdsf;djs;fmdslfmdslfm.dsfsl
$ fold test.txt
This is a folding test.
obomb9jdf;amfd;asmf;dasjpsdaoddsofdsfmdsfmdsofsdjsdmfl.dsfmsdhsdlfsdlfjmds.fmsd.
fndsdjdsf;djs;fmdslfmdslfm.dsfsl
Il fold
comando non riscrive il file. Se esegui cat test.txt
, l'output ha lo stesso aspetto di cat
il comando sopra lo fa. Per riscrivere il file piegato, devi reindirizzarlo a un nome file.
$ fold test.txt > folded.txt
$ cat folded.txt
This is a folding test.
obomb9jdf;amfd;asmf;dasjpsdaoddsofdsfmdsfmdsofsdjsdmfl.dsfmsdhsdlfsdlfjmds.fmsd.
fndsdjdsf;djs;fmdslfmdslfm.dsfsl
Se non desideri utilizzare l'impostazione predefinita di 80 caratteri, puoi specificare una larghezza come 50 utilizzando -w
opzione.
$ fold -w 50 test.txt
This is a folding test.
obomb9jdf;amfd;asmf;dasjpsdaoddsofdsfmdsfmdsofsdjs
dmfl.dsfmsdhsdlfsdlfjmds.fmsd.fndsdjdsf;djs;fmdslf
mdslfm.dsfsl
Puoi specificare il numero di byte o caratteri per piegare righe lunghe se non ti piacciono le colonne. Puoi anche piegare agli spazi.
6. cerniera lampo
Il zipcloak
comando crittografa il contenuto dei file zip. Il comando è facile da usare e funziona senza problemi o drammi. Per problemi e dramma, intendo che non devi fornire molte opzioni o preoccuparti di una sintassi complessa per portare a termine il lavoro. Devi semplicemente zipcloak
un file, fornisci una password e il gioco è fatto. Puoi crittografare solo i file zip. Non puoi usare zipcloak
ad esempio per crittografare i file tar.
$ zipcloak zipfile.zip
Enter password:
Verify password:
encrypting: eight
encrypting: five
encrypting: four
encrypting: nine
encrypting: one
encrypting: seven
encrypting: six
encrypting: ten
encrypting: three
encrypting: two
$ ls
eight five four nine one seven six ten three two zipfile.zip
Quando decomprimi il file, ti viene richiesta la password che hai utilizzato quando hai crittografato l'archivio zip.
$ unzip zipfile.zip
Archive: zipfile.zip
[zipfile.zip] eight password:
extracting: eight
extracting: five
extracting: four
extracting: nine
extracting: one
extracting: seven
extracting: six
extracting: ten
extracting: three
extracting: two
Come puoi vedere, zipcloak
è facile da usare e funziona senza problemi.
[ Impara le basi dell'uso di Kubernetes in questo cheat sheet gratuito. ]
Concludi
Spero che tu possa trovare questi sei comandi utili e utili come me. No, non crittografo un file zippato ogni giorno, non ho spesso bisogno di convertire un file di testo creato da Windows in uno compatibile con Unix e di certo non ho bisogno di piegare un file ma una volta o due volte all'anno, ma quando ho bisogno di questi servizi, ne ho bisogno. E ho bisogno che siano senza problemi, come sono. Non ci sono un sacco di opzioni per nessuno di loro né sono ingombranti in alcun modo. Questi sei comandi sono ottimi da aggiungere al tuo toolbox personale di amministratore di sistema.