>[оверквотинг удален]
>меньше физического сектора диска?
>Для "флэшек" наверное может быть.
>Но они не очень применяются на машинах-серверах.
>А вот для дисков?
>
>После его заявления появился вопрос
>
>вопрос 3
>Не может ли быть такого, что блок файловой системы
>меньше физического сектора диска? Например если взять последние жесткие WD которые с сектором размером 4k, но контроллер жёсткого диска эмулирует поведение диска с размером 512 байт, и при определённых обстоятельсвах это приводит к заметному падению скорости. Контроллеры RAID1 тоже пишут не по секторам хотя также прикидываются что сектор у них 512. Я к тому что драйвер может делать вид что у него размер 512 байт, на самом деле на устройство писаться будет совсем другими блоками. Флешка один из примеров. Контроллер RAID на устройстройство тоже не по сектору пишет. Сам контроллер жёсткого диска тоже не факт что по 512 байт пишет. А ещё может быть куча прослоек LVM, RAID, жесткий каждый со своим блоком буфером и прочими удовольствиями для повышения скорости.
И порция данных может быть испорчена в любом из этих мест.
От сбоев жесткого защищает RAID. От выключения питания журнал файловой системы. А для вас придумали fsync() и подобное. При возврате из которой вам сообщается что фс передала данные переданы драйверу блочного устройство которое заверило фс что данные размещены на носителе, после чего уже запускаются другие механизмы обеспечения целостности типа батарейки на RAID и подобного. И если например некто не поставв батарейку на RAID задействует кеш то там пропадут блоки на сотни мегабайт и все ваши ухищрения пойдут лесом, а программе они только добавят тормозов.