У овом брзом упутству видећемо како можемо да га користимо цхмод наредба у Убунту машини за проналажење, модификовање и уклањање корисничких дозвола из одређених датотека које постоје на корисниковом систему датотека. Играјмо се кроз разне услове како бисмо савладали основно цхмод команде које нам могу олакшати свакодневицу уз Убунту.
Линук дозволе
Линук дозволе су сјајан скуп правила која је једноставно разумети ако схватимо основна права. Три главне тачке које морамо разумети да бисмо знали како функционишу Линук дозволе:
- Елемент за који су дефинисане дозволе
- Које радње се могу извршити уз дозволу
- Ко може да изврши које радње
Постоје два основна елемента у Линук датотечном систему:
- Директоријуми
- Фајлови
Постоје три радње које се могу извршити:
- читати
- Напишите
- Извршити. Осим извршавања скрипти, исте радње су потребне и за стварање датотека и других директоријума унутар њих
Корисници који могу да изврше ове радње су:
- Власник датотеке
- Група власника датотеке
- Корисници који нису повезани са групом власника или самим власником
Да бисте видели дозволе повезане са датотеком, покрените следећу наредбу:
лс -лЕво шта добијамо овом командом:
Пронађите дозволу за датотеке
У излазу, првих 10 знакова представља дозволу за датотеку:
- Први знак, који је у овом случају '-' означава да је ово датотека. За директоријум, ово би било „д“.
- Следећих девет знакова представља дозволе за власника, групу власника и остале.
Промена дозвола
Синтакса за модификовање дозволе датотеке изгледа овако:
цхмод дозвола датотека [датотека 2]…Осмерно представљање за дозволе
Дозволе можемо представити као осмински број. На пример, за постављање дозвола за читање, писање и извршавање за власника, дозвола за читање и писање за његову групу, а за остале нема дозволу, здраво.ткт датотеку, извршићемо следећу наредбу:
судо цхмод 760 здраво.тктЈедном када извршимо горњу команду и покушамо да читамо датотеку са не-власничким налогом помоћу следеће наредбе:
судо -у нотовнер-усер још здраво.тктДобићемо следећу грешку:
Здраво.ткт: Дозвола одбијенаАли одакле овај број? Свака цифра тог броја представља скуп дозвола. Погледајмо како су изведени:
- 0: Означава да нема дозволе
- 1: Означава извршити дозволу
- 2: Означава писати дозволу
- 4: Означава читати дозволу
За додељивање дозвола за читање, писање и извршавање за власника, доделили смо му број 7 (= 4 + 2 + 1). Хајде да боље разумемо ово у табели цифара:
Број | Бинарни | читати | Напишите | Извршити |
0 | 000 | НЕ | НЕ | НЕ |
1 | 001 | НЕ | НЕ | ДА |
2 | 010 | НЕ | ДА | НЕ |
3 | 011 | НЕ | ДА | ДА |
4 | 100 | ДА | НЕ | НЕ |
5 | 101 | ДА | НЕ | ДА |
6 | 110 | ДА | ДА | НЕ |
7 | 111 | ДА | ДА | ДА |
Изнад табеле је много јасно шта свака представља у погледу дозвола за датотеке.
Представљање знакова за дозволе
Дозволе можемо представити као осмински број. На пример, за постављање дозвола за читање, писање и извршавање за власника, дозвола за читање и писање за његову групу, а за друге нема дозволу, здраво.ткт датотеку, извршићемо следећу наредбу:
судо цхмод у = рве, г = рв, о-рвк здраво.тктДа бисмо додали дозволе постојећем кориснику, можемо и:
судо цхмод г + в здраво.тктОвде се дозвола за писање додељивала корисничкој групи власника датотеке.
Рекурзивне промене дозволе
Такође можемо променити дозволе за датотеке садржане у одређеном директоријуму једном командом. Да бисте одједном изменили дозволе сваке датотеке и фасцикле у датом директоријуму, користите судо цхмод са -Р:
судо цхмод 777 директоријум / *Можемо видети следећи излаз који јасно одражава промену дозвола за датотеке:
Рекурзивно мењање дозвола за датотеке
Закључак
У овој лекцији смо погледали како можемо изменити дозволе за датотеку и ако је потребно, урадимо то рекурзивно. Разумели смо основне концепте како Линук дозволе могу много да нам помогну у свакодневном раду.