Здравствуйте! я студент-дипломник (программист) ЛЭТИ,. то есть буду дипломником, когда закрою допсу, на которой имел несчастье оказаться. Помогите, пожалуйста, ответьте на пару вопросов по системе безопасности Linux
- маска доступа
Насколько я понял, эта маска представляет собой значение, которое вычитается. из 777 (кстати, именно вычитается, а не представляет собой верхнюю границу? ) для тех файлов и директорий, в которых пользователь напрямую командой chmod не указал права. Но чем тогда объясняется разница в значениях доступа по умолчанию для файлов и директорий (typically 666 in the case of files, and 777 in the case of directories.) Маска для всех одна? При этом блин еще иногда пишут, что значение маски по умолчанию 022. Какое в действительности значение маски по умолчанию?
- Насчет того, где в файле хранятся параметры доступа. Одни пишут что в неком ярлыке, другие – в заголовке. Если в ярлыке, то что это за ярлык и каким образом он приписывается к файлу? Кроме того, что из себя представляет структура для хранения атрибутов файла по доступу к нему. Это набор переменных типа UID = 148, GID = 149 ?
и вот еще сами параметры доступа. кто-то пишет, что это набор из 9 (10) битов, но в заголовке (ярлыке) это, получается, три числа в восьмеричной системе?
- И еще насчет системы проверки. Каждый ли раз, когда один и тот же пользователь (процесс) обращается к файлу (директории) , запускается проверка на определение его уровня доступа?
- И нет ли еще случаем какого-то подобия маски, когда пользователь сознательно пытается установить командой chmod параметры, но эта маска ограничивает. Понимаю, что вроде не должно быть, но в инете наткнулся тоже (Значения ACL_MASK определяет лимит значения режима доступа для дополнительных пользователей и групп. Т.е. если режим доступа к файлу у пользователя rwx (чтение, запись, запуск), а маска - r--(только чтение), то у пользователя реально будет только доступ на чтение) - но это видимо относится к какому-то специальному инструменту ACL
Система безопасности Linux
Простите, но хоть до википедии вы прогулялись?
Я не понял часть вопросов.
Я честно перечитал это несколько раз:
Кроме того, что из себя представляет структура для хранения атрибутов файла по доступу к нему. Это набор переменных типа UID = 148, GID = 149 ?
и вот еще сами параметры доступа. кто-то пишет, что это набор из 9 (10) битов, но в заголовке (ярлыке) это, получается, три числа в восьмеричной системе?
Про какие файловые системы Вы спрашиваете? Все эти ограничения организованы именно на уровне ФС. Опять же для общего понимания стоит прочитать хоть статьи вики про ACL, ext2, umask. Там логично написано, потом вы сможете логично объяснить, что же Вам непонятно. Потому как я — честно — не понял вопросов.
По поводу проверки — права на доступ к файлу определяются при открытии файла (см. возможные ошибки open, например), а затем при write проверяется допустимый размер (возможны ошибки EFBIG, ENOSPC, EIO; man 2 write), а право на запись не проверяется. Но! Я сужу только по возможным ошибкам open (2), read (2), write (2) и не знаю точно механизмов проверки, так что мой ответ отражает только моё собственное видение происходящего.
странно, я вроде более-менее ясно выражаюсь.
но в любом случае вопрос закрыт. спасибо большое!
в юникс-форуме запостил, там ответили. http://unixforum.org/index.php?showtopic=117059
и кстати поняли :D
в юникс-форуме запостил
лучше-бы вы где-нить в одном месте постили...