Найти тему
Окей, Анфиса

Что за зверь "Файловая система". Часть 1.

Оглавление

Привет всем! Меня зовут Анфиса и я люблю колупаться во всяких этих ваших компьютерных делах. Однако оказалось, что этот мир не всегда дружелюбен к новичкам. Существует множество инструкций для всего на свете. Но они все в стиле "нажми сюда / напечатай это и получишь такой вот результат"

А почему так? Куда нажать чтоб всё исчезло?)))

И так вот, в очередной раз объясняя простым языком подруге какую-то фичу я поняла, что гуглю очень многое, что можно было бы объяснить проще. Мне не всегда нужны глубокие познания. Например, чтобы успешно использовать линукс для повседневных задач мне вовсе не обязательно знать и досконально понимать как устроено его ядро. Однако порой бывает любопытно понять сложные вещи. И было бы так классно, если бы кто-то рассказал всё эдакими "широкими мазками".

Тут я и решила попробовать быть этим "кем-то" кто просто о сложном.

Начнём?

Файловая система. Часть 1.

Давеча устанавливала себе арч линукс. И задумалась на выборе файловой системы. Дело в том, что давно не пользовалась линуксом. По долгу службы долго сидела на windows. Потом переехала на мак. А за это время ext4, бывшая чуть ли не стандартом де-факто, потихоньку перестаёт таковой быть. Всё больше пользователей сейчас для линукс систем выбирают Btrfs или xfs.

Так вот вам как пользователю порой придётся выбирать какую ФС использовать, когда вы форматируете тот или иной диск. Например, я на внешних переносных жёстких дисках использую exFAT.

Сложно? О чём это я вообще?

На каком языке вы говорите?
На каком языке вы говорите?

Не спешите закрывать вкладку. Сейчас расскажу на пальцах, что такое файловая система.

Обратившись к википедии, мы узнаем, что:

"Файловая система (англ. file system) — порядок, определяющий способ организации, хранения и именования данных на носителях".

В общем-то мало что проясняет, кроме того, что теперь понятно, что "fs" в аббревиатурах ntsf, btrfs, xfs и т.д., означает file system, файловая система. Что-то-там-файловая-система. Окей, давайте разбираться.

Если сильно упрощать, представим, что ваш жёсткий диск – это шкаф. Понятно, что чем больше шкаф – тем лучше. В него влезет больше ваших вещей. Однако изначально шкаф без полок и разделов. Просто некий большой ящик: есть дно, внешние стенки и всё.

Так вот, когда вы слышите, что надо создать разделы – это значит, что надо в этот ящик поставить внутренние стенки, полки и дверцы. Допустим у вас шкаф типа "гардероб", маленькая узкая дверца слева скрывает за собой полочки. На одной полочке уютно расположилась система восстановления, на второй загрузчик, на третьей операционная система windows. Вот третья полочка – это ваш диск (он же раздел) С (Цэ. Почти как муха).

А за второй дверцей большой раздел куда вы складываете и вешаете свои вещи. Это ваш любимый диск D (Дэ, как дэвушка). Туда вы складываете все дорогие сердцу файлики, чтобы они никуда не исчезли из вашей жизни, в случае если что-то случится с операционной системой. Конечно, система у нас вообще на другой полочке, через стенку, вообще наших фоточек и музычки никак не касается. Всё важное – в безопасности.

Создать раздел – это определить сколько и каких больших или маленьких отделений будет в вашем шкафу. Это называется таблица разделов. На сегодняшний день существуют два вида таблиц разделов, а именно GPT и MBR. (О них мы поговорим в другой раз)

А вот какого вида этот ваш шкаф будет и как операционная система будет им пользоваться – это файловая система.

Так стоп, то есть вы – пользователь операционной системы, а она – пользователь файловой? По сути, да. FS показывает как и где хранятся файлы. Какого они размера. Какая длина имени разрешена. Но не грустите, вы тоже взаимодействуете с файловой системой, просто через интерфейс системы операционной. Например, когда создаёте папки (новые полочки в вашем чудесном шкафу).

Главные задачи ФС:

а) именование файлов. Она "решает" какая максимальная длина может быть у файла и "следит" чтобы имя было уникальным.

б) Выдаёт специальные "инструкции" программам как взаимодействовать с файлами. (На примере шкафа, допустим если у вас сервант, где стоит сервиз мадонна, то ФС не разрешит туда складировать бельё и носки :).

в) ФС решает, где физически хранить на диске ваши файлики. Да, прям вот записывать на сектора диска. Она потом расскажет операционке, где и как записан какой файлик.

Также важно, что файловая система позволяет нам работать с файлами, не думая о том, как именно они хранятся на диске. Она использует удобные символьные имена для файлов и организует их в каталоги, как папки в офисном шкафу. И вся информация о файлах хранится в своего рода справочниках, где каждый файл получает свой уникальный номер и дополнительные сведения о нем.

Итак, ФС бывают журналируемые, которые зачастую используются в случае с асинхронной записью на диск для носителей с произвольным доступом. Это известные нам по винде – NTFS, FAT32. А также линуксовые Ext2, Ext3, Ext4, JFS, ReiserFS, XFS, Btrfs, ZFS. Apple File System (APFS), применяемая понятно где. Есть ФС даже для дисков (ну а что они не люди что ли? Хотя погодите…), для флеш-накопителей, для виртуальных и сетевых хранилищ.

Так, что-то опять пошли термины и сложности.

Это затравка для следующих частей.

Опять началась непонятная фигня
Опять началась непонятная фигня

Я расскажу, что значит "журналируемые", "асинхронная запись", какую ФС выбрать для вашей флешки с фоточками, а какую для флешки на которую сканируете документы.

Чем они все отличаются, какая "самая лучшая" и почему такой нет.