logo

Цхмод команда у Линук/Уник-у са примерима

Линук цхмод команда се користи за промену дозвола приступа датотекама и директоријумима. Важи за промените режим . Не може да промени дозволу за симболичке везе. Чак, игнорише симболичке везе које наилазе на рекурзивно обилажење директоријума.

У Линук систем датотека, свака датотека је повезана са одређеним власником и има приступ за различите кориснике. Корисничке класе могу бити:

  • власник
  • члан групе
  • Други (Сви остали)

Дозволе за датотеке у Линуку су следећа три типа:

  • прочитај (р)
  • писати (в)
  • извршити (к)

Кратка историја Цхмода

Прво, команда цхмод је представљена у АТ&Т УНИКС верзији 1 са цхмод системским позивом. Листе за контролу приступа су укључене у неколико система датотека како би се побољшала флексибилност јер су системи расли по типовима и броју корисника.

цхмод верзију уређену у ГНУ цореутилс-у специфицирали су Јим Меиеринг и Давид МацКензие. Ова команда је присутна као изоловани пакет за Мицрософт Виндовс као елемент УнкУтилс изворне колекције Вин32 портова основних услужних програма сличних ГНУ Уник-у. Такође, команда цхмод је послата у ИБМ и ОС.

Хајде да видимо како да променимо дозволу за датотеку помоћу команде цхмод.

Синтакса:

јава паир

Основна синтакса цхмод команде је следећа:

 chmod 

Опћенито имплементиране опције су:

    -Р:То је скраћеница за рекурзивно, тј. додавање објеката у поддиректоријуме.-ИН:То је скраћеница за опширно, приказ објеката модификованих (немодификовани објекти се не приказују).

Циљни објекат је под утицајем ако се спомене симболичка веза. Режими датотека који се директно односе на саме симболичке везе се обично не користе.

Примарна компонента цхмод дозволе:

На пример, рвкр-к---

Све групе од три карактера одређују дозволе за све класе:

    рвк:Крајња три знака одређују дозволе за власника датотеке (тј. класу Усер).р-к:Три средња знака одређују дозволе за групу која поседује датотеку (тј. класу Група).---:Три крајња десна знака одређују дозволе за класу Отхер. Корисници који нису власници датотеке и чланови групе не могу приступити датотеци.

Опције:

Команда цхмод подржава следеће опције командне линије:

-ц, --промене: Слично је опширној опцији, али разлика је у томе што се пријављује ако је направљена промена.

-ф, --тихо, --тихо: Користи се за сузбијање порука о грешци.

-в, --вербосе: Користи се за приказ дијагностике за сваку обрађену датотеку.

--но-пресерве-роот: Користи се да се не третира симбол обрнуте косе црте ('/'), посебно (подразумевано).

--пресерве-роот: Ако се користи ова опција, неће радити рекурзивно на обрнуту косу црту ('/').

--референце=РФИЛЕ: Користи се за одређивање режима РФИЛЕ-а или вредности МОДЕ.

делимитер јава

-Р, --рекурзивно: Користи се за рекурзивну промену датотека и директоријума.

--помоћ: Користи се за приказ приручника за помоћ који има кратак опис коришћења и опција подршке.

--верзија: Користи се за приказ информација о верзији.

Синтакса дозволе датотеке

Ако сте нови корисник, можда ћете се збунити са различитим типовима слова који се користе за постављање дозволе за датотеку. Дакле, пре него што наставимо даље са командом цхмод, хајде да разумемо синтаксу дозволе датотеке.

Да бисмо подесили дозволу за датотеку или директоријум, морамо да наведемо следеће ствари:

  • Ко: Ко смо ми. (корисник)
  • Шта: Коју ћемо промену направити (као што је додавање или уклањање дозволе)?
  • Које: Које од дозвола?

Изјава о дозволи је представљена у индикаторима као што су у+к, у-к. Где 'у' значи 'корисник', '+' значи додај, '-' значи уклони, 'к' представља извршни фајл (који).

виндов.опен јавасцрипт

Корисничка вредност може бити:

у: власник датотеке

г: члан групе

о: други

а: све

Типови дозвола могу бити р, в и к.

Подешавање и ажурирање дозвола

Да бисте подесили дозволу за датотеку, извршите наредбу дозволе са командом цхмод. На пример, желимо да подесимо дозволу за читање и писање за све кориснике и групе датотеке „Демо.ткт“. Морамо да проследимо изјаву о дозволи 'у=рв,го=рв Демо.ткт' са цхмод командом. Да бисте приказали дозволу за датотеку, извршите доњу команду:

 ls -l Demo.txt 

Горња команда ће приказати тренутну дозволу датотеке 'Демо.ткт' датотеке.

Да бисте променили дозволу, извршите следећу команду:

 chmod u=rw,go=rw Demo.txt 

Размотрите доњи излаз:

Линук цхмод команда

Из горњег излаза, дозвола приступа за 'Демо.ткт' је промењена.

Подешавање дозвола за више датотека

Можемо поставити дозволу за више датотека одједном помоћу команде цхмод. Да бисте променили дозволу датотеке за више датотека, наведите образац датотеке помоћу команде цхмод. На пример, ако желимо да поставимо дозволу за читање и писање за све текстуалне датотеке, наведите *. ткт шаблон са цхмод командом.

Да бисте видели дозволу за све текстуалне датотеке из тренутног радног директоријума, извршите следећу команду:

 ls -l *.txt 

Написаће све текстуалне датотеке са њиховим режимом дозволе. Размотрите доњи излаз:

Линук цхмод команда

Из горњег излаза, многе датотеке имају дозволу само за читање за друге кориснике.

Да бисте подесили дозволу за читање и писање за друге кориснике, извршите наредбу у наставку:

 chmod o+w *.txt 

Поставиће дозволу за читање и писање за друге кориснике текстуалних датотека. Размотрите доњи излаз:

Линук цхмод команда

Нумерицал Схортханд

Можемо користити нумеричке вредности уместо слова да одредимо дозволе. За одређивање дозволе користи се троцифрена вредност. Крајња лева цифра представља власника (у), а средња цифра представља чланове групе (г). Крајња десна цифра представља остале (о).

поверсхелл мањи или једнак

Следећа табела представља цифре и њихове дозволе:

Цифре Дозволе
000 Нема дозволу
001 Извршите дозволу
010 Дозвола за писање
011 Дозволе за писање и извршавање
100 Дозвола за читање
101 Дозволе за читање и извршавање
110 Дозволе за читање и писање
111 Дозволе за читање, писање и извршавање

Симболички модови

Такође, команда цхмод прихвата финије симболичке записе, што дозвољава промену одређених режима. Симболични режим се састоји од три елемента, који су спојени у један текстуални низ:

 $ chmod [references] [operator] [modes] file... 

Програм цхмод примењује оператор да дефинише како треба да буду уређени режими датотека. Доле наведени оператери су одобрени:

Оператер Опис
+ Описаним класама додаје описано.
- Уклања описани режим из описаних класа.
= То представља да се описани режими креирају као исти начини за описане класе.

Режими представљају које ће дозволе бити уклоњене или одобрене из описаних класа. Постоје углавном три уобичајена режима која су повезана са заједничким дозволама:

Име Моде Опис
читати р Чита датотеку или наводи садржај директоријума.
писати Ин Записује у директоријум или датотеку.
извршити Икс Понавља стабло директоријума или извршава датотеку.
посебно извршити Икс То није дозвола, али се уместо тога може користити уместо к. Користи дозволе за извршавање за директоријуме упркос њиховим тренутним дозволама и користи дозволе за извршавање за датотеку која има постављен најмање један бит дозволе за извршавање. Корисно је ако се користи са '+' оператором и без постављања дозволе за извршавање што би се десило ако бисмо само користили цхмод -Р а+рк ., док можемо имплементирати цхмод -Р а+рк . са х радије.

Вишеструке модификације се могу описати изоловањем више симболичких модова заједно са зарезима. Команда цхмод ће прегледати умаск ако корисник није наведен.

Посебни режими

Такође, команда цхмод може променити посебне режиме и додатне дозволе директоријума или датотеке. Симболички режими примењују 'с' да укажу на сетгид и сетуид режиме и 'т' да означавају лепљиви режим. Режим се користи само за исправне класе, без обзира да ли се помињу друге класе или не.

Скоро сви оперативни системи нумерички подржавају спецификацију специјалног режима, посебно у окталном облику, али неки не. На ове системе се могу применити само симболички модови.

Неки примери командне линије:

Цомманд Опис
цхмод а+р публицЦомментс.ткт Додаће дозволу за читање за сваку класу (тј. Групу, власника и друге).
цхмод а-к публицЦомментс.ткт То ће уклонити дозволу за извршавање за сваку класу.
цхмод а+рк виевер.сх То ће додати дозволе за извршавање и читање за сваку класу.
цхмод у=рв, г=р, о=интерналПлан.ткт Поставиће дозволе за писање и читање за корисника, сер реад за Групу и одбити приступ за друге.
цхмод -Р у+в, го-в документи Укључиће дозволу за писање у документе директоријума и сваки његов садржај за власника и брише дозволу за писање за друге и групу.
цхмод анд=рв гроупАгреементс.ткт Поставиће дозволе за писање и читање за групу и корисника.
цхмод 664 глобал.ткт Он ће поставити дозволе за писање и читање за групу и корисника и дати дозволу за читање другима.
цхмод 744 Схов_миЦВ.сх Он ће поставити дозволе за извршавање, писање и читање за корисника и дати дозволу за читање Групи и другима.