- Fdisk
- Содержание
- Русский перевод man fdisk [ править ]
- НАЗВАНИЕ [ править ]
- СИНТАКСИС [ править ]
- ОПИСАНИЕ [ править ]
- ПРЕДУПРЕЖДЕНИЯ DOS 6.x [ править ]
- ОПЦИИ [ править ]
- КОМАНДЫ ИНТЕРАКТИВНОГО РЕЖИМА [ править ]
- Основные команды [ править ]
- Почему не работает fdisk в debian 10 buster?
- Команда fdisk в Linux
- Опции и синтаксис fdisk
- Примеры использования команды fdisk
- 2. Интерактивный режим
- 3. Просмотр таблицы разделов
- 4. Создание таблицы разделов
- 5. Создание разделов
- 6. Тип раздела
- 7. Удаление раздела
- 8. Загрузочный раздел
- 9. Применение изменений
- Выводы
Fdisk
Содержание
Русский перевод man fdisk [ править ]
НАЗВАНИЕ [ править ]
fdisk — программа работы с разделами диска.
СИНТАКСИС [ править ]
ОПИСАНИЕ [ править ]
- Жесткие диски могут состоять из одного или нескольких логических дисков, которые назыавют разделами. Разбиение жесткого диска на разделы отражено в таблице разделов, которая записана в нулевом секторе диска.
- В мире BSD это-же описывается в терминах слайсы (slices) дисков и стили разметки дисков (disklabel). Таблицы бывают нескольких стилей, наиболее известные из них — DOS, BSD, Sun, Mac.
- Для работы Linux, требуется по крайней мере один раздел, называемый корнем файловой системы. Linux может использовать файлы подкачки ( свопы ) и/или разделы подкачки ( свопа ), но разделы больее эффективны. Как правило, создаётся отдельный раздел, описываемый, как раздел свопа. Раньше многие BIOS (базовые системы ввода-вывода), загружающие систему, имели доступ только к первым 1024 цилиндров диска. По этой причине для больших дисков, в начале их, создавался маленький раздел, в несколько десятков мегабайт, который обычно монтировался как /boot, содержал образ ядра и файлы, необходимые для загрузки, с тем, что-бы они были доступны для BIOS. Существуют и другие причины разбиения диска на больщее чило разделов (безопасность, простота администрирования, резервное копирование, тестирование и т.п.).
fdisk (в первой форме вызова) является программой, использующей меню, для создания и управления таблицами разделов. Он умеет работать с таблицами разделов типа DOS и с дисковыми метками BSD и SUN
fdisk не понимает GUID Partition Table (GPT), и не предназначен для для работы с крупными разделами. В случае необходимости, вы можете использовать более мощную команду GNU parted(8).
Устройства — это как правило /dev/sda , /dev/sdb и т.п.. Имя устройства относится ко всему диску. Если для обслуживания контроллера не используется библиотека libata (библиоткеув ядра, для обслуживания ATA контроллеров), то существует различие между именами IDE и SCSI дисками. Имена /dev/hd* закреплены за IDE устройствами, и /dev/sd* за SCSI устройствами. Внешние жёсткие диски , обслуживаемые через USB, также имеют имена типа /dev/sd*
Имя раздела состоит из буквенного имени и из номера раздела. Например /dev/sda1,- это первый раздел первого жесткого диска системы.
Диски типа sd могут иметь до 15 разделов. См. также документацию к ядру Linux (файл Documentation/devices.txt ).
- При использовании стиля BSD/SUN , каждый раздел ( спайс ) можно разделить на 8 меток подразделов ( DiskLabels ), один из которых, (третий подраздел) используется для доступа ко всему разделу. Нельзя начинайть раздел, который фактически использует его первый сектор (например, раздел подкачки) с цилиндра 0, так-как это уничтожит метку подраздела. Под своп принято отводить второй подраздел одного из разделов. При этом максимально получается один корневой раздел (занимающий весь первый раздел), один раздел подкачки и 20 подразделов в трёх оставшихся разделах (по семь на каждый). Также возможно разбиение диска, при котором три раздела не используются, а один разбит на подразделы (режим полного диска). Подробнее смотри документацию по FreeBSD.
- При использовании стиля IRIX/SGI первичный раздел может состоять из 16 подразделов, из которых, одиннадцатый представляет весь объем раздела (как третий в стиле BSD ) , а девятый помечен как заголовок томаIRIX/SGI машинах или специализированных для IRIX/SGI дистрибутивах.
- При использованиии стиля DOS , таблицы могут описывать неограниченное количество разделов. В нулевом секторе таблицы есть место для описания 4 разделов (Так называемых первичных разделов). Один из них может быть расширенным разделом, этот раздел можно назвать контейнером, в который можно помещать, «вторичные разделы» (логические диски) — аналогично тому, как в спайс помещаются вторичные разделы (Disklabels) в BSD стиле. В отличии от BSD стиля, где каждый из спайсов может содержать вторичные разделы, в DOS стиле только один (обычно последний) может содержать вторичные разделы. Официально «вторичные разделы» называются логическими дисками , что вносит некоторую путаницу, так-как и раздел, занимающий основной («первичный») раздел также можно назвать «логическим диском». Описание вторичных разделов представляют из себя связанный список дескрипторов, каждый из которых указывает на начальный сектор следующего раздела.
Четыре первичных раздела , нумеруются цифрами 1-4.Вторичные разделы имеют нумерацию, начинающуюся с 5, независимо от числа первичных разделов. При использовании стиля DOS, начальное смещение и размер каждого раздела хранится двумя способами как абсолютное число секторов (приводятся к 32 бит), так и тройкой цилиндры/головки/сектора — C/H/S (приведены к 10 8 и 6 бит). Первый способ позволяет описать геометрию диска с 512-байтовыми секторами и размером до 2 ТБ. У второго способа есть две проблемы. Прежде всего значения C/H/S полей могут быть заполнены только тогда, когда количество головок и количество секторов на дорожку известны. Во-вторых, даже если мы знаем, что эти значения этих чисел, 24 бит которые доступны для каждого из полей не хватает. Операционная система DOS использует для доступа к диску только C/H/S способ, Windows использует для доступа оба способа, Linux не использует способ C/H/S.
Если это возможно, fdisk стремится получить геометрию диска автоматически. Это не обязательно реальная физическая геометрия диска (на самом деле, современные диски имеют совсем другие физические параметры, чем те, которые выдаёт BIOS в виде C/H/S), но это логическая геометрия диска, которую использует стиль DOS в описании таблицы разделов диска.
Обычно все идет хорошо, без всяких проблем, если Linux — это единственная операционная система на диске. Однако, если на диске вместе с ним стоит другая операционная система, то часто удобно вначале создать хотя-бы один раздел средствами этой, другой, операционной системы. Когда Linux при загрузке увидит таблицу разделов, то попытается подобрать логическую геометрию раздела так, что она будет совпадать с геометрией, используемой в соседней операционной системе.
Всякий раз, когда выводится таблица разделов, происходит проверка соответствия записей таблицы разделов. Проверяется, идентичность физического и логического начала и конца раздела, и что он начинается и заканчивается на границе цилиндра (за исключением первой раздела).
В некоторых версиях MS-DOS создают первый раздел , начало которого находится не на границе цилиндра, а на втором секторе первого цилиндра. В этом случае начало первого раздела не может совпасть с границей цилиндра, но это обычно не вызывает какие-либо проблемы, если у вас не установлена OS/2.
При обновлении содержания таблицы разделов, перед выходом из fdisk вызываются функции sync() и BLKRRPART ioctl() с целью заново перечитать таблицу разделов на диске.
Раньше, после использования fdisk, было необходимо перезагрузить ОС. Сейчас в этом нет необходимости, напротив, быстрая перезагрузка может привести к потере недописанных данных. Заметим, что и ядро и буфер данных дисковой подсистемы может иметь данные в оперативной памяти.
ПРЕДУПРЕЖДЕНИЯ DOS 6.x [ править ]
Команда DOS 6.x format ищет информацию о разделе в первом секторе области данных раздела, и рассматривает эту информацию как более надежную, чем информаци., содержащаюся в таблице разделов.
Команда format (DOS) ожидает что команда fdisk (DOS) очистила первые 512 байт данных области раздела, при изменении размера размера. Команда format будет проверять эту дополнительную информацию, даже если указать флаг /U, — мы считаем что это ошибка в командах DOS format и fdisk.
Суть в том, что если вы используете команды сfdisk или fdisk (Linux), чтобы изменить размер записи в таблице разделов DOS, то вы должны, используя команду dd, обнулить первые 512 байт, прежде чем использовать команду format (DOS) для форматирования раздела.
Например, если вы используете команду сfdisk для создания DOS раздела на /dev/sda1 , то после выполнения fdisk или cfdisk и перезагрузки Linux, с тем чтобы данные в таблице разделов, стали достоверными, надо выполнить команду
» dd if=/dev/zero of=/dev/sda1 bs=512 count=1 «
обнулив первые 512 байт раздела.
БУДЬТЕ КРАЙНЕ ОСТОРОЖНЫМИ при выполнении команды dd , так как небольшая опечатка в команде может привести к потере данных на диске или стиранию таблицы разделов.
Для лучших результатов, всегда используйте «родные» программы соответствующих ОС при работе с их разделами.
Например, для создания раздела DOS, иcпользуйте программу fdisk операционной системы DOS, а для создания разделов для Linux, используйте програмы fdisk, cfdisk, parted и т.п. )
ОПЦИИ [ править ]
-b sectorsize задаёт размер сектора диска в байтах. Допустимые значения: 512, 1024, 2048, 4096. (последние версии ядра Linux сами определяют размером сектора диска. Используйте этот параметр только на старых ядрах, или в случае, если вы хотите изменить размер определённый ядром).
-h печать подсказки команды и выход.
-c выключение DOS-совместимого режима работы (рекомендуется).
-C cyls задаёт число цилиндров на диске. Не представляю зачем это надо.
-H heads задаёт число головок диска. (конечно, не реальное их число, а число, которое используется в таблице разделов). Разумное значений 255 и 16.
-S sect задаёт число число секторов на дорожку на диске. (не реальное значение, а число, которое используется в таблице раздела) разумные значения 63.
-l выдача списка разделов для указанного устройства. Если не указано ни одного устройства, то выдаётся информация об всех устройствах, указанных в файле /proc/partitions (если он есть)
-u при выдаче списка разделов, размеры указываются в секторах, а не в цилиндрах.
-s partition выдача размера раздела в блоках.
-v выдача версии программы fdisk.
КОМАНДЫ ИНТЕРАКТИВНОГО РЕЖИМА [ править ]
Для входа в интерактивный режим даем команду (например для диска /dev/sdg)
Основные команды [ править ]
Команда m выдаст все возможные команды интерактивного режима:
Help Работа с разбиением диска в стиле DOS (MBR) Общие Прочие Сохранение и выход Создание новых меток
Источник
Почему не работает fdisk в debian 10 buster?
вместо iptables идет ufw/firewalld
iptables никуда не исчезает, а ufw — это всего лишь надстройка для тех, кто не осилил iptables.
попробуйте через полный путь/sbin/fdisk
dpkg -L fdisk покажет все файлы в пакете fdisk.
which fdisk найдёт полный путь к fdisk по каталогам в $PATH.
Скорее всего нужный будет в /sbin/fdisk. И скорее всего не файл отсутствует, а в $PATH нет каталога /sbin.
dpkg -L fdisk покажет все файлы в пакете fdisk.
which fdisk найдёт полный путь к fdisk по каталогам в $PATH.
Скорее всего нужный будет в /sbin/fdisk. И скорее всего не файл отсутствует, а в $PATH нет каталога /sbin.
Я вообще в основном использую windows10 и иногда centos7. Вот решил попробовать debian вплотную. ранее с debian ограничивался только установкой, попробовать. Вроде как говорят debian более приспособлен для дома, более прост и более open-source и что самое главное наименее геморойный.
Я уже перезакачал заново дистрибутив с оф сайта и снова установил. и снова не работает fdisk. Скорее всего утилита была заменена на что-то другое, но обычно при вызове скажем service, явно будет указано что использовать systemctl, но service всё равно отработает.
fdisk не работает, причем в man в конце есть другие утилиты, пробовал: cfdisk, sfdisk, mkfs, partx. Только partx отработал. остальные словно удалены из системы по умолчанию или заменены на что-то другое.
Другой конечно вопрос, но параллельно тут пытаюсь ткнуть debian на второй комп так там вообще установить не могу:
configure the package manager. installation step failed. an installation step failed. you can try to run the failing item again from the menu, or skip it and chose something else. the failing step is configure the package manager
Источник
Команда fdisk в Linux
В Linux существует множество способов разметки диска, создания на нём разделов и просмотра уже существующих. Это утилиты parted и cfdisk в терминале и графическая утилита gparted. Однако сегодня мы поговорим про самую простую утилиту для разметки диска в терминале — fdisk.
Именно она используется чаще всего, если надо посмотреть как диски и разделы доступны на компьютере. Далее рассмотрим основные опции утилиты, её синтаксис, а также примеры использования.
Опции и синтаксис fdisk
Синтаксис утилиты ничем не отличается от других команд Linux:
$ fdisk опции устройство
Ей надо передать опции, согласно действия, которое вы хотите выполнить, а также раздел диска или устройство к которому эти действия надо применить. Давайте теперь рассмотрим опции fdisk:
- -B, —protect-boot — не стирать первые 512 байт диска чтобы не повредить загрузочную запись;
- -L, —color — настройка цветного вывода, возможные значения auto, never или always;
- -l, —list — вывести все разделы на выбранных устройствах или если устройств не задано, то на всех устройствах;
- -o, —output — указывает какие поля данных надо показывать в выводе программы, доступные поля рассмотрим ниже;
- -u, —units — настраивает формат вывода размера разделов, доступные значения: cylinders, sectors, по умолчанию используется sectors;
- -w, —wipe — режим стирания файловой системы или RAID с диска, возможные значения auto, never или always по умолчанию используется auto;
- -W, —wipe-partition — режим стирания файловой системы или RAID из только что созданного раздела. Возможные значения аналогичны предыдущей опции;
- -h, —help — показать справку по утилите;
- -v, —version — опция выводит версию утилиты.
Опции используются для настройки работы утилиты, мы рассмотрели только самые главные, которые могут вам пригодится, теперь перейдём к командам:
- a — включение или выключения флага boot для раздела;
- d — удалить раздел;
- F — показать свободное место;
- l — вывести список известных типов разделов;
- n — создать новый раздел;
- p — вывести таблицу разделов;
- t — изменение типа раздела;
- i — вывести информацию о разделе;
- I и O — записать или загрузить разметку в файл сценария sfdisk;
- w — записать новую таблицу разделов на диск;
- q — выйти без сохранения;
- g — создать пустую таблицу разделов GPT;
- o — создать пустую таблицу разделов MBR.
Теперь вы знаете основные опции и команды fdisk, давайте рассмотрим использование программы.
Примеры использования команды fdisk
1. Список дисков и разделов
Чтобы посмотреть список доступных вам дисков и разделов на них используйте опцию -l:
Утилита покажет все блочные устройства. На снимке есть /dev/sda, это обычный жесткий диск и /dev/nvme0n1 — это M.2 накопитель, а также там есть есть несколько /dev/loop* устройств, созданных ядром, которые лучше не трогать.
2. Интерактивный режим
Большинство операций fdisk по разметке дисков выполняются в интерактивном режиме. Чтобы запустить fdisk в интерактивном режиме передайте утилите блочное устройство которое надо разметить. В моём примере, это /dev/nvme0n1:
sudo fdisk /dev/nvme0n1
Вам не обязательно возвращаться к этой статье, когда вы захотите снова поработать с программой, посмотреть доступные команды можно выполнив команду m:
3. Просмотр таблицы разделов
Чтобы посмотреть текущий тип таблицы разделов, а также доступные разделы на диске используйте команду p:
В данном примере на диске уже есть несколько разделов, а таблица разделов используется MBR (dos).
4. Создание таблицы разделов
Давайте создадим новую таблицу разделов GPT. Для этого используйте команду g. Для таблицы разделов MBR нам бы понадобилась команда o.
5. Создание разделов
Чтобы создать раздел используйте команду n. Команда спросит какой номер раздела надо присвоить этому разделу, затем спросит сектор начала раздела, эти значения можно оставить по умолчанию, так как утилита предлагает минимальные доступные. Далее надо указать размер раздела. Это можно сделать тремя способами:
- указать количество секторов раздела;
- указать последний сектор раздела;
- указать размер раздела в килобайтах, мегабайтах или гигабайтах, обозначения стандартные K,M,G.
Давайте создадим три раздела разными способами:
Первый раздел создадим с помощью обычных единиц измерения. Перед ними надо ставить плюс, так как это место, которое добавляется к первому сектору раздела.
Во втором способе укажем размер раздела в секторах. Для получения раздела размером 1 гигабайт нам понадобится примерно 2 000 000 секторов. По умолчанию размер сектора 512 байт, поэтому 2 000 000 * 512 получится примерно 1024 000 000 байт:
И в третьем способе с помощью калькулятора добавим к первому сектору раздела те же два миллиона:
На этом создание разделов fdisk завершено. А вот форматирование разделов в fdisk невозможно, для этого придется воспользоваться утилитой mkfs.
6. Тип раздела
Кроме обычных разделов для пользовательских файлов существуют и другие типы разделов, например раздел EFI, BIOS boot, Windows Recovery, Linux swap, этот тип влияет на назначение раздела, например, раздел EFI не будет использоваться пока для него не будет выбран правильный тип. Чтобы изменить тип раздела используйте команду t:
Для вывода всех доступных типов и их номеров используйте команду L:
Для выхода из списка разделов нажмите q, а затем просто наберите номер нужного типа:
7. Удаление раздела
Чтобы удалить раздел выполните команду d, а затем введите его номер:
Вот так просто выполняется удаление.
8. Загрузочный раздел
При загрузке компьютера с диска, на котором используется таблица разделов MBR, BIOS ищет раздел, отмеченный как загрузочный и начинает искать загрузчик именно на нём. Чтобы сделать раздел загрузочным если он ещё не загрузочный или наоборот сделать его не загрузочным используйте команду a:
Загрузочность отмечается звездочкой в выводе команды p. В таблице разделов GPT для записи загрузчика используется раздел с типом BIOS boot, а флага загрузочности здесь уже нет.
9. Применение изменений
Все изменения, которые вы сейчас вносили, ещё не записаны на диск. Для их записи надо выполнить команду w:
После записи изменений программа завершится.
Выводы
В этой статье мы рассмотрели как пользоваться fdisk в Linux, как создавать разделы с помощью этой утилиты, а также как выбрать тип диска. Несмотря на все возможности утилиты намного удобнее пользоваться gparted или же cfdisk если надо разметить диск в терминале. Последнюю мы разберем в одной из следующих статей.
Источник