Kako tarirati datoteke, postaviti dozvole za datoteke i pronaći datoteke u Linuxu
Nedavno je Linux Foundation pokrenuo certifikaciju LFCS (Linux Foundation Certified Sysadmin), potpuno novi program čija je svrha omogućiti pojedincima obavljanje osnovnih do srednjih zadataka administracije sustava na Linux sustavima.
To uključuje podršku već pokrenutim sustavima i uslugama, zajedno s prvorazinskim rješavanjem problema i analizom, plus mogućnost odlučivanja kada probleme eskalirati inženjerskim timovima.
Serijal će se zvati Priprema za LFCS (Linux Foundation Certified Sysadmin) dijelovi od 1 do 33 i pokrivat će sljedeće teme:
- Part 1
Kako koristiti naredbu 'Sed' za manipuliranje 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 pohranu, formatiranje datotečnih sustava i konfiguriranje swap particije
- Part 5
Montirajte/demontirajte lokalne i mrežne (Samba & NFS) datotečne sustave u Linuxu
- Part 6
Sastavljanje particija kao RAID uređaja – Stvaranje sigurnosnih kopija sustava i upravljanje njima
- Part 7
Upravljanje procesima i uslugama pokretanja sustava (SysVinit, Systemd i Upstart
- Part 8
Kako upravljati korisnicima i grupama, dopuštenjima za datoteke i Sudo pristupom
- Part 9
Upravljanje Linux paketima uz Yum, RPM, Apt, Dpkg, Aptitude i Zypper
- Part 10
Učenje osnovnog skriptiranja ljuske i rješavanja problema sa datotečnim sustavom
- Part 11
Kako upravljati i stvoriti LVM pomoću naredbi vgcreate, lvcreate i lvextend
- Part 12
Kako istražiti Linux s instaliranom dokumentacijom za pomoć i alatima
- Part 13
-
Kako konfigurirati i riješiti probleme Grand Unified Bootloadera (GRUB)
- Part 14
Pratite korištenje resursa Linux procesa i postavite ograničenja procesa za svakog korisnika
- Part 15
Kako postaviti ili izmijeniti parametre vremena izvođenja jezgre u Linux sustavima
- Part 16
Implementacija obvezne kontrole pristupa sa SELinuxom ili AppArmorom u Linuxu
- Part 17
Kako postaviti popise kontrole pristupa (ACL) i diskovne kvote za korisnike i grupe
- Part 18
Instaliranje mrežnih usluga i konfiguriranje automatskog pokretanja pri dizanju
- Part 19
Vrhunski vodič za postavljanje FTP poslužitelja za dopuštanje anonimnih prijava
- Part 20
Postavite osnovni DNS poslužitelj rekurzivnog predmemoriranja i konfigurirajte zone za domenu
- Part 21
Kako instalirati, osigurati i podesiti performanse MariaDB poslužitelja baze podataka
- Part 22
Kako instalirati i konfigurirati NFS poslužitelj za dijeljenje sustava datoteka
- Part 23
-
Kako postaviti Apache s virtualnim hostingom temeljenim na imenu sa SSL certifikatom
- Part 24
Kako postaviti Iptables vatrozid za omogućavanje udaljenog pristupa uslugama u Linuxu
- Part 25
Kako pretvoriti Linux u usmjerivač za statički i dinamički rukovanje prometom
- Part 26
Kako postaviti šifrirane datotečne sustave i zamijeniti ih pomoću alata Cryptsetup
- Part 27
Kako pratiti korištenje sustava, ispade i otkloniti probleme s Linux poslužiteljima
- Part 28
Kako postaviti mrežno spremište za instaliranje ili ažuriranje paketa
- Part 29
Kako provjeriti rad mreže, sigurnost i rješavanje problema
- Part 30
Kako instalirati i upravljati virtualnim strojevima i spremnicima
- Part 31
Naučite osnove Gita za učinkovito 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šćivanja u Ubuntuu
Ovaj post je dio 3 serije od 33 vodiča, ovdje u ovom dijelu, pokrit ćemo kako arhivirati/komprimirati datoteke i direktorije, postaviti atribute datoteke i pronaći datoteke u datotečnom sustavu, koje su potrebne za LFCS< certifikacijski ispit.
Alati za arhiviranje i kompresiju za Linux
Alat za arhiviranje datoteka grupira 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 s alatom za kompresiju, omogućuje smanjenje veličine diska koja je potrebna za pohranu istih datoteka i informacija.
Linux tar uslužni program
tar skuplja grupu datoteka zajedno u jednu arhivu (koja se obično naziva tar datoteka ili tarball). Ime je izvorno stajalo za tape archiver, ali moramo napomenuti da ovaj alat možemo koristiti za arhiviranje podataka na bilo koji medij za pisanje (ne samo na trake).
Tar se obično koristi s alatom za kompresiju kao što je gzip, bzip2 ili xz za izradu komprimirane arhive.
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 |
Obično korišteni modifikatori operacije 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 pomoćni programi
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 potrebno za dovršetak operacije i resursi sustava koji se koriste tijekom procesa.
Obično datoteke tar komprimirane ovim uslužnim programima imaju ekstenzije .gz
, .bz2
ili .xz
. U sljedećim primjerima koristit ćemo ove datoteke: file1, file2, file3, file4 i datoteka5.
Sažimanje datoteka s gzip, bzip2 i xz
Grupirajte sve datoteke u trenutnom radnom direktoriju i komprimirajte dobiveni paket s gzip, bzip2 i xz (molimo obratite pažnju na upotrebu regularnog izraz za određivanje koje bi datoteke trebale biti uključene u paket – ovo je da bi se spriječilo da alat za arhiviranje grupira tarball datoteke stvorene 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]
Popis sadržaja i ažuriranje/dodavanje datoteka Tar arhiva
Ispis sadržaja tarball-a i prikaz iste informacije kao dugi popis imenika. Imajte na umu da se operacije ažuriranja ili dodavanja ne mogu izravno primijeniti na komprimirane datoteke.
Dekompresirajte Tar datoteke
Ako trebate ažurirati ili dodati datoteku u komprimirani tarball, morate dekomprimirati tar datoteku i ažurirati/dodati je, zatim je ponovno 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 usporedite datum i vrijeme izmjene file4 s istim informacijama kao što je prikazano ranije.
Isključite datoteke iz sigurnosnih kopija
Pretpostavimo da želite napraviti sigurnosnu kopiju kućnih direktorija korisnika. Dobra praksa sistemskog administratora bila bi (može biti određena i pravilima tvrtke) isključivanje svih video i audio datoteka iz sigurnosnih kopija.
Možda bi vaš prvi pristup bio da iz sigurnosne kopije isključite sve datoteke s .mp3
ili .mp4
ekstenzijom (ili drugim ekstenzijama). Što ako imate pametnog korisnika koji može promijeniti ekstenziju u .txt
ili .bkp
, vaš vam pristup neće puno pomoći.
Da biste otkrili audio ili video datoteku, morate provjeriti vrstu datoteke pomoću datoteke. Sljedeća skripta ljuske ć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 Tar Preserving Permissions
Zatim možete vratiti sigurnosnu kopiju u početni korisnički direktorij (user_restore u ovom primjeru), uz očuvanje dopuštenja, pomoću sljedeće naredbe.
tar xjf backupfile.tar.bz2 --directory user_restore --same-permissions
Korištenje naredbe Find za traženje datoteka
Naredba find koristi se 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 izvesti druge operacije na podudaranjima.
Obično ćemo pretraživati prema imenu, vlasniku, grupi, vrsti, dopuštenjima, datumu i veličini.
Osnovna sintaksa naredbe find je sljedeća:
find [directory_to_search] [expression]
Traženje datoteka rekurzivno prema veličini
Pronađite sve datoteke (-f
) u trenutnom direktoriju (.
) i 2
poddirektoriju ispod (-maxdepth 3
uključuje trenutni radni direktorij i 2 razine prema dolje) č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
Datoteke s dopuštenjima 777 ponekad se smatraju otvorenim vratima vanjskim napadačima. U svakom slučaju, nije sigurno dopustiti bilo kome da radi bilo što s datotekama. Zauzet ćemo prilično agresivan pristup i izbrisati ih! ('{}
' +
koristi se za "prikupljanje" rezultata pretraživanja).
find /home/user -perm 777 -exec rm '{}' +
Traženje datoteka na temelju vremenskih oznaka
Potražite konfiguracijske datoteke u /etc kojima je pristupano (-atime
) ili izmijenjeno (-mtime
) više (+180) ili manje (-180) nego prije 6 mjeseci ili točno prije 6 mjeseci (180) .
Izmijenite sljedeću naredbu prema donjem primjeru:
find /etc -iname "*.conf" -mtime -180 -print
Postavite dopuštenja za datoteke i osnovne atribute
Prvih 10 znakova u izlazu ls -l su atributi datoteke. Prvi od ovih znakova koristi se za označavanje vrste datoteke:
-
: obična datoteka-d
: direktorij-l
: simbolička veza-c
: znakovni uređaj (koji podatke tretira kao niz bajtova, tj. terminal)-b
: blok uređaj (koji rukuje podacima u blokovima, tj. uređajima za pohranu)
Sljedećih devet znakova atributa datoteke naziva se načinom datoteke i predstavlja čitanje (r
), pisanje (w
) i izvršavanje (x
) dopuštenja vlasnika datoteke, vlasnika grupe datoteke i ostalih korisnika (koji se obično nazivaju “svijet”).
Dok dopuštenje za čitanje datoteke omogućuje otvaranje i čitanje iste, isto dopuštenje za direktorij dopušta da njegov sadržaj bude ispisan ako je također postavljeno dopuštenje za izvršavanje. Osim toga, dopuštenje za izvršenje u datoteci omogućuje rukovanje njome kao programom i pokretanje, dok u direktoriju dopušta da se ista u nju učita.
Dozvole za datoteke mijenjaju se naredbom chmod, čija je osnovna sintaksa sljedeća:
chmod [new_mode] file
Gdje je new_mode ili oktalni broj ili izraz koji navodi nova dopuštenja.
Oktalni broj može se pretvoriti iz svog binarnog ekvivalenta, koji se izračunava iz željenih dopuštenja datoteke za vlasnika, grupu i svijet, kako slijedi:
Prisutnost određene dozvole jednaka je potenciji 2 (r=22, w=21, x=20 ), dok je njegov nedostatak jednak 0. Na primjer:
Da biste postavili dopuštenja datoteke kao gore u oktalnom obliku, upišite:
chmod 744 myfile
Također možete postaviti način rada datoteke pomoću izraza koji označava prava vlasnika slovom u
, prava vlasnika grupe slovom g
, a ostala prava sa o
.
Sve ove “pojedinke” mogu se istovremeno predstaviti slovom a
. Dopuštenja se dodjeljuju (ili opozivaju) znakovima +
ili -
.
Uklonite dopuštenje za izvršenje na skripti svim korisnicima
Kao što smo ranije objasnili, određeno dopuštenje možemo opozvati tako da ispred njega stavimo znak minus i naznačimo treba li ga opozvati za vlasnika, vlasnika grupe ili sve korisnike. Jednolinijski tekst u nastavku može se protumačiti na sljedeći način: Promjena načina rada za sve (a
) korisnike, opoziv (-
) dopuštenja za izvršenje (x
) .
chmod a-x backup.sh
Davanje dopuštenja čitanja, pisanja i izvršavanja za datoteku vlasniku i vlasniku grupe, te dopuštenja čitanja za cijeli svijet.
Kada koristimo 3-znamenkasti oktalni broj za postavljanje dopuštenja za datoteku, prva znamenka označava dopuštenja 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
S vremenom i s praksom, moći ćete odlučiti koja metoda za promjenu načina datoteke vam najbolje odgovara u svakom slučaju. Dugi popis direktorija također prikazuje vlasnika datoteke i njenog grupnog vlasnika (koji služe kao rudimentarna, ali učinkovita kontrola pristupa datotekama u sustavu):
Vlasništvo datoteke mijenja se naredbom chown. Vlasnik i vlasnik grupe mogu se promijeniti istovremeno ili odvojeno. Njegova osnovna sintaksa je sljedeća:
chown user:group file
Gdje mora biti prisutan barem korisnik ili grupa.
Primjeri naredbi Chown
Promjena vlasnika datoteke u određenog korisnika.
chown gacanepa sent
Promjena vlasnika i grupe datoteke u određeni par korisnik:grupa.
chown gacanepa:gacanepa TestFile
Promjena samo grupnog vlasnika datoteke u određenu grupu. Obratite pažnju na dvotočku ispred naziva grupe.
chown :gacanepa email_body.txt
Zaključak
Kao sysadmin morate znati kako izraditi i vratiti sigurnosne kopije, kako pronaći datoteke u svom sustavu i promijeniti njihove atribute, zajedno s nekoliko trikova koji vam mogu olakšati život i spriječiti vas da u budućnosti naiđete na probleme.
Nadam se da će vam savjeti navedeni u ovom članku pomoći da postignete taj cilj. Slobodno dodajte vlastite informacije i ideje u odjeljak za komentare za dobrobit zajednice. Hvala unaprijed!
LFCS e-knjiga sada je dostupna za kupnju. Naručite svoju kopiju već danas i krenite na svoje putovanje do certificiranog administratora Linux sustava!
Product Name | Price | Buy |
---|---|---|
The Linux Foundation’s LFCS Certification Preparation Guide | $19.99 | [Buy Now] |
Na kraju, ali ne manje važno, razmislite o kupnji vaučera za ispit koristeći sljedeće veze kako biste zaradili malu proviziju, koja će nam pomoći da ovu knjigu ažuriramo.