Що таке файлова система в Linux?

Що таке файлова система в Linux?

Оскільки Linux працює на різних апаратних середовищах, деякі з яких є передовими, а деякі - десятиліттями, операційна система підтримує більше десятка різних файлових систем. Хоча більшість параметрів домашньої стільниці базуються на типових файлових системах, визначених дистрибутивом Linux, ядро  Linux підтримує налаштування декількох дисків з різними типами файлових систем.

Ознайомтеся з нашим списком з 10 основних команд Linux для навігації за вашою файловою системою, щоб дізнатися більше про перехід навколо Linux з сеансу оболонки.

Що таке файлова система?

Файлова система являє собою спосіб організації даних на пристрої зберігання даних апаратних засобів. Без файлової системи комп'ютерна операційна система не знала б, як читати або записувати вміст з цього пристрою.

Подивіться на музичні файли як на хороший аналог для файлових систем. Пісні поставляються в різних форматах, включаючи MP3, WAV і OGG. Якщо ваш медіаплеєр не може розпізнати контент, він не може відтворювати музику. Так само, якщо Linux не може розпізнати стандартний метод зберігання контенту на пристрої, він не може читати або записувати з нього.

Так само, як існує багато форматів музичних файлів, існує багато типів файлових систем. Linux визнає багато з них.

Хоча файлові системи організовують контент на апаратному рівні, віртуальні файлові системи працюють у програмних контейнерах. Наприклад, утиліта TrueCrypt створює зашифровані файли, які монтуються, якби вони були фізичними жорсткими дисками.

Типи файлових систем Linux

Найбільш часто використовувані в даний час розроблені файлові системи включають в себе:

  • ext2: Ext2 - це високопродуктивна дискова файлова система, яка використовується Linux для фіксованих дисків і знімних носіїв. Він пропонує кращу продуктивність (з точки зору швидкості і завантаження процесора) файлових систем, підтримуваних в Linux.
  • ext3: Ext3 - журнальна версія файлової системи ext2. Він пропонує найбільш повний набір параметрів журналування, доступних серед файлових систем журналування.
  • ext4: Наступне покоління ext3.
  • msdos: MSDOS - це файлова система, яка використовується DOS, Windows і деякими комп'ютерами OS/2. Його імена файлів не можуть бути довшими за вісім символів, за якими слідує додатковий період і розширення з трьох символів.
  • vfat: VFAT - це розширена файлова система DOS, яка використовується в Microsoft Windows95 і Windows NT. VFAT додає довгі назви файлів у файловій системі MSDOS.
  • proc: Proc - це псевдофайлова система, яка взаємодіє зі структурами даних ядра, а не читає і інтерпретує/dev/kmem. Зокрема, його файли не займають місця на диску.
  • iso9660: ISO9660 - це тип файлової системи CD-ROM, який відповідає стандарту ISO 9660.
  • NFS: NFS мережева файлова система використовується для доступу до дисків, розташованих на віддалених комп'ютерах.
  • smb: SMB - це мережева файлова система, яка підтримує протокол SMB, який використовується Windows для робочих груп, Windows NT і Lan Manager. Щоб використовувати smb fs, вам потрібна спеціальна програма монтування, яку можна знайти в пакеті ksmbfs.
  • squashfs: віртуальна файлова система, squashfs - це стиснута файлова система тільки для читання. Пакунки Ubuntu Snap, наприклад, використовують його.
  • tmpfs: іноді званий RAMdisk, tmpfs зберігає свої дані в пам'яті, а не на диску.

Linux підтримує декілька файлових систем, ніж ті, які ми перерахували вище, але вони є найбільш поширеними в дистрибутивах Linux, орієнтованих на десктоп.

Інструменти для роботи з файловими системами Linux

Щоб працювати з файловими системами в Linux, вам слід спочатку змонтувати їх. Монтування означає, що Linux розпізнає файлову систему і робить її доступною для зареєстрованих користувачів. У більшості випадків файлові системи монтуються автоматично, але Linux дозволяє монтувати і демонтувати вручну за допомогою команди mount.

Короткий підручник з використання команд монтування в Linux

Після монтування файлова система приєднується до структури каталогів. З точки зору кінцевого користувача, Linux пропонує єдине, уніфіковане представлення всіх файлових систем одночасно, але ця перспектива приховує складність основних взаємозв'язків.

Структура каталогів Linux зовсім інша, але ми допоможемо вам зрозуміти

Для простого огляду ваших змонтованих файлових систем використовуйте команди du і df. Дю утиліта показує, скільки дискового простору кожен каталог винищують; у сс УТІЛІТЕ підсумовує використання з точки зору кожного файлова система встановлена.

Як перевірити використання дискового простору в Linux за допомогою команд du і df

Якщо ви запускаєте багато пакунків Snap в Ubuntu, відфільтруйте результати df за допомогою grep, виконавши df -Th | grep -v «squashfs». Цей підхід придушує файлові системи, доступні тільки для читання, які підтримують кожну встановлену на вашому комп'ютері програму Snap.