Negli ultimi dieci anni, Linux è cresciuto da un sistema operativo alternativo per gli appassionati in uno strumento essenziale per alimentare alcune delle infrastrutture software più robuste al mondo.
Con l'ampiezza di tali servizi in espansione ogni giorno, è aumentata anche la domanda di persone esperte nell'amministrazione di questi sistemi. Con la serie Linux Hands On, stiamo cercando di avvicinarci di qualche passo al viaggio per arrivare a quel livello.
Nelle ultime due settimane, abbiamo coperto il terminale Linux da zero. Abbiamo iniziato con il comandi di base di Linux e l'installazione di Linux su una macchina virtuale nella prima parte e poi ci abbiamo costruito sopra con il comandi Linux intermedi e una breve introduzione sui processi Linux e su come visualizzarli e terminarli nella seconda parte.
Per questa settimana, stiamo finalmente per intensificare il nostro gioco!
Cosa imparerai?
- Aumento della produttività con l'aliasing dei comandi
- Controllo dell'utilizzo del disco in base a volumi e tipi di file
- Download di file in rete
- Nozioni di base sulla risoluzione dei problemi di rete
- Servizi e come gestirli
- Controllo dell'accesso degli utenti/gestione delle sessioni
- Spegnimento e riavvio del sistema
Questa settimana tratteremo i comandi avanzati del terminale. Questi comandi ruotano attorno a cose di cui avrai bisogno la maggior parte delle volte durante l'amministrazione del sistema, abbiamo anche un paio di comandi che ti aiuteranno a ridurre i tempi di consegna e ad aumentare la tua produttività.
1. Alias di comando
Quindi il primo punto che tratteremo sono gli alias e questo colpirà la parte della produttività del post. Ogni tanto ti ritroverai a ripetere certamente il comando di tanto in tanto. In queste situazioni, la tecnica della cronologia dei comandi che ho trattato nella prima parte. La cronologia dei comandi noterà che in realtà ti aiuta a risparmiare tempo evitando di digitare il comando, viene compensato quando scorri. Usando l'alias di comando puoi evitare tutto questo fastidio. L'aliasing è utile quando si ha a che fare con comandi particolarmente difficili da digitare e quando non si utilizza un plug-in di completamento automatico sul terminale.
Prima di creare gli alias vediamo come elencarli. Un alias (nel contesto del terminale Linux) è una scorciatoia per un comando terminale tradizionale. Tuttavia, questo non è esclusivo solo dei comandi del terminale Linux. Puoi alias quasi tutti i comandi immaginabili.
Ecco un esempio. Per il commit in un repository git usiamo git commit con il flag -m. In media diciamo che usi questo comando almeno da 10 a 20 volte a settimana. Digitare l'intera cosa non ha senso, è qui che entra in gioco l'aliasing. Usando un alias come diciamo gitcmt ti risparmi la fatica di digitare tutto. Aggiungi questo risparmio in un paio di mesi e anni e avrai qualche ora in più. Ti fa impazzire, vero?
Bene, vediamo come controllare e creare alias.
Per elencare gli alias già esistenti, è sufficiente emettere il alias comando senza flag e premi invio. E l'elenco degli alias ti verrà restituito.
Questi alias sono per lo più alias globali a livello di sistema che si applicano a tutti gli utenti del sistema.

Ora che sappiamo come vedere tutti gli alias su un sistema, procediamo e creiamone uno.
Per creare un alias ecco la sintassi.
alias ALIASNAME="ACTUAL_COMMAND_NAME"
Quindi nel nostro caso quello che faremo è avere un alias per il comando echo solo a scopo dimostrativo.
Basta digitare quanto segue e premere invio.
alias ec="eco"

Ora invece di usare eco, possiamo semplicemente digitare ec anziché.
Tieni presente, tuttavia, che questo alias durerà solo una sessione, il che significa che se chiudi il terminale e lo riapri, non funzionerà più. Per renderlo permanente è necessario modificare il file di configurazione della shell che è memorizzato su ~ / .bashrc
Apri il file in nano, inserisci il comando all'interno di questo file come mostrato nello screenshot qui sotto ed esci.

Dopo essere usciti impartire il seguente comando:
fonte ~ / .bashrc

Una volta fatto questo, il tuo alias di comando sarà permanente.
Ora diamo un'occhiata a come puoi eseguire l'unalias di un comando. L'effetto opposto si ottiene emettendo il Unalias command
La Unalias Il comando non rimuoverà solo l'alias dalla sessione corrente ma anche dal file di configurazione della shell.

2. dove è Comando
Spesso, quando le persone scrivono software, mantengono 2 ambienti diversi. Un ambiente di sviluppo che assomigli alla configurazione del server di produzione e un normale ambiente locale che è secondo le esigenze dell'utente. Per mantenere questi 2 spazi isolati/separati l'uno dall'altro, la maggior parte delle persone usa qualcosa come Docker o vagabondo, ma alcune persone preferiscono anche un approccio manuale. Se rientri nella seconda metà, è molto probabile che tu abbia binari duplicati o gli stessi binari con versioni diverse sulla stessa macchina. Questo comando successivo ti aiuta a elencare tutte le installazioni di un particolare binario. Il comando si chiama whereis ed elencherà la posizione in cui è memorizzato un particolare binario insieme alla sua documentazione.
Ecco la sintassi per il dove si trova comando:
dove è BINARY_NAME
Ora che abbiamo visto la sintassi, vediamo come usare il comando whereis:

Come puoi vedere elencato, la posizione del binario git è memorizzata nel sistema.
Questo comando, per quanto semplicistico, sarà di immenso aiuto quando si verificano problemi di compatibilità durante la creazione di qualcosa.
3. comando di servizio
Un'operazione di lunga durata in background è definita come un servizio in Linux. Il sistema operativo Linux viene fornito con una serie di servizi che puoi scoprire navigando nella directory /etc/init.d. Sebbene non possiamo spiegare come creare un servizio personalizzato in quanto ciò non rientra nell'ambito di questo post, una semplice ricerca su StackOverflow guiderebbe sicuramente su come crearne uno. Parleremo comunque di gestione dei servizi. Che include l'avvio, l'arresto del riavvio e il controllo dello stato dei servizi.
La sintassi di Servizio Assistenza comando sarebbe il seguente:
servizio SERVICE_NAME inizio
Per questo esempio, lavoreremo con il sshd servizio che è un server shell sicuro da OpenBSD.
Per avviare un servizio usiamo service start seguito dal nome del servizio (qui sshd).
servizio sshd start
Vediamolo in azione di seguito. E se premendo il tasto Invio non viene visualizzato nulla sul terminale, significa che ha funzionato correttamente.

Ora controlliamo lo stato dello stesso servizio. Per farlo utilizzeremo il status opzione insieme al comando service. Come visto di seguito.
stato del servizio sshd
Questo mostrerebbe se il servizio è attivo o meno insieme ad altri dettagli utili.

Ora che sappiamo come avviare un servizio e verificarne lo stato, vediamo come interromperlo.
Per farlo utilizziamo l'opzione stop insieme al comando service. Se controlli lo stato ora, ti dirà che è inattivo.
servizio sshd stop

Bene, ora per la parte finale, riavvieremo il servizio. E per farlo, sorpresa sorpresa, utilizzeremo l'opzione di riavvio.
service sshd restart

Andiamo avanti.
4. Comando df
Poiché questa parte della serie riguarda l'apprendimento di come amministrare un sistema Linux tramite il terminale, impariamo una delle attività più comuni che eseguiamo durante l'utilizzo di un sistema operativo. Vedremo come controllare lo spazio su disco direttamente dal terminale. Per farlo utilizzeremo il comando df. sta per file system del disco ed è usato per visualizzare la quantità di spazio su disco disponibile su un filesystem.
Iniziamo con la sintassi del comando df:
df [OPZIONE]... [FILE]...
Vediamo il comando df in azione. Per impostazione predefinita, senza opzioni fornite, il comando df elencherà le dimensioni dei singoli volumi in un formato non del tutto leggibile.

Quindi, per evitare ciò, useremo il -h flag, che sta per il formato leggibile dall'uomo. Inserisci il seguente comando
df -h

E ora, come puoi vedere, ha elencato la dimensione del volume in Megabyte e Gigabyte. Ci sono molte più opzioni supportate dal comando df e ti suggerirei di verificarle usando il comando man.
5. del comando
Abbiamo visto come possiamo controllare le statistiche dello spazio su disco per la nostra macchina, ma questo è solo un passo verso il pieno controllo. Che ne dici di controllare lo spazio occupato dai singoli file. Per farlo utilizziamo il comando du che stima lo spazio su disco utilizzato dai file.
Ecco la sintassi per il comando du:
du [OPZIONE]... [FILE]...
Per impostazione predefinita, senza alcuna opzione fornita, possiamo vedere che il comando elenca i file e lo spazio che occupano in un formato non leggibile.

Per avere più senso da loro, usiamo il -h di nuovo l'opzione, che visualizzerà le cose in un formato leggibile dall'uomo.
tu hai
Come puoi vedere di seguito, ora ha elencato lo spazio occupato da tutti i tipi di file in unità con cui abbiamo familiarità.

Possiamo anche andare avanti e controllare la dimensione occupata da un particolare tipo di file in una directory usando il -s bandiera. Controlliamo i file di testo nella directory corrente.
du -s *.txt

6. comando passwd
Il prossimo passo per avere il pieno controllo del sistema sarebbe effettivamente essere in grado di cambiare la password. Voglio dire, a che serve un amministratore di sistema se viene bloccato fuori dalla sua macchina, giusto? bello quindi daremo un'occhiata a come cambiare la password e per farlo usiamo il passwd comando.
Ecco la sintassi per il comando passwd:
passwd [OPZIONE] [UTENTE]
Ed ora ecco come usiamo il comando passwd:
passwd

Ora ovviamente per motivi di sicurezza, Linux e Unix non mostrano la password sotto forma di asterischi sulla console perché conoscendo la lunghezza di una password, puoi avvicinarti di 1 passo alla forzatura bruta, ma credimi sulla parola e provalo, funziona.
Va bene, continuiamo ad andare avanti.
7. wget comando
Ora vediamo come puoi scaricare i file direttamente dal tuo terminale. Se stai già dicendo a te stesso "c'è qualcosa che lascerà per l'interfaccia utente?", grazie ma cercherò di non farlo.
Per scaricare file da Internet, utilizzeremo il comando wget che sta per web get. Ed è un'utilità della riga di comando per scaricare il file su una rete. È molto facile usare il comando wget. Devi solo specificare l'URL del file da scaricare dopo il comando wget.
Per motivi di struttura, ecco la sintassi:
wget URL_OF_FILE
Ed ecco un esempio di utilizzo.

La cosa interessante di wget è che può riprendere il download se fallisce a causa di un problema di rete o per altri motivi.
8 chi comanda
Per un amministratore di sistema, il controllo degli accessi è un altro dei ruoli importanti. Devono gestire l'accesso al sistema principale e controllare e monitorare le attività di quelli attualmente connessi. Il prossimo comando ti aiuterà a verificare chi è attualmente connesso al sistema. Il comando si chiama che ed ecco la sintassi per questo.
chi [ OPZIONE ]... [ FILE ] [ sono io ]
Diamo un'occhiata a come funziona il comando who:

Ora, dal momento che sono su una macchina per utente singolo e solo io lo sto usando in questo momento, l'unico utente che puoi vedere nello screenshot sono io. Ma supponendo che tu gestisca un server di produzione con diversi 100 utenti collegati contemporaneamente, li vedresti nello stesso elenco. Assicurati di testare tutte le opzioni disponibili per chi usa il comando man.
9. Comando ping
Bene. Con questo prossimo comando, controlleremo se un host remoto è online o meno. Per farlo usiamo il comando ping. Nella spiegazione tecnica più primitiva, ciò significa che il comando invierà ICMP ECHO_REQUEST pacchetti all'host per verificarne la disponibilità. Se l'host è disponibile, risponderà con un riconoscimento e, in caso contrario, i pacchetti verranno eliminati. Vediamo come utilizzare il comando ping.
La sintassi è piuttosto semplice.
ping [-LRUbdfnqrvVaAB] [-c count] [-m mark] [-i interval] [-l preload] [-p pattern] [-s packetsize] [-t ttl] [-w deadline] [-F flowlabel] [-I interfaccia] [-M suggerimento] [-N nioption] [-Q tos] [-S sndbuf] [-T opzione timestamp] [-W timeout] [hop ...] destinazione
Ed ecco un esempio di utilizzo.
ping google.com

Questo comando viene utilizzato principalmente quando si tenta di risolvere i problemi di rete. L'output del comando ping contiene un paio di statistiche diverse. Innanzitutto, contiene il ICMP numero di sequenza che indica il numero del pacchetto. Insieme a questo contiene anche il TTL campo che specifica il tempo di vita per un pacchetto, ad esempio il numero di router su cui può saltare prima di essere effettivamente scartato.
10. comando di spegnimento
Bene, siamo finalmente alla fine di questa parte. Chiudiamo formalmente questo con l'apprendimento di come spegnere il sistema dal terminale. Vedremo anche come riavviare il sistema direttamente dal terminale stesso. Ora, poiché questo comando spegne effettivamente la macchina, mostrerò una demo sul mio server, a cui accederò utilizzando una shell sicura tramite la mia macchina host. Ecco la sintassi per il comando di spegnimento:
shutdown [-akrhPHfFnc] [-t sec] tempo [messaggio]
Per spegnere la macchina, emettiamo semplicemente il chiusura comando senza alcuna opzione. E per riavviarlo, puoi usare il -r bandiera. Ecco come sarebbe con il -r bandiera.
arresto -r

E beh, non c'è molto da "vedere" nella demo, tranne il fatto che il sistema si spegnerà. Puoi guardare il video sopra dove mostro il mio server che si spegne effettivamente dopo l'esecuzione del comando.
Conclusione
Bene, gente, siamo arrivati alla fine della terza parte della serie Linux Hands On. Parte 1 coperto le basi, poi ci abbiamo costruito sopra in Parte 2 e nella Parte 3 ci siamo concentrati sull'aspetto dell'amministrazione del sistema di Linux. Come sempre, consiglio vivamente di provare questi comandi avanzati del terminale Linux invece di leggere semplicemente il post o guardare i video. Una delle cose che apprezzo molto è la competenza e questo viene fornito con una vasta pratica. Assicurati di farlo e se riscontri errori o hai una domanda, scrivici nella sezione commenti o su Twitter. Ci vediamo di nuovo la prossima settimana con la parte finale di questa serie e ragazzo, sarà divertente. Mentre vado a scrivere la Parte 4, prenditi un po' di tempo e fai pratica con questi comandi. Fino alla prossima volta! Buona codifica!
Lascia un commento
Hanno qualcosa da dire su questo articolo? Aggiungi il tuo commento e avvia la discussione.