Linux
Administrare si navigare in sistemul de fisiere in Linux
Deplasarea prin structura de directoare
Sistemul de fisiere este, asa cum am aratat, organizat cu ajutorul directoarelor si a subdirectoarelor.
Directorul curent$ cd /usr/bin [Enter] $ pwd [Enter] /usr/bin
Calea absoluta si calea relativaCalea absoluta porneste din directorul radacina in timp ce calea relativa porneste din directorul curent. $ cd /usr/local[Enter] Aceasta este o cale absoluta deoarece incepe cu /.
$ pwd [Enter] /usr/local $ cd bin [Enter] Aceasta este o cale relativa deoarece porneste din directorul curent si merge in jos catre bin.
$ pwd [Enter] /usr/local/bin
Deplasarea in directoarele anterioareFiecare director are doua referinte speciale pentru subdirectoare: un punct (.) se refera la directorul curent doua puncte (..) se refera la directorul anterior. Aceste simboluri sunt nume efective de directoare. $ cd .. [Enter] $ pwd [Enter] /usr/local
$ cd ../bin [Enter] $ pwd [Enter] /usr/bin
Se poate face deplasare inapoi mai mult de un nivel.
$ cd ../../var/tmp [Enter] $ pwd [Enter] /var/tmp $ cd /usr/bin/../local/bin/.. [Enter] $ pwd [Enter] /usr/local
Referirea exacta la directorul curentDirectorul current poate fi privit ca un singur punct. In practica toate caile relative pot incepe cu prefixul ./ $ cd ./bin [Enter] $ pwd [Enter] /usr/local/bin
Directorul homeFiecare utilizator are un director personal, cunoscut sub numele de home (acasa), el pastreaza toate datele ce apartin utilizatorului respective. Tastand doar cd, utilizatorul poate ajunge direct in directorul sau home. $ cd [Enter] $ pwd [Enter] /home/john
Unele shell-uri inlocuiesc semnul ~ de la inceputul unei cai cu calea directorului home a utilizatorului.
$ cd ~ [Enter] $ pwd [Enter] /home/john
In acelasi fel, daca semnul ~ este asezat in fata unui cont de utilizator va fi inlocuit cu calea catre directorul home al utilizatorului.
$ cd ~mary [Enter] $ pwd [Enter] /home/mary
Inapoi la directorul home.
$ cd [Enter]
Continutul directoarelor
Pentru a lista continutul unui director se foloseste comanda ls. $ ls /bin [Enter] arch dd gzip netconf sleepash df hostname netstat sort ash.static dmesg igawk nice stty aumix-minimal dnsdomainname ipcalc nisdomainname su awk doexec kill ping sync basename domainname linuxconf ps tar bash echo ln pwd tcsh bash2 ed loadkeys red touch bsh egrep login remadmin true cat ex ls rm umount chgrp false mail rmdir uname chmod fgrep mkdir rpm userconf chown fsconf mknod rvi usleep consolechars gawk mktemp rview vi cp gawk-3.0.4 more sed view cpio grep mount setserial vimtutor csh gtar mt sfxload ypdomainname date gunzip mv sh zcat Comanda ls /bin afiseaza continutul lui /bin/. O afisare mult mai completa se poate obtine folosind optiunea –l (long list).
$ ls -l /bin [Enter] -rwxr-xr-x 1 root root 2612 Mar 7 11:29 arch-rwxr-xr-x 1 root root 60592 Feb 3 20:12 ash -rwxr-xr-x 1 root root 263064 Feb 3 20:12 ash.static -rwxr-xr-x 1 root root 9968 Feb 3 19:04 aumix-minimal lrwxrwxrwx 1 root root 4 Apr 13 23:28 awk -> gawk -rwxr-xr-x 1 root root 5756 Mar 7 12:15 basename -rwxr-xr-x 1 root root 316848 Feb 27 18:44 bash multe linii -rwxr-xr-x 1 root root 4320 Mar 7 12:15 true-rwsr-xr-x 1 root root 26608 Feb 3 15:14 umount -rwxr-xr-x 1 root root 6196 Mar 7 12:15 uname lrwxrwxrwx 1 root root 14 Apr 13 23:49 userconf -> /bin/linuxco nf -rwxr-xr-x 1 root root 16252 Mar 8 17:26 usleep -rwxr-xr-x 1 root root 346352 Mar 7 18:18 vi lrwxrwxrwx 1 root root 2 Apr 14 00:00 view -> vi -rwxr-xr-x 1 root root 362 Mar 7 18:18 vimtutor lrwxrwxrwx 1 root root 8 Apr 13 23:51 ypdomainname -> hostname -rwxr-xr-x 3 root root 46384 Feb 15 17:04 zcat $ cd [Enter] $ ls [Enter]
Pentru a afisa fisierele ascunse (care incep cu un punct). $ ls –a [Enter] .bash_history .enlightenment .mc.. .bash_logout .gnome .tcshrc .ICEauthority .bash_profile .gnome-desktop .xsession-errors .Xauthority .bashrc .gnome-help-browser .Xdefaults .cshrc .gnome_private Crearea fisierelorExista modalitati diferite de a crea un fisier. Cel mai simplu este sa creezi un fisier gol folosind comanda touch. Mai intai se face deplasarea in directorul home, ce mai bun “loc de joaca”.
$ cd [Enter] $ touch myfile [Enter] $ ls -l myfile [Enter] -rw-rw-r-- 1 john john 0 Dec 23 10:49 myfile Fisierul a fost creat..
Se poate folosi si comanda cat: $ cat > myfile2 [Enter] there are better ways to write [Enter] text.[Enter] This is a one-way writing. [Enter] [Ctrl+d] $ cat myfile2 [Enter]
Copierea fisierelor
$ cp myfile2 myfile3 [Enter]
Copierea unui grup este posibila doar daca ultimul fisier este un director existent. $ cp myfile myfile2 myfile3 /tmp [Enter] $ cp myfile* /tmp [Enter] Stergerea fisierelorAtentie atunci cand stergeti ceva si sunteti administrator! $ rm myfile myfile2 [Enter] Nu exista nici o modalitate pentru a recupera fisierele sterse. Puteti utiliza metacaracterele: * si ?. $ ls myfile* [Enter] myfile3 $ rm myfile* [Enter]
Crearea directoarelor$ cd [Enter] $ mkdir mydir [Enter]
Sa verificam cu ls.
$ ls –l [Enter]
drwxr-xr-x 8 john john 1024 Dec 23 12:11 mydir
Caracterul d de la inceputul sirului ne spune ca fisierul este un director.
Copierea directoarelor Comanda cp cu optiunea -r sau -R. $ cp -r mydir mydir2[Enter]
Stergerea directoarelorSe pot sterge directoare goale utilizand rmdir.
$ rmdir mydir2[Enter]
Iata insa ceva mai complex.
$ mkdir carbon [Enter] $ mkdir carbon/hydrogen [Enter] $ mkdir carbon/oxygen [Enter] $ mkdir carbon/hydrogen/helium [Enter] $ rmdir carbon [Enter] rmdir: carbon: Directory not empty $ rm -r carbon [Enter]
Mutarea si redenumireaIn mediul Unix redenumirea si mutarea unui fisier inseamna acelasi lucru.Comanda utilizata este mv.
$ touch white[Enter] $ touch green[Enter] $ mkdir purple[Enter]
Sa verificam: $ ls -l[Enter]
-rw-rw-r-- 1 john john 0 Dec 25 12:46 white -rw-rw-r-- 1 john john 0 Dec 25 12:46 green drwxrwxr-x 2 john john 1024 Dec 25 12:46 purple
Sa redenumim fisierul white si sa-l facem brown.
$ mv white brown[Enter] $ ls -l[Enter]
-rw-rw-r-- 1 john john 0 Dec 25 12:46 brown
Pentru a muta mai multe fisiere odata destinatia trebuie sa fie un director.
$ mv brown green purple [Enter] $ ls -l purple [Enter] -rw-rw-r-- 1 john john 0 Dec 25 12:46 green -rw-rw-r-- 1 john john 0 Dec 25 12:46 brown $ mv purple /tmp [Enter] Realizarea legaturilorIn locul copierii unui fisier s-ar putea sa dorim sa cream o referinta catre acesta. Exista doua tipuri de legaturi care pot fi create: hard link-uri si soft link-uri. Comanda pentru o legatura soft este ln cu optiunea -s.
Mai intai cream mediul.
$ touch one[Enter] $ touch two[Enter] $ mkdir three[Enter]
Verificam..
$ ls –l [Enter]
-rw-rw-r-- 1 john john 0 Dec 25 12:46 two drwxrwxr-x 2 john john 1024 Dec 25 12:46 three -rw-rw-r-- 1 john john 0 Dec 25 12:46 one $ ln -s one one.bis [Enter] $ ls –l [Enter]
lrwxrwxrwx 1 john john 3 Dec 25 12:47 one.bis -> one
La fel este si pentru directoare.
$ ln -s /tmp miatemp [Enter] $ ln -s /home/john/one* /home/john/two three [Enter] $ ls -l three [Enter] lrwxrwxrwx 1 john john 15 Dec 25 15:21 two -> /home/john/two lrwxrwxrwx 1 john john 15 Dec 25 15:21 one -> /home/john/one lrwxrwxrwx 1 john john 19 Dec 25 15:21 one.bis -> /home/john/one.bis
|