А что какая-то фс умеет проверяться смонтированной? Что-то сомневаюсь. Нет, просто так запустить проверку без внесения изменений можно и на смонтированной.
запустить проверку без внесения изменений можно и на смонтированной.
Я и написал, что можно запустить проверку без внесения изменений, а там уже смотри, если при таком запуске fsck сказал, что есть ошибки, то отномтируй файловую систему и проверяй, если сказал, что ошибок нет, то проверять нечего.
Я не стремлюсь казаться круче. Ну а о том, что она ненормальная сужу по своему опыту её использования.
В неё напихали разом слишком много фишек, года через 2, возможно, станет нормальной и годной к использованию, а пока ещё рано, у неё ещё детские проблемы.
Если сделать mount -o remount,ro и натравить fsck -f, то наверное ничего плохого не случится.
Но зачем? Как она может сломаться на живой системе, без пропадания питания и т.д.? Не btrfs же.
Я вот помню факапы вначале ext4, сталкивался в архивах mail-рассылок с факапами ext3, reiserfs, и некоторых других. Баги бывали в разных ФС, и всё так же бурлили обсуждения. Обычное дело.
Я 1000% уверен, что если брать Facebook, то они применяют избыточное резервирование данных и если у них будет сбой на btrfs, то они попросту восстановят данные из резервной копии, при чём применяют, скорее всего, полное резервирование. Ну а по поводу остальных, что же в случае проблем будут расплачиваться пользователи.
Я же не могу позволить себе 100% избыточное резервирование, так что лучше буду использовать проверенные временем файловые системы.
Я в курсе, поэтому делаю бэкап важных мне данных, но не всех. Если сравнивать btrfs с другими ФС, то у BTRFS куда больше случаев «случайных» повреждений файловой системы.
И там ещё в примерах были смартфоны, NAS'ы. Так-то.
Поэтому я и написал:
kostik87
Ну а по поводу остальных, что же в случае проблем будут расплачиваться пользователи.
Я и написал, что можно запустить проверку без внесения изменений
-N Don't execute, just show what would be done.
запустить проверку
Don't execute
Ничего не смущает?
Для проверки без внесения изменений есть это:
man fsck
-n For some filesystem-specific checkers, the -n option will cause
the fs-specific fsck to avoid attempting to repair any problems,
but simply report such problems to stdout. This is however not
true for all filesystem-specific checkers. In particular,
fsck.reiserfs(8) will not report any corruption if given this
option. fsck.minix(8) does not support the -n option at all.
Файловую систему перед проверкой не забыл смонтировать в read-only? Если на ФС что-то писали, пока выполнялась проверка, то такие сообщения вполне ожидаемы:
Free blocks count wrong (34635324, counted=34635325).
Fix? no
Free inodes count wrong (120677954, counted=120677955).
Fix? no
Также если fsck что-то изменил во время проверки смонтированной в read-only файловой системы, то файловую систему после этого нужно размонтировать, потому что ядро об этих изменениях не знает и будет вести себя неправильно.
Именно поэтому если при загрузке ОС fsck нашёл и исправил ошибки на корневой ФС, то ОС сразу же перезагружается (это гораздо проще и less error-prone, чем размонтировать корень в таких условиях), хотя и тут возможны проблемы, если /sbin/reboot не удастся прочитать после такого. Поэтому сейчас модно делать проверку корневой ФС из initramfs ещё до её монтирования, тогда перезагрузка не понадобится.
у меня она в кальке, прекрасно работает, на fedora в 2013-2014 году было 400+ машин с ней, с её таблицей разделов, а так же 30 шар с btrfs, если не юзать деб дистры, и не мучать её внутри zfs с адским сжатием и тд, она вполне живёт.
XFS, NTFS, FAT, UFS2, ZFS - все не- линукс ФС, которые, тем не менее, как- то поддерживаются в линукс на «базовом» уровне функционирования, включая проверку в смонтированном состоянии, а некоторые из них только так и могут проверяться на целостность и непротиворечивость. Вообще же, в операционных системах проверка смонтированных в rw ФС является правилом, но в линукс это исключение из правила «нельзя запускать fsck на смонтированной в rw ФС». ;)
Извините, а что отсюда следует: «Facebook (testing in production as of 2014/04)»? Результаты тестирования в студию, плиз. Остальные названия не знакомы..
NTFS в этом списке точно зря. При проверке с исправлением ошибок диск отцепляется от системы и недоступен. Если диск отцепить не получается — используется или системный — проверку предложат запланировать на следующую перезагрузку. И, кстати, если проверка внесла изменения, после неё будет ещё одна перезагрузка, как и в линуксах.
С FAT на стационарных (не съёмных) носителях вроде бы точно так же, давно не видел.
По теме — бессмысленно ждать проверки ФС на ходу для ФС, которая не проектировалась изначально с поддержкой такой фичи. Проверяющему коду нужно взаимодействовать с драйвером ФС в ядре, так что драйвер должен быть написан с оглядкой на это.
То есть btrfs применяется для данных, которые продублированы сотни и тысячи раз, и которые в случае нарушения целостности автоматом подтянутся из альтернативных источников. Отличный пример использования!