Una dintre provocările pentru dezvoltator de web novice este corectă utilizarea chmod pentru a seta permisiunile de fișiere de pe UNIX si Linux servere Web. Trebuie să setați permisiunile corecte pe script-urile CGI nu pentru a arăta aceste mesaj teribil „500 Eroare de server“. In acest tutorial, vom explica conceptul de drepturi, și vă arată cum să setați permisiunile folosind un utilitar FTP sau prin utilizarea Telnet.
Ce este corect?
Pe UNIX server Web, fiecare fișiere individuale și folderele stocate pe hard disk-ul are o serie de drepturi legate de acestea, care prevede cine și ce se poate face cu fișierul. Fiecare fișier (și director), de asemenea, „proprietar“ și „grup“ asociat cu ea. Dacă ați creat un fișier, acesta este de obicei proprietarul unui fișier, iar grupul dvs., sau un grup asociat cu directorul în care ați creat fișierul.
Cine poate schimba drepturile?
Există trei tipuri de utilizatori care au acces la fișierele - proprietarul fișierului, membrii grupului care deține fișierul și restul (toate celelalte). In UNIX aceste 3 tipuri de utilizatori U sunt indicate prin litere (pentru proprietar sau utilizator), G (pentru grup) și O (să se odihnească).
Ce drepturi pot fi instalate?
Există pot fi aplicate la fișiere și directoare trei permisiuni principale kotoroye:
Ce fac toate acele numere și litere?!
Aici ne uităm la elementele de bază. Dupa cum se poate vedea că nu sunt atât de mult într-adevăr!
Confuzia apare adesea atunci când trebuie să faceți drepturile de instalare pe server. Pentru CGI script-uri au nevoie pentru a stabili dreptul de fel de „chmod 755“ sau „Asigurați-vă că fișierul este executabil.“ În plus, atunci când se utilizează FTP sau SSH, veți vedea o mulțime de personaje amuzante lângă fișier (de exemplu, rwxrw-RW). Acum vom explica sensul acestor caractere!
Când vă conectați prin FTP la serverul de web, veți vedea, probabil, ceva de genul asta de lângă fiecare fișier și dosar:
Această succesiune de litere drwxrwxrwx este dreptul stabilit pentru acest dosar (rețineți că acestea sunt adesea numite atribute de program FTP). Să ne uităm la ce înseamnă fiecare dintre aceste scrisori:
După cum puteți vedea, secvența de litere este împărțit în 3 coloane de 3 litere fiecare desemnând fiecare dintre tipurile de utilizatori (proprietar, membrii grupului, și tot restul).
Există, de asemenea, litera „d“ atribut pe stânga, care ne spune că obiectul este un director.
Dacă oricare dintre aceste caractere se înlocuiește cu o cratimă (-), aceasta înseamnă că rezoluția nu este setată. De exemplu:
Directorul, care are drepturi de a citi, scrie și să execute pentru proprietar, citiți și să execute pentru grup și doar pentru a face oricine altcineva.
Fișier care poate fi citit și modifica utilizatorul și să citească doar utilizatorii de grup și alți utilizatori.
Utilizați numere în loc de litere
Așa cum am spus mai înainte, vi se solicită adesea să setați permisiunile folosind numere, cum ar fi „set 755 de permisiuni“. Ce înseamnă aceste cifre?
Fiecare dintre cele trei numere corespunzătoare fiecărei litere (r w x) pe care am discutat mai devreme. Cu alte cuvinte, primul număr determină drepturile pentru proprietar, al doilea număr specifică permisiunile pentru grup, iar al treilea număr este dreptul pentru toți ceilalți.
Fiecare număr poate avea una dintre cele opt valori de la 0 la 7. Fiecare valoare corespunde unui anumit citire, scrie și executa „, așa cum este definit în acest tabel:
Setarea permisiunilor
Cele două moduri de cele mai comune pentru a seta permisiunile pentru fișiere și foldere este prin utilizarea FTP sau SSH. Să ne uităm la primul FTP.
Setarea permisiunilor folosind FTP
Cu FTP va fi capabil să stabilească permisiunile pentru fișierele, selectați un fișier (într-o fereastră separată) și faceți clic dreapta pentru a selecta opțiunile necesare VM, cum ar fi CHMOD sau un set de permisiuni sau prin selectarea din meniul CHMOD / Set permisiunile.
După cum puteți vedea, este destul de ușor de instalat sau de a elimina permisiunile pentru a citi, scrie și să execute pentru proprietar, grup și altele utilizând casetele de selectare. În plus, puteți introduce echivalentul unui număr de 3 cifre, dacă știți deja cum (a se vedea. Secțiunea anterioară). Este foarte simplu!
Setați permisiunile prin SSH
Un alt mod comun de a seta permisiunile pentru fișiere folosind SSH (sau consola). Este, în general, mai rapid, dacă doriți să modificați drepturile unui număr mare de fișiere dintr-o dată (de exemplu, schimbarea tuturor. Fișierele CGI din folderul numai vpolnenie).
După ce vă conectați prin SSH la server, și în zaloginetes, navigați la folderul care conține fișierele pe care doriți să le modificați, de exemplu:
Utilizând metoda de litere
Puteți utiliza literele u (manager / proprietar), g (grup) și o (altele) pentru a seta permisiuni pentru fiecare tip de utilizator, și R (citit), w (scriere), și x (execute) pentru drepturile de instalare.
Puteți utiliza, de asemenea „o“ în loc de u, g și o, care este un sinonim pentru toți utilizatorii (u, g, o).
Puteți atribui permisiuni utilizând semnul plus (+), ceea ce înseamnă „pentru a adăuga aceste drepturi“, semnul minus (-), ceea ce înseamnă că „pentru a elimina aceste permisiuni,“ sau un semn egal (=), ceea ce înseamnă „pentru a schimba permisiunile pentru un anumit caz “. De exemplu:
chmod a + x formmail.cgi adauga permisiunea de executie pentru toți utilizatorii din fișierul formmail.cgi (cu alte cuvinte, nu fișierul executabil).
chmod u = rwx formmail.cgi lectură, nimicește și executa pentru proprietar (permisiuni pentru grup și pentru alții rămân neschimbate).
formmail.cgi chmod go-w elimină rubrica pentru grup și pentru alții, astfel încât permisiunea proprietarului rămâne neschimbat.
verificarea permisiunile
Puteți verifica permisiunile pentru toate fișierele și folderele din directorul curent cu comanda:
Acest lucru vă va arăta permisiunea pentru fiecare fișier și dosar, precum și un program de FTP.