GNU/Linux >> Znalost Linux >  >> Linux

Úvod do GNU Core Utilities

Dvě sady nástrojů – GNU Core Utilities a util-linux —obsahuje mnoho nejzákladnějších a pravidelně používaných nástrojů správce systému Linux. Jejich základní funkce umožňují správcům systému provádět mnoho úkolů potřebných pro správu počítače se systémem Linux, včetně správy a manipulace s textovými soubory, adresáři, datovými toky, úložnými médii, ovládacími prvky procesů, souborovými systémy a mnohem více.

Tyto nástroje jsou nepostradatelné, protože bez nich není možné provádět žádnou užitečnou práci na počítači Unix nebo Linux. Vzhledem k jejich důležitosti je pojďme prozkoumat.

GNU coreutils

Linuxový terminál

  • 7 nejlepších emulátorů terminálu pro Linux
  • 10 nástrojů příkazového řádku pro analýzu dat v systému Linux
  • Stáhnout nyní:SSH cheat sheet
  • Cheat sheet pro pokročilé příkazy systému Linux
  • Výukové programy příkazového řádku systému Linux

Abychom pochopili původ GNU Core Utilities, musíme si udělat krátký výlet na stroji Wayback do počátků Unixu v Bell Labs. Unix byl napsán tak, aby Ken Thompson, Dennis Ritchie, Doug McIlroy a Joe Ossanna mohli pokračovat v něčem, co začali při práci na velkém multi-taskingovém a víceuživatelském počítačovém projektu zvaném Multics. Tou maličkostí byla hra s názvem Space Travel. Jak zůstává pravdou i dnes, zdá se, že to vždy byli hráči, kdo ženou kupředu výpočetní technologii. Tento nový operační systém byl mnohem omezenější než Multics, protože se mohli přihlásit pouze dva uživatelé najednou, takže se jmenoval Unics. Tento název byl později změněn na Unix.

Postupem času se ukázalo, že Unix byl tak úspěšný, že jej Bell Labs začaly v podstatě rozdávat univerzitám a později společnostem za náklady na média a dopravu. V té době byl software na systémové úrovni sdílen mezi organizacemi a programátory, když pracovali na dosažení společných cílů v kontextu správy systému.

Nakonec se PHB v AT&T rozhodli, že by měli vydělávat peníze na Unixu, a začali používat restriktivnější – a dražší – licencování. To se odehrávalo v době, kdy se software stával více proprietární, omezenější a uzavřenější. Stávalo se nemožným sdílet software s ostatními uživateli a organizacemi.

Některým lidem se to nelíbilo a bojovali s tím svobodným softwarem. Richard M. Stallman, neboli RMS, vedl skupinu rebelů, kteří se pokoušeli napsat otevřený a volně dostupný operační systém nazývaný GNU Operating System. Tato skupina vytvořila GNU Utilities, ale nevytvořila životaschopné jádro.

Když Linus Torvalds poprvé napsal a zkompiloval linuxové jádro, potřeboval sadu velmi základních systémových utilit, aby vůbec začal vykonávat okrajově užitečnou práci. Jádro neposkytuje příkazy ani žádný typ příkazového shellu, jako je Bash. Sama o sobě je k ničemu. Linus tedy použil volně dostupné GNU Core Utilities a překompiloval je pro Linux. To mu poskytlo kompletní, i když zcela základní operační systém.

O všech jednotlivých programech, které tvoří GNU Utilities, se můžete dozvědět zadáním příkazu info coreutils na příkazovém řádku terminálu. Následující seznam hlavních nástrojů je součástí této informační stránky. Nástroje jsou seskupeny podle funkcí, aby bylo snazší najít konkrétní; v terminálu zvýrazněte skupinu, o které chcete získat další informace, a stiskněte klávesu Enter.

* 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

V tomto seznamu je 102 utilit. Pokrývá mnoho funkcí nezbytných k provádění základních úkolů na hostitelském systému Unix nebo Linux. Chybí však mnoho základních utilit. Například mount a umount příkazy nejsou v tomto seznamu. Tyto a mnoho dalších příkazů, které nejsou v GNU coreutils, lze nalézt v util-linux kolekce.

util-linux

util-linux balíček utilit obsahuje mnoho dalších běžných příkazů, které správci systému používají. Tyto nástroje distribuuje organizace Linux Kernel Organization a prakticky každý z těchto 107 příkazů byly původně tři samostatné kolekce — fileutils , shellutils a textutils —které byly sloučeny do jediného balíčku util-linux v roce 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

Některé z těchto nástrojů byly zastaralé a pravděpodobně někdy v budoucnu vypadnou z kolekce. Měli byste zkontrolovat util-linux Wikipedie stránku s informacemi o mnoha nástrojích a manuálové stránky také poskytují podrobnosti o příkazech.

Shrnutí

Tyto dvě kolekce linuxových nástrojů, GNU Core Utilities a util-linux , společně poskytují základní nástroje potřebné pro správu systému Linux. Když jsem zkoumal tento článek, našel jsem několik zajímavých nástrojů, o kterých jsem nikdy nevěděl. Mnoho z těchto příkazů je potřeba jen zřídka, ale když je potřebujete, jsou nepostradatelné.

Mezi těmito dvěma kolekcemi je více než 200 linuxových nástrojů. Zatímco Linux má mnohem více příkazů, jsou to ty, které jsou potřeba ke správě základních funkcí typického hostitele Linuxu.


Linux
  1. Úvod do linuxových příkazů chgrp a newgrp

  2. Úvod do linuxového příkazu chmod

  3. Úvod do linuxového příkazu chown

  1. Úvod do GNU Autotools

  2. Úvod do editoru vi

  3. Úvod do souboru Linux /etc/fstab

  1. Více forem součtu v základních službách?

  2. Vypsáno jádro, ale soubor jádra není v aktuálním adresáři?

  3. Jak zkopírovat vyrovnávací paměť GNU Screen copy do schránky?