Правата на файловете в iPhone (MAC OS X)

Полезни и подробно описани съвети за изпълнение на редица важни задачи с iPhone, ръководства как да се справите с даден проблем или да работите с определена функция. Всичко, което ви е необходимо за ефективна работа и ползване на възможностите на мобилния телефон на Apple.
valery
Мнения: 17
Регистриран на: 27 Дек 2007, 12:37
Местоположение: София, България
Обратна връзка:

Правата на файловете в iPhone (MAC OS X)

Мнение от valery »

Здравейте,

Появи се въпрос свързан с правата на директориите и файловете качени във файловата система на iPhone. Ще дам малко разяснения, които определено няма да са изчерпателни, но на някои (надявам се) ще помогнат.

Ще започна с това, че вашият iPhone работи с модифицирана версия на MAC OS X, който пък от своя страна до известна степен е дереват на операционната система BSD. Работата с файловете и проверката на правата им е абсолютно идентична и всъщност присъща за всяка UNIX базирана операционна система.

Всеки обект по файловата система се характеризира със собственик (Owner), група (Group) и набор от права (modes).

Права върху тези обекти се раздават поотделно 1) за собственика 2) за групата и 3) за всички останали.

За всеки файл се различават: право за r - четене (Read), w - писане (Writer) и x - изпълнение (eXecute).
Аналогично за всяка директория (папка) се различават: право за r - изчитане на съдържанието, w - промяна на съдържанието (създаване и изтриване на файл) и x - отваряне въобще в тази директория (папка).

Ето например какво се вижда, като реша да проверя правата на директорията /var/root/Media с командата "ls -al /var/root/Media" в конзолата:

Код за потвърждение: Избери целия код

# ls -al /var/root/Media
drwx--x--x    3 root  wheel  136 Mar 19 11:01 Media
Това, което се вижда е, че:
0) обектът е директория. Първият символ на първата колонка указва типа на обекта. Той може да е "d" - директория, "-" - обикновен файл, "l" - символична връзка (нещо като shortcut под windows) и т.н.;
1) собственик на директорията е "root" (третата колонка);
2) групата на директорията е "wheel" (четвъртата колонка);
3) първата колонка се състои от символ за типа на обекта и още три тройки символи, като всяка тройка описва правата съответно на собственика на обекта, на потребителите от групата на обекта и правата на всички останали. В нашия случая собственикът (root) може да чете (r) директорията, да пише (w) и да влиза в нея (x). Потребителите пък от групата (wheel) могат само да влизат в нея (x), тъй като правата за четене (r) и писане (w) не са дадени (на техните места има тирета).

Следва пример за някой произволен файл:

Код за потвърждение: Избери целия код

# ls -al /Applications/Labyrinth.app/labyrinth
-rwxr-xr-x   1 root  admin  297088 Mar 19 08:35 /Applications/Labyrinth.app/labyrinth
Аналогично от тук се вижда, че:
0) обектът е файл;
1) собственик на файла е "root";
2) групата на файла е "wheel";
3) правата са както следва:
* собственикът "root" може да чете, пише и изпълнява файла (явно файлът е някаква програма);
* членовете на групата "wheel" могат само да четат съдържанието на файла, да го изпълняват, но не и да го променят;
* същото се отнася и за всички останали потребители;

До тук добре... станали сме бигмадафаказ на правата (макар че има още една камара символи из тия права, които могат да учудят мнозина). Идва въпросът обаче как да ги променяме. Най-пичуфското, което ви препоръчвам (дори и за разглеждането им) е да инсталирате на своя iPhone пакета OpenSSH и да използвате програмката WinSCP под Windows, за да се свържете към него с потребител "root" и парола "alpine" (вероятността да е такава е голяма, иначе поровичкайте в Интернет според версията на вашия firmware). Харесайте си една директорийка (наречете я папка, ако искате), качете си нещо (файл или папка) от компютъра, изтрийте го (него, не нещо друго!) или пък цъкнете с десен бутон на него и в Properties разцъкайте съответните права...

Ами засега... това е... :)
Публикувай отговор