Wireshark linux установка. Wireshark в Linux

Posted by Hrafn

Временами ко мне заходят люди с поисковиком с запросами по поводу fdisk. Где-то в статьях упоминается эта команда. Но толком ничего у меня про нее не было. А я помню, как в свое время мучался с ней Поскольку писать свое собственное что-то мне очень часто посто лень, то я потихоньку перевожу интересные и полезные для меня статьи. Вот и сейчас сделал то же самое. Может, пригодится кому-то. Хотя, как всегда, статья далеко не целиком раскрывает тему, а потому чтение манов никто не отменяет

Итак, очередной перевод. Оригинал, как всегда, на Novell Cool Solutions . Читайте.

Создать разделы через интерфейс командной строки — просто и быстро, также учитывая знание ядра о модифицированной таблице разделов и наличия схемы разделов, позволяет получить нужный эффект без необходимости перезагрузки рабочей станции/сервера и без необходимости использовать утилиты для разделения.

Первым делом необходимо посмотреть, какие жесткие диски доступны, и какой жесткий диск необходимо разделить. Если на вашей машине установлено несколько жестких дисков, fdisk сообщит вам об этом. Два жестких диска показано в следующем листинге как sda и sdb.

Команда fdisk с оператором -l (fdisk -l ) покажет вам текущие таблицы разделов наряду с жесткими дисками, подключенными к вашей рабочей станции или серверу:

linux-1reo:~ # fdisk -l








Disk /dev/sdb: 80.0 GB, 80026361856 bytes
255 heads, 63 sectors/track, 9729 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

Device Boot Start End Blocks Id System
/dev/sdb1 * 1 9729 78148161 8e Linux LVM

Disk /dev/sdc: 500.1 GB, 500107862016 bytes
255 heads, 63 sectors/track, 60801 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

Как только вы определили, какой жесткий диск вы хотите разделить, вы можете запустить команду fdisk , завершив ее нужным жестким диском (fdisk /dev/sda ). В этой статье мы будем использовать первый жесткий диск — sda .

linux-1reo:~ # fdisk /dev/sda
The number of cylinders for this disk is set to 9729.
There is nothing wrong with that, but this is larger than 1024,
and could in certain setups cause problems with:
1) software that runs at boot time (e.g., old versions of LILO)
2) booting and partitioning software from other OSs
(e.g., DOS FDISK, OS/2 FDISK) Command (m for help):

Как только fdisk будет запущен, ваше приглашение командной строки изменится на «Command (m for help): », и вы будете готовы к проверке и разделению жесткого диска. Команды, которые поддерживает fdisk , можно просмотреть нажав клавишу m , а затем Enter. Команды, которые мы будем использовать:

  • p — для печати таблицы раздела
  • n — для создания нового раздела
  • w — для сохранения изменений и выхода

Отображение текущей таблицы раздела

Перед тем, как мы начнем делить жесткий диск, необходимо узнать какой объем дискового пространства нам доступен и как вообще выгдялит текущая таблица раздела. «p », команда, которую мы будеи использовать, выведет текущую таблицу раздела:

Command (m for help): p

Disk /dev/sda: 80.0 GB, 80026361856 bytes
255 heads, 63 sectors/track, 9729 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

Device Boot Start End Blocks Id System
/dev/sda1 * 1 1402 11261533+ 7 HPFS/NTFS
/dev/sda2 1403 1415 104422+ 83 Linux
/dev/sda3 1416 1546 1052257+ 82 Linux swap / Solaris
/dev/sda4 1547 9729 65729947+ 5 Extended
/dev/sda5 1547 7920 51199123+ 8e Linux LVM

Вывод, приведенный выше, показывает, что у нас доступно 1809 цилиндров (9729 — 7920 = 1809), и мы можем выполнить вычисление (1809 * 16065 * 512) = 14879531520байтов, что примерно равно 14 гигабайтов.

Создание нового раздела

Следующий шаг — создание нашего нового раздела. Для примера, мы создадим раздел с типом «Linux» и размером 1 гигабайт. Мы используем команду «n » для создания нового раздела. Нас спросят, с какого цилиндра будет начинаться раздел (я советую оставить по умолчанию) и необходимый размер раздела:

Command (m for help): n
First cylinder (7921—9729, default 7921):
Using default value 7921
Last cylinder or +size or +sizeM or +sizeK (7921—9729, default 9729): +1024M

После того, как раздел будет создан, мы, используя команду «p », можем отобразить на экране нашу новую таблицу раздела:

Command (m for help): p

Disk /dev/sda: 80.0 GB, 80026361856 bytes
255 heads, 63 sectors/track, 9729 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

Device Boot Start End Blocks Id System
/dev/sda1 * 1 1402 11261533+ 7 HPFS/NTFS
/dev/sda2 1403 1415 104422+ 83 Linux
/dev/sda3 1416 1546 1052257+ 82 Linux swap / Solaris
/dev/sda4 1547 9729 65729947+ 5 Extended
/dev/sda5 1547 7920 51199123+ 8e Linux LVM
/dev/sda6 7921 8045 1004031 83 Linux

Запись нового раздела на диск

Теперь, когда раздел был успешно создан, вы можете записать изменения на диск, нажав клавишу «w », а затем Enter:

Command (m for help): w
The partition table has been altered!

Calling ioctl() to re-read partition table.

WARNING: Re-reading the partition table failed with error 16: Device or resource busy.
The kernel still uses the old table.
The new table will be used at the next reboot.
Syncing disks.

Активирование вновь созданного раздела

Как только новая таблица раздела записана на жесткий диск, ядро имеет возможность читать новую таблицу раздела без необходимости перезагрузки. Первый шаг — создание точки монтирования для нового раздела, в нашем примере мы будем использовать /media/newpart , а также использование команды «partprobe » для того, чтобы ядро имело возможность перечитать таблицу раздела:

Linux-1reo:~ # mkdir /media/newpart
linux-1reo:~ # partprobe

Теперь, когда новая точка монтирования создана и ядро перечитало таблицу раздела, вы можете отформатировать раздел и разместить на нем файловую систему на ваш выбор (ext2, ext3, reiserfs и т.д.). В нашем примере, мы выбрали reiserfs:

linux-1reo:~ # mkfs.reiserfs /dev/sda6
mkfs.reiserfs 3.6.19 (2003 www.namesys.com)

A pair of credits:
The Defense Advanced Research Projects Agency (DARPA, www.darpa.mil) is the
primary sponsor of Reiser4. DARPA does not endorse this project; it merely
sponsors it.

Alexander Lyamin keeps our hardware running, and was very generous to our
project in many little ways.

Guessing about desired format... Kernel 2.6.16.21−0.8-default is running.
Format 3.6 with standard journal
Count of blocks on the device: 126496
Number of blocks consumed by mkreiserfs formatting process: 8215
Blocksize: 4096
Hash function used to sort names: "r5″
Journal Size 8193 blocks (first block 18)
Journal Max transaction length 1024
inode generation number: 0
UUID: e20e2dc1−7277−4ab1−930c-038e54548540
ATTENTION: YOU SHOULD REBOOT AFTER FDISK!
ALL DATA WILL BE LOST ON ‘/dev/sda3′!
Continue (y/n):y
Initializing journal — 0%….20%….40%….60%….80%….100%
Syncing...ok
ReiserFS is successfully created on /dev/sda3.
linux-1reo:~ #

Как только размер будет отформатирован, вы можете примонтировать и использовать ваш вновь созданный раздел:

linux-1reo:~ # mount /dev/sda6 /media/partnew

Заключение

После монтирования созданного и отформатированного раздела вы можете хранить ваши файлы на этом разделе безо всяких пробле, вы можете также добавить ваш новый раздел в файл /etc/fstab для того, чтобы ваш раздел монтировался после каждой перезагрузки.

Протестировано на:

  • SUSE Linux Enterprise Desktop 10
  • SUSE Linux Enterprise Server 10

Перед установкой операционной системы необходимо произвести разметку жесткого диска, в ходе которой диск разбивается на разделы и производится их форматирование. Инсталляторы современных операционных систем могут производить эту операцию автоматически, но делают это обычно не самым оптимальным образом. В определенных случаях имеет смысл проводить эту операцию вручную с помощью специальных программ. Необходимость в ручной разметке диска возникает, если:

  • на компьютер планируется установить несколько операционных систем, например, Windows и Linux;
  • операционная или файловая система имеет ограничения на максимальный размер тома, поэтому диск большого объема необходимо разбивать на несколько мелких логических дисков.

Также с помощью правильной разметки диска можно получить некоторые преимущества. При выполнении резервного копирования можно архивировать не весь диск, а лишь его часть, с важными данными. Например, можно создать отдельные архивы для разделов пользователей и системы. При этом, в случае краха системы, данные пользователей могут остаться неповрежденными. А время, необходимое на архивирование и восстановления сократится. Также можно использовать различные файловые системы и разный размер кластера. Например, небольшой размер кластера существенно сэкономит место на разделе, где хранится множество мелких файлов.

Файловые системы

Файловая система определяет способ организации и хранения информации на дисках. В журналируемой файловой системе, в так называемый «журнал», записываются изменения файлов, которые планируется осуществить, поэтому при сбоях значительно уменьшается вероятность потери данных.

Ext - первая файловая система в Linux. В настоящее время практически не применяется.

Ext2 - нежурналируемая файловая система. Может применяться для данных, которые редко изменяются. Например, для загрузочных секторов дисков, для работы с SSD и флеш-картами, которые имеют ограниченный ресурс циклов записи. Характеризуется высокой скоростью, однако скорость чтения ниже, чем у более современной журналируемой системы - ext4.

Ext3 - является журналируемой версией ext2. Широко применялась до появления ext4.

Ext4 - разработана на основе ext3, обладает более высокой производительностью, позволяет работать с дисками и файлами очень больших размеров. Эта самая популярная на сегодняшний день файловая система для Linux, которая используется для системных файлов и пользовательских данных.

ReiserFS - первая журналируемая файловая система для Linux. Умеет упаковывать файлы в один блок, что улучшает производительность и экономит дисковое пространство при работе с мелкими файлами. Reiser4 - четвертая версия ReiserFS, в которой повышена производительность и надежность работы с данными. Добавлена возможность использования плагинов, которые могут, например, «налету» сжимать или шифровать данные. Рекомендуется для работы с файлами небольших размеров.

XFS - журналируемая система, обладающая высокой производительностью, может быть рекомендована для работы с большими файлами.

JFS - еще одна журналируемая файловая система, разработанная фирмой IBM. Разработчики стремились добиться высокой надежности, производительности и масштабируемости для работы на многопроцессорных компьютерах.

Tmpfs - предназначена для размещения временных файлов в ОЗУ компьютера. Особенно актуальна при работе с SSD и наличии свободной оперативной памяти.

FAT и NTFS - файловые системы MS-DOS и Windows, которые также поддерживаются Linux. Пользователь Linux может иметь доступ к разделам с FAT и NTFS. Применяется для установки соответствующих систем, для переноса и совместного использования данных.

Swap - может быть как отдельным разделом диска, так и обычным файлом. Используются исключительно для создания виртуальной памяти. Виртуальная память необходима в случае нехватки основной памяти (ОЗУ), однако скорость работы при использовании такой памяти значительно уменьшается. Swap необходим для компьютеров с малым объемом памяти, в этом случае рекомендуется создать swap-раздел или файл размером в 2-4 раза больше, чем ОЗУ компьютера. Также swap необходим для перехода в режим сна, в этом случае необходимо выделить объем памяти равный ОЗУ компьютера или чуть больше. Если компьютер имеет достаточный объем памяти и не требуется режим сна, то swap можно вообще отключить. Современному персональному компьютеру обычно хватает 4 Гигабайт ОЗУ. Но при обработке больших объемов данных, для серверов с большим количеством пользователей могут потребоваться значительно большие объемы памяти.

Структура диска в Linux

Диск можно разбить на четыре физических раздела. Один из этих разделов может быть расширенным. Расширенный раздел может быть разбит на неограниченное число логических разделов. Диски в Linux обозначаются буквами sd?, где вместо знака вопроса используются буквы латинского алфавита, начиная с «a». То есть, первый диск в системе называется sda, второй - sdb, третий - sdc и т. д. На старых компьютерах, с IDE дисками могут использоваться названия: hda, hdb, hdc и т.д. В свою очередь, разделы дисков указываются цифрами: sda1, sdb5, sdc7. Первые четыре цифры зарезервированы за физическими разделами: sda1, sda2, sda3, sda4. Даже если на диске меньше четырех физических разделов, первый логический раздел будет называться sda5.

Структура директорий

Здесь мы рассмотрим только те директории, которые имеет смысл выносить на отдельный раздел.

/ - корень диска. Создается в любом случае. Рекомендуемые файловые системы: ext4, JFS, ReiserFS.

/boot - служит для загрузки системы. Рекомендуемая файловая система - ext2.

/home - содержит файлы пользователей. Рекомендуемые файловые системы: ext4, ReiserFS, XFS (для больших файлов).

/tmp - служит для хранения временных файлов. Рекомендуемые файловые системы: ReiserFS, ext4, tmpfs.

/var - служит для хранения часто изменяемых файлов. Рекомендуемая файловая системы: ReiserFS, ext4.

/usr - содержит файлы программ и библиотек, устанавливаемые пользователем. Рекомендуемая файловая система - ext4.

Разметка диска с помощью программы fdisk

Fdisk - это утилита для разметки жестких дисков с текстовым интерфейсом. Все устройства в Linux находятся в каталоге /dev. Посмотреть список дисков можно с помощью команды:

ls /dev | grep sd

Если диск sda уже размечен, то информацию о разделах можно узнать с помощью команды:

sudo fdisk -l /dev/sda

Также информацию о разделах можно получить с помощью команды:

Допустим, что мы хотим получить такую структуру диска:

1 (sda1) раздел для Windows объемом 100 Гбайт.

2 (sda5) раздел для загрузки Linux - /boot 100 Мбайт

3 (sda6) раздел swap - 4 Гбайта.

4 (sda7) раздел корневой - / 20 Гбайт.

5 (sda8) раздел /home - весь оставшийся диск.

Запускаем fdisk:

sudo fdisk /dev/sda

Если надо разметить второй или третий диск, вместо sda пишем sdb или sdc.

После запуска программы нажимаем «m» для просмотра списка команд.

Смотрим таблицу разделов, нажав «p».

Если диск не пустой, удаляем старые разделы командой «d», после чего указываем номер раздела. Если разделов несколько, придется выполнить команду несколько раз.

Создаем новый раздел физический Windows, нажав клавишу «n», а потом «p». Далее указываем номер раздела - «1». Первый сектор по умолчанию - нажимаем «Enter». И в конце вводим размер диска «+100G ».

В терминале это будет выглядеть следующим образом:

Команда (m для справки): n

e расширенный

Select (default p): p

Номер раздела (1-4, по умолчанию 1): 1

Первый сектор (2048-976773167, по умолчанию 2048):

Используется значение по умолчанию 2048

Last сектор, +секторы or +size{K,M,G} (2048-976773167, по умолчанию 976773167): +100G

Команда (m для справки): n

e расширенный

Select (default p): e

Номер раздела (1-4, по умолчанию 2): 2

Первый сектор (209717248-976773167, по умолчанию 209717248):

Используется значение по умолчанию 209717248 Last сектор, +секторы or +size{K,M,G} (209717248-976773167, по умолчанию 976773167):

Используется значение по умолчанию 976773167

Следующий раздел swap, объемом 4 Гигабайта. Последовательно «n», «l», «Enter» и в конце вводим +4G.

Таким же образом создаем корневой раздел в 20 Гигабайт, нажимая «n», «l», «Enter» и +20G.

И раздел /home, который займет все оставшееся дисковое пространство: «n», «l», «Enter», «Enter».

После чего, нажав «p», мы увидим примерно следующее:

/dev/sda1 2048 209717247 104857600 83 Linux

/dev/sda6 209926144 218314751 4194304 83 Linux

Так как на раздел sda1 планируется установить Windows, то сменим тип файловой системы. Нажмем «l» и увидим, что NTFS соответствует id=7. Для смены типа, нажимаем «t», потом номер раздела «1» и код «7», в терминале это будет выглядеть так:

Команда (m для справки): t

Номер раздела (1-8): 1

Шестнадцатеричный код (введите L для получения списка кодов): 7

Системный тип раздела 1 изменен на 7 (HPFS/NTFS/exFAT)

Аналогичным образом меняем id файла подкачки для раздела sda6: нажимаем «l», «6» и вводим код 82.

Смотрим, что получилось командой «p»:

Устр-во Загр Начало Конец Блоки Id Система

/dev/sda1 2048 209717247 104857600 7 HPFS/NTFS/exFAT

/dev/sda2 209717248 976773167 383527960 5 Расширенный

/dev/sda5 209719296 209924095 102400 83 Linux

/dev/sda6 209926144 218314751 4194304 82 Linux своп / Solaris

/dev/sda7 218316800 260259839 20971520 83 Linux

/dev/sda8 260261888 976773167 358255640 83 Linux

Если все в порядке, то для записи разделов на диск, нажимаем «w». Пока мы не ввели команду «w», выполняются только предварительные операцию, данные на диск не записываются. После записи разделов, перезагружаемся и устанавливаем системы.

Разметка диска с помощью GParted

GParted или GNOME Partition Editor представляет собой программу для редактирования разделов диска с графическим интерфейсом. По существу, она является оболочкой текстовой утилиты GNU Parted. GParted имеет простой и интуитивно понятный интерфейс. Она позволяет не только создавать и удалять разделы, но также изменять их размеры, копировать и перемещать. Программа поддерживает работу со многими популярными файловыми системами.

Внимание : последующие действия могут привести к полной потере информации с дисков компьютера . Перед использованием программы GParted обязательно сделайте копии важной информации. Также желательно зарядить аккумулятор ноутбука, использовать ИБП. Некоторые операции могут занять продолжительное время и в случае отключения питания данные могут быть утеряны.

Запускаем программу командой:

Запуск нужно производить от привилегированного пользователя, для этого предварительно выполняем команду su , либо sudo :

sudo gparted

Если команда не сработала, то нужно установить эту программу, хотя во многие дистрибутивы она включена по умолчанию.

Если диск уже размечен, мы увидим примерно такую картину:

Рис. 1. Программа GParted

Сверху расположено текстовое меню. Ниже кнопки для выполнения основных действий. С правой стороны от иконок окно выбора диска. Ниже показаны разделы выбранного диска в виде прямоугольников. Еще ниже, те же разделы дисков в виде таблицы, с более подробным описанием. Если кликнуть правой кнопкой мыши на любой из разделов, то появится меню с перечнем операций, которые можно произвести с выбранным разделом. Также можно выбрать раздел диска левой кнопкой мыши, а потом выбрать операцию в верхнем текстовом меню или нажав на иконку.

В случае, если диск неразмеченный, можно сразу же приступить к созданию разделов. В противном случае удаляем ненужные разделы - кликаем правой кнопкой мыши (ПКМ) на названии раздела и выбираем в меню «Удалить».

Если раздел используется системой (примонтирован), то перед выполнением операций нужно его отмонтировать - кликаем ПКМ на разделе и выбираем в меню «Отмонтировать».

Если на диске есть нужные разделы, можно изменить их размер, чтобы освободить место для новых разделов. Допустим, что есть раздел с Windows, который занимает весь диск. Необходимо оставить Windows и установить Linux. Для этого кликаем ПКМ на разделе Windows и выбираем в меню «Изменить размер/Переместить». После чего указываем новый размер раздела Windows, либо свободное место до или после раздела. После этого нажимаем кнопку «Изменить размер или переместить».

Рис. 2. Изменение размера раздела

Естественно, что для этой операции раздел с Windows должен иметь достаточное количество свободного места. После изменения размера раздела появится неразмеченное пространство, которое можно использовать для создания разделов с Linux.

Для создания нового раздела нужно кликнуть ПКМ на неразмеченном пространстве и выбрать в меню пункт «Новый». Далее в поле «Новый размер» указываем размер раздела. Указываем тип раздела (основной, расширенный, логический) и файловую систему, а также метку диска, например «home».

Рис. 3. Создание нового раздела

Создаем все необходимые разделы (смотрите выше описание работы с fdisk).

В самом конце, для выполнения всех выбранных операций, нужно в верхнем меню «Правка» выбрать пункт «Выполнить все операции», либо нажать соответствующую кнопку в виде зеленой галочки на панели инструментов. Остается подождать некоторое время, пока программа произведет разметку диска.

Сегодня мы с Вами научимся самостоятельно создавать разметку диска в Linux Ubuntu в процессе установки дистрибутива на компьютер, другими словами, вручную создавать разделы жесткого диска в Ubuntu, которые необходимы для нормального функционирования операционной системы на домашнем компьютере, а также немного поговорим о том какой раздел для чего нужен.

Итак, в качестве примера мы будем использовать актуальную на данный момент версию Linux Ubuntu 17.04 , т.е. давайте представим, что Вы устанавливаете Ubuntu 17.04 (или любой другой производный дистрибутив, например, Kubuntu, Lubuntu, Ubuntu MATE и другие ) и дошли до шага, когда Вам необходимо выбрать «Тип установки », т.е. тип разметки диска, например: автоматический – это первый пункт «Стереть диск и установить Ubuntu », или «Другой вариант » — это именно тот тип, при котором мы можем самостоятельно разметить диск, его мы сейчас и рассмотрим.

Примечание! В данной статье мы рассмотрим первоначальную разметку чистого диска, т.е. на котором еще нет разделов и данных.

Создание разделов диска во время установки Linux Ubuntu

Для самостоятельного создания разметки диска во время установки Linux Ubuntu необходимо выбрать тип установки «Другой вариант » и нажать «Продолжить ».

Если у Вас несколько физических дисков (у меня один ) выбираем нужный и нажимаем «Новая таблица разделов ».


Затем нас предупреждают, что будет создана новая пустая таблица разделов, мы нажимаем «Продолжить », т.е. подтверждаете свое действие.


Первое, что мы должны создать — это корневой раздел, т.е. основной (системный ) раздел под установку системы. Для этого мы указываем:

  • Размер – для корневого раздела минимально 15 гигабайт, на перспективу, конечно же, лучше указать больше, например 50 гигабайт. У меня для теста диск маленький, поэтому я указываю 15 гигабайт;
  • Тип нового раздела – указываем «Первичный », так как данный тип должен обязательно быть на диске;
  • – указываем «Начало этого пространства »;
  • Использовать как – здесь нам необходимо выбрать тип файловый системы, оставляем по умолчанию файловую систему Ext4 — это журналируемая файловая система для операционных систем Linux, которая наиболее подходит на текущий момент для файловой системы корневого раздела (да и для пользовательских данных );
  • Точка монтирования – указываем «/», так как это у нас корневой раздел.

Жмем «ОК ».


Затем практически таким же способом создаем раздел для пользовательских данных, т.е. домашний раздел. Создание такого раздела позволит Вам хранить свои данные (документы, музыку, фото и так далее ) в отдельном месте, которое не нужно будет каким-то специальным образом копировать (резервировать ) во время переустановки (обновления ) дистрибутива или даже его смене.

В данном случае нам необходимо указать:

  • Размер – по возможности максимальный, т.е. все оставшееся место, как я уже говорил у меня тестовый диск маленький, поэтому и осталось мало место;
  • Тип нового раздела – указываем «Логический »;
  • Местоположение нового раздела – указываем «Начало этого пространства »;
  • Использовать как – также выбираем файловую систему Ext4;
  • Точка монтирования – указываем «/home».

Жмем «ОК ».


Раздел подкачки «swap» (своп ) мы создавать не будем, так как в Ubuntu, начиная с версии 17.04, вместо раздела подкачки используется файл подкачки (как в Windows ). По умолчанию его размер составляет 5% от свободного места на диске, но не более 2 гигабайт. После установки размер файла подкачки в любое время можно будет изменить.

На этом разметка диска, которая подойдет для домашнего компьютера, закончена, нажимаем «Установить сейчас ».


Подтверждаем внесение изменений на диск, жмем «Продолжить » и продолжаем установку дистрибутива.


У меня на этом все, надеюсь, материал был Вам полезен, пока!

fdisk - общее название системных утилит для управления разделами жёсткого диска. Широко распространены и имеются практически в любой операционной системе, но работают по-разному. Используют текстовый интерфейс пользователя.

Предупреждение : Не создавайте, не удаляйте и не изменяйте разделы, если вы не знаете, что вы делаете!

Утилита FDISK в Unix/Linux

С FDISK утилитой можно просматривать, создавать, изменять размер, удалять, копировать и перемещать разделы на жестком диске. И я приведу наглядные примеры по использованию.

Просмотр разделов в Unix/Linux

Начнем с самого легкого — просмотра разделов. Используйте опцию «-l» с командой FDISK, для просмотра доступных разделов в Linux (в Unix системах — данная опция может не сработать. Проверялось на Mac OS X). Все имеющиеся разделы в линукс отображаются по имени их устройства. Например: /dev/sda, /dev/sdb или /dev/sdc.

И так, запустим команду:

Вывод получаем следующий:

Можно узнать некоторую полезную информацию по конкретному блочному устройству. Например, следующая команда отобразит все разделы для /dev/sda:

Если у Вас есть разные названия устройств, простое имя устройства записи как /dev/sdb или /dev/sdc и так далее.

Вывод доступных команд по FDISK

Если вы хотели бы просмотреть все команды, которые доступны для FDISK, то просто используйте следующую команду, упомянув название жесткого диска, например /dev/sda, как показано ниже:

вывод все доступных команд для FDISK например для /dev/sda

Введите ‘m’, чтобы увидеть список всех доступных команд по FDISK, которые помогут с работой по жесткому диску /dev/sda. После, ввода ‘m’ на экране, вы увидите все доступные параметры для FDISK которые можете использовать для устройства /dev/sda (данное устройство взято как пример):

ПРЕДУПРЕЖДЕНИЕ: DOS-совместимый режим не рекомендуется. Настоятельно рекомендуется
выключить режим (команда ‘c’) и изменить units для сектора (команда ‘u’).

Допустимые опции при работы с fdisk

  • a:- Данная опция служит для переключение загрузочного флага.
  • b:- Данная опция служит для редактирования BSD метки диска.
  • c:- Данная опция служит для переключения флага совместимости дос.
  • d:- Данная опция служит для удаления раздела.
  • g:- Данная опция служит для создания новой, пустой таблицы разделов GPT.
  • G:- Данная опция служит для создание таблицы разделов IRIX (SGI).
  • l:- Данная опция служит для вывода известных типов разделов (Linux swap, Linux, GPT, Solaris и так далее).
  • m:- Данная опция служит для вывода доступных команд (меню).
  • n:- Данная опция служит для добавления нового раздела.
  • o:- Данная опция служит для создание новой пустой таблицы разделов DOS.
  • p:- Данная опция служит для вывода таблиц разделов.
  • q:- Данная опция служит для выхода из меню но без какого-либо сохранения изменений.
  • s:- Данная опция служит для создания новой и пустой Sun метки диска (disklabel).
  • t:- Данная опция служит для изменения типа «System ID» раздела (взять можно с вывода «l» опции).
  • u:- Данная опция служит для изменения блоков отображения/ввода.
  • v:- Данная опция служит для проверка таблиц разделов.
  • w:- Данная опция служит для записи всего измененного и потом выйти.
  • x:- Данная опция служит для вызова дополнительной функциональности (только для экспертов).

Вывод всех партиций (разделов) в Unix/Linux

Чтобы вывести таблицу разделов вашего блочного устройства, используйте:

# fdisk /dev/sda

После чего, вы попадаете в меню (в нем можно проводить различные операции с разделами), нас интересует только просмотр, по этому — вводим «p» опцию:

Создать таблицу разделов (disklabel) в Unix/Linux

Если имеется пустое блочное устройство и вы хотите на нем сделать разметку для установки будущей ОС, то для начала, стоит выбрать будущую разметку.

Приеду основные таблицы для разметки:

  • MBR (msdos)

Чтобы создать таблицу разделов вашего блочного устройства, используйте:

# fdisk /dev/sda

Данным действием было выбрано блочное устройство /dev/sda и чтобы создать на нем новую таблицу разделов, используем одну из опций:

  • g — Чтобы создать новую, пустую таблицу GPT разделов.
  • o — Чтобы создать новую, пустую таблицу DOS разделов.

И переходим к созданию разделов.

Создать новый раздел в Unix/Linux

И так, допустим у вас есть свободное место на одном из устройств (у меня это /dev/sda) и вам необходимо создать новый раздел (например для установки ОС). Тогда вы должны запустить утилиту следующим образом (Введите следующую команду, чтобы войти в режим управления конкретного блочного устройства):

# fdisk /dev/sda

После входа в командный режим нажмите «n», чтобы создать новый раздел в /dev/sda с определенным размером.

После нажатия «n», вас просят выбрать тип будущего раздела:

  • p — Для «primary», т.е создать первичный раздел.
  • e — Для «extended», т.е создать расширенный раздел.

Хочу отметить следующее, что «primary» разделов можно создать до 4-х штук, а все остальные будут «extended» (т.е расширенными разделами). Т.к у меня — это всего лишь 1-й раздел, то я выбираю опцию «p». Как я сказал ранее, это мой первый, первичный раздел и для него, я должен указать номер (номер партиции), логично указать 1 (Но можно выбрать 1-4, т.к всего 4). Для создания полноценного раздела, необходимо указать сектор (начало позиции цилиндра для создаваемого раздела), мне подсказывают что это будет — 2048 (выбрал стандартное значение), а так же, нужно указать где будет заканчиваться данный сектор (конец позиции цилиндра для создаваемого раздела) — мне предлагают указать стандартное значение, но оно мне не подходит, т.к оно создаст 1 раздел максимальной длины (у меня это 21 Гб — тестовая машина). На данном этапе, можно указывать конец сектора в килобайтах (K), мегабайтах (M), гигабайтах (G). Предположим, я хочу создать 1-й раздел 5Гб, тогда я должен прописать «+5G» (или «+5000M» и так далее).

Можно еще создать несколько разделов. Действия будут какие же.

Пожалуйста, имейте в виду, что после создания нового раздела, вы должны запустить (выполнить) команду ‘w’, чтобы все действия сохранились. Ну а после чего, выполнить перезапуск ОС, чтобы убедиться что создался раздел.

Форматирование разделов в Unix/Linux

После того, как разделы создали, необходимо выполнить форматирование. Но прежде чем перейти к данному действию, нужно определится с файловой системой (ФС).

Я буду использовать утилиту «mkfs для форматирования раздела. Данная утилита поддерживает следующие ФС:

  • ext2: # mkfs.ext2 /dev/sda1
  • ext3: # mkfs.ext3 /dev/sda4
  • ext4: # mkfs.ext4 /dev/sda4
  • fat: # mkfs.fat /dev/sda4
  • minix: # mkfs.minix /dev/sda4
  • msdos: # mkfs.msdos /dev/sda4
  • vfat: # mkfs.vfat /dev/sda4
  • xfs: # mkfs.xfs /dev/sda4

Выбираем тип ФС и переходим к фармотированию.

Проверить размер раздела в Unix/Linux

После форматирования нового раздела, проверить размер раздела можно с помощью флага «s» и команды FDISK. Таким образом, вы можете проверить размер любого конкретного устройства. Например:

# fdisk -s / dev/sda3 5285413

Размер отображается в блоках.

Для вывода в гигабайтах (Гб), используйте:

# echo "`fdisk -s /dev/sda2`/(2^20)" | bc # echo "`fdisk -s /dev/sda1`/(2^20)" | bc # echo "`fdisk -s /dev/sda`/(2^20)" | bc

Выглядит юзабельно.

Включение/Выключение загрузки флага (*) из раздела в Unix/Linux

При разметке, я обычно выделяю 100мб для раздела, в котором будет хранится загрузчик. И для этой цели, необходимо указать что именно с него будет выполнятся загрузка. И по этому, нужно указать нужный из разделов. Начнем:

# fdisk /dev/sda

Первым шагом, будет просмотр имеющихся разделов, чтобы увидеть текущую таблицу разделов. Как вы помните — это «p» опция. У меня на скриншоте ниже, видно что загрузочный раздел на / dev/sda1 диске (вы видите, что это флаг загрузки — звездочка ‘*’), как показано ниже:

Затем введите ‘а’ опцию, чтобы отключить флаг загрузки. Нам предлагают выбрать номер раздела где будет убрана загрузка (я выбираю ‘1 ‘ т.е. / dev/sda1). Это отключит флаг загрузки на разделе / ​​dev/sda1:

Чтобы включить флаг с загрузки, используем «a» опцию. После того как нажали, необходимо будет ввести номер раздела который будет загружаться (например 1-й) и сново вернули все на места.

Удалить раздел в Unix/Linux

Если вы хотели бы удалить определенный раздел (т.е. /dev/sda4) от конкретного блочного устройства (например — /dev/sda). Вы должны выполнить:

# fdisk /dev/sda

Затем, введите ‘d’ — чтобы войти в меню удаления разделов. После ввода, просят ввести номер раздела, который я хочу удалить. Предположим, мне нужно удалить 4-й раздел, то я ввожу «4». Все, раздел был удален. Вводим ‘w’ для записи всех изменений! Новые изменения будут работать только после следующей перезагрузки системы. Это можно легко понять из приведенного ниже вывода.

Предупреждение: Будьте осторожны, выполняя этот шаг, потому что с помощью опции ‘d’ полностью удалит раздел из системы и вы можете потерять все данные с разделе!

Использование fdisk в bash скриптах

Если хорошо знаешь команды, то можно написать небольшой баш-скрипт или просто использовать данную конструкцию в шеле оболочки, который эмулировал бы работу пользователя:

Fdisk /dev/hda << EOF n p 1 a 1 t c w EOF

Я не буду объяснять что делает данные буквы, т.к я описывал все опции выше.

Тема «Как использовать команду FDISK на Linux», я старался изо всех сил рассказать почти о всех основных командах fdisk, но все еще FDISK содержит множество других команд вы можете использовать их, введя «х». Для получения более подробной информации, введите команду ‘man Fdisk «в терминала.

При переустановке системы, установке нового дистрибутива или просто реорганизации файловых систем мы часто имеем дело с жесткими дисками. Часто нужно добавлять, удалять или изменять размер разделов, управлять их флагами или конвертировать файловые системы. Для этого в Linux есть достаточно различных инструментов как с графическим интерфейсом, так и консольных. Разобраться в графическом интерфейсе Gparted, я думаю вам не составит труда, но в некоторых случаях бывает нужна разбивка жесткого диска на разделы linux в терминале, без доступа к Х серверу, а это может стать серьезной проблемой.

В этой статье мы разберем как выполнять основные операции, которые мы привыкли делать в Gparted, такие как разметка диска в linux, удаление и создание раздела linux, в терминале с помощью утилиты parted. Сначала рассмотрим саму команду parted.

Синтаксис parted выглядит следующим образом:

$ parted [опции] устройство [команда]

В квадратных скобках указанны необязательные аргументы.

опции указывают как будет работать программа, например, интерактивный режим работы или скриптовый, или нужно просто вывести справку

устройство - жесткий диск с которым будет работать программа.

команда - действие которое нужно выполнить над жестким диском.

Опции и команды parted

У parted всего несколько опций и огромное количество команд.

Вот опции:

  • -h - вывести справку о программе
  • -v - вывести версию программы
  • -s - скриптовый режим, программа работает без запросов к пользователю
  • -i - интерактивный режим, пользователь вводит команды в интерактивном режиме. По умолчанию программа работает в этом режиме.

Команд не очень много, но даже помнить их все вовсе не обязательно. Рассмотрим только те, которые нам пригодятся в сегодняшних примерах:

  • help команда - помощь по выбранной команде
  • mkpart тип раздела файловая система начало конец - создание раздела linux с файловой системой начиная с позиции начало заканчивая конец, два последних параметра задаются в мегабайтах по умолчанию
  • mktable тип - создать таблицу разделов
  • print - отобразить таблицу разделов
  • quit - выйти
  • resize раздел конец - изменить размер раздела
  • rm раздел - удалить раздел
  • select раздел - установить раздел как текущий
  • set раздел флаг состояние - установить флаг для раздела. Состояние может быть on (включен) или off(выключен)

Раньше поддерживались также опции работы с файловой системой mkfs, check, mkpartfs но начиная с версии 2.4 они были удаленны.

Я понимаю что сейчас разметка дисков в linux для вас непонятна и расплывчата, но с примерами станет намного яснее. Больше не будем о теории, перейдем к примерам.

Разметка диска в Linux

Во всем, что вы изучаете нужна практика и работа с жесткими дисками linux не исключение. Но практиковаться на реальном диске, рискуя повредить файловую систему не совсем правильно, а создавать виртуальную машину для таких целей слишком непрактично. Но есть решение. В Linux все есть файлами, и жесткий диск в том числе тоже представлен в виде файла. Из этого выплывает интересная возможность. Мы можем использовать обычный файл вместо жесткого диска для своих экспериментов.

Создадим себе тестовый полигон командой:

dd if=/dev/zero of=/disk.iso count=2000M

Таким образом, мы получим файл размером 2000 мегабайт, заполненный нулями, с которым можно спокойно работать.

Запустим parted, передав ему вместо устройства наш файл чтобы дальше была выполнена разбивка жесткого диска linux:

parted /disk.iso

Программа запустится в интерактивном режиме и вы сможете выполнять нужные команды:

GNU Parted 3.1
Using /disk.iso
Welcome to GNU Parted! Type "help" to view a list of commands.
(parted)

Сначала попытаемся посмотреть список разделов на устройстве:

Disk /home/sergiy/disk.iso: 1992MB
Sector size (logical/physical): 512B/512B
Partition Table: unknown
Disk Flags:

Он пуст потому что даже нет таблицы разделов. Пока ее нет, разметка дисков в Linux не может быть выполнена, нам предстоит ее создать. Для этого воспользуемся командой mktable:

Будем мы создали таблицу разделов типа gpt, но можно выбрать одну из этих: aix, amiga, bsd, dvh, gpt_sync_mbr, gpt, mac, msdos, pc98, sun, loop

Теперь давайте создадим новый раздел с файловой системой ext2 размером 100 мегабайт. Для этого есть команда mkpart, как вы помните ей нужно передать три параметра: тип раздела, файловую систему и координаты. Тип раздела может быть: primary, logical, extended (первичный, логический и расширенный).

В gpt можно создавать нужное количество первичных разделов и не задумываться об их типе. Это все было создано для MBR, в этой таблице есть ограничение на количество первичных разделов - только четыре. Поэтому приходилось создавать три первичных и один расширенный, в который вкладывались уже сколько нужно логических.

Ну так вот, создаем первичный:

mkpart primary ext2 0 400М

Поскольку это первый раздел, начинаем мы с нуля, а заканчиваем нужным нам размером - 400 мегабайт.

Смотрим список разделов еще раз:

Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags:


1 17,4kB 400MB 400MB primary

Создадим еще несколько разделов, например для коня системы и для домашней папки:

mkpart primary ext2 400 1000M

mkpart primary ext2 1000M -0M

Параметр -0 означает вести отсчет от конца раздела, таким образом будет занято все доступное пространство под третий раздел. Смотрим что получилось:

Number Start End Size File system Name Flags
1 17,4kB 400MB 400MB primary
2 400MB 1000MB 600MB primary
3 1000MB 1992MB 992MB primary

Работа с диском в Linux осуществляется по их номерах. Давайте уменьшим последний раздел и создадим после него еще один:

А теперь создаем:

mkpart primary ext4 1600M -0M

Number Start End Size File system Name Flags
1 17,4kB 400MB 400MB primary
2 400MB 1000MB 600MB primary
3 1000MB 1600MB 600MB primary
4 1600MB 1992MB 392MB primary

Удалим только что созданный четвертый раздел:

Зададим метки для существующих разделов с помощью команды name:

Сделаем первый раздел загрузочным командой set:

Можно устанавливать следующие флаги: boot, root, swap, hidden, raid, lvm, lba, hp-service, palo, prep, msftres, bios_grub, atvrecv, diag, legacy_boot, type, irst

Вот в принципе и все. Разбивка диска на разделы Linux завершена. Работу с файловыми системами мы в этой статье опустим, так как для этого используются уже другие команды, которые мы рассмотрим в одной из следующих статей.

Выводы

Выводы теперь вы знаете достаточно информации чтобы не потеряться в случае, если окажетесь без доступа к графическому интерфейсу и вам понадобится разбивка жесткого диска linux.