Vyhledávání na webu

Jak tarovat soubory, nastavit oprávnění k souborům a najít soubory v Linuxu


Nedávno Linux Foundation zahájila certifikaci LFCS (Linux Foundation Certified Sysadmin), zcela nový program, jehož účelem je umožnit jednotlivcům provádět základní až středně pokročilé úkoly správy systému na systémech Linux.

To zahrnuje podporu již běžících systémů a služeb, spolu s řešením problémů a analýzou první úrovně a navíc možnost rozhodnout, kdy eskalovat problémy inženýrským týmům.

Série se bude jmenovat Příprava na LFCS (Linux Foundation Certified Sysadmin) části 1 až 33 a pokryje následující témata:

Part 1

Jak používat příkaz „Sed“ k manipulaci se soubory v Linuxu

Part 2

Jak nainstalovat a používat Vi/Vim v Linuxu

Part 3

Jak archivovat soubory, nastavovat oprávnění k souborům a vyhledávat soubory v Linuxu

Part 4

Rozdělení úložných zařízení, formátování souborových systémů a konfigurace odkládacího oddílu

Part 5

Připojit/odpojit místní a síťové (Samba a NFS) souborové systémy v Linuxu

Part 6

Sestavení oddílů jako zařízení RAID – Vytváření a správa záloh systému

Part 7

Správa procesů a služeb spouštění systému (SysVinit, Systemd a Upstart

Part 8

Jak spravovat uživatele a skupiny, oprávnění k souborům a sudo přístup

Part 9

Linux Package Management s Yum, RPM, Apt, Dpkg, Aptitude a Zypper

Part 10

Naučte se základní skriptování Shell a odstraňování problémů se souborovým systémem

Part 11

Jak spravovat a vytvářet LVM pomocí příkazů vgcreate, lvcreate a lvextend

Part 12

Jak prozkoumat Linux pomocí nainstalované dokumentace nápovědy a nástrojů

Part 13

Jak konfigurovat a řešit problémy s Grand Unified Bootloader (GRUB)

Part 14

Monitorujte využití zdrojů linuxových procesů a nastavujte limity procesů na základě jednotlivých uživatelů

Part 15

Jak nastavit nebo upravit parametry běhu jádra v systémech Linux

Part 16

Implementace povinného řízení přístupu pomocí SELinux nebo AppArmor v Linuxu

Part 17

Jak nastavit seznamy řízení přístupu (ACL) a diskové kvóty pro uživatele a skupiny

Part 18

Instalace síťových služeb a konfigurace automatického spouštění při spouštění

Part 19

Dokonalý průvodce nastavením FTP serveru pro anonymní přihlášení

Part 20

Nastavte základní server DNS s rekurzivním ukládáním do mezipaměti a nakonfigurujte zóny pro doménu

Part 21

Jak nainstalovat, zabezpečit a vyladit výkon databázového serveru MariaDB

Part 22

Jak nainstalovat a nakonfigurovat server NFS pro sdílení systému souborů

Part 23

Jak nastavit Apache s virtuálním hostingem založeným na názvu s certifikátem SSL

Part 24

Jak nastavit Iptables Firewall pro povolení vzdáleného přístupu ke službám v Linuxu

Part 25

Jak proměnit Linux ve směrovač, který zvládne provoz staticky a dynamicky

Part 26

Jak nastavit šifrované systémy souborů a vyměnit je pomocí nástroje Cryptsetup Tool

Part 27

Jak sledovat využití systému, výpadky a odstraňování problémů se servery Linux

Part 28

Jak nastavit síťové úložiště pro instalaci nebo aktualizaci balíčků

Part 29

Jak auditovat výkon sítě, zabezpečení a odstraňování problémů

Part 30

Jak nainstalovat a spravovat virtuální stroje a kontejnery

Part 31

Naučte se základy Git pro efektivní správu projektů

Part 32

Průvodce pro začátečníky konfigurací IPv4 a IPv6 adres v Linuxu

Part 33

Průvodce pro začátečníky vytvářením síťových vazeb a přemostění v Ubuntu

Tento příspěvek je částí 3 série 33 výukových programů, zde v této části se budeme zabývat tím, jak archivovat/komprimovat soubory a adresáře, nastavovat atributy souborů a najít soubory v souborovém systému, které jsou vyžadovány pro LFCS< certifikační zkouška.

Archivační a komprimační nástroje pro Linux

Nástroj pro archivaci souborů seskupuje sadu souborů do jednoho samostatného souboru, který můžeme zálohovat na několik typů médií, přenášet po síti nebo odesílat e-mailem.

Nejčastěji používaným archivačním nástrojem v Linuxu je příkaz tar. Když se archivační nástroj používá spolu s nástrojem pro kompresi, umožňuje zmenšit velikost disku, která je potřebná k uložení stejných souborů a informací.

Linux tar Utility

tar sdružuje skupinu souborů do jednoho archivu (běžně nazývaného soubor tar nebo tarball). Název původně znamenal páskový archivátor, ale musíme poznamenat, že tento nástroj můžeme použít k archivaci dat na jakýkoli druh zapisovatelného média (nejen na pásky).

Tar se běžně používá s komprimačním nástrojem, jako je gzip, bzip2 nebo xz k vytvoření komprimovaného tarballu.

Základní syntaxe příkazu tar je následující:

tar [options] [pathname ...]

Kde ... představuje výraz používaný k určení, se kterými soubory se má pracovat.

Nejčastěji používané příkazy Tar

Long option Abbreviation Description
 –create  c  Creates a tar archive
 –concatenate  A  Appends tar files to an archive
 –append  r  Appends files to the end of an archive
 –update  u  Appends files newer than copy in archive
 –diff or –compare  d  Find differences between archive and file system
 –file archive  f  Use archive file or device ARCHIVE
 –list  t  Lists the contents of a tarball
 –extract or –get  x  Extracts files from an archive

Normálně používané modifikátory operace dehtu

Long option Abbreviation Description
 –directory dir  C  Changes to directory dir before performing operations
 –same-permissions  p  Preserves original permissions
 –verbose  v  Lists all files read or extracted. When this flag is used along with –list, the file sizes, ownership, and time stamps are displayed.
 –verify  W  Verifies the archive after writing it
 –exclude file  —  Excludes files from the archive
 –exclude=pattern  X  Exclude files, given as a PATTERN
 –gzip or –gunzip  z  Processes an archive through Gzip
 –bzip2  j  Processes an archive through bzip2
 –xz  J  Processes an archive through xz

Linuxové nástroje Gzip, Bzip2 a Xz

Gzip je nejstarší komprimační nástroj a poskytuje nejnižší kompresi, zatímco bzip2 poskytuje vylepšenou kompresi. Kromě toho je xz nejnovější, ale (obvykle) poskytuje nejlepší kompresi.

Výhody nejlepší komprese mají svou cenu: čas potřebný k dokončení operace a systémové prostředky použité během procesu.

Normálně mají soubory tar komprimované těmito nástroji přípony .gz, .bz2 nebo .xz. V následujících příkladech budeme používat tyto soubory: soubor1, soubor2, soubor3, soubor4 a soubor5.

Komprese souborů pomocí gzip, bzip2 a xz

Seskupte všechny soubory v aktuálním pracovním adresáři a zkomprimujte výsledný balíček pomocí gzip, bzip2 a xz (všimněte si prosím použití běžného výraz pro určení, které soubory mají být zahrnuty do balíčku – to má zabránit archivačnímu nástroji seskupovat tarbally vytvořené v předchozích krocích).

tar czf myfiles.tar.gz file[0-9]
tar cjf myfiles.tar.bz2 file[0-9]
tar cJf myfile.tar.xz file[0-9]

Seznam obsahu a aktualizace/připojování souborů archivu Tar

Vypište obsah tarballu a zobrazte stejné informace jako dlouhý výpis adresáře. Pamatujte, že operace aktualizace nebo připojení nelze použít přímo na komprimované soubory.

Dekomprimujte soubory Tar

Pokud potřebujete aktualizovat nebo přidat soubor do komprimovaného tarballu, musíte soubor tar rozbalit a aktualizovat/přidat k němu a poté jej znovu zkomprimovat.

tar tvf [tarball]

Spusťte některý z následujících příkazů:

gzip -d myfiles.tar.gz	[#1] 
bzip2 -d myfiles.tar.bz2	[#2] 
xz -d myfiles.tar.xz 		[#3] 

Odstraňte nebo přidejte soubory do archivu Tar

tar --delete --file myfiles.tar file4 (deletes the file inside the tarball)
tar --update --file myfiles.tar file4 (adds the updated file)

a

gzip myfiles.tar		[ if you choose #1 above ]
bzip2 myfiles.tar		[ if you choose #2 above ]
xz myfiles.tar 		[ if you choose #3 above ]

Konečně,

tar tvf [tarball] #again

a porovnejte datum a čas změny souboru4 se stejnými informacemi, jaké byly uvedeny dříve.

Vyloučit soubory ze záloh

Předpokládejme, že chcete provést zálohu domovských adresářů uživatele. Dobrou praxí správce systému by bylo (může být také specifikováno firemními zásadami) vyloučit ze záloh všechny video a audio soubory.

Možná by vaším prvním přístupem bylo vyloučit ze zálohy všechny soubory s příponou .mp3 nebo .mp4 (nebo jinými příponami). Co když máte chytrého uživatele, který dokáže změnit příponu na .txt nebo .bkp, váš přístup vám moc nepomůže.

Chcete-li detekovat zvukový nebo video soubor, musíte pomocí souboru zkontrolovat jeho typ souboru. Tuto práci udělá následující skript shellu.

#!/bin/bash
Pass the directory to backup as first argument.
DIR=$1
Create the tarball and compress it. Exclude files with the MPEG string in its file type.
-If the file type contains the string mpeg, $? (the exit status of the most recently executed command) expands to 0, and the filename is redirected to the exclude option. Otherwise, it expands to 1.
-If $? equals 0, add the file to the list of files to be backed up.
tar X <(for i in $DIR/*; do file $i | grep -i mpeg; if [ $? -eq 0 ]; then echo $i; fi;done) -cjf backupfile.tar.bz2 $DIR/*

Obnovte zálohu s oprávněními pro zachování Tar

Poté můžete pomocí následujícího příkazu obnovit zálohu do domovského adresáře původního uživatele (v tomto příkladu user_restore) se zachováním oprávnění.

tar xjf backupfile.tar.bz2 --directory user_restore --same-permissions

Použití příkazu Najít k vyhledání souborů

Příkaz find se používá k rekurzivnímu vyhledávání souborů nebo adresářů v adresářových stromech, které odpovídají určitým charakteristikám, a poté může odpovídající soubory nebo adresáře buď vytisknout, nebo s nimi provést jiné operace.

Normálně budeme hledat podle názvu, vlastníka, skupiny, typu, oprávnění, data a velikosti.

Základní syntaxe příkazu find je následující:

find [directory_to_search] [expression]

Vyhledávání souborů rekurzivně podle velikosti

Najít všechny soubory (-f) v aktuálním adresáři (.) a 2 podadresářích níže (-maxdepth 3 zahrnuje aktuální pracovní adresář a 2 úrovně níže), jehož velikost (-size) je větší než 2 MB.

find . -maxdepth 3 -type f -size +2M

Hledání a mazání souborů, které splňují určitá kritéria

Soubory s oprávněními 777 jsou někdy považovány za otevřené dveře pro externí útočníky. V každém případě není bezpečné nechat kohokoli se soubory cokoliv dělat. Zaujmeme poměrně agresivní přístup a smažeme je! (‚{}+ se používá ke „sbírání“ výsledků vyhledávání).

find /home/user -perm 777 -exec rm '{}' +

Hledání souborů na základě časových razítek

Vyhledejte konfigurační soubory v /etc, které byly zpřístupněny (-atime) nebo upraveny (-mtime) více (+180) nebo méně (-180) než před 6 měsíci nebo přesně před 6 měsíci (180) .

Upravte následující příkaz podle níže uvedeného příkladu:

find /etc -iname "*.conf" -mtime -180 -print

Nastavte oprávnění k souboru a základní atributy

Prvních 10 znaků ve výstupu ls -l jsou atributy souboru. První z těchto znaků se používá k označení typu souboru:

  • - : běžný soubor
  • -d : adresář
  • -l : symbolický odkaz
  • -c : znakové zařízení (které s daty zachází jako s proudem bajtů, tj. s terminálem)
  • -b : blokové zařízení (které zpracovává data v blocích, tj. úložná zařízení)

Dalších devět znaků atributů souboru se nazývá režim souboru a představuje čtení (r), zápis (w) a spouštění (x) oprávnění vlastníka souboru, vlastníka skupiny souboru a ostatních uživatelů (běžně označovaných jako „svět “).

Zatímco oprávnění ke čtení souboru umožňuje jeho otevření a čtení, stejné oprávnění k adresáři umožňuje vypsat jeho obsah, pokud je také nastaveno oprávnění ke spuštění. Kromě toho oprávnění ke spuštění v souboru umožňuje, aby s ním bylo zacházeno jako s programem a spouštěn, zatímco v adresáři umožňuje totéž do něj cd’ovat.

Oprávnění k souboru se mění pomocí příkazu chmod, jehož základní syntaxe je následující:

chmod [new_mode] file

Kde new_mode je buď osmičkové číslo, nebo výraz, který určuje nová oprávnění.

Osmičkové číslo lze převést z jeho binárního ekvivalentu, který se vypočítá z požadovaných oprávnění k souboru pro vlastníka, skupinu a svět, a to následovně:

Přítomnost určitého oprávnění se rovná mocnině 2 (r=22, w=21, x=20 ), zatímco jeho nepřítomnost se rovná 0. Například:

Chcete-li nastavit oprávnění souboru jako výše v osmičkovém tvaru, zadejte:

chmod 744 myfile

Můžete také nastavit režim souboru pomocí výrazu, který označuje práva vlastníka písmenem u, práva vlastníka skupiny písmenem g a zbytek pomocí o.

Všichni tito „jednotlivci“ mohou být současně reprezentováni písmenem a. Oprávnění se udělují (nebo ruší) pomocí znaků + nebo -, v daném pořadí.

Odebrat oprávnění ke spouštění ve skriptu všem uživatelům

Jak jsme vysvětlili dříve, určité oprávnění můžeme zrušit tak, že před něj přidáme znaménko mínus a uvedeme, zda je třeba je odvolat vlastníkovi, vlastníkovi skupiny nebo všem uživatelům. Níže uvedený jednoduchý řádek lze interpretovat následovně: Změnit režim pro všechny (a) uživatele, zrušit (-) spustit oprávnění (x) .

chmod a-x backup.sh

Udělení oprávnění čtení, zápis a spouštění pro soubor vlastníkovi a vlastníkovi skupiny a oprávnění ke čtení celému světu.

Když k nastavení oprávnění pro soubor používáme 3místné osmičkové číslo, první číslice označuje oprávnění pro vlastníka, druhá číslice pro vlastníka skupiny a třetí číslice pro všechny ostatní:

  • Vlastník: (r=22 + w=21 + x=20=7)
  • Vlastník skupiny: (r=22 + w=21 + x=20=7)
  • Svět: (r=22 + w=0 + x=0=4),
chmod 774 myfile

Časem a praxí se budete moci rozhodnout, která metoda změny režimu souboru vám v každém případě nejlépe vyhovuje. Dlouhý seznam adresářů také ukazuje vlastníka souboru a vlastníka jeho skupiny (které slouží jako základní, ale efektivní řízení přístupu k souborům v systému):

Vlastnictví souboru se změní pomocí příkazu chown. Vlastníka a vlastníka skupiny lze změnit současně nebo samostatně. Jeho základní syntaxe je následující:

chown user:group file

Kde musí být přítomen alespoň uživatel nebo skupina.

Příklady příkazů Chown

Změna vlastníka souboru na určitého uživatele.

chown gacanepa sent

Změna vlastníka a skupiny souboru na konkrétní pár uživatel:skupina.

chown gacanepa:gacanepa TestFile

Změna pouze vlastníka skupiny souboru na určitou skupinu. Poznamenejte si dvojtečku před názvem skupiny.

chown :gacanepa email_body.txt
Závěr

Jako správce systému musíte vědět, jak vytvářet a obnovovat zálohy, jak hledat soubory ve vašem systému a měnit jejich atributy, spolu s několika triky, které vám mohou usnadnit život a zabrání vám v budoucích problémech.

Doufám, že vám tipy uvedené v tomto článku pomohou dosáhnout tohoto cíle. Neváhejte přidávat své vlastní informace a nápady do sekce komentářů ve prospěch komunity. Díky předem!

eKniha LFCS je nyní k dispozici k zakoupení. Objednejte si svou kopii ještě dnes a začněte svou cestu stát se certifikovaným správcem systému Linux!

Product Name Price Buy
The Linux Foundation’s LFCS Certification Preparation Guide $19.99 [Buy Now]

V neposlední řadě zvažte nákup voucheru na zkoušku pomocí následujících odkazů, abyste nám vydělali malou provizi, která nám pomůže tuto knihu aktualizovat.