Fájlrendszer¶
Fájlok listázása¶
Az ls
parancs a könyvtár tartalmának listázására szolgál.
Korábban már láthattad néhányszor a példákban, de ez az oldal segít abban, hogy kényelmesen tudd használni.
Alapértelmezés szerint, ha az ls
parancsot opciók vagy argumentumok nélkül használják, akkor az aktuális könyvtárban lévő fájlokat listázza ki:
A fájl részleteinek, például a fájl típusának, engedélyeinek, tulajdonjogának vagy időbélyegzőjének megismeréséhez hajts végre egy hosszú listázást az ls
parancs -l
kapcsolójával.
Az alábbiakban példaként a /var/log
könyvtárat használjuk, mivel számos kimenetet biztosít:
sysadmin@localhost:~$ ls -l /var/log/
total 844
-rw-r--r-- 1 root root 18047 Dec 20 2017 alternatives.log
drwxr-x--- 2 root adm 4096 Dec 20 2017 apache2
drwxr-xr-x 1 root root 4096 Dec 20 2017 apt
-rw-r----- 1 syslog adm 1346 Oct 2 22:17 auth.log
-rw-r--r-- 1 root root 47816 Dec 7 2017 bootstrap.log
-rw-rw---- 1 root utmp 0 Dec 7 2017 btmp
-rw-r----- 1 syslog adm 547 Oct 2 22:17 cron.log
-rw-r----- 1 root adm 85083 Dec 20 2017 dmesg
-rw-r--r-- 1 root root 325238 Dec 20 2017 dpkg.log
-rw-r--r-- 1 root root 32064 Dec 20 2017 faillog
drwxr-xr-x 2 root root 4096 Dec 7 2017 fsck
-rw-r----- 1 syslog adm 106 Oct 2 19:57 kern.log
-rw-rw-r-- 1 root utmp 292584 Oct 2 19:57 lastlog
-rw-r----- 1 syslog adm 19573 Oct 2 22:57 syslog
drwxr-xr-x 2 root root 4096 Apr 11 2014 upstart
-rw-rw-r-- 1 root utmp 384 Oct 2 19:57 wtmp
Minden sor egy, a könyvtárban található fájlnak felel meg.
LS mezők¶
Az információk szóközzel elválasztott mezőkre bonthatók.
Fájltípus¶
-rw-r--r-- 1 root root 18047 Dec 20 2017 alternatives.log
^
drwxr-x--- 2 root adm 4096 Dec 20 2017 apache2
^
Az első mező valójában tíz karaktert tartalmaz, ahol az első karakter a fájl típusát jelzi, a következő kilenc pedig a jogosultságokat. A fájltípusok a következők:
Szimbólum | Típus | Mappa |
---|---|---|
d | directory | Más fájlok tárolására használt könyvtár. |
- | regular file | Olvasható, kép, bináris és tömörített fájlokat tartalmaz. |
l | symbolic link | Egy másik fájlra mutat. |
s | socket | Lehetővé teszi a kommunikációt a folyamatok között. |
p | pipe | Lehetővé teszi a kommunikációt a folyamatok között. |
b | block file | Hardverrel való kommunikációra szolgál. |
c | character file | Hardverrel való kommunikációra szolgál. |
Rendezés¶
Alapértelmezés szerint az ls
parancs kimenete fájlnév szerint ábécé sorrendben van rendezve.
Ezt természetesen személyre tudjuk szabni.
Az alábbi példákban szereplő beállítások a -l
kapcsolóval kombinálva jelennek meg a fájlok vonatkozó részletei.
A -t
opció időbélyeg szerint rendezi a fájlokat.
sysadmin@localhost:~$ ls -lt /var/log
total 844
-rw-r----- 1 syslog adm 19573 Oct 2 22:57 syslog
-rw-r----- 1 syslog adm 1346 Oct 2 22:17 auth.log
-rw-r----- 1 syslog adm 547 Oct 2 22:17 cron.log
-rw-rw-r-- 1 root utmp 292584 Oct 2 19:57 lastlog
-rw-rw-r-- 1 root utmp 384 Oct 2 19:57 wtmp
-rw-r----- 1 syslog adm 106 Oct 2 19:57 kern.log
-rw-r--r-- 1 root root 18047 Dec 20 2017 alternatives.log
-rw-r--r-- 1 root root 32064 Dec 20 2017 faillog
-rw-r----- 1 root adm 85083 Dec 20 2017 dmesg
-rw-r--r-- 1 root root 325238 Dec 20 2017 dpkg.log
drwxr-x--- 2 root adm 4096 Dec 20 2017 apache2
drwxr-xr-x 1 root root 4096 Dec 20 2017 apt
-rw-r--r-- 1 root root 47816 Dec 7 2017 bootstrap.log
drwxr-xr-x 2 root root 4096 Dec 7 2017 fsck
-rw-rw---- 1 root utmp 0 Dec 7 2017 btmp
drwxr-xr-x 2 root root 4096 Apr 11 2014 upstart
Az -S
opció a fájlokat fájlméret szerint rendezi:
sysadmin@localhost:~$ ls -l -S /var/log
total 844
-rw-r--r-- 1 root root 325238 Dec 20 2017 dpkg.log
-rw-rw-r-- 1 root utmp 292584 Oct 2 19:57 lastlog
-rw-r----- 1 root adm 85083 Dec 20 2017 dmesg
-rw-r--r-- 1 root root 47816 Dec 7 2017 bootstrap.log
-rw-r--r-- 1 root root 32064 Dec 20 2017 faillog
-rw-r----- 1 syslog adm 19573 Oct 2 22:57 syslog
-rw-r--r-- 1 root root 18047 Dec 20 2017 alternatives.log
drwxr-x--- 2 root adm 4096 Dec 20 2017 apache2
drwxr-xr-x 1 root root 4096 Dec 20 2017 apt
drwxr-xr-x 2 root root 4096 Dec 7 2017 fsck
drwxr-xr-x 2 root root 4096 Apr 11 2014 upstart
-rw-r----- 1 syslog adm 1346 Oct 2 22:17 auth.log
-rw-r----- 1 syslog adm 547 Oct 2 22:17 cron.log
-rw-rw-r-- 1 root utmp 384 Oct 2 19:57 wtmp
-rw-r----- 1 syslog adm 106 Oct 2 19:57 kern.log
-rw-rw---- 1 root utmp 0 Dec 7 2017 btmp
Az -r
kapcsoló bármilyen típusú rendezés sorrendjét megfordítja.
Figyeld meg a különbséget, ha hozzáadod az előző példához:
sysadmin@localhost:~$ ls -lSr /var/log
total 844
-rw-rw---- 1 root utmp 0 Dec 7 2017 btmp
-rw-r----- 1 syslog adm 106 Oct 2 19:57 kern.log
-rw-rw-r-- 1 root utmp 384 Oct 2 19:57 wtmp
-rw-r----- 1 syslog adm 654 Oct 2 23:17 cron.log
-rw-r----- 1 syslog adm 1669 Oct 2 23:17 auth.log
drwxr-xr-x 2 root root 4096 Apr 11 2014 upstart
drwxr-xr-x 2 root root 4096 Dec 7 2017 fsck
drwxr-xr-x 1 root root 4096 Dec 20 2017 apt
drwxr-x--- 2 root adm 4096 Dec 20 2017 apache2
-rw-r--r-- 1 root root 18047 Dec 20 2017 alternatives.log
-rw-r----- 1 syslog adm 19680 Oct 2 23:17 syslog
-rw-r--r-- 1 root root 32064 Dec 20 2017 faillog
-rw-r--r-- 1 root root 47816 Dec 7 2017 bootstrap.log
-rw-r----- 1 root adm 85083 Dec 20 2017 dmesg
-rw-rw-r-- 1 root utmp 292584 Oct 2 19:57 lastlog
-rw-r--r-- 1 root root 325238 Dec 20 2017 dpkg.log
A fájlméret mezőben lévő számok csökkenőről növekvőre váltanak.
Egyedül az -r
kapcsoló használata esetén a fájlok fordított ábécé sorrendben listázhatók:
sysadmin@localhost:~$ ls -r /var/log
wtmp lastlog faillog cron.log auth.log alternatives.log
upstart kern.log dpkg.log btmp apt
syslog fsck dmesg bootstrap.log apache2
Másolás¶
A fájlok másolatainak létrehozása számos okból hasznos lehet:
- Ha a módosítások előtt másolatot készítenek egy fájlról, akkor vissza lehet térni az eredetihez.
- Egy fájl másolata használható a fájl cserélhető adathordozóra való átvitelére.
- Egy meglévő dokumentum másolata használható sablonként egy új dokumentumhoz.
Csináld végig
A következő paranccsal válthatsz a Dokumentumok
könyvtárba:
A cp
parancs fájlok másolására szolgál.
Az mv
parancshoz hasonlóan legalább két argumentumot igényel: egy forrást és egy célt.
Például az /etc/passwd
fájl aktuális könyvtárba másolásához használd a következő parancsot:
Megjegyzés
A második argumentum a .
karakter.
Amennyiben nem ismerős számodra, akkor ismételt át a korábbi anyagokat!
Az előző parancs végrehajtásának eredménye az /etc/passwd
fájl tartalmának másolatát hozná létre a Documents
könyvtárban, mivel ez a jelenlegi könyvtárunk.
Ezt az ls
paranccsal lehet megerősíteni:
sysadmin@localhost:~/Documents$ ls
School alpha-third.txt hidden.txt numbers.txt red.txt
Work alpha.txt letters.txt os.csv
adjectives.txt animals.txt linux.txt passwd
alpha-first.txt food.txt longfile.txt people.csv
alpha-second.txt hello.sh newhome.txt profile.txt
Fontold meg
Az engedélyek hatással lehetnek a fájlkezelési parancsokra, például a cp
parancsra.
Fájl másolásához végrehajtási engedéllyel kell rendelkezni ahhoz, hogy hozzáférj ahhoz a könyvtárhoz, ahol a fájl található, és olvasási jogosultsággal kell rendelkezned a másolandó fájlhoz.
Írási és végrehajtási jogosultsággal is kell rendelkezned abban a könyvtárban, ahová a fájlt másolod. Általában két helyen kell mindig írási és végrehajtási jogosultsággal rendelkezned a könyvtárban: a saját könyvtárában és a /tmp
könyvtárban.
Áthelyezés¶
Az mv
paranccsal egy fájlt helyezhetsz át a fájlrendszer egyik helyéről a másikra.
Az mv
parancs legalább két argumentumot igényel.
- Az első argumentum a forrás, az áthelyezendő fájl elérési útja.
- A második argumentum a cél, egy elérési út, ahová a fájl átkerül.
Az áthelyezendő fájlokat néha forrásnak nevezik, azt a helyet pedig ahová a fájlokat el kell helyezni, célhelynek.
Csináld végig
A következő paranccsal válthatsz a Dokumentumok
könyvtárba:
A people.csv
fájl Work
könyvtárba való áthelyezéséhez használd a fájlnevet forrásként, és a könyvtárnevet célként:
Ha egy fájlt az egyik könyvtárból a másikba helyeznek át anélkül, hogy új nevet adnának a fájlnak, akkor az megőrzi eredeti nevét.
A fenti lépést a Work
könyvtárban található ls
paranccsal lehet megerősíteni:
Az mv
parancs több fájlt is áthelyezhet, amennyiben a parancs végső argumentuma a cél.
Például három fájl áthelyezéséhez az iskolai könyvtárba:
sysadmin@localhost:~/Documents$ mv numbers.txt letters.txt alpha.txt School
sysadmin@localhost:~/Documents$ ls School
Art Engineering Math alpha.txt letters.txt numbers.txt
Ha egy fájlt ugyanabban a könyvtárban helyezünk át, akkor az átnevezésének egy hatékony módja.
A következő példában az animals.txt
fájl új nevet kap: zoo.txt
:
sysadmin@localhost:~/Documents$ ls
School alpha-second.txt hello.sh newhome.txt red.txt
Work alpha-third.txt hidden.txt os.csv
adjectives.txt animals.txt linux.txt passwd
alpha-first.txt food.txt longfile.txt profile.txt
sysadmin@localhost:~/Documents$ mv animals.txt zoo.txt
sysadmin@localhost:~/Documents$ ls
School alpha-second.txt hidden.txt os.csv zoo.txt
Work alpha-third.txt linux.txt passwd
adjectives.txt food.txt longfile.txt profile.txt
alpha-first.txt hello.sh newhome.txt red.txt
Fontold meg
Az engedélyek hatással lehetnek a fájlkezelési parancsokra, például az mv
parancsra.
Egy fájl áthelyezéséhez írási és végrehajtási engedélyekre van szükség mind a származási (forrás), mind a célkönyvtárban.
Törlés¶
Az rm
parancs fájlok és könyvtárak törlésére szolgál.
Fontos szem előtt tartani, hogy a törölt fájlok és könyvtárak nem kerülnek a "kukába", mint az asztali operációs rendszereknél.
Ha egy fájlt az rm
paranccsal törölnek, az szinte mindig végleg eltűnik.
Csináld végig
A következő paranccsal válthatsz a Dokumentumok
könyvtárba:
Beállítások nélkül az rm
parancsot általában szokásos fájlok eltávolítására használják:
sysadmin@localhost:~/Documents$ rm linux.txt
sysadmin@localhost:~/Documents$ ls linux.txt
ls: cannot access linux.txt: No such file or directory
Az rm
parancs figyelmen kívül hagyja azokat a könyvtárakat, amelyeket el kell távolítani; könyvtár törléséhez használj rekurzív kapcsolót, az -r
vagy az -R
kapcsolót.
Csak légy óvatos, mivel ezek a beállítások "rekurzívak", ez minden fájlt és alkönyvtárat töröl:
sysadmin@localhost:~/Documents$ rm Work
rm: cannot remove 'Work': Is a directory
sysadmin@localhost:~/Documents$ rm -r Work
sysadmin@localhost:~/Documents$ ls Work
ls: cannot access Work: No such file or directory
Figyelmeztetés
Az rm
parancs végleg eltávolítja a fájlokat.
A fenti példák megismétléséhez állítsd vissza a terminált a reset gombbal.
Fontold meg
Az engedélyek hatással lehetnek a fájlkezelési parancsokra, például az rm
parancsra.
A könyvtárban lévő fájl törléséhez a felhasználónak írási és végrehajtási engedéllyel kell rendelkeznie a könyvtárban. A normál felhasználók általában csak a saját könyvtárukban és annak alkönyvtáraiban rendelkeznek ilyen típusú engedéllyel.