Kako tarirati datoteke, postaviti dozvole za datoteke i pronaći datoteke u Linuxu
Nedavno je Linux fondacija pokrenula LFCS (Linux Foundation Certified Sysadmin) certifikaciju, potpuno novi program čija je svrha omogućiti pojedincima da obavljaju osnovne do srednje administrativne zadatke na Linux sistemima.
Ovo uključuje podršku već pokrenutim sistemima i uslugama, zajedno sa rješavanjem problema i analizom na prvom nivou, plus mogućnost odlučivanja kada eskalirati probleme inženjerskim timovima.
Serija će se zvati Priprema za LFCS (Linux Foundation Certified Sysadmin) dijelovi od 1 do 33 i pokrivati sljedeće teme:
- Part 1
Kako koristiti naredbu 'Sed' za manipulaciju datotekama u Linuxu
- Part 2
Kako instalirati i koristiti Vi/Vim u Linuxu
- Part 3
-
Kako arhivirati datoteke, postaviti dozvole za datoteke i pronaći datoteke u Linuxu
- Part 4
Particioniranje uređaja za skladištenje, formatiranje sistema datoteka i konfigurisanje zamjenske particije
- Part 5
Montiraj/Demontiraj lokalne i mrežne (Samba & NFS) datotečne sisteme u Linuxu
- Part 6
Sastavljanje particija kao RAID uređaja – Kreiranje i upravljanje rezervnim kopijama sistema
- Part 7
Upravljanje procesima pokretanja sistema i uslugama (SysVinit, Systemd i Upstart
- Part 8
Kako upravljati korisnicima i grupama, dozvolama za datoteke i Sudo pristupom
- Part 9
Upravljanje Linux paketima sa Yum, RPM, Apt, Dpkg, Aptitude i Zypper
- Part 10
Učenje osnovnih shell skriptova i rješavanje problema sa sistemom datoteka
- Part 11
Kako upravljati i kreirati LVM koristeći naredbe vgcreate, lvcreate i lvextend
- Part 12
Kako istražiti Linux s instaliranom dokumentacijom pomoći i alatima
- Part 13
-
Kako konfigurirati i riješiti probleme Grand Unified Bootloader (GRUB)
- Part 14
Nadgledajte korištenje resursa Linux procesa i postavite ograničenja procesa po korisniku
- Part 15
Kako postaviti ili izmijeniti parametre vremena izvođenja kernela u Linux sistemima
- Part 16
Implementacija obavezne kontrole pristupa sa SELinuxom ili AppArmorom u Linuxu
- Part 17
Kako postaviti liste kontrole pristupa (ACL) i kvote diska za korisnike i grupe
- Part 18
Instaliranje mrežnih usluga i konfiguriranje automatskog pokretanja pri pokretanju
- Part 19
Ultimativni vodič za postavljanje FTP servera za omogućavanje anonimnih prijava
- Part 20
Postavite osnovni DNS server za rekurzivno keširanje i konfigurirajte zone za domenu
- Part 21
Kako instalirati, osigurati i podesiti performanse MariaDB servera baze podataka
- Part 22
Kako instalirati i konfigurirati NFS server za dijeljenje sistema datoteka
- Part 23
-
Kako podesiti Apache sa virtuelnim hostingom zasnovanim na imenu sa SSL sertifikatom
- Part 24
Kako postaviti Iptables Firewall da omogućite daljinski pristup uslugama u Linuxu
- Part 25
Kako pretvoriti Linux u ruter da upravlja prometom statički i dinamički
- Part 26
Kako postaviti šifrirane sisteme datoteka i zamijeniti ih pomoću Cryptsetup alata
- Part 27
Kako pratiti korištenje sistema, prekide rada i rješavanje problema na Linux serverima
- Part 28
Kako postaviti mrežno spremište za instaliranje ili ažuriranje paketa
- Part 29
Kako izvršiti reviziju mrežnih performansi, sigurnosti i rješavanja problema
- Part 30
Kako instalirati i upravljati virtuelnim mašinama i kontejnerima
- Part 31
Naučite osnove Gita za efikasno upravljanje projektima
- Part 32
Vodič za početnike za konfiguriranje IPv4 i IPv6 adresa u Linuxu
- Part 33
Vodič za početnike za stvaranje mrežnog povezivanja i premošćavanja u Ubuntuu
Ovaj post je dio 3 serije od 33 tutorijala, ovdje u ovom dijelu ćemo pokriti kako arhivirati/komprimirati datoteke i direktorije, postaviti atribute datoteka i pronaći datoteke u sistemu datoteka koje su potrebne za LFCS< sertifikacioni ispit.
Alati za arhiviranje i kompresiju za Linux
Alat za arhiviranje datoteka grupiše skup datoteka u jednu samostalnu datoteku koju možemo sigurnosno kopirati na nekoliko vrsta medija, prenijeti preko mreže ili poslati putem e-pošte.
Najčešće korišteni uslužni program za arhiviranje u Linuxu je naredba tar. Kada se uslužni program za arhiviranje koristi zajedno sa alatom za kompresiju, to omogućava smanjenje veličine diska koja je potrebna za pohranjivanje istih datoteka i informacija.
Linux tar Utility
tar spaja grupu fajlova u jednu arhivu (obično se naziva tar fajl ili tarball). Ime je izvorno značilo arhivator trake, ali moramo napomenuti da ovaj alat možemo koristiti za arhiviranje podataka na bilo koju vrstu medija za pisanje (ne samo na trake).
Tar se obično koristi sa alatom za kompresiju kao što je gzip, bzip2 ili xz za proizvodnju komprimovanog tarball-a.
Osnovna sintaksa naredbe tar je sljedeća:
tar [options] [pathname ...]
Gdje ...
predstavlja izraz koji se koristi za određivanje na koje datoteke treba djelovati.
Najčešće korištene Tar naredbe
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 |
Normalno korišteni modifikatori rada tar
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 i Xz Utilities
Gzip je najstariji alat za kompresiju i pruža najmanju kompresiju, dok bzip2 pruža poboljšanu kompresiju. Osim toga, xz je najnoviji, ali (obično) pruža najbolju kompresiju.
Prednosti najbolje kompresije imaju svoju cijenu: vrijeme koje je potrebno za završetak operacije i sistemski resursi koji se koriste tokom procesa.
Obično, tar datoteke komprimirane ovim uslužnim programima imaju ekstenzije .gz
, .bz2
, odnosno .xz
. U sljedećim primjerima koristit ćemo ove datoteke: file1, file2, file3, file4, i file5.
Kompresovanje datoteka pomoću gzip, bzip2 i xz
Grupirajte sve datoteke u trenutnom radnom direktoriju i komprimirajte rezultirajući paket pomoću gzip, bzip2 i xz (imajte na umu upotrebu običnog izraz za navođenje koje datoteke treba uključiti u paket – to je da bi se spriječilo da alat za arhiviranje grupiše tarball-ove kreirane u prethodnim koracima).
tar czf myfiles.tar.gz file[0-9]
tar cjf myfiles.tar.bz2 file[0-9]
tar cJf myfile.tar.xz file[0-9]
Lista sadržaja i ažuriranje/dodavanje datoteka Tar Archive
Navedite sadržaj tarball-a i prikažite iste informacije kao dugačak popis direktorija. Imajte na umu da se operacije ažuriranja ili dodavanja ne mogu primijeniti direktno na komprimirane datoteke.
Dekomprimirajte Tar datoteke
Ako trebate ažurirati ili dodati datoteku komprimiranom tarball-u, trebate dekomprimirati tar datoteku i ažurirati/dodati je, a zatim je ponovo komprimirati.
tar tvf [tarball]
Pokrenite bilo koju od sljedećih naredbi:
gzip -d myfiles.tar.gz [#1]
bzip2 -d myfiles.tar.bz2 [#2]
xz -d myfiles.tar.xz [#3]
Izbrišite ili dodajte datoteke u Tar arhivu
tar --delete --file myfiles.tar file4 (deletes the file inside the tarball)
tar --update --file myfiles.tar file4 (adds the updated file)
i
gzip myfiles.tar [ if you choose #1 above ]
bzip2 myfiles.tar [ if you choose #2 above ]
xz myfiles.tar [ if you choose #3 above ]
konačno,
tar tvf [tarball] #again
i uporedite datum i vrijeme izmjene datoteke4 sa istim informacijama kao što je prikazano ranije.
Izuzmi datoteke iz rezervnih kopija
Pretpostavimo da želite napraviti sigurnosnu kopiju početnih direktorija korisnika. Dobra praksa sistemskog administratora bi bila (može biti određena politikama kompanije) da se iz rezervnih kopija izuzmu svi video i audio fajlovi.
Možda bi vaš prvi pristup bio da isključite iz sigurnosne kopije sve datoteke sa ekstenzijom .mp3
ili .mp4
(ili drugim ekstenzijama). Šta ako imate pametnog korisnika koji može promijeniti ekstenziju u .txt
ili .bkp
, vaš pristup vam neće donijeti mnogo koristi.
Da biste otkrili audio ili video datoteku, morate provjeriti njen tip datoteke pomoću datoteke. Sljedeća shell skripta će obaviti posao.
#!/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/*
Vratite sigurnosnu kopiju s dozvolama za očuvanje Tar
Zatim možete vratiti sigurnosnu kopiju u početni korisnički direktorij (user_restore u ovom primjeru), čuvajući dozvole, pomoću sljedeće naredbe.
tar xjf backupfile.tar.bz2 --directory user_restore --same-permissions
Korištenje komande Find za traženje datoteka
Naredba find se koristi za rekurzivno pretraživanje kroz stabla direktorija za datoteke ili direktorije koji odgovaraju određenim karakteristikama, a zatim može ili ispisati odgovarajuće datoteke ili direktorije ili izvršiti druge operacije nad podudaranjima.
Obično ćemo pretraživati po imenu, vlasniku, grupi, tipu, dozvolama, datumu i veličini.
Osnovna sintaksa naredbe find je sljedeća:
find [directory_to_search] [expression]
Pronalaženje datoteka rekurzivno prema veličini
Pronađite sve datoteke (-f
) u trenutnom direktoriju (.
) i 2
poddirektorijuma ispod (-maxdepth 3
uključuje trenutni radni direktorij i 2 nivoa niže) čija je veličina (-size
) veća od 2 MB.
find . -maxdepth 3 -type f -size +2M
Pronalaženje i brisanje datoteka koje odgovaraju određenim kriterijima
Fajlovi s 777 dozvolama se ponekad smatraju otvorenim vratima vanjskim napadačima. U svakom slučaju, nije bezbedno dozvoliti bilo kome da radi bilo šta sa fajlovima. Zauzet ćemo prilično agresivan pristup i izbrisati ih! (‘{}
‘ +
se koristi za “prikupljanje” rezultata pretraživanja).
find /home/user -perm 777 -exec rm '{}' +
Pronalaženje datoteka na osnovu vremenskih oznaka
Potražite konfiguracijske datoteke u /etc kojima se pristupilo (-atime
) ili modificirano (-mtime
) više (+180) ili manje (-180) od prije 6 mjeseci ili prije tačno 6 mjeseci (180) .
Izmijenite sljedeću naredbu prema primjeru ispod:
find /etc -iname "*.conf" -mtime -180 -print
Postavite dozvole za datoteke i osnovne atribute
Prvih 10 znakova u izlazu ls -l su atributi datoteke. Prvi od ovih znakova se koristi za označavanje tipa datoteke:
-
: obična datoteka-d
: direktorij-l
: simbolička veza-c
: karakterni uređaj (koji tretira podatke kao tok bajtova, tj. terminal)-b
: blok uređaj (koji obrađuje podatke u blokovima, tj. uređajima za pohranu)
Sljedećih devet znakova atributa datoteke nazivaju se način rada datoteke i predstavljaju čitanje (r
), pisanje (w
) i izvršavanje (x
>) dozvole vlasnika datoteke, vlasnika grupe datoteke i ostatka korisnika (koji se obično nazivaju “svijet”).
Dok dozvola za čitanje datoteke dozvoljava njeno otvaranje i čitanje, ista dozvola za direktorij dozvoljava da se njegov sadržaj navede ako je također postavljena dozvola za izvršavanje. Osim toga, dozvola za izvršavanje u datoteci omogućava da se njome rukuje kao program i da se pokrene, dok u direktoriju dozvoljava da se isti unese u njega.
Dozvole datoteke se mijenjaju naredbom chmod, čija je osnovna sintaksa sljedeća:
chmod [new_mode] file
Gdje je new_mode ili oktalni broj ili izraz koji specificira nove dozvole.
Oktalni broj se može pretvoriti iz njegovog binarnog ekvivalenta, koji se izračunava iz željenih dozvola za datoteku za vlasnika, grupu i svijet, na sljedeći način:
Prisustvo određene dozvole jednako je potenciji od 2 (r=22, w=21, x=20 ), dok je njegovo odsustvo jednako 0. Na primjer:
Da postavite dozvole datoteke kao gore u oktalnom obliku, upišite:
chmod 744 myfile
Također možete postaviti način rada datoteke koristeći izraz koji označava vlasnička prava slovom u
, prava vlasnika grupe slovom g
, a ostala sa o
.
Svi ovi “pojedinci” mogu biti predstavljeni u isto vrijeme slovom a
. Dozvole se odobravaju (ili opozivaju) sa znakovima +
ili -
.
Uklonite dopuštenje za izvršavanje skripte svim korisnicima
Kao što smo ranije objasnili, možemo opozvati određenu dozvolu tako što ćemo je dodati predznakom minus i naznačiti da li je treba opozvati vlasniku, vlasniku grupe ili svim korisnicima. Jednostruki red ispod može se protumačiti na sljedeći način: Promijenite način rada za sve (a
) korisnike, opozovite (-
) dozvolu za izvršavanje (x
) .
chmod a-x backup.sh
Davanje dozvola za čitanje, pisanje i izvršavanje za fajl vlasniku i vlasniku grupe, kao i dozvole za čitanje za cijeli svijet.
Kada koristimo trocifreni oktalni broj za postavljanje dozvola za datoteku, prva cifra označava dozvole za vlasnika, druga znamenka za vlasnika grupe i treća znamenka za sve ostale:
- Vlasnik: (r=22 + w=21 + x=20=7)
- Vlasnik grupe: (r=22 + w=21 + x=20=7)
- Svijet: (r=22 + w=0 + x=0=4),
chmod 774 myfile
Vremenom i sa praksom moći ćete da odlučite koji način da promenite režim datoteke najbolje odgovara vama u svakom slučaju. Dugačak popis direktorija također prikazuje vlasnika datoteke i vlasnika njene grupe (koji služe kao rudimentarna, ali efikasna kontrola pristupa datotekama u sistemu):
Vlasništvo datoteke se mijenja naredbom chown. Vlasnik i vlasnik grupe mogu se mijenjati istovremeno ili odvojeno. Njegova osnovna sintaksa je sljedeća:
chown user:group file
Gdje barem jedan korisnik ili grupa moraju biti prisutni.
Primjeri naredbi Chown
Promjena vlasnika datoteke na određenog korisnika.
chown gacanepa sent
Promjena vlasnika i grupe datoteke na određeni par korisnik:grupa.
chown gacanepa:gacanepa TestFile
Promjena samo vlasnika grupe datoteke u određenu grupu. Obratite pažnju na dvotočku ispred imena grupe.
chown :gacanepa email_body.txt
Zaključak
Kao sistemski administrator, morate znati kako kreirati i vraćati sigurnosne kopije, kako pronaći datoteke u vašem sistemu i promijeniti njihove atribute, zajedno s nekoliko trikova koji vam mogu olakšati život i spriječiti vas da naiđete na buduće probleme.
Nadam se da će vam savjeti iz ovog članka pomoći da postignete taj cilj. Slobodno dodajte svoje informacije i ideje u odjeljku za komentare za dobrobit zajednice. Hvala unaprijed!
LFCS e-knjiga je sada dostupna za kupovinu. Naručite svoj primjerak već danas i započnite svoj put da postanete certificirani Linux sistem administrator!
Product Name | Price | Buy |
---|---|---|
The Linux Foundation’s LFCS Certification Preparation Guide | $19.99 | [Buy Now] |
Na kraju, ali ne i najmanje važno, razmislite o kupovini vaučera za ispit koristeći sljedeće veze kako biste zaradili malu proviziju, što će nam pomoći da ovu knjigu ažuriramo.