Како приказати пермисије над фајловима у окталном (нумеричком) формату

Скоро сам чуо од једног дечка који је скоро почео са Линуксом да кад жели да види пермисије у окталном формату – јер ове у human-friendly му још нису најјасније – то ради тако што се на сервер улогује кроз FileZilla програм па из њега покрене ‘File Permissions’ над фајлом и тако види која је пермисија у окталном формату.

Ово је обично потребно уколико корисник жели да препише пермисије које један има фајл (кад кажем фајл мислим и на регуларан фајл и на фолдер и на симлинк) на неки други фајл – а није баш упознат са начином доделе пермисија у human-friendly формату, јер сем chmod 755 може се користити и chmod u=rwx,g=rx,o=rx па се из листинга тренутних пермисија могу доделити еквивалентне без коришћења окталног мода.

Дакле еквивалент за 777 би био a=rwx при чему је а ознака за сви (аll) а rwx ознака за read-write-execute. У примеру chmod u=rwx,g=rx,o=rx – u је ознака за корисника (user), g за групу (group) и о за (остале) others. У синтакси = значи додај конкретно ове привилегије, – значи одузми од постојећих ове привилегије (u-w ће одузети кориснику write привилегију) а + значи додај на постојеће привилегије и ову (g+x ће групи доделити execute привилегију)

Лепо описано за почетнике шта је шта

Ево једног примера копирања постојећих пермисија где имате два фајла са различитим пермисијама и прегледом истих у human-friendly формату те доделом еквивалентих привилегија другом фајлу.

За излиставање привилегија у окталном формату – што може бити занимљиво почетницима – користимо команду stat која је заправо део из coreutils пакета.
Да бисте излистали пермисије у окталном формату користи се синтакса:

stat -c 'FORMAT_ISPISA' fajl

У ‘FORMAT_ISPISA’ се могу сем самих пермисија поставити и многи други параметри за испис попут датума задње измене или датума задњег приступа фајлу, власник фајла и слично, сваки параметар за формат почиње са % – али нама су у овом случају кад су пермисије у питању занимљиви само следећи параметри за формат:

  • %a – Пермисије над фајлом у окталном формату
  • %A – Пермисије над фајлом у human-friendly формату (као са ls -l)
  • %n – Назив фајла

Те би за листинг пермисија у нашем случају било коришћено: stat -c ‘%a %A %n’ testfajl*

Остали параметри који нам могу бити занимљиви су:

  • %F – тип фајла (регуларан фајл, празан, фолдер, линк…)
  • %U – име корисника који је власник фајла
  • %G – име групе која је власник фајла
  • %x – време последњег приступа фајлу
  • %w – време кад је фајл креиран
  • %y – време кад је фајл последњи пут мењан
  • Произвољни карактери или симболи за лакши прика фајла, без % (–>, ->, |, ime:, štagod)

Пример овако некаквог приказа

Сад дакле, кад имате пермисије у окталном формату а нисте најбољи са пермисијама у human-frindly формату, можете ‘прекопирати’ пермисије са стандардним chmod 755 (или који већ)