Chmod: ruxsatlarni o'zgartirish. Linux buyruqlari: CHMOD Chmod tavsifi

Uy / Tormozlar

Bizning hujjatlarimizda umask buyruq. Unda fayl ruxsatlarini qanday aniqlash va belgilashning to'liq tavsifi mavjud.

Umuman, chmod buyruqlar quyidagi shaklni oladi:

Chmod variantlari ruxsatlar Fayl nomi

Agar yo'q bo'lsa variantlari belgilangan, chmod tomonidan belgilangan fayl ruxsatlarini o'zgartiradi Fayl nomi tomonidan belgilangan ruxsatlarga ruxsatlar.

ruxsatlar fayl egasi ("foydalanuvchi"), faylga ega bo'lgan guruh a'zolari ("guruh") va boshqalar ("boshqalar") uchun ruxsatlarni belgilaydi. Ushbu ruxsatnomalarni ikki xil usulda ifodalash mumkin: belgilar (harf-raqamli belgilar) yoki sakkizlik raqamlar (raqamlar) bilan 0 orqali 7 ).

Aytaylik, siz nomli fayl egasisiz mening faylim, va siz uning ruxsatlarini shunday o'rnatmoqchisiz:

  1. the u ser mumkin r o'qish, w marosim va e x saqlang;
  2. a'zolaringiz g guruh mumkin r ead va e x saqlang; va
  3. o ular faqat mumkin r uni ye.

Bu buyruq hiyla qiladi:

Chmod u=rwx,g=rx,o=r mening faylim

Ushbu misol ramziy ruxsatnomalar belgisidan foydalanadi. Harflar u, g, va o turish " foydalanuvchi", "guruh", va" boshqa". Tenglik belgisi (" = ") "ruxsatlarni aynan shunday o'rnatish" degan ma'noni anglatadi va "harflar" r", "w", va" x" mos ravishda "o'qish", "yozish" va "bajarish" ma'nolarini anglatadi. Vergullar ruxsatlarning turli sinflarini ajratib turadi va ular orasida bo'sh joy yo'q.

Sakkizlik ruxsatnomalar belgisini ishlatadigan ekvivalent buyruq:

Chmod 754 mening faylim

Mana raqamlar 7 , 5 , va 4 har biri alohida foydalanuvchi, guruh va boshqalar uchun ruxsatlarni shu tartibda ifodalaydi. Har bir raqam raqamlarning kombinatsiyasidan iborat 4 , 2 , 1 , va 0 :

  • 4 "o'qish" degan ma'noni anglatadi,
  • 2 "yozish" degan ma'noni anglatadi,
  • 1 "bajarish" degan ma'noni anglatadi va
  • 0 "ruxsat yo'q" degan ma'noni anglatadi.

Shunday qilib 7 ruxsatlar birikmasidir 4 +2 +1 (o'qish, yozish va bajarish), 5 hisoblanadi 4 +0 +1 (o'qing, yozmang va bajaring) va 4 hisoblanadi 4 +0 +0 (o'qing, yozmang va bajarilmaydi).

Sintaksis

chmod [ OPTION]... REJIM[,REJIM]... FILE... chmod [ OPTION]... OKTAL-REJIM FILE... chmod [ OPTION]... --reference= RFILE FILE...

Variantlar

-c, --o'zgarishlar

Kabi - batafsil, lekin faqat o'zgartirish haqiqatda amalga oshirilganda batafsil ma'lumot beradi.

-f, --jim, --sokin

Jim rejim ko'pgina xato xabarlarini bostirish.

-v, - batafsil

batafsil rejim; qayta ishlangan har bir fayl uchun diagnostika xabarini chiqarish.

--no-saqlash-root

Yordam xabarini ko'rsating va chiqing.

Fayl egasi.

umidli xodimlar

Fayl tegishli bo'lgan guruh.

03 fevral 15:36

Faylning mtime (fayl oxirgi marta o'zgartirilgan sana va vaqt).

file.txt

Fayl nomi.

Misollar

chmod 644 file.htm

Ruxsatlarini o'rnating file.htm"egasi o'qiy oladi va yoza oladi; guruh faqat o'qiy oladi; boshqalar faqat o'qiy oladi".

Chmod -R 755 mening fayllarim

Rekursiv ( -R) Katalog ruxsatlarini o'zgartiring mening fayllarim, va undagi barcha papkalar va fayllar rejimiga o'ting 755 : Foydalanuvchi o'qishi, yozishi va bajarishi mumkin; guruh aʼzolari va boshqa foydalanuvchilar oʻqishi va bajarishi mumkin, lekin yoza olmaydi.

Chmod u=rw misol.jpg

Egasi uchun ruxsatlarni o'zgartiring misol.jpg egasi faylni o'qishi va yozishi uchun. Guruh yoki boshqalar uchun ruxsatlarni o'zgartirmang.

Chmod u+s comphope.txt

"Set-User-ID" bitini o'rnating comphope.txt, shunday qilib, bu faylga kirishga harakat qilgan har bir kishi buni xuddi faylning egasidek qiladi.

Chmod u-s comphope.txt

Yuqoridagi buyruqning aksi; SUID bitini o'chiradi.

Chmod 755 file.cgi

Ruxsatlarini o'rnating file.cgi"egasi tomonidan o'qish, yozish va bajarish" va "guruh va boshqalar tomonidan o'qish va bajarish".

Chmod 666 file.txt

Ruxsatini o'rnating file.txt"hamma tomonidan o'qish va yozish".

Chmod a=rw fayl.txt

Yuqoridagi buyruq bilan bir xil ishni ramziy belgilar yordamida bajaradi.

Tegishli buyruqlar

chown— Fayllar yoki kataloglarning egalik huquqini o'zgartirish.
getfacl— Faylga kirishni boshqarish roʻyxatlarini koʻrsatish.
ls— Katalog yoki kataloglar mazmunini sanab bering.

Salomatlik, aziz blog o'quvchilari! Biz hammamiz yoki hosting serverida joylashgan va saytga tegishli bo'lgan papka ruxsatsiz kirishdan imkon qadar himoyalangan bo'lishini xohlaymiz.

Ushbu himoya hosterlarning 90 foizi Unix-ga o'xshash operatsion tizimlardan foydalanishi tufayli ta'minlanadi, unda barcha fayllar va kataloglarga kirish huquqlarini tartibga solish mumkin. Mening bir nechta loyihalarim joylashgan hosting provayderimning serveri bundan mustasno emas.

Aytgancha, taqdim etilgan havolaga o'tish orqali qiziqishni unutmang. Ammo davom etaylik. Unix-da o'rnatilgan qoidalar ko'pchilik o'rganib qolgan operatsiya xonasida ishlash qoidalaridan farq qiladi. Windows tizimi, bu jihatdan himoya unchalik kuchli emas, bu ba'zan tizimning virus infektsiyasi shaklida halokatli oqibatlarga olib keladi.

Foydalanuvchilar uchun CHMOD va fayl va papkalarga (kataloglarga) kirish huquqlari

Unix tomonidan boshqariladigan tizimlarda vaziyat boshqacha va uzoq vaqt davomida mashaqqatli mehnatingiz natijalaridan foydalanishga harakat qiladigan yomon odamlarning hayotini jiddiy ravishda murakkablashtirish imkoniyati mavjud. Ya'ni, CHMOD kirish huquqlarini to'g'ri sozlang. Bizning vazifamiz fayl va papkalarga kirish uchun minimal mumkin bo'lgan huquqlarni ta'minlashdir, bu esa saytning to'g'ri ishlashiga xalaqit bermaydi.

Qabul qiling, jiddiy mustahkamlash imkoniyatidan foydalanmaslik gunohdir. Albatta, bu holda, ba'zi fayllarni tahrirlash biroz ko'proq vaqt talab etadi, lekin bu erda siz tanlashingiz kerak: yoki tizim xavfsizligini optimallashtirish, yoki... Quyida men CHMOD (kirish huquqlari) haqidagi ma'lumotlarni tizimlashtirishga harakat qilaman, chunki u erda Webmaster bilishi kerak bo'lgan bir nechta nuanslar. Shunday ekan, boshlaylik.

Kirish huquqlari turli foydalanuvchilar guruhlari uchun farq qiladi. Ulanishga urinayotganda, server ma'lum bir foydalanuvchini qaysi guruhga tayinlashni aniqlaydi. Barcha foydalanuvchilar uch toifaga bo'lingan:

  1. "foydalanuvchi" - fayl egasi
  2. "guruh" - egasi tegishli bo'lgan guruh a'zolaridan biri
  3. "dunyo" - "dunyoning qolgan qismi", ya'ni boshqa barcha foydalanuvchilar

Agar siz serverga foydalanuvchi nomi va parolingizdan foydalanib ulansangiz va tizimga kirsangiz, siz sifatida aniqlanasiz "foydalanuvchi"(u) agar kimdir FTP orqali ulansa, u sifatida aniqlanadi "guruh"(g), agar foydalanuvchi brauzerdan foydalansa, u toifaga kiradi "dunyo"(o).

Endi fayllar va kataloglarga CMOD kirish huquqlari haqida. Aslida, ular bir oz farq qiladi, garchi belgilar bir xil bo'lsa ham. Fayl ruxsatlari:

  • r (o'qish) - fayl ma'lumotlarini o'qish huquqi
  • w (rayt) - tarkibni o'zgartirish huquqi (siz faqat tarkibni tahrirlashingiz mumkin - yozish, lekin o'chira olmaysiz)
  • x (eXutive) - faylni bajarish huquqi

Papkalarga (kataloglarga) kirish huquqlari:

  • r - papkani o'qish huquqi (siz katalog tarkibini, ya'ni unga kiritilgan fayllar ro'yxatini olishingiz mumkin)
  • w - tarkibni o'zgartirish huquqi (katalogda ob'ektlarni yaratish va o'chirish uchun ruxsat; agar siz fayllarni yozish huquqiga ega bo'lsangiz, u holda siz hatto sizga tegishli bo'lmagan ob'ektlarni ham o'chirishingiz mumkin)
  • x - ma'lum bir katalogga kirish huquqi (bu erda o'ziga xoslik shundaki, siz kataloglarda "chuqur" joylashgan faylga barcha kerakli huquqlarga ega bo'lsangiz ham, lekin yo'lda kamida bitta kichik katalogga kirish huquqiga ega bo'lmasangiz ham. bu ob'ektga kirsangiz, unga kira olmaysiz)

Defis "-" hech qanday huquqlarning yo'qligini bildiradi. Bu huquqlarning barchasi administrator tomonidan tayinlanadi, u parolni kiritish orqali ushbu imkoniyatni qo'lga kiritadi. Agar biz CHMOD-ning ma'lum resurs fayllariga kirish huquqiga maksimal mumkin bo'lgan cheklovlarni o'rnata olsak, virus dasturlari o'zlarining "iflos ishlarini" amalga oshirish xavfini amalda yo'q qilishimiz mumkin.

Aniqlik uchun u faylining egasi barcha mumkin bo'lgan huquqlarga ega bo'lgan misolni ko'rib chiqaylik: o'qish, yozish va bajarish. g (guruh) toifasiga tayinlangan foydalanuvchilar faqat o'qish va yozish huquqiga ega, qolganlari (w) faqat o'qish huquqiga ega. Keyin CHMOD yozuvi quyidagicha ko'rinadi: “rwx rw- r- -”.

Raqamli shaklda fayl va papkalarga kirish huquqlari: CHMOD (777, 755, 444)

Ammo ko'pincha, o'zlarining amaliy faoliyatida veb-ustalar raqamli shartlarda ma'lum kirish huquqlarini belgilashlari kerak:

  • r (o'qish) - 4
  • w (rekord) - 2
  • x (ishlash) - 1
  • - (huquqlar yo'q) - 0

Endi "rwx rw- r- -" kirish huquqlarini belgilash uchun yuqoridagi misolni yana bir bor ko'rib chiqamiz. Har bir foydalanuvchining huquqlarini ko'rsatish uchun uning huquqlarini qo'shish ishlatiladi (r o'qish + w yozish + x bajarish). Shunday qilib, u (foydalanuvchi) fayl egasi uchun yozuvning bir qismi - “rwx” 7 (4+2+1) ga aylanadi. G guruhi a'zosi uchun (guruh) - 6 da (4+2+0) "rw-" va boshqa foydalanuvchilar uchun o (dunyo) - "r- -" 4 (4+0+0). Xulosa sifatida men taqdim etaman aylanish jadvali harflar va raqamlar bilan ifodalangan CHMOD ruxsat qiymatlari bilan:


Endi men barcha foydalanuvchilar guruhlari uchun umumiy CHMOD huquqlarini raqamli formatda aks ettiruvchi yana bir jadvalni taqdim etaman:


Bular vebmaster ishida eng ko'p ishlatiladigan asosiy kombinatsiyalar. Qolganlari analogiya orqali tuzilgan. Agar siz sayt yoki blog ma'muri bo'lsangiz, lekin loyiha bilan FTP protokoli orqali ulanmasdan ishlayotgan bo'lsangiz, siz "Boshqa foydalanuvchilar" guruhiga ham tegishlisiz. Bunday holda, ushbu rejimda sayt bilan ishlashda siz CHMOD qiymatidagi oxirgi raqamni hisobga olishingiz kerak.

Odatda fayllaringiz joylashgan serverda WordPress blogi, papkalarga kirish huquqlari 755 ga, ularning bir qismi bo'lgan fayllar esa 644 ga o'rnatiladi. Bu resurs yordamida yaratilganda to'g'ri bo'ladi. HTML fayllar, ammo zamonaviy sharoitda veb-sayt yaratish uchun WordPressni o'z ichiga olgan CMS (kontentni boshqarish tizimlari) keng qo'llaniladi. Va bu erda "dunyo" foydalanuvchi guruhi tomonidan yozilishi kerak bo'lgan ob'ektlar bo'lishi mumkin. Tarkib, jumladan, tasvirlar yuklab olinadigan papkalar bo'lishi mumkin.

Shuning uchun ma'lum fayllarga CHMOD huquqlarini tayinlash farqlanishi kerak. Agar siz FTP orqali sayt boshqaruviga kirsangiz, har qanday harakatlarni amalga oshirishingiz mumkin, ammo ko'p hollarda biz loyihamiz bilan ishlaymiz va bu holda huquqlar juda yuqori bo'lsa va aksincha, bittasiga kirish huquqi bo'lsa, muammolar paydo bo'lishi mumkin. yoki boshqa fayl (papka) kam baholansa, xavfsizlik tahdidi kuchayadi. Shuning uchun, yuqoridagilarga asoslanib, biz WordPress blogi uchun CHMOD-dan amaliy foydalanish bo'yicha ba'zi tavsiyalarni aniqlashimiz mumkin:

777 - fayllar doimiy ravishda yoziladigan va o'chiriladigan papkalar uchun (keshlash papkasi uchun)
755 - fayllar doimiy ravishda yoziladigan, ammo o'chirilmaydigan papkalarga nisbatan
666 - vaqti-vaqti bilan yozuv qo'shishingiz kerak bo'lgan fayllar uchun (masalan, .htaccess fayli)
644 - faqat o'qish uchun mo'ljallangan fayllar uchun (.php, .html va boshqalar)

FileZilla FTP menejeri yordamida CHMOD ruxsatlarini qanday sozlash mumkin

Agar siz resurs bilan ishlashda ba'zi o'zgarishlar kiritishingiz kerak bo'lsa, lekin tahrirlash taqiqlanganligi sababli buni amalga oshirish mumkin bo'lmasa, siz hosting serveriga ulanishingiz kerak. FTP protokoli va kirish huquqlarini 777 ga o'zgartiring. Biroq, faylga o'zgartirishlar kiritilgandan so'ng, avvalgi CHMODni qayta o'rnatish tavsiya etiladi.

Keling, ushbu operatsiyani qanday bajarish haqida ko'proq bilib olaylik. Buning uchun dasturni oching va FTP orqali hosting serveriga ulaning. Chap tomonda "Masofaviy server" Birinchidan, atributlari tahrirlanadigan fayllarni belgilaymiz:

Va dan kontekst menyusi bosish natijasida yuzaga keladi o'ng tugma sichqonchani tanlang "Fayl ruxsatlari". Shundan so'ng dialog oynasi paydo bo'ladi "Fayl atributlarini o'zgartirish":

Bu erda biz tanlangan (yoki tanlangan) fayllar uchun kerakli CHMOD qiymatlarini tayinlaymiz. Ammo bu faqat fayl yoki fayllar guruhini tanlagan bo'lsangiz. Agar siz katalog (papka) uchun CHMOD qiymatlarini o'rnatmoqchi yoki o'zgartirmoqchi bo'lsangiz, "Fayl atributlarini o'zgartirish" ni tanlaganingizda, yuqorida joylashganidan biroz farq qiladigan analog oyna paydo bo'ladi, xususan:

Qarang, ular shu yerda paydo bo'lgan qo'shimcha sozlamalar. Agar chiziq yonidagi katakchani belgilasangiz "Subkataloglarga yo'naltirish", bu belgilangan kirish huquqlari ushbu katalogga joylashtirilgan kataloglar (papkalar) yoki fayllarga qo'llanilishini anglatadi. Quyidagi katakcha belgilansa, joylashgan sozlamalar guruhi faollashadi va siz sozlamalar qanday qo'llanilishini ham tanlashingiz kerak bo'ladi: barcha fayllar va kataloglarga, faqat biriktirilgan fayllarga yoki faqat kataloglarga.

Fayl ruxsatlarini o'zgartiring

Sintaksis:

chmod[-fv] [-R [-H | -L | -P]] rejim fayli ... chmod[-fv] [-R [-H | -L | -P]] [-a | +a | =a] ACE fayli ... chmod[-fhv] [-R [-H | -L | -P]] [ ACL_Option] fayl ...

Parametrlar:

-R Rekursiya. Papkalar uchun ishlatiladi. Huquqlarni faqat belgilangan ob'ekt uchun emas, balki barcha o'rnatilgan ob'ektlar uchun o'zgartiradi
-R -H Ramziy havolalarga rioya qiling buyruq qatori. Odatiy bo'lib, ramziy havolalar qayta ishlanmaydi
-R -L Barcha ramziy havolalar qayta ishlanadi
-R -P Havola daraxti qayta ishlanmaydi. Standart sozlama.
-v Batafsil. O'zgartirilgan barcha fayllarni ko'rsatadi
-v -v juda batafsil rejim. Eski va yangi ruxsatlar sakkizlik (raqamli) va alifbo tartibida ko'rsatiladi
-f fayl ruxsatlarini o'zgartirishning iloji bo'lmasa, diagnostika xabarlarini ko'rsatmang
ACL_Option(ACL - foydalanuvchilar guruhlari uchun kirishni boshqarish ro'yxati) ACL_manipulyatsiya_opsiyalari

Kirish huquqlari:

Kirish huquqlari alfavit kodida yoki sakkizlik sanoq tizimiga asoslangan raqamli ko'rinishda ko'rsatilishi mumkin

Raqamli avtorizatsiya orqali boshqarish:

Huquqlarni boshqarish uchun uchta bit ishlatiladi

  • birinchisi - o'qish huquqi
  • ikkinchisi - yozish huquqi
  • uchinchidan - ijro etish huquqi
asta-sekin Raqam Harf kodi huquqning tavsifi
000 0 huquqlari yo'q
001 1 faqat ijro etish huquqi
010 2 faqat yozing
011 3 yozib olish va ijro etish huquqi
100 4 faqat o'qish uchun
101 5 o'qish va bajarish huquqiga ega
110 6 ijrosiz o'qish va yozish huquqi
111 7 barcha huquqlar

Bunday fayl huquqlari uchta kirish turi uchun belgilanadi:

  • egasi uchun
  • bir guruh uchun
  • qolganlari uchun

Natijada buyruq quyidagicha ko'rinadi:

$ chmod 444 fayl - hamma uchun faqat o'qish uchun ruxsat

$ chmod 755 fayl - egasi barcha huquqlarga ega (7), boshqa foydalanuvchilar faqat o'qish va ishga tushirish (5)

$ chmod 066 fayl - egasining faylga huquqi yo'q (0), qolganlarning hammasi ijrosiz o'qish va yozish huquqiga ega

Alfavit kirish huquqlaridan foydalangan holda boshqaruv:

Ramziy kod yordamida huquqlarni belgilash formati

[kim...][[+-=][huquqlar...]...][,...]

JSSV belgilar birikmasidir "ugoa" ishora qiladi foydalanuvchilar fayl yoki papkaga kirish huquqi o'zgartiriladi

  • u foydalanuvchi egasi hisoblanadi
  • g foydalanuvchi guruhi
  • o boshqa foydalanuvchilar
  • a (barchasi) hamma uchun, ugoga o'xshash

Jamoa chmod (Rejimni o'zgartirish- o'zgartirish rejimi) juda o'ziga xos sintaksisga ega. Sintaksis ichida umumiy holat:
lekin uni tavsiflovchi jihati shundaki, rejim o'zgarishi ko'p shakllarga ega bo'lishi mumkin. Uni ikki yo'l bilan belgilash mumkin:

  1. sakkizlik son sifatida. Egasining ruxsati 00 shaklidagi raqamlarga to'g'ri keladi, bu erda tayinlangan ruxsatnoma mos keladi: o'qish uchun 4, yozish uchun 2 va bajarish uchun 1. Xuddi shunday, egalar guruhi uchun ruxsatlar 0 ga, “boshqalar” uchun ruxsatlar esa ga aylanadi. Keyin olish uchun tayinlangan ruxsatlar yig'indisini topish kifoya kerakli rejim. Shunday qilib, rwxr-xr-- ruxsatlar 400+200+100 (egasi uchun ruxsatlar, rwx) +40+10 (guruh uchun ruxsatlar, r-x) +4 (boshqalar uchun ruxsatlar, r--) = 754 ga mos keladi; shunday qilib, ruxsatlar bepul shartlar orqali ifodalanadi. Bu avvalgi ruxsatlar, albatta, almashtirilganligini anglatadi;
  2. ifodalardan foydalanish. Bunday holda, ruxsatnomalar vergul bilan ajratilgan iboralar ketma-ketligi orqali ifodalanadi. Demak, ifoda quyidagi shaklni oladi: [toifa]<+|-|=><разрешения> .
Misollar:
  • chmod -R o-w /shared/docs: /shared/docs/ katalogidagi barcha boshqa fayllar va pastki kataloglardan yozish ruxsatini rekursiv ravishda olib tashlaydi.
  • chmod -R og-w,o-x xususiy/: Guruh va boshqalar uchun yozish ruxsatini butun shaxsiy/katalogdan rekursiv ravishda olib tashlaydi va boshqalar uchun bajarish ruxsatini olib tashlaydi.
  • chmod -c 644 boshqa/fayl*: Katalogdagi misc/ nomlari fayl bilan boshlanadigan barcha fayllar uchun ruxsatlarni rw-r--r-- ga o'zgartiradi (ya'ni, hamma uchun o'qish ruxsati va faqat egasi uchun yozish ruxsati) va faqat o'sha fayllar haqida hisobot beradi. buyruq.

Quyidagi misolda hammaga faylni o'qish, unga o'zgartirish kiritish va saqlashga ruxsat berish ko'rsatilgan. Buning uchun siz "boshqalar" guruhining kirish huquqlarini o'zgartirishingiz kerak.
Buyruqlar qatoriga kiriting:
ls -l example1.txt Ekranda quyidagi ma'lumotlar ko'rsatiladi:
-rw-rw-r-- 1 foydalanuvchi foydalanuvchi 42 24-mart 22:07 example1.txt Endi quyidagi buyruqni kiriting:
chmod o+w misol1.txt o+w buyrug'i example1.txt fayliga yozish uchun “boshqalar” (“o” harfi bilan belgilanadi) berishingizni bildiradi. Yugurishning natijasi nima ekanligini ko'rish uchun belgilangan buyruq, faylni yana ko'rib chiqamiz:
-rw-rw-rw- 1 foydalanuvchi foydalanuvchi 42 24-mart 22:09 example1.txt Endi hamma faylni oʻqishi va yozishi mumkin.
example1.txt faylini o'qish yoki unga yozishni oldini olish uchun chmod buyrug'idan foydalaning.
chmod go-rw example1.txt go-rw buyrug'i tizimga siz guruh va "boshqalar"ga example1.txt faylini o'qish yoki yozishni oldini olishni xohlayotganingizni bildiradi.
Natijada, kirish huquqlari quyidagicha ko'rinadi:
-rw------- 1 foydalanuvchi foydalanuvchi 42 24-mart 22:10 example1.txt Ko'rib chiqilayotgan sinflar va huquqlar tegishli inglizcha so'zlarning qisqartmalari bo'lib, ularni eslab qolish oson: faqat bir nechta belgilarni eslab qolishingiz kerak. va harflar.
Quyida ushbu qisqartmalarning transkriptlari ro'yxati keltirilgan:

U sinflari - fayl egasi bo'lgan foydalanuvchi (inglizcha "user" dan);
g - foydalanuvchi tegishli bo'lgan guruh (inglizcha "guruh" dan);
o - boshqalar (egasi ham, egalari ham emas, inglizcha “other” dan);
a - hammasi (u, g va o, inglizcha "all" dan).
Huquqlar r - o'qish huquqi;
w - to'g'ri yozish;
x - bajarish huquqidir.
Harakatlar + - huquq beradi;

- - huquqni tortib oladi;
= - faqat shu huquqni qoldiradi. Bilimingizni sinab ko'rmoqchimisiz? Barcha foydalanuvchilardan example1.txt fayliga barcha huquqlarni olib tashlang. chmod a-rwx example1.txt Endi o'qiy olishingizni tekshiring
bu fayl
buyrug'i cat example1.txt . Siz quyidagilarni ko'rishingiz kerak:
cat: example1.txt: Ruxsat rad etildi Barcha huquqlaringizni, jumladan, o'zingiznikini ham bekor qilish orqali siz faylga kirishni blokladingiz. Ammo fayl sizga tegishli bo'lganligi sababli, huquqlarni har doim quyidagi buyruq bilan qaytarishingiz mumkin:

  • chmod u+rw example1.txt Ushbu faylni o'qiy olishingizga ishonch hosil qilish uchun cat example1.txt buyrug'idan foydalaning.
  • chmod buyrug'idan foydalanishning ba'zi misollari:
  • g+w - egalik guruhiga yozishga ruxsat beradi;
  • o-rwx - boshqa foydalanuvchilardan barcha huquqlarni tortib oladi;
  • u+x - egasiga faylni bajarish huquqini beradi;
  • a+rw - har kimga faylni o'qish va yozish imkonini beradi;

ug+r - egasi va guruhga faylni o‘qish imkonini beradi;
g=rx - guruhga faylni o'qish va bajarishga ruxsat beradi (unga yozmaydi).
-R opsiyasi butun katalog daraxti uchun ruxsatlarni o'zgartirish imkonini beradi.
Kataloglarni ilovalar sifatida "bajarish" mumkin emasligi sababli, tegishli huquqni qo'shish yoki olib tashlash katalogni ko'rib chiqishga ruxsat berish (yoki rad etish) degan ma'noni anglatadi.
Misol uchun, agar siz boshqa foydalanuvchilarning hujjatlar/katalogni bajarishiga to'sqinlik qilsangiz, kimning o'qish va yozish ruxsati borligi muhim emas. Hech kim katalogdagi faylning aniq nomini bilmasa, uning mazmuniga kira olmaydi.
Masalan, yozing:
chmod a-x docs barcha foydalanuvchilarning ijro huquqlarini bekor qilish uchun.
Agar siz hozir CD docs buyrug'i yordamida katalogni o'zgartirmoqchi bo'lsangiz, siz muvaffaqiyatsizlikka duch kelasiz:

Ushbu qisqa maqola Unix-ga o'xshash kirish huquqlari haqida juda to'liq ma'lumot beradi operatsion tizimlar, ularni o'zgartirish variantlari tavsiflanadi va ba'zi tushunchalar va ta'riflar shifrlangan.

Birinchidan, siz asosiy tushunchalarni tushunishingiz kerak, masalan: Linuxda fayl egasi kim, faylga faqat egasining o'zi emas, balki boshqa foydalanuvchilar qanday kirishlari va hokazo.
Unix-ga o'xshash tizimlarda dastur ko'rsatilgan dasturni chaqirgan foydalanuvchining huquqlari bilan ishlaydi. Bu qo'shimcha xavfsizlikni ta'minlaydi, chunki foydalanuvchi huquqlariga ega bo'lgan jarayon muhimlarga yozish huquqiga ega bo'lmaydi tizim fayllari, Masalan /etc/passwd, bu superuser ildiziga tegishli. Bu oddiy tuyuladi, lekin siz bilishingiz va hisobga olishingiz kerak bo'lgan ba'zi xususiyatlar mavjud.

Egasi, guruh va boshqalar

Egasi

Linuxda fayl yoki katalog egasi uni yaratgan foydalanuvchi hisoblanadi. Jamoa chown fayl yoki katalog egasini o'zgartirishingiz mumkin.

O'qish, yozish va bajarish uchun ruxsatlar mos ravishda 0400, 0200 va 0100 raqamli kodlari yordamida o'rnatiladi. Ular birlashtirilishi mumkin. Masalan, 0700 kodi egasiga fayllarni o'qish, yozish va o'zgartirish imkonini beradi.

Guruh

Bir guruh bir nechta Linux foydalanuvchilari, (etarli kirish huquqiga ega) fayl va papkalarni egasi bilan bir xil darajada ishlatishi mumkin. Buyruq yordamida fayl yoki katalog bilan bog'langan foydalanuvchi guruhini o'zgartirishingiz mumkin chgrp .

O'qish, yozish va bajarish uchun ruxsatlar mos ravishda 0040, 0020 va 0010 raqamli kodlari yordamida o'rnatiladi. Ular birlashtirilishi mumkin. Masalan, 0070 kodi fayl bilan bog'langan foydalanuvchi guruhi tomonidan fayllarni o'qish, yozish va o'zgartirish imkonini beradi.

Boshqa hamma

Bu fayl egasi bo'lmagan yoki ushbu fayl yoki katalog bilan ishlay oladigan foydalanuvchilar guruhiga kirmaydiganlar uchun umumiy nomdir. Yaxshi o'xshatish - bu "butun dunyo", "hamma" yoki "har kim".

O'qish, yozish va bajarish uchun ruxsatlar mos ravishda 0004, 0002 va 0001 raqamli kodlari yordamida o'rnatiladi. Ular birlashtirilishi mumkin. Masalan, 0007 kodi har kimga fayllarni o'qish, yozish va o'zgartirish imkonini beradi.

Ruxsatlarni o'qish, yozish va bajarish

O'qish

Faylni ma'lum bir foydalanuvchilar guruhi tomonidan o'qishga ruxsat beradi.
Buyruqning chiqishida "r" sifatida aniqlangan ls

Yozib olish

Fayllar yoki kataloglarni o'zgartirish imkonini beradi.
Buyruqning chiqishida "w" sifatida aniqlangan ls

Ijro

Ikkilik fayllarni ishga tushirish imkonini beradi. Bundan tashqari, u jildni qidirish mumkin yoki yo'qligini tekshiradi. Masalan, agar katalog 0600 ga o'rnatilgan ruxsatlarga ega bo'lsa, siz buyruqdan foydalana olmaysiz. CD buyruq bilan ushbu jildga kirish yoki uning mazmunini ko'rish uchun ls
Buyruqning chiqishida "x" sifatida aniqlandi ls

Xo'sh, endi siz amaliyotga o'tishingiz mumkin.

Buyruq yordamida Linuxda kirish huquqlarini aniqlash va nazorat qilish ls

Buyruqdan foydalanish ls Berilgan yoki ko'rsatilgan katalogdagi fayllar uchun qanday kirish huquqlari o'rnatilganligini bilib olishingiz mumkin:

gruyere@meltingpot / test_perms $ ls -l
jami 0
-rw-r--r-- 1 gruyere xodimlari 0 27 19 fevral :43 bar
drwxr-xr-x 2 gruyere xodimlari 68 27 fevral 19 :45 baz
-rw-r--r-- 1 gruyere xodimlari 0 27 fevral 19:43 foo

Yuqoridagi misoldan ko'rinib turibdiki, buyruq ls fayllar va kataloglarga kirish huquqlarining ramziy kodini ko'rsatadi. 3 va 4-ustunlarda ushbu fayllar yoki kataloglar kimga tegishli va ular qaysi foydalanuvchi guruhiga tegishli ekanligini ham ko'rsatadi.

chmod

chmod (ch g'azab mod e) Linuxda fayl va papkalarga ruxsatlarni o'zgartirish uchun keng qo'llaniladigan buyruq. Bu sizga foydalanuvchi va foydalanuvchilar guruhi va boshqalar uchun kirish huquqlarini o'rnatish imkonini beradi.

Bundan tashqari, server tomonidagi dasturlash tillari (PHP yoki Python kabi) ushbu buyruqning nusxasini huquqlarni o'rnatish uchun o'xshash belgilarga ega bo'lgan ma'noda taqdim etadi.

Mutlaq va ramziy belgi

chmod kirish huquqlarini o'zgartirish uchun 2 turdagi sintaksisni qo'llab-quvvatlaydi:

  • Mutlaq belgi - qaysi kirish bitini (bitlarini) faollashtirishni ko'rsatadigan sakkizlik raqam, masalan 0777
  • Ramziy belgi kirish bitini o'rnatuvchi harflar va raqamlar birikmasidir.

Sakkizlik kod tabiiyroq bo'lib, u fayllar va kataloglarga maxsus kirish huquqlarini o'rnatishni kafolatlaydi, bundan tashqari, ushbu yondashuv kirish huquqlarini dasturiy ravishda o'zgartirish uchun dasturlash tillarida qo'llaniladi.

Ramziy belgi allaqachon aniqlangan huquqlarni qo'shish yoki olib tashlash uchun ishlatiladi. Mutlaq belgini ramziy va aksincha tarjima qilish uchun maxsus saytlar mavjud, ular sizga ushbu barcha kirish huquqlari va buyruqlari qanday ishlashini yaxshiroq tushunishga imkon beradi. chmod. Mana ulardan biri.

© 2024 ermake.ru -- Kompyuterni ta'mirlash haqida - Axborot portali