- Отличия файловых систем Linux и Windows
- Отличия файловых систем Linux и Windows
- Структура каталогов
- Чувствительность к регистру
- Косая черта vs. Обратная косая черта
- Символ «/» вместо буквы диска
- Everything is a File
- Вы можете удалять или изменять открытые файлы
- Заключение
- Файловые системы в Linux
- Какую файловую систему выбрать для Linux
- Выбор файловой системы для Linux
- 1. Ext
- 2. XFS
- 3. JFS
- 4. BtrFS
- 5. ReiserFS
- 6. ZFS
- Выводы
Отличия файловых систем Linux и Windows
Обновл. 15 Авг 2021 |
В сравнении с Windows, файловые системы Linux имеют довольно много отличий. Вы не найдете здесь никаких букв для обозначения дисков или символа обратной косой черты ( \ ), указывающего на подкаталоги. При этом сами файлы могут иметь одни и те же имена, различающиеся только регистром букв. На этом уроке мы рассмотрим некоторые различия между файловыми системами Linux и Windows, узнать о которых будет полезно начинающим пользователям Linux-систем.
Отличия файловых систем Linux и Windows
Структура каталогов
В файловых системах Linux отсутствуют папки Windows, Program Files, Users (хотя каталог /home/ очень похож на папку Users в Windows).
Структура каталогов Linux не просто использует разные имена для папок и файлов. В ней применяется в целом иной принцип их расположения. Например, приложение в Windows может хранить все свои файлы в папке C:\Program Files\Имя_приложения, в то время как в Linux данные файлы будут разделены между несколькими расположениями: двоичные файлы будут помещены в /usr/bin, библиотеки — в /usr/lib, а конфигурационные файлы — в /etc/.
Структура каталогов в Debian Linux
Чувствительность к регистру
В Windows вы не можете в одной папке одновременно иметь файлы file и FILE. Файловая система Windows не чувствительна к регистру, поэтому она обрабатывает их имена как один и тот же файл.
В Linux же файловая система является чувствительной к регистру букв. Это означает, что у вас в одной папке могут находиться файлы с именами file, File и FILE соответственно. При этом они будут отличаться своим содержимым, т.к. Linux рассматривает заглавные и строчные буквы как разные символы.
Косая черта vs. Обратная косая черта
Windows, как и DOS, использует обратную косую черту. Например, путь к каталогу пользователя в Windows имеет следующий вид:
В Linux же путь к домашнему каталогу пользователя представлен в виде:
Примечание: Также не трудно заметить, что URL-адрес в вашем веб-браузере — даже в Windows — использует символ прямой косой черты, например, https://ravesli.com/ .
Символ «/» вместо буквы диска
Каждому разделу или целому диску в Windows назначается соответствующая буква. Независимо от того, имеется ли у вас несколько жестких дисков, несколько разделов на одном жестком диске или подключены съемные устройства, каждая файловая система будет доступна под своей собственной буквой:
В Linux же дела обстоят совсем иначе: вместо букв здесь применяются пути к различным каталогам (в Windows такое тоже возможно, но требуется дополнительная настройка).
В Linux все файлы находятся в / — корневом каталоге. Вне корневого каталога файлов нет. Когда вы подключаете к компьютеру какое-нибудь устройство, оно монтируется (подключается) в разделе /media/. При этом содержимое каталога будет отображать содержимое смонтированного раздела:
Если у вас несколько жестких дисков или разделов жесткого диска, вы можете смонтировать их в любом месте вашей файловой системы. Например, разместить свои домашние каталоги в отдельном разделе, смонтировав его в /home или в любой другой каталог, даже в /myBackupDrive.
Everything is a File
Точно так же, как каждая смонтированная файловая система является каталогом внутри корневого каталога / , всё в Linux является файлом. Например, ваш первый жесткий диск в системе представлен каталогом /dev/sda, CD-привод доступен в /dev/cdrom, а ваша мышь — в /dev/mouse.
Примечание: Детально о принципе «Everything is a File» в Linux-системах мы расскажем в отдельной статье.
Вы можете удалять или изменять открытые файлы
В Linux и других UNIX-подобных операционных системах приложения не блокируют доступ к файлам так, как это делает Windows. Например, предположим, что вы смотрите фильм через медиаплеер VLC в Windows. Идут титры, вы закончили его смотреть и поэтому пытаетесь удалить. Система выдаст сообщение об ошибке — вам нужно прекратить просмотр файла в VLC, прежде чем вы сможете удалить его (переименовать или сделать с ним что-либо еще).
В Linux, как правило, вы можете удалить или изменить видеофайл во время его воспроизведения. Вы не увидите сообщений об ошибках, в которых говорится, что файл в данный момент используется кем-то еще.
Заключение
Эти различия должны относиться и к другим UNIX-подобным операционным системам, хотя могут быть свои нюансы (например, в macOS регистр не учитывается). Повторюсь, что здесь представлены те различия между файловыми системами Windows и Linux, узнать о которых полезно именно новичкам в мире Linux.
Поделиться в социальных сетях:
Источник
Файловые системы в Linux
XFS — начало разработки 1993 год, фирма Silicon Graphics, в мае 2000 года предстала в GNU GPL, для пользователей большинства Linux систем стала доступна в 2001-2002 гг. Отличительная черта системы — прекрасная поддержка больших файлов и файловых томов, 8 эксбибайт — 1 байт (8*2 60 -1 байт) для 64-х битных систем. Ко всему прочему обладает другими немаловажными особенностями — непрерывные области дискового пространства, задержка выделения пространства и онлайн дефрагментация. Является одной из старейших журналируемых файловых систем для *nix, и содержит в себе наиболее отлаженный, в этом контексте, исходный код.
ReiserFS (Reiser3) — одна из первых журналируемых файловых систем под Linux, разработана Namesys. Имеет некоторые врождённые головные боли, но в целом неплохая система, ведущая отсчёт дней своих с 2001 года. Оговорюсь, что смысл журналируемых систем заключается в дисковых транзакциях, которые последовательно пишутся в специальную зону диска (журнал, он же лог), перед тем как данные попадают в конечные точки файловой системы. Максимальный объём тома для этой системы равен 16 тебибайт (16*2 40 байт).
JFS (Journaled File System) — файловая система, детище IBM, явившееся миру в далёком 1990 году для ОС AIX (Advanced Interactive eXecutive). В виде первого стабильного релиза, для пользователей Linux, система стала доступна в 2001 году. Из плюсов системы — неплохая масштабируемость. Из минусов — не особо активная поддержка на протяжении всего жизненного цикла. Максимальный рамер тома 32 пэбибайта (32*2 50 байт).
ext (extended filesystem) — появилась в апреле 1992 года, это была первая файловая система, изготовленная специально под нужды Linux ОС. Разработана Remy Card с целью преодолеть ограничения файловой системы Minix.
ext2 (second extended file system) — была разработана Remy Card в 1993 году. Не журналируемая файловая система, это был основной её недостаток, который исправит ext3.
ext3 (third extended filesystem) — по сути расширение исконной для Linux ext2, способное к журналированию. Разработана Стивеном Твиди (Stephen Tweedie) в 1999 году, включена в основное ядро Linux в ноябре 2001 года. На фоне других своих сослуживцев обладает более скромным размером пространства, до 4 тебибайт (4*2 40 байт) для 32-х разрядных систем. На данный момент является наиболее стабильной и поддерживаемой файловой системой в среде Linux.
Reiser4 — первая попытка создать файловую систему нового поколения для Linux. Впервые представленная в 2004 году, система включает в себя такие передовые технологии как транзакции, задержка выделения пространства, а так же встроенная возможность кодирования и сжатия данных. Ханс Рейзер (Hans Reiser), главный разработчик системы, рекламировал использовать своё детище непосредственно как БД с улучшенными метаданными. После того, как Ханс Рейзер был осуждён за убийство в 2008 году, дальнейшая судьба системы стала сомнительной.
ext4 — попытка создать 64-х битную ext3 способную поддерживать больший размер файловой системы (1 эксбибайт). Позже добавились возможности — непрерывные области дискового пространства, задержка выделения пространства, онлайн дефрагментация и прочие. Обеспечивается прямая совместимость с системой ext3 и ограниченная обратная совместимость при недоступной способности к непрерывным областям дискового пространства.
UPD: Btrfs (B-tree FS или Butter FS) — проект изначально начатый компанией Oracle, впоследствии поддержанный большинством Linux систем. Многие считаеют систему эдаким ответом на ZFS. Ключевыми особенностями данной файловой системы являются технологии: copy-on-write, позволяющая сделать снимки областей диска (снапшоты), которые могут пригодится для последующего восстановления; контроль за целостностью данных и метаданных (с повышенной гарантией целостности); сжатие данных; оптимизированный режим для накопителей SSD (задаётся при монтировании) и прочие. Немаловажным фактором является возможность перехода с ext3 на Btrfs. С августа 2008 года данная система выпускается под GNU GPL.
Tux2 — известная, но так и не анонсированная публично файловая система. Создатель Дэниэл Филипс (Daniel Phillips), система базируется на алгоритме «Фазового Дерева», который как и журналирование защищает файловую систему от сбоев. Организована как надстройка на ext2.
Tux3 — наступая на пятки Btrfs, представлена новая файловая система. Система создана на основе FUSE (Filesystem in Userspace), специального модуля для создания файловых систем на *nix платформах. Данный проект ставит перед собой цель избавиться от привычного журналирования, взамен предлагая версионное восстановление (состояние в определённый промежуток времени). Преимуществом используемой в данном случае версионной системы, является способ описания изменений, где для каждого файла создаётся изменённая копия, а не переписывается текущая версия. Такой подход позволяет более гибко управлять версиями.
UPD: Xiafs — задумка и разработка данной файловой системы принадлежат Frank Xia, основана на файловой системе MINIX. В настоящее время считается устаревшей и практически не используется. Наряду с ext2 разрабатывалась, как замена системе ext. В декабре 1993 года система была добавлена в стандартное ядро Linux. И хотя система обладала большей стабильностью и занимала меньше дискового пространства под контрольные структуры — она оказалась слабее ext2, ведущую роль сыграли ограничения максимальных размеров файла и раздела, а так же способность к дальнейшему расширению.
UPD: ZFS (Zettabyte File System) — изначально созданная в Sun Microsystems файловая система, для небезызвестной операционной системы Solaris в 2005 году. Отличительные особенности — отсутствие фрагментации данных как таковой, возможности по управлению снапшотами (snapshots), пулами хранения (storage pools), варьируемый размер блоков, 64-х разрядный механизм контрольных сумм, а так же способность адресовать 128 бит информации! В Linux системах может использоваться посредствам FUSE.
Источник
Какую файловую систему выбрать для Linux
Если вы только переходите с Windows, то, наверное, уже привыкли, что вам доступна только одна файловая система — NTFS и выбирать просто нет из чего. Но в Linux ситуация совсем другая. Здесь существует огромное множество файловых систем и постоянно создаются новые.
В сегодняшней небольшой статье мы постараемся разобраться какую файловую систему выбрать для Linux, и какие вообще доступны варианты.
Выбор файловой системы для Linux
Все файловые системы можно разделить на два типа: это обычные файловые системы и файловые системы следующего поколения. К обычным файловым системам относится используемая в большинстве дистрибутивов Ext4, она имеет все необходимые для полноценной работы возможности, но не более того.
Файловые системы следующего поколения — это BtrFS, ZFS и другие им подобные. Кроме стандартных возможностей они добавляют такие интересные вещи как дедупликация данных, управление томами, размещение файловой системы на нескольких физических дисках, контрольные суммы для данных, прозрачное сжатие и шифрование, снимки состояния, а также многое другое. Несмотря на все эти преимущества, новые файловые системы ещё не всегда стабильны и не поддерживаются не во всех дистрибутивах, а многие из их возможностей просто не нужны обычным пользователям.
Если кратко отвечать на вопрос, какую файловую систему выбрать для Linux — то ответ — Ext4. Она разработана очень давно, но зато очень стабильна и проверена временем. Она используется по умолчанию во многих дистрибутивов, а её лимитов хватит с головой, как для домашних пользователей, так и для большинства серверов. Но эта файловая система относится к обычным. Если вы не хотите её использовать дальше мы рассмотрим несколько альтернатив, доступных для выбора в установщике Ubuntu.
1. Ext
Про семейство файловых систем Ext я больше не буду говорить в этой статье. Про всё можно подробно прочитать в статье Файловая система Ext4. Там рассказана история развития этой файловой системы, а также её плюсы и минусы. Для установки Linux лучше всего подойдёт файловая система Ext4 из-за её стабильности и огромному количеству руководств по настройке в интернете.
2. XFS
Файловая система XFS разработана в Silicon Graphics в 1994 году для операционной системы SGI IRX. Расшифровывается как eXtended File System. Для Linux она была портирована в 2001 и немного позже её начали использовать в Red Hat Enterprice Linux в качестве файловой системы по умолчанию. Хотя эту файловую можно отнести к обычным, она изначально была рассчитана на работу с большими дисками. Она очень похожа на Ext4, тоже поддерживает журналирование и не подвержена фрагментации, но её можно только увеличить, уменьшить раздел с этой файловой системой нельзя. Ещё XFS показывает хорошую производительность при работе с большими файлами, но медленее работает с большим количеством маленьких файлов по сравнению с другими файловыми системами.
3. JFS
Файловая система JFS или Journaled File System разработана компанией IBM для системы IBM AIX в 1990 году, а чуть позже она была портирована и для Linux. В отличие от Ext3, в которой был добавлен журнал для сохранения целостности файловой системы, JFS была изначально журналируемой. В журнале сохраняются только метаданные. Файловая система одинаково быстро работает с как с большими, так и с маленькими файлами, а ещё её также как и XFS нельзя уменьшить, только увеличить. Несмотря на то, что эта файловая система доступна в большинстве дистрибутивов, её редко используют, а значит и её разработка и выявление багов идет медленнее.
4. BtrFS
Мы добрались к первой файловой системе следующего поколения. Это B—Tree File System. Её разработал Крис Масон во время своей работы в компании Oracle в 2006 году. Она поддерживает множество интересных возможностей, таких как управление томами, снимки состояния, прозрачное сжатие и дефрагментацию в реальном времени. Файловая система разрабатывалась как качественная и новая альтернатива для файловых систем семейства Ext. Даже основной разработчик Ext4 Теодор Цо считает, что за Btrfs или подобной ей файловой системой будущее, а Ext4 рано или поздно останется в прошлом. Сейчас BtrFS используется по умолчанию в SUSE Linux, как в серверной, так и обычной редакции. Она уже считается стабильной, но многие всё ещё боятся её использовать.
5. ReiserFS
Файловую систему ReiserFS разработал Ганс Рейзер специально для Linux в 2001 году. В неё было включено множество возможностей недоступных для Ext4. Как и в Ext4 здесь есть журналирование либо только метаданных, либо вместе с данными. Поддерживается управление томами, есть возможность добавить кэширующий быстрый диск. ReiserFS — очень быстрая и умеет упаковывать несколько файлов в один блок, чтобы уменьшить использование памяти. Однако, разработка этой файловой системы была заброшена после того, как Ганс Райзер сел в тюрьму в 2008. Версия файловой системы Raiser4 всё ещё не попала в ядро, поэтому для использования на перспективу лучше выбрать Btrfs.
6. ZFS
ZFS была разработана для Solaris компанией Sun Microsystems и сейчас она принадлежит Oracle в 2005 году. Немного позже она была портирована для Linux и начиная с Ubuntu 16.04 доступна в установщике для использования в качестве корневой файловой системы. Она похожа на BtrFS, потому что поддерживает управление томами, контрольные суммы для всех данных, прозрачное сжатия и прозрачное шифрование. Её тоже можно отнести к файловым системам следующего поколения. По архитектуре, это 128 битная файловая система, в то же время как Ext4 — 64 битная. Поэтому лимиты у неё очень большие и в обозримом будущем мы к ним даже не приблизимся. Но Линус Торвальдс, создатель ядра Linux не советует использовать ZFS.
Выводы
Ещё в списке файловых систем установщика есть Swap и FAT, но обе эти файловые системы нельзя использовать для корневого раздела Linux. Первая используется для раздела подкачки и не предназначена для хранения файлов, а вторая — это старая файловая система от Microsoft, не поддерживающая многих необходимых атрибутов и возможностей.
Есть и другие файловые системы, например F2FS, разработанная специально для SSD, но они используются ещё реже. Для себя я вижу два варианта — это либо Btrfs, потому что она активно развивается, разработана для Linux и разработчики SUSE ей доверяют, а также Ext4, потому что очень стабильна и проверена временем. А какую файловую систему для Linux используете вы? Какие лучшие файловые системы Linux? Напишите в комментариях!
Источник