Disk
Основные термины
Disk
Disk (Диск) - физическое устройство для хранения данных, такое как жесткий диск (HDD), твердотельный накопитель (SSD) или оптический диск (CD/DVD).
Диск - это физическое устройство, предназначенное для долговременного хранения данных. Основные типы дисков включают в себя:
- жесткие диски (HDD), которые используют магнитные пластины для записи данных
- твердотельные накопители (SSD), использующие флеш-память
- оптические диски (CD/DVD), которые читаются и записываются с помощью лазера.
Диски могут быть как внутренними, так и внешними.
File System
File System (Файловая система) метод и структура, используемые операционной системой для организации и управления файлами на диске или разделе. Примеры: NTFS, FAT32, ext4.
Файловая система отвечает за организацию данных на диске. Она предоставляет структуру, через которую файлы могут быть сохранены, организованы и доступ к ним может быть получен. Каждая файловая система имеет свои особенности и ограничения. Например, NTFS поддерживает большие объемы данных и различные уровни доступа, в то время как FAT32 более простая и совместимая с разными устройствами, но имеет ограничения на размер файла.
Partition
Partition (Раздел) - логическая часть диска, которая действует как отдельный диск и может содержать файловую систему. Разделы позволяют операционной системе управлять дисковым пространством более эффективно.
Разделение диска позволяет создать несколько логических дисков на одном физическом носителе. Это удобно для разделения операционных систем, организации данных и улучшения производительности. Разделы могут быть:
- основными (Primary),
- расширенными (Extended)
- логическими (Logical)
Основной раздел может содержать загрузочный сектор, необходимый для запуска операционной системы.
Dynamic Partitioning
Dynamic Partitioning (Динамическое создание разделов) процесс изменения размеров или создания новых разделов на диске без потери данных и без необходимости перезагрузки системы. Используется для гибкого управления дисковым пространством.
Современные операционные системы и инструменты управления дисками позволяют динамически изменять размеры существующих разделов и создавать новые без потери данных. Это особенно полезно для серверов и систем, где невозможно прерывать работу для переформатирования диска. Динамическое управление разделами позволяет максимально эффективно использовать дисковое пространство, подстраиваясь под изменяющиеся потребности.
Основные команды OS GNU\Linux
Warning
Использование этих команд часто требует прав суперпользователя,
поэтому в большинстве случаев необходимо использовать sudo
.
Всегда делайте резервные копии важных данных перед изменением структуры разделов или файловых систем.
lsblk
Описание: Команда lsblk
выводит информацию о всех блоковых устройствах системы, таких как жесткие диски и их
разделы.
Пример:
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
loop0 7:0 0 33.7M 1 loop /snap/snapd/21467
loop1 7:1 0 33.7M 1 loop /snap/snapd/21761
sda 8:0 0 476.9G 0 disk
├─sda1 8:1 0 200M 0 part
└─sda2 8:2 0 476.7G 0 part
mmcblk0 179:0 0 14.7G 0 disk
├─mmcblk0p1 179:1 0 512M 0 part /boot/firmware
└─mmcblk0p2 179:2 0 14.2G 0 part /
blkid
Описание: Команда blkid
выводит информацию о всех блоковых устройствах, включая их UUID и тип файловой системы.
Пример:
/dev/mmcblk0p1: LABEL_FATBOOT="system-boot" LABEL="system-boot" UUID="F526-0340" BLOCK_SIZE="512" TYPE="vfat" PARTUUID="0529037a-01"
/dev/mmcblk0p2: LABEL="writable" UUID="1305c13b-200a-49e8-8083-80cd01552617" BLOCK_SIZE="4096" TYPE="ext4" PARTUUID="0529037a-02"
/dev/sda2: LABEL="Untitled" UUID="6663-BA39" BLOCK_SIZE="512" TYPE="exfat" PARTUUID="4071a1d9-3a1c-42e8-a0b7-f32703168585"
/dev/sda1: LABEL_FATBOOT="EFI" LABEL="EFI" UUID="67E3-17ED" BLOCK_SIZE="512" TYPE="vfat" PARTLABEL="EFI System Partition" PARTUUID="de26ef46-9ebc-4252-9eaf-f2192c27db79"
/dev/loop1: BLOCK_SIZE="131072" TYPE="squashfs"
/dev/loop0: BLOCK_SIZE="131072" TYPE="squashfs"
fdisk
Описание: Утилита fdisk
используется для управления разделами на дисках.
Она позволяет создавать, изменять и удалять разделы.
Пример:
Welcome to fdisk (util-linux 2.39.3).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.
Command (m for help):
gdisk
Описание: gdisk
используется для работы с GPT таблицами разделов, аналогично fdisk
, но для дисков с GPT.
Пример:
GPT fdisk (gdisk) version 1.0.10
Partition table scan:
MBR: protective
BSD: not present
APM: not present
GPT: present
Found valid GPT with protective MBR; using GPT.
Command (? for help):
parted
Описание: parted
- это мощная утилита для управления разделами дисков,
которая поддерживает работу с большими дисками и расширенными таблицами разделов.
Пример:
GNU Parted 3.6
Using /dev/sda
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted)
mkfs
Описание: Команда mkfs
используется для создания файловой системы на разделе или диске.
Пример:
mount
Описание: Команда mount
монтирует файловую систему, что позволяет ей быть доступной для операционной системы.
Пример:
umount
Описание: Команда umount
размонтирует файловую систему, делая её недоступной для операционной системы.
Пример:
df
Описание: Команда df
показывает использование дискового пространства для всех смонтированных файловых систем.
Пример:
Filesystem 1K-blocks Used Available Use% Mounted on
tmpfs 813300 3536 809764 1% /run
/dev/mmcblk0p2 14593116 2604864 11346580 19% /
tmpfs 4066492 0 4066492 0% /dev/shm
tmpfs 5120 0 5120 0% /run/lock
/dev/mmcblk0p1 516204 173186 343018 34% /boot/firmware
shm 65536 0 65536 0% /run/k3s/containerd/io.containerd.grpc.v1.cri/sandboxes/14eba3ee5ee4d7d29f2a74ea18f15c97236e75dc772f0a7d1ae394865202efeb/shm
tmpfs 813296 12 813284 1% /run/user/1000
Разметка диска
MBR (Master Boot Record)
Описание: MBR - это старая схема разметки диска, использующая первую 512-байтовую область на диске для хранения таблицы разделов и загрузочного кода. MBR поддерживает до 4 первичных разделов и диски до 2 ТБ.
GPT (GUID Partition Table)
Описание: GPT - это современная схема разметки диска, заменяющая MBR. GPT поддерживает практически неограниченное количество разделов и диски размером до 9.4 zettabytes. GPT также имеет резервные копии таблицы разделов и защиту от повреждений.
PMBR (Protective MBR)
Описание: PMBR - это структура, используемая на GPT-дисках для обеспечения совместимости с системами, поддерживающими только MBR. PMBR отмечает весь диск как один раздел, чтобы предотвратить случайное переформатирование GPT-диска старым ПО.
Apple Partition Map (APM)
Описание: APM - это старая схема разметки диска, используемая в системах Apple Macintosh до появления GPT. APM хранит информацию о разделах в блоках, называемых дескрипторами, и поддерживает только Mac OS и ее загрузчик.
BIOS Boot Partition
Описание: Раздел, используемый для хранения загрузочного кода в системах с GPT-дисками, работающими под BIOS. Этот раздел необходим для загрузки операционной системы с GPT-диска на системе, поддерживающей только BIOS.
EFI System Partition (ESP)
Описание: ESP - это раздел, используемый в системах UEFI для хранения загрузочных файлов, драйверов и утилит UEFI. ESP обязателен для всех GPT-дисков в системах с UEFI.
Дополнительные термины
Extended Partition
Описание: В MBR-дисках, если требуется больше четырех разделов, один из них может быть расширенным разделом. Расширенный раздел может содержать множество логических разделов.
Logical Partition
Описание: Логический раздел - это раздел, который существует внутри расширенного раздела на MBR-дисках. Логические разделы позволяют обойти ограничение в 4 первичных раздела MBR.
Сравнение MBR и GPT
-
Количество разделов:
- MBR: до 4 первичных разделов (или 3 первичных и 1 расширенный).
- GPT: практически неограниченное количество разделов (до 128 по умолчанию на большинстве систем).
-
Поддерживаемый размер диска:
- MBR: до 2 ТБ.
- GPT: до 9.4 зеттабайт (ZB).
-
Загрузка и совместимость:
- MBR: Поддерживается BIOS, но не UEFI.
- GPT: Поддерживается UEFI и некоторые BIOS с использованием PMBR.
-
Резервное копирование и защита:
- MBR: Нет встроенной защиты или резервных копий таблицы разделов.
- GPT: Имеет резервные копии таблицы разделов и контрольные суммы для защиты от повреждений.
Заключение
Каждая схема разметки диска имеет свои преимущества и недостатки. MBR является старой, но широко поддерживаемой схемой, тогда как GPT предлагает множество улучшений, таких как поддержка больших дисков и более надежная структура. Понимание этих схем помогает эффективно управлять дисковым пространством и выбирать правильные инструменты для конкретных задач.
Основные типы файловых систем
File System (Файловая система) организует хранение и доступ к данным на накопителе. Различные операционные системы поддерживают разные типы файловых систем. Ниже приведены основные файловые системы для GNU/Linux, Windows и macOS.
Файловые системы для GNU/Linux
-
ext4 (Fourth Extended Filesystem)
- Описание: Расширенная версия ext3, ext4 поддерживает файлы и файловые системы большего размера и включает в себя такие улучшения, как быстрое время проверки и улучшенная фрагментация.
- Поддерживаемые функции: Журналирование, увеличенные размеры файлов и файловых систем, улучшенная фрагментация.
- Использование: Широко используется в современных дистрибутивах Linux.
-
Btrfs (B-tree Filesystem)
- Описание: Современная файловая система, разработанная для обеспечения высокой производительности, расширяемости и надежности.
- Поддерживаемые функции: Снимки, сжатие, самовосстановление, управление на основе копий при записи (COW).
- Использование: Используется в некоторых дистрибутивах Linux, таких, как openSUSE и Fedora.
-
XFS
- Описание: Высокопроизводительная файловая система, разработанная SGI для системы IRIX и портированная на Linux.
- Поддерживаемые функции: Журналирование, поддержка больших файлов и файловых систем, высокая производительность при параллельных операциях.
- Использование: Используется в дистрибутивах, таких как CentOS и RHEL.
-
ZFS (Zettabyte File System)
- Описание: Мощная файловая система, разработанная Sun Microsystems, которая предоставляет высокую надежность и множество возможностей.
- Поддерживаемые функции: Снимки, дедупликация, сжатие, управление данными на основе транзакций.
- Использование: Широко используется в серверах и системах хранения данных.
Файловые системы для Windows
-
NTFS (New Technology File System)
- Описание: Основная файловая система, используемая в современных версиях Windows, обеспечивает высокую производительность и надежность.
- Поддерживаемые функции: Журналирование, сжатие файлов, шифрование, квоты на дисковое пространство.
- Использование: Используется по умолчанию в Windows начиная с Windows NT.
-
FAT32 (File Allocation Table 32)
- Описание: Устаревшая файловая система, которая все еще используется из-за ее широкой совместимости.
- Поддерживаемые функции: Поддержка больших файлов и разделов, но с ограничением размера файла до 4 ГБ.
- Использование: Используется на съемных носителях, таких как флешки и карты памяти.
-
exFAT (Extended File Allocation Table)
- Описание: Улучшенная версия FAT32, разработанная для устранения ограничений по размеру файлов и разделов.
- Поддерживаемые функции: Поддержка больших файлов и разделов без ограничений FAT32.
- Использование: Используется на съемных носителях и флешках, особенно для устройств, требующих больших файлов.
Файловые системы для macOS
-
HFS+ (Hierarchical File System Plus)
- Описание: Основная файловая система для macOS до появления APFS.
- Поддерживаемые функции: Журналирование, поддержка больших файлов и разделов, поддержка Unicode.
- Использование: Используется в версиях macOS до 10.13 (High Sierra).
-
APFS (Apple File System)
- Описание: Современная файловая система, разработанная Apple для замены HFS+.
- Поддерживаемые функции: Снимки, клонирование, шифрование, улучшенная производительность и надежность.
- Использование: Используется по умолчанию в macOS начиная с версии 10.13 (High Sierra).
-
FAT32 и exFAT
- Описание: Также поддерживаются для обеспечения совместимости с Windows и другими устройствами.
- Использование: Используются на съемных носителях и внешних дисках для обеспечения межплатформенной совместимости.
Сравнение файловых систем
Файловая система | Операционные системы | Журналирование | Максимальный размер файла | Максимальный размер раздела | Особенности |
---|---|---|---|---|---|
ext4 | Linux | Да | 16 ТБ | 1 ЭБ | Широкое использование в Linux |
Btrfs | Linux | Да | 16 ЭБ | 16 ЭБ | Снимки, сжатие, самовосстановление |
XFS | Linux | Да | 8 ЭБ | 8 ЭБ | Высокая производительность |
ZFS | Linux, BSD | Да | 16 ЭБ | 16 ЭБ | Снимки, дедупликация, управление данными на основе COW |
NTFS | Windows | Да | 16 ЭБ | 256 ТБ | Широкое использование в Windows, сжатие, шифрование |
FAT32 | Windows, Linux, macOS | Нет | 4 ГБ | 32 ГБ | Широкая совместимость |
exFAT | Windows, Linux, macOS | Нет | 16 ЭБ | 64 ЗБ | Поддержка больших файлов |
HFS+ | macOS | Да | 8 ЭБ | 8 ЭБ | Широкое использование в старых версиях macOS |
APFS | macOS | Да | 8 ЭБ | 8 ЭБ | Современная файловая система для macOS |
Заключение
Выбор файловой системы зависит от операционной системы и специфических требований к производительности, надежности и функциям. Понимание различных файловых систем позволяет эффективно управлять данными и выбирать правильные инструменты для конкретных задач.