Kaip „Tar“ failus, nustatyti failų leidimus ir rasti failus „Linux“.


Neseniai Linux Foundation pradėjo LFCS (Linux Foundation Certified Sysadmin) sertifikavimą – visiškai naują programą, kurios tikslas yra leisti asmenims atlikti pagrindines ir vidutines sistemos administravimo užduotis Linux sistemose.

Tai apima jau veikiančių sistemų ir paslaugų palaikymą, pirmojo lygio trikčių šalinimą ir analizę, taip pat galimybę nuspręsti, kada problemas perduoti inžinierių komandoms.

Serialas bus pavadintas Pasiruošimas LFCS (Linux Foundation Certified Sysadmin) 1–33 dalims ir apims šias temas:

Part 1

Kaip naudoti komandą „Sed“, kad galėtumėte manipuliuoti failais „Linux“.

Part 2

Kaip įdiegti ir naudoti „Vi/Vim“ sistemoje „Linux“.

Part 3

Kaip archyvuoti failus, nustatyti failų leidimus ir rasti failus sistemoje „Linux“

Part 4

Saugojimo įrenginių skaidymas, failų sistemų formatavimas ir apsikeitimo skaidinio konfigūravimas

Part 5

Prijunkite/atjunkite vietines ir tinklo (Samba ir NFS) failų sistemas sistemoje „Linux“.

Part 6

Skirsnių kaip RAID įrenginių surinkimas – sistemos atsarginių kopijų kūrimas ir tvarkymas

Part 7

Sistemos paleidimo procesų ir paslaugų valdymas (SysVinit, Systemd ir Upstart

Part 8

Kaip tvarkyti naudotojus ir grupes, failų leidimus ir „Sudo Access“.

Part 9

Linux paketų valdymas su Yum, RPM, Apt, Dpkg, Aptitude ir Zypper

Part 10

Pagrindinio apvalkalo scenarijaus ir failų sistemos trikčių šalinimo mokymasis

Part 11

Kaip valdyti ir kurti LVM naudojant vgcreate, lvcreate ir lvextend komandas

Part 12

Kaip naršyti Linux naudojant įdiegtą žinyno dokumentaciją ir įrankius

Part 13

Kaip sukonfigūruoti ir pašalinti „Grand Unified Bootloader“ (GRUB) triktis

Part 14

Stebėkite Linux procesų išteklių naudojimą ir nustatykite procesų limitus kiekvienam vartotojui

Part 15

Kaip nustatyti arba modifikuoti branduolio vykdymo laiko parametrus Linux sistemose

Part 16

Privalomos prieigos kontrolės įdiegimas naudojant SELinux arba AppArmor sistemoje Linux

Part 17

Kaip nustatyti prieigos kontrolės sąrašus (ACL) ir disko kvotas vartotojams ir grupėms

Part 18

Tinklo paslaugų diegimas ir automatinio paleidimo konfigūravimas paleidžiant

Part 19

Galutinis vadovas, kaip nustatyti FTP serverį, kad būtų galima leisti anoniminius prisijungimus

Part 20

Nustatykite pagrindinį rekursinį DNS serverį ir sukonfigūruokite domeno zonas

Part 21

Kaip įdiegti, apsaugoti ir suderinti MariaDB duomenų bazės serverį

Part 22

Kaip įdiegti ir konfigūruoti NFS serverį failų sistemos bendrinimui

Part 23

Kaip nustatyti „Apache“ naudojant vardu pagrįstą virtualų prieglobą su SSL sertifikatu

Part 24

Kaip nustatyti „Iptables“ užkardą, kad įgalintumėte nuotolinę prieigą prie paslaugų „Linux“.

Part 25

Kaip paversti „Linux“ maršrutizatoriumi, kad srautas būtų valdomas statiškai ir dinamiškai

Part 26

Kaip nustatyti šifruotas failų sistemas ir apsikeisti naudojant „Cryptsetup Tool“.

Part 27

Kaip stebėti sistemos naudojimą, dingimus ir „Linux“ serverių trikčių šalinimą

Part 28

Kaip nustatyti tinklo saugyklą, kad būtų galima įdiegti arba atnaujinti paketus

Part 29

Kaip patikrinti tinklo našumą, saugumą ir trikčių šalinimą

Part 30

Kaip įdiegti ir valdyti virtualias mašinas ir konteinerius

Part 31

Išmokite „Git“ pagrindus, kad galėtumėte efektyviai valdyti projektus

Part 32

IPv4 ir IPv6 adresų konfigūravimo Linux sistemoje vadovas pradedančiajam

Part 33

Tinklo sujungimo ir sujungimo Ubuntu kūrimo vadovas pradedantiesiems

Šis įrašas yra 33 pamokų serijos dalis. Šioje dalyje apžvelgsime, kaip archyvuoti/suspausti failus ir katalogus, nustatyti failų atributus ir rasti failus failų sistemoje, reikalingų LFCS<. sertifikavimo egzaminą.

Archyvavimo ir glaudinimo įrankiai, skirti Linux

Failų archyvavimo įrankis sugrupuoja failų rinkinį į vieną atskirą failą, kurio atsargines kopijas galime sukurti kelių tipų laikmenose, perkelti per tinklą arba išsiųsti el. paštu.

Dažniausiai Linux sistemoje naudojama archyvavimo priemonė yra tar komanda. Kai archyvavimo priemonė naudojama kartu su glaudinimo įrankiu, ji leidžia sumažinti disko dydį, reikalingą tiems patiems failams ir informacijai saugoti.

Linux tar Utility

tar sujungia failų grupę į vieną archyvą (dažniausiai vadinamas tar failu arba tarball). Pavadinimas iš pradžių reiškė juostų archyvatorių, tačiau turime atkreipti dėmesį, kad galime naudoti šį įrankį duomenims archyvuoti į bet kokią rašomą laikmeną (ne tik į juostas).

Tar yra paprastai naudojamas su glaudinimo įrankiu, pvz., gzip, bzip2 arba xz, kad būtų sukurtas suspaustas tarbolas.

Pagrindinė komandos tar sintaksė yra tokia:

tar [options] [pathname ...]

Kur ... reiškia išraišką, naudojamą nurodant, kuriuos failus reikia atlikti.

Dažniausiai naudojamos deguto komandos

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

Paprastai naudojami tar operacijos modifikatoriai

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

Linux Gzip, Bzip2 ir Xz Utilities

Gzip yra seniausias glaudinimo įrankis ir suteikia mažiausiai glaudinimo, o bzip2 užtikrina patobulintą glaudinimą. Be to, xz yra naujausias, bet (paprastai) užtikrina geriausią glaudinimą.

Geriausio suspaudimo pranašumai turi savo kainą: laikas, kurio reikia operacijai užbaigti, ir proceso metu naudojami sistemos ištekliai.

Paprastai šiomis programomis suglaudinti tar failai turi atitinkamai plėtinius .gz, .bz2 arba .xz. Toliau pateiktuose pavyzdžiuose naudosime šiuos failus: failas1, failas2, failas3, failas4 ir 5 failas.

Failų glaudinimas naudojant gzip, bzip2 ir xz

Sugrupuokite visus failus dabartiniame darbiniame kataloge ir suspauskite gautą paketą naudodami gzip, bzip2 ir xz (atkreipkite dėmesį į įprastą išraiška, kad nurodytumėte, kurie failai turi būti įtraukti į paketą – taip neleidžiama archyvavimo įrankiui sugrupuoti ankstesniais žingsniais sukurtų tarballų).

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

Turinio sąrašas ir failų atnaujinimas/pridėjimas Tar Archyvas

Išvardykite tarball turinį ir parodykite tą pačią informaciją kaip ir ilgas katalogų sąrašas. Atminkite, kad naujinimo arba pridėjimo operacijos negali būti tiesiogiai taikomos suspaustiems failams.

Išskleiskite tar failus

Jei reikia atnaujinti arba pridėti failą prie suglaudinto tarball, turite išspausti tar failą ir atnaujinti/pridėti prie jo, tada vėl suspausti.

tar tvf [tarball]

Vykdykite bet kurią iš šių komandų:

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

Ištrinkite arba pridėkite failus į Tar archyvą

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

ir

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

Pagaliau,

tar tvf [tarball] #again

ir palyginkite failo4 pakeitimo datą ir laiką su ta pačia informacija, kaip parodyta anksčiau.

Išskirkite failus iš atsarginių kopijų

Tarkime, kad norite sukurti atsarginę naudotojo pagrindinio katalogų kopiją. Gera sistemos administratoriaus praktika būtų (taip pat gali būti nurodyta įmonės politikoje) iš atsarginių kopijų neįtraukti visų vaizdo ir garso failų.

Galbūt pirmasis jūsų būdas būtų iš atsarginės kopijos neįtraukti visų failų su plėtiniu .mp3 arba .mp4 (ar kitais plėtiniais). Ką daryti, jei turite sumanų vartotoją, kuris gali pakeisti plėtinį į .txt arba .bkp, toks požiūris jums neduos daug naudos.

Norėdami aptikti garso ar vaizdo failą, turite patikrinti jo failo tipą naudodami failą. Šis apvalkalo scenarijus atliks šį darbą.

#!/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/*

Atkurkite atsarginę kopiją su dervos išsaugojimo leidimais

Tada galite atkurti atsarginę kopiją į pradinį vartotojo namų katalogą (šiame pavyzdyje naudotojo_atkūrimas), išsaugodami leidimus, naudodami šią komandą.

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

Failų paieškai naudokite komandą Rasti

Komanda rasti naudojama rekursyviai per katalogų medžius ieškoti failų ar katalogų, kurie atitinka tam tikras charakteristikas, ir tada gali spausdinti atitinkančius failus ar katalogus arba atlikti kitas su atitiktimis susijusias operacijas.

Paprastai ieškosime pagal pavadinimą, savininką, grupę, tipą, leidimus, datą ir dydį.

Pagrindinė komandos rasti sintaksė yra tokia:

find [directory_to_search] [expression]

Failų paieška rekursyviai pagal dydį

Raskite visus failus (-f) dabartiniame kataloge (.) ir toliau esančiuose pakatalogiuose 2 (-maxdepth 3 apima dabartinį darbo katalogą ir 2 lygiais žemyn), kurio dydis (-size) yra didesnis nei 2 MB.

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

Tam tikrus kriterijus atitinkančių failų radimas ir ištrynimas

Failai su 777 leidimais kartais laikomi atviromis durimis išoriniams užpuolikams. Bet kuriuo atveju nėra saugu leisti niekam nieko daryti su failais. Mes imsimės gana agresyvaus požiūrio ir juos ištrinsime! („{}“ + naudojamas paieškos rezultatams „rinkti“).

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

Failų paieška pagal laiko žymes

Ieškokite /etc konfigūracijos failų, kurie buvo pasiekti (-atime) arba modifikuoti (-mtime) (+180) arba mažiau (-180) nei prieš 6 mėnesių arba lygiai prieš 6 mėnesių (180) .

Pakeiskite šią komandą, kaip nurodyta toliau pateiktame pavyzdyje:

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

Nustatykite failo teises ir pagrindinius atributus

Pirmieji 10 simbolių ls -l išvestyje yra failo atributai. Pirmasis iš šių simbolių naudojamas failo tipui nurodyti:

  • - : įprastas failas
  • -d : katalogas
  • -l : simbolinė nuoroda
  • -c : simbolių įrenginys (kuris duomenis laiko baitų srautu, t. y. terminalu)
  • -b : blokinis įrenginys (kuris tvarko duomenis blokais, t. y. saugojimo įrenginius)

Kiti devyni failo atributų simboliai vadinami failo režimu ir reiškia skaitymą (r), rašymą (w) ir vykdymą (x ). ) failo savininko, failo grupės savininko ir kitų naudotojų (dažniausiai vadinamų „pasauliu“) leidimai.

Nors failo skaitymo leidimas leidžia atidaryti ir skaityti tą patį, tas pats leidimas kataloge leidžia įtraukti jo turinį į sąrašą, jei taip pat nustatytas vykdymo leidimas. Be to, leidimas vykdyti failą leidžia jį tvarkyti kaip programą ir paleisti, o kataloge leidžia tą patį įrašyti į jį.

Failų leidimai keičiami komanda chmod, kurios pagrindinė sintaksė yra tokia:

chmod [new_mode] file

Kur new_mode yra aštuntasis skaičius arba išraiška, nurodanti naujus leidimus.

Aštuntąjį skaičių galima konvertuoti iš jo dvejetainio ekvivalento, kuris apskaičiuojamas pagal norimus savininko, grupės ir pasaulio failo leidimus, taip:

Tam tikro leidimo buvimas lygus 2 (r=22, w=21, x=20) laipsniui ), o jo nebuvimas lygus 0. Pavyzdžiui:

Norėdami nustatyti failo leidimus, kaip nurodyta pirmiau aštuntaine forma, įveskite:

chmod 744 myfile

Taip pat galite nustatyti failo režimą naudodami išraišką, kuri nurodo savininko teises raide u, grupės savininko teises raide g, o likusias - . o.

Visi šie „asmenys“ gali būti vaizduojami vienu metu raide a. Leidimai suteikiami (arba atšaukiami) atitinkamai su ženklais + arba -.

Pašalinkite scenarijaus vykdymo leidimą visiems vartotojams

Kaip paaiškinome anksčiau, tam tikrą leidimą galime atšaukti pridėdami prieš jį minuso ženklą ir nurodydami, ar jį reikia atšaukti savininkui, grupės savininkui ar visiems vartotojams. Toliau pateiktą vieną eilutę galima interpretuoti taip: Pakeiskite režimą visiems (a) naudotojams, atšaukkite (-) vykdymo leidimą (x) .

chmod a-x backup.sh

Failo skaitymo, rašymo ir vykdymo leidimų suteikimas savininkui ir grupės savininkui bei skaitymo leidimai visam pasauliui.

Kai failo leidimams nustatyti naudojame 3 skaitmenų aštuntąjį skaičių, pirmasis skaitmuo nurodo savininko teises, antrasis skaitmuo – grupės savininkui, o trečias skaitmuo – visiems kitiems:

  • Savininkas: (r=22 + w=21 + x=20=7)
  • Grupės savininkas: (r=22 + w=21 + x=20=7)
  • Pasaulis: (r=22 + w=0 + x=0=4),
chmod 774 myfile

Laikui bėgant ir praktikuodami galėsite nuspręsti, kuris failo režimo keitimo būdas yra tinkamiausias kiekvienu atveju. Ilgame katalogų sąraše taip pat rodomas failo savininkas ir jo grupės savininkas (tai yra elementari, tačiau veiksminga prieigos prie sistemos failų kontrolė):

Failo nuosavybė pakeičiama komanda chown. Savininkas ir grupės savininkas gali būti keičiami vienu metu arba atskirai. Jo pagrindinė sintaksė yra tokia:

chown user:group file

Kur turi būti bent vartotojas ar grupė.

Chown komandų pavyzdžiai

Failo savininko pakeitimas į tam tikrą vartotoją.

chown gacanepa sent

Failo savininko ir grupės pakeitimas į tam tikrą porą naudotojas: grupė.

chown gacanepa:gacanepa TestFile

Tik failo grupės savininko pakeitimas į tam tikrą grupę. Atkreipkite dėmesį į dvitaškį prieš grupės pavadinimą.

chown :gacanepa email_body.txt
Išvada

Kaip sistemos administratorius, turite žinoti, kaip kurti ir atkurti atsargines kopijas, kaip rasti failus sistemoje ir pakeisti jų atributus, taip pat keletą gudrybių, kurios gali palengvinti jūsų gyvenimą ir neleisti susidurti su problemomis ateityje.

Tikiuosi, kad šiame straipsnyje pateikti patarimai padės jums pasiekti šį tikslą. Nedvejodami pridėkite savo informaciją ir idėjas komentarų skiltyje bendruomenės labui. Ačiū iš anksto!

Dabar galima įsigyti el. LFCS knygą. Užsisakykite kopiją šiandien ir pradėkite savo kelią tapti sertifikuotu Linux sistemos administratoriumi!

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

Paskutinis, bet ne mažiau svarbus dalykas, apsvarstykite galimybę įsigyti egzamino kuponą naudodami šias nuorodas, kad gautumėte nedidelį komisinį atlyginimą, kuris padės mums nuolat atnaujinti šią knygą.