FDISK(8) | Керування системою | FDISK(8) |
НАЗВА¶
fdisk — керування таблицею розділів диска
КОРОТКИЙ ОПИС¶
fdisk [параметри] пристрій
fdisk -l [пристрій...]
ОПИС¶
fdisk — програма для створення і роботи з таблицями розділів, якою керують за допомогою діалогів. У ній передбачено підтримку таблиць розділів GPT, MBR, Sun, SGI і BSD.
Блокові пристрої можна поділити на один або декілька логічних дисків, які називаються розділами. Цей поділ записують до таблиці розділів, яка, зазвичай, починається у секторі 0 диска. (У світі BSD це називається «зрізи диска» або «мітка диска».)
Типово, поділ на розділи є керованим обмеженнями введення-виведення пристрою (топологією). fdisk може оптимізувати компонування диска для розміру сектора у 4 кБ і використовувати зсув вирівнювання на сучасних пристроях для MBR і GPT. Завжди варто використовувати типові значення fdisk (наприклад, перший і останній сектори розділу), а розміри розділів, які вказано у позначеннях +/-<size>{M,G,...}, завжди вирівнюються відповідно до властивостей пристрою.
Адресування CHS (Cylinder-Head-Sector або циліндр-голівка-сектор) вважається застарілим і типово не використовуються. Будь ласка, не користуйтеся застарілими статтями і рекомендаціями, де радять fdisk -S <n> -H <n> для SSD або пристроями із секторами з розміром 4 кБ.
Зауважте, що у partx(8) передбачено чудовий інтерфейс для виведення компонувань дисків за допомогою скриптів, fdisk, здебільшого, дуже зручний у користуванні. Зворотну сумісність у виведених fdisk даних не гарантовано. Вхідні дані (команди) завжди мають бути сумісними із попередніми версіями.
ПАРАМЕТРИ¶
-b, --sector-size розмір_сектора
-B, --protect-boot
-c, --compatibility[=режим]
-h, --help
-V, --version
-L, --color[=варіант]
-l, --list
Якщо пристроїв не задано, буде використано пристрої, які згадано у /proc/partitions (якщо цей файл існує). Пристрої у списку завжди буде упорядковано так, як їх упорядковано у рядку команди або упорядковано ядром за списком у /proc/partitions.
-x, --list-details
--lock[=режим]
-n, --noauto-pt
-o, --output список
Типовий список стовпчиків може бути розширено, якщо список вказано у форматі +список (наприклад, -o +UUID).
-s, --getsz
-t, --type тип
-u, --units[=одиниця]
-C, --cylinders число
-H, --heads число
-S, --sectors число
-w, --wipe варіант
-W, --wipe-partitions варіант
-V, --version
ПРИСТРОЇ¶
Аргументом пристрій, зазвичай, є /dev/sda, /dev/sdb або щось подібне. Назва пристрою вказує на цілий диск. У старих системах без libata (бібліотеки, яку використано у ядрі Linux для підтримки контролерів і пристроїв ATA основної системи) є різниця між дисками IDE і SCSI. У таких випадках назвою пристрою буде /dev/hd* (IDE) або /dev/sd* (SCSI).
Аргументом розділ є назва пристрою, за якою має бути вказано номер розділу. Наприклад, /dev/sda1 є першим розділом на першому жорсткому диску у системі. Див. також документацію з ядра Linux (файл Documentation/admin-guide/devices.txt).
РОЗМІРИ¶
У діалозі «останній сектор» приймається розмір розділу, який вказано за кількістю секторів або за позначенням +/-<розмір>{K,B,M,G,...}.
Якщо до розміру дописано префікс «+», його буде оброблено як визначник значення, яке є відносним щодо першого сектора розділу. Якщо до розміру додано префікс «-», значення буде оброблено, як відносне до верхнього обмеження (останнього доступного сектора для розділу).
У випадку, якщо розмір вказано у байтах, за числом можна вказати одиницю виміру: KiB (=1024), MiB (=1024*1024) тощо для GiB, TiB, PiB, EiB, ZiB та YiB (частина «iB» є необов'язковою, наприклад «K» є тим самим, що і «KiB»).
Відносні розміри завжди вирівняно відповідно до обмежень на введення-виведення для пристрою. Рекомендовано користуватися позначенням +/-<розмір>{K,B,M,G,...}.
Для забезпечення зворотної сумісності у fdisk також можна використовувати суфікси KB=1000, MB=1000*1000, і так само для GB, TB, PB, EB, ZB і YB. Ці суфікси для 10^N вважаються застарілими.
ФАЙЛИ СКРИПТІВ¶
fdisk уможливлює читання (за допомогою команди «I») сумісних із sfdisk(8) файлів скриптів. Скрипт буде застосовано до таблиці розділів у пам'яті, а отже, можна змінити таблицю розділів до запису її на пристрій.
І навпаки, можна записувати поточне компонування диска у пам'яті до файла скрипту за допомогою команди «O».
Файли скриптів є сумісними одразу з cfdisk(8), sfdisk(8), fdisk та іншими програмами libfdisk. Докладніші відомості можна знайти у підручнику з sfdisk(8).
МІТКИ ДИСКІВ¶
GPT (GUID Partition Table)
Зауважте, що перший сектор у специфікації GPT усе ще зарезервовано для захисного MBR. Він запобігає помилковому розпізнаванню і перезапису дисків GPT інструментами для роботи з розділами, які розуміють лише MBR.
GPT є завжди кращим вибором за MBR, особливо на сучасному обладнанні із завантажувачем UEFI.
DOS-type (MBR)
У таблиці розділів DOS-типу початкове зміщення та розмір кожного з розділів зберігається у два способи: як абсолютна кількість секторів (задана у 32 біти) і як трійка циліндри/голівки/сектори (задана у 10+8+6 бітів). З першим варіантом усе гаразд — з 512-байтовими секторами це працює до 2 ТБ. З другим варіантом є дві проблеми. Перша полягає у тому, що ці поля Ц/Г/С може бути заповнено, лише якщо відома кількість голівок та секторів на доріжку. А друга — у тому, що навіть якщо нам відомі значення цих параметрів, 24 доступних бітів недостатньо для їхнього запису. У DOS використано лише Ц/Г/С, у Windows — обидва варіанти, Linux ніколи не використовує Ц/Г/С. Адресування Ц/Г/С вважається застарілим, його підтримку може бути вилучено у якійсь з майбутніх версій fdisk.
Будь ласка, ознайомтеся із розділом щодо режиму DOS, якщо вам потрібні сумісні із DOS розділи. Типово, fdisk не переймається вирівнюванням на межу циліндра.
BSD/Sun-type
IRIX/SGI-type
Якщо таблицю розділів було оновлено, перед виходом з програми буде виконано sync(2) та ioctl(BLKRRPART) (повторне читання таблиці розділів з диска).
РЕЖИМ DOS І ПОПЕРЕДЖЕННЯ ЩОДО DOS 6.X¶
Зауважте, що усе описане нижче вважається застарілим. Вам не варто перейматися речима, подібними до геометрії та циліндрів у сучасних операційних системах. Якщо вам дуже потрібний поділ на розділи із сумісністю з DOS, вам слід увімкнути режим DOS і одиниці-циліндри за допомогою параметрів командного рядка fdisk «-c=dos -u=cylinders».
Команда FORMAT для DOS 6.x шукає певні дані у першому секторі області даних розділу і обробляє ці дані як надійніші за відомості з таблиці розділів. FORMAT для DOS очікує від FDISK для DOS очищення перших 512 байтів області даних розділу під час кожної зміни розмірів. FORMAT для DOS шукатиме ці додаткові відомості, навіть якщо вказано параметр /U — ми вважаємо це вадою у FORMAT для DOS та FDISK для DOS.
У підсумку, якщо ви користуєтеся fdisk або cfdisk(8) для зміни розмірів запису у таблиці розділів DOS, вам слід також скористатися dd(1) для занулення перших 512 байтів цього розділу до використання FORMAT для DOS для форматування розділу. Наприклад, якщо ви скористалися fdisk для створення запису DOS у таблиці розділів для /dev/sda1, далі, (після виходу з fdisk і перезавантаження Linux, щоб освіжити дані таблиці розділів) вам слід скористатися командою dd if=/dev/zero of=/dev/sda1 bs=512 count=1 для занулення перших 512 байтів розділу.
Зазвичай, fdisk отримує дані щодо геометрії диска автоматично. Це не обов'язково фізична геометрія диска (насправді, у сучасних дисків насправді немає ніякої фізичної геометрії, точно немає того, що описано у спрощеній формі циліндри/голівки/сектори), але це геометрія диска, яку MS-DOS використовує для таблиці розділів.
Зазвичай, усе має бути типово добре, і не повинно бути проблем, якщо Linux є єдиною системою на диску. Втім, якщо диск спільно використовується іншими операційними системами, часто варто надати змогу fdisk з іншої операційної системи створити принаймні один розділ. При завантаженні Linux система аналізує таблицю розділів і намагається визначити, яка (фіктивна) геометрія потрібна для належної сумісності з іншими операційними системами.
Кожного разу, коли виводиться таблиця розділів у режимі DOS, буде виконано перевірку записів таблиці розділів. Під час перевірки буде встановлено, чи є ідентичними фізичні і логічні початкова і кінцева точки, і чи кожен розділ починається і завершується на межі циліндра (окрім першого розділу).
Деякі версії MS-DOS створюють перший розділ, який починається не на початку межі циліндра, а на секторі 2 першого циліндра. Розділи, що починаються на циліндрі 1, не можуть починатися на межі циліндра, але це навряд чи спричинить труднощі, якщо на вашому комп'ютері немає OS/2.
Для покращення результатів вам слід завжди користуватися специфічною для операційної системи програмою для роботи з таблицею розділів. Наприклад, вам слід створювати розділи DOS за допомогою програми FDISK для DOS, а розділи Linux за допомогою програм fdisk та Linux cfdisk(8) для Linux.
КОЛЬОРИ¶
Розфарбовування виведених даних реалізовано у можливості terminal-colors.d(5). Неявне розфарбовування може бути вимкнено спорожненням файла
/etc/terminal-colors.d/fdisk.disable
для команди fdisk або для усіх інструментів
/etc/terminal-colors.d/disable
Специфічні для користувача $XDG_CONFIG_HOME/terminal-colors.d та $HOME/.config/terminal-colors.d мають пріоритет над загальними параметрами.
Зауважте, що можна типово увімкнути розфарбовування виведених даних і у цьому випадку каталоги terminal-colors.d не повинні існувати.
Логічними назвами кольорів, підтримку яких передбачено у fdisk, є такі:
header
help-title
warn
welcome
СЕРЕДОВИЩЕ¶
FDISK_DEBUG=all
LIBFDISK_DEBUG=all
LIBBLKID_DEBUG=all
LIBSMARTCOLS_DEBUG=all
LIBSMARTCOLS_DEBUG_PADDING=on
LOCK_BLOCK_DEVICE=<режим>
АВТОРИ¶
Karel Zak <kzak@redhat.com>, Davidlohr Bueso <dave@gnu.org>
Початкову версію було написано Andries E. Brouwer, A. V. Le Blanc та іншими авторами.
ДИВ. ТАКОЖ¶
ЗВІТИ ПРО ВАДИ¶
Для звітування про вади використовуйте систему стеження помилками на <https://github.com/util-linux/util-linux/issues>.
ДОСТУПНІСТЬ¶
fdisk є частиною пакунка util-linux, який можна отримати з Linux Kernel Archive <https://www.kernel.org/pub/linux/utils/util-linux/>.
ПЕРЕКЛАД¶
Український переклад цієї сторінки посібника виконано Yuri Chornoivan <yurchor@ukr.net>
Цей переклад є безкоштовною документацією; будь ласка, ознайомтеся з умовами GNU General Public License Version 3. НЕ НАДАЄТЬСЯ ЖОДНИХ ГАРАНТІЙ.
Якщо ви знайшли помилки у перекладі цієї сторінки підручника, будь ласка, надішліть електронний лист до списку листування перекладачів: trans-uk@lists.fedoraproject.org.
11 травня 2022 року | util-linux 2.38.1 |