Почетна » како да » Како функционишу дозволе за Линук датотеке?

    Како функционишу дозволе за Линук датотеке?

    Ако већ неко време користите Линук (па чак и ОС Кс), вероватно ћете наићи на грешку „дозволе“. Али шта су они заправо и зашто су они неопходни или корисни? Погледајмо унутра.

    Корисничке дозволе

    Повремено, компјутери су били масивне машине које су биле невероватно скупе. Да би се из њих извукао максимум, прикључени су вишеструки рачунарски терминали који су омогућили многим корисницима да истовремено раде на свом послу. Обрада података и складиштење извршени су на машини, док су сами терминали били нешто више од средства за преглед и унос података. Ако размишљате о томе, прилично је много како приступамо подацима на "облаку"; погледајте Амазон-ов Цлоуд МП3 систем, Гмаил и Дропбок, и приметићете да, иако се промене могу извршити локално, све се складишти на даљину.

    (Слика: Зенитх З-19 "думб" терминал; кредит: ајмекицо)

    Да би ово функционисало, појединачни корисници морају имати рачуне. Потребно је да им се додели део простора за складиштење и да им буде дозвољено да покрећу команде и програме. Свако добија специфичне „корисничке дозволе“, што диктира шта они могу и шта не могу, гдје у систему раде и немају приступ, и чије датотеке могу и не могу мијењати. Сваки корисник је такође смештен у различите групе које одобравају или ограничавају даљи приступ.

    Приступ датотеци

    У овом откаченом вишекорисничком свету већ смо поставили границе у погледу тога шта корисници могу да ураде. Али шта је са оним што имају приступ? Свака датотека има скуп дозвола и власника. Ознака власника, обично везана када је датотека креирана, проглашава коме припада и само тај корисник може да промени своје дозволе за приступ..

    У свету Линука, дозволе су подељене у три категорије: читање, писање и извршавање. Приступ "Читање" омогућава преглед садржаја фајла, "писање" дозвољава да се измени садржај датотеке, а "извршавање" дозвољава да се покрене скуп инструкција, као што је скрипта или програм. Свака од ових категорија се примењује на различите класе: корисник, група и свет. "Корисник" означава власника, "група" означава сваког корисника који је у истој групи као и власник, а "свијет" значи било кога и све.

    Мапе такође могу бити ограничене овим дозволама. Можете, на пример, дозволити другим особама у вашој групи да прегледају директоријуме и датотеке у вашој матичној фасцикли, али не и било кога изван ваше групе. Вероватно ћете желети да ограничите приступ „писању“ само на себе, осим ако не радите на неком заједничком пројекту. Такође можете да креирате дељени директоријум који омогућава свакоме да прегледава и мења датотеке у тој фасцикли.

    Промена дозвола у Убунтуу

    ГУИ

    Да бисте променили дозволе за датотеку коју поседујете у Убунтуу, кликните десним тастером миша на датотеку и идите на „Својства“.

    Можете да промените да ли Власник, Група или Други могу да читају и пишу, само за читање или да не раде ништа. Такође можете да означите поље да бисте омогућили извршавање датотеке, а то ће омогућити истовремено власника, групу и друге.

    Командна линија

    То можете урадити и преко командне линије. Идите у директоријум који има датотеке у њему и укуцајте следећу команду да бисте видели све датотеке у листи:

    лс-ал

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

    -рвкрв-р-

    Тхе р стоји за "прочитати" в значи "пиши" и Икс Ознака "екецуте." Именици ће почети са "д" умјесто "-". Такође ћете приметити да има 10 места који држе вредност. Можете игнорисати прво, а онда постоје 3 сета од 3. Први сет је за власника, други сет је за групу, а последњи сет је за свет.

    Да би променили дозволе за фајл или директоријум, погледајмо основни облик цхмод команде.

    цхмод [цласс] [оператор] [дозвола] датотека

    цхмод [угоа] [+ или -] [рвк] фајл

    Ово може изгледати компликовано у почетку, али верујте ми, прилично је лако. Прво, погледајмо класе:

    • у: Ово је за власника.
    • г: Ово је за групу.
    • о: Ово је за све остале.
    • а: Ово ће промијенити дозволе за све горе наведено.

    Даље, оператори:

    • +: Знак плус ће додати дозволе које слиједе.
    • -: Знак минус ће уклонити дозволе које слиједе.

    И даље са мном? И последњи део је исти као када смо проверили дозволе за датотеку:

    • р: Омогућава приступ за читање.
    • в: Дозвољава приступ писању.
    • к: Омогућава извршење.

    Хајде да то саставимо. Рецимо да имамо датотеку под називом “тодо.ткт” која има следеће дозволе:

    -рв-рв-р-

    То јест, власник и група могу читати и писати, а свијет може само читати. Желимо да промијенимо дозволе за ове:

    -рвкр-

    То значи да власник има пуну дозволу, а група може да чита. То можемо да урадимо у 3 корака. Прво, додаћемо дозволу за извршење за корисника.

    цхмод у + к тодо.ткт

    Затим ћемо уклонити дозволу за писање за групу.

    цхмод г-в тодо.ткт

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

    цхмод о-р тодо.ткт

    Можемо их комбиновати у једну команду, као на пример:

    цхмод у + к, г-в, о-р тодо.ткт

    Можете видјети да је сваки одјељак одвојен зарезима и да нема размака.

    Ево неколико корисних дозвола:

    • -рвкр-кр-к: Власник има потпуне дозволе, групе и други корисници могу читати садржај датотеке и извршавати.
    • -рвкр-р-: Власник има потпуне дозволе, група и други корисници могу само читати датотеку (корисно ако вам не смета што други прегледају ваше датотеке.
    • -рвк-: Власник има потпуне дозволе, све остале немају (корисно за особне скрипте).
    • -рв-рв--: Власник и група могу читати и писати (корисно за сарадњу са члановима групе).
    • -рв-р-р-: Власник може читати и писати, груписати и други корисници могу само читати датотеке (корисно за похрањивање особних датотека на дијељеној мрежи).
    • -рв--: Власник може да чита и пише, сви остали немају (корисно за чување личних датотека).

    Постоји још неколико ствари које можете да урадите са цхмод-ом - као што су сетуид и сетгид - али они су мало дубљи и већина корисника не треба да их користи..

    Датотеке Роот или Супер-Усер и Систем

    Данас не водимо увек системе који имају више корисника. Зашто бисмо и даље бринули о дозволама?

    Па, Уник и његови деривати - Линук, ОС Кс, између осталог - такође разликују ствари које покреће корисник, ствари које води администратор или са администраторским привилегијама, и ствари које води сам систем. Као такве, ствари које су саставни део система захтевају администраторске привилегије да се мењају или приступају. На овај начин, не случајно забрљаш.

    У Убунтуу, да бисте направили промене у системским датотекама, користите “судо” или “гксудо” да бисте добили еквивалент администраторских привилегија. У другим дистросима, пребацујете се на „роот“ или „супер-корисник“, што заправо чини исту ствар док се не одјавите.

    Имајте на уму да у оба ова случаја, промене дозвола за датотеке могу довести до тога да програми не раде, ненамерно мењају власништво над датотеком на роот корисника (уместо власника) и чине систем мање безбедним (додељивањем више дозвола). Као таква, препоручује се да не мењате дозволе за датотеке - посебно системске датотеке - осим ако је то неопходно или знате шта радите.


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

    Мислите да можете лакше објаснити ствари? Имате ли исправку? Желите ли да се присетите старих дана? Направите паузу и размислите у коментарима.