Якщо ваш домашній каталог приватний, ніхто більше не може отримати доступ до жодного з ваших файлів. Для доступу до файлу процес повинен мати дозвіл на виконання всіх каталогів на шляху вниз по дереву з кореневого каталогу. Наприклад, щоб дозволити іншим користувачам читати /home/martin/public/readme
, каталоги /
, /home
, /home/martin
і /home/martin/public
все повинно мати права доступу d??x??x??x
(це може бути drwxr-xr-x
, або drwx--x--x
чи який -небудь інша комбінація), і крім того , файл readme
повинен бути читабельним ( -r??r??r??
).
Як правило, домашні каталоги мають режим drwxr-xr-x
(755) або принаймні drwx--x--x
(711). Режим 711 (лише дозвіл на виконання) в каталозі дозволяє іншим отримувати доступ до файлу в цьому каталозі, якщо вони знають його ім'я, але не перераховують вміст каталогу. Під цим домашнім каталогом створіть загальнодоступні та приватні підкаталоги.
Якщо ви ніколи і ніколи не хочете, щоб інші люди читали будь-які ваші файли, ви можете зробити свій домашній каталог drwx------
(700). Якщо ви це зробите, вам не потрібно захищати файли окремо. Це не порушить нічого, крім здатності інших людей читати ваш файл.
Одна загальна річ, яка може зламатися, оскільки це примірник інших людей, які читають ваші файли, - це якщо у вас є каталог, такий як ~/public_html
або ~/www
який містить вашу веб-сторінку. Залежно від конфігурації веб-сервера, цей каталог може знадобитися для читання у всьому світі.
Ви можете змінити дозволи за замовчуванням для створених файлів, встановивши значення umask у вашому .profile
. Umask - це доповнення максимальних дозволів файлу. Загальні значення включають 022 (доступний для запису тільки власником, читається та виконується всіма), 077 (доступ лише власником) та 002 (наприклад, 022, але також можна записувати для групи). Це максимальні дозволи: програми можуть встановлювати більш обмежені дозволи, наприклад, більшість файлів у кінцевому підсумку не виконуються, оскільки програма, яка їх створила, не встановлювала біти дозволу на виконання при створенні файлу.