GNU/Linux >> Linux Esercitazione >  >> Linux

Un'introduzione alle GNU Core Utilities

Due insiemi di utilità:le GNU Core Utilities e util-linux —comprende molti degli strumenti più basilari e usati regolarmente dall'amministratore di sistema Linux. Le loro funzioni di base consentono agli amministratori di sistema di eseguire molte delle attività richieste per amministrare un computer Linux, inclusa la gestione e la manipolazione di file di testo, directory, flussi di dati, supporti di memorizzazione, controlli di processo, filesystem e molto altro.

Questi strumenti sono indispensabili perché, senza di essi, è impossibile eseguire qualsiasi lavoro utile su un computer Unix o Linux. Data la loro importanza, esaminiamoli.

Coreutils GNU

Il terminale Linux

  • I 7 migliori emulatori di terminale per Linux
  • 10 strumenti da riga di comando per l'analisi dei dati in Linux
  • Scarica ora:cheat sheet SSH
  • Cheat sheet sui comandi avanzati di Linux
  • Esercitazioni sulla riga di comando di Linux

Per comprendere le origini delle GNU Core Utilities, dobbiamo fare un breve viaggio nella Wayback machine agli albori di Unix presso i Bell Labs. Unix è stato scritto in modo che Ken Thompson, Dennis Ritchie, Doug McIlroy e Joe Ossanna potessero continuare con qualcosa che avevano iniziato mentre lavoravano a un grande progetto di computer multi-tasking e multiutente chiamato Multics. Quel piccolo qualcosa era un gioco chiamato Space Travel. Come rimane vero oggi, sembrano sempre essere i giocatori a portare avanti la tecnologia dell'informatica. Questo nuovo sistema operativo era molto più limitato di Multics, poiché solo due utenti potevano accedere alla volta, quindi è stato chiamato Unics. Questo nome è stato successivamente cambiato in Unix.

Nel corso del tempo, Unix si è rivelato un tale successo che Bell Labs ha iniziato essenzialmente a darlo via alle università e successivamente alle aziende per il costo dei media e delle spedizioni. A quei tempi, il software a livello di sistema veniva condiviso tra organizzazioni e programmatori mentre lavoravano per raggiungere obiettivi comuni nel contesto dell'amministrazione del sistema.

Alla fine, i PHB di AT&T hanno deciso che avrebbero dovuto fare soldi con Unix e hanno iniziato a utilizzare licenze più restrittive e costose. Ciò avveniva in un momento in cui il software stava diventando più proprietario, limitato e chiuso. Stava diventando impossibile condividere il software con altri utenti e organizzazioni.

Ad alcune persone non è piaciuto e l'hanno combattuto con il software libero. Richard M. Stallman, alias RMS, guidava un gruppo di ribelli che stavano cercando di scrivere un sistema operativo aperto e liberamente disponibile chiamato GNU Operating System. Questo gruppo ha creato GNU Utilities ma non ha prodotto un kernel valido.

Quando Linus Torvalds ha scritto e compilato per la prima volta il kernel Linux, aveva bisogno di una serie di utilità di sistema molto basilari per iniziare anche a svolgere un lavoro marginalmente utile. Il kernel non fornisce comandi o alcun tipo di shell dei comandi come Bash. È inutile di per sé. Quindi, Linus ha utilizzato le GNU Core Utilities disponibili gratuitamente e le ha ricompilate per Linux. Questo gli ha fornito un sistema operativo completo, anche se abbastanza semplice.

Puoi conoscere tutti i singoli programmi che compongono le utilità GNU immettendo il comando info coreutils su una riga di comando del terminale. Il seguente elenco delle utilità principali fa parte di quella pagina di informazioni. Le utilità sono raggruppate per funzione per facilitarne la ricerca di quelle specifiche; nel terminale, evidenziare il gruppo su cui si desidera avere maggiori informazioni e premere il tasto Invio.

* Output of entire files::       cat tac nl od base32 base64
* Formatting file contents::     fmt pr fold
* Output of parts of files::     head tail split csplit
* Summarizing files::            wc sum cksum b2sum md5sum sha1sum sha2
* Operating on sorted files::    sort shuf uniq comm ptx tsort
* Operating on fields::          cut paste join
* Operating on characters::      tr expand unexpand
* Directory listing::            ls dir vdir dircolors
* Basic operations::             cp dd install mv rm shred
* Special file types::           mkdir rmdir unlink mkfifo mknod ln link readlink
* Changing file attributes::     chgrp chmod chown touch
* Disk usage::                   df du stat sync truncate
* Printing text::                echo printf yes
* Conditions::                   false true test expr
* Redirection::                  tee
* File name manipulation::       dirname basename pathchk mktemp realpath
* Working context::              pwd stty printenv tty
* User information::             id logname whoami groups users who
* System context::               date arch nproc uname hostname hostid uptime
* SELinux context::              chcon runcon
* Modified command invocation::  chroot env nice nohup stdbuf timeout
* Process control::              kill
* Delaying::                     sleep
* Numeric operations::           factor numfmt seq

Ci sono 102 utilità in questo elenco. Copre molte delle funzioni necessarie per eseguire attività di base su un host Unix o Linux. Tuttavia, mancano molte utilità di base. Ad esempio, il mount e umount i comandi non sono in questo elenco. Questi e molti altri comandi che non sono nelle coreutils GNU possono essere trovati in util-linux raccolta.

util-linux

Il util-linux pacchetto di utilità contiene molti degli altri comandi comuni utilizzati dagli amministratori di sistema. Queste utilità sono distribuite dalla Linux Kernel Organization e praticamente ognuno di questi 107 comandi erano originariamente tre raccolte separate:fileutils , shellutils e textutils —che sono stati combinati in un unico pacchetto util-linux nel 2003.

agetty          fsck.minix      mkfs.bfs        setpriv 
blkdiscard      fsfreeze        mkfs.cramfs     setsid
blkid           fstab           mkfs.minix      setterm
blockdev        fstrim          mkswap          sfdisk
cal             getopt          more            su
cfdisk          hexdump         mount           sulogin
chcpu           hwclock         mountpoint      swaplabel
chfn            ionice          namei           swapoff
chrt            ipcmk           newgrp          swapon
chsh            ipcrm           nologin         switch_root
colcrt          ipcs            nsenter         tailf
col             isosize         partx           taskset
colrm           kill            pg              tunelp
column          last            pivot_root      ul
ctrlaltdel      ldattach        prlimit         umount
ddpart          line            raw             unshare
delpart         logger          readprofile     utmpdump
dmesg           login           rename          uuidd
eject           look            renice          uuidgen
fallocate       losetup         reset           vipw
fdformat        lsblk           resizepart      wall
fdisk           lscpu           rev             wdctl
findfs          lslocks         RTC Alarm       whereis
findmnt         lslogins        runuser         wipefs
flock           mcookie         script          write
fsck            mesg            scriptreplay    zramctl
fsck.cramfs     mkfs            setarch

Alcune di queste utilità sono state ritirate e probabilmente usciranno dalla raccolta in futuro. Dovresti controllare util-linux di Wikipedia pagina per informazioni su molte delle utilità e le pagine man forniscono anche dettagli sui comandi.

Riepilogo

Queste due raccolte di utilità Linux, GNU Core Utilities e util-linux , insieme forniscono le utilità di base necessarie per amministrare un sistema Linux. Durante la ricerca in questo articolo, ho trovato diverse utilità interessanti di cui non ero mai a conoscenza. Molti di questi comandi sono raramente necessari, ma quando ne hai bisogno sono indispensabili.

Tra queste due raccolte, ci sono oltre 200 utilità Linux. Sebbene Linux abbia molti più comandi, questi sono quelli necessari per gestire le funzioni di base di un tipico host Linux.


Linux
  1. Un'introduzione all'editor vi

  2. Introduzione al comando alternatives in Linux

  3. Un'introduzione al comando diff

  4. Un'introduzione al file Linux /etc/fstab

  5. Un'introduzione al monitoraggio tramite ELK Stack

Introduzione all'utility goto shell di Linux

Un'introduzione all'emulatore di terminale DomTerm per Linux

Introduzione al file system Linux

Un'introduzione al registro dei container Quay

Core scaricato, ma il file core non si trova nella directory corrente?

Lo schermo GNU non risponde, sembra bloccato