Linux создать файловую систему на флешке
Мы уже делали обзор популярных Файловых систем в Linux и разобрались как они работают. Для того что бы размещать файлы на жестком диске или другом носителе например флешке нам нужно как минимум проделать несколько этапов а именно — разбить диск на разделы (создать таблицу разделов) и создать файловую систему (формотирование) с последующим монтированием в систему.
Разбитие диска на разделы и создание ФС в Linux делается при помощи специальных утилит — cfdisk fdisk sfdisk mke2fs mkfs mkfs.ext2 mkfs.ext3 mkfs.ext4 mkswap partimage parted указывая им в качестве аргумента конкретное блочное устройство (/dev/***).
Блочные устройства HDD вида /dev/sda можно использовать целиком для единственной ФС, но это редко применяется на практике. Лучше разделить все пространство на разделы меньшего размера и использовать их под разные задачи.
Обзор блочных устройств:
Посмотреть какие есть блочные устройства в системе можно так
b — блочное устройство, судя по выводу у нас 3 физических диска.
Вывестии информацию о жестком диске можно так
hdparm -I /dev/sdХ
smartctl -a /dev/sdХ
Рассмотрим на примере диска /dev/sda
/dev/sda1
/dev/sda2
/dev/sda5
Названия соотвуют их разделам. Раньше рограммы разметки диска могли делать максимум четыре раздела. В некоторых случаех этого было недостаточно и для обхода ограничения был придуман расширенный раздел (Extended). Расширенный раздел засчитываются в лимит для 4 первичных разделов и может содержать любое количество логических разделов внутри себя. У меня его нету поэтому не покажу как он выглядит.
Способы разметки диска:
Посмотреть таблицу разделов диска можно при помощи fdisk (p вывести таблицу разделов диска).
Command (m for help): p
Disk /dev/sdc: 60.0 GB, 60022480896 bytes
255 heads, 63 sectors/track, 7297 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0xdf87df87
Device Boot Start End Blocks Id System
/dev/sdc1 * 1 7297 58613121 83 Linux
Disk /dev/sdc: 60.0 GB, 60022480896 bytes
255 heads, 63 sectors/track, 7297 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0xdf87df87
Device Boot Start End Blocks Id System
/dev/sdc1 * 1 7297 58613121 83 Linux
Давайте переразобьем диск /dev/sdc (у меня это пустой ssd диск)
Внимание! Все данные на диске будут удалены =)
Вариант при помощи fdisk
Справка команд fdisk
a переключение флага загрузки
b редактирование метки диска bsd
c переключение флага dos-совместимости
d удаление раздела
l список известных типов файловых систем
m вывод этого меню
n добавление нового раздела
o создание новой пустой таблицы разделов DOS
p вывод таблицы разделов
q выход без сохранения изменений
s создание новой чистой метки диска Sun
t изменение id системы раздела
u изменение единиц измерения экрана/содержимого
v проверка таблицы разделов
w запись таблицы разделов на диск и выход
x дополнительная функциональность (только для экспертов)
Command (m for help): d
Command (m for help): 1
Command (m for help): w
я выбрал удаление раздела d, раздел 1 и записал изменения на диск, теперь он не содержит разделы.
Разабьем диск /dev/sdc
Command (m for help): n
p primary partition (1-4)
Partition number (1-4): 1
First cylinder (1-7297, default 1):1
Last cylinder, +cylinders or +size (1-7297, default 7297): +10G
Command (m for help): w
Мы создали раздел размером 10гб, если вывод аналогичен то все получилось
Disk /dev/sdc: 60.0 GB, 60022480896 bytes
255 heads, 63 sectors/track, 7297 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0xdf87df87
Device Boot Start End Blocks Id System
/dev/sdc1 1 1306 10490413+ 83 Linux
Таким макаром можно делать остальные разделы, по умолчанию тип фс Linux если нужен другой то
Command (m for help): t
Hex code (type L to list codes): ХХХ — номер.
Command (m for help): w
Command (m for help): l
Вариант при помощи cfdisk
Тут все еще проще визуально все понятно, например:
для создания раздела выберите New
для удаления delete
по окончанию работы нажмите Write что бы применить изменения.
Are you sure you want to write the partition table to disk? (yes or no): yes — пишите yes.
Ну и для полного счастья осталось только отформатировать созданные ранее разделы.
Формирование диска
Формотировать и создовать новую фс будем при помощи утилиты mkfs, можно посмотреть что у нас есть
Файловые системы типо XFS команда mkfs не поддерживает для этого надо поставить пакет xfsprogs.
Будем форматировать /dev/sdc1 в ext4.
Writing inode tables: done
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done
This filesystem will be automatically checked every 36 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.
SWAP делается так (тип созданного раздела должен быть специальным 82 Linux swap)
mkswap /dev/sdc5
swapon /dev/sdc5
Во время выполнения различных задач по администрированию системы может понадобится работать с файловой системой Linux, форматировать разделы, изменять их размер конвертировать файловые системы, выполнить дефрагментацию в Linux или восстановление файловых систем.
Многие из этих действий выполняются в графическом интерфейсе, многие и вовсе автоматически. Но может возникнуть ситуация, в которой придется делать все через терминал. Также при администрировании удаленных серверов работать с ними приходится только через ssh, а это означает недоступность графического интерфейса.
В этой статье мы рассмотрим как выполняется работа с файловой системой Linux в терминале. За основу возьмем семейство файловых систем ext2/3/4, так как они самые распространенные среди большого многообразия дистрибутивов Linux.
Основные команды
Для управления файловой системой ext в Linux используется целый набор команд из пакета e2progs. Сюда входят как команды для управления флагами файлов, создания и изменения файловых систем, так и утилиты для отладки файловой системы.
Рассмотрим основные утилиты, которые будем использовать:
- badblocks - если у вас старый жесткий диск и на нем накопилось много битых блоков, вы можете с помощью этой утилиты пометить их все на уровне файловой системы, чтобы больше не использовать.
- e2label - позволяет изменить метку раздела с файловой системой ext.
- fsck - проверка файловой системы linux и исправление найденных ошибок
- mkfs - позволяет создать файловую систему Linux.
- resize2fs - изменить размер раздела с файловой системой
- tune2fs - позволяет изменить файловую систему Linux, настроить ее параметры.
А теперь будет рассмотрена работа с файловой системой linux на примерах.
Работа с файловой системой в Linux
Перед тем как переходить к работе с реальным жестким диском важно попрактиковаться. Если сменить метку или проверить на битые сектора можно и рабочий диск, то создавать новую файловую систему, изменять ее размер, рискуя потерять данные на реальном диске не рекомендуется. Можно отделить небольшой раздел диска для экспериментов с помощью Gparted и выполнять все действия в нем. Допустим, у нас этот раздел будет называться /dev/sda6.
Создание файловой системы
Создать файловую систему linux, семейства ext, на устройстве можно с помощью команды mkfs. Ее синтаксис выглядит следующим образом:
sudo mkfs -t тип устройство
Доступны дополнительные параметры:
- -с - проверить устройство на наличие битых секторов
- -b - размер блока файловой системы
- -j - использовать журналирование для ext3
- -L - задать метку раздела
- -v - показать подробную информацию о процессе работы
- -V - версия программы
Создаем файловую систему на нашем устройстве. Будем создавать ext3:
sudo mkfs -t ext4 -L root /dev/sda6
Creating filesystem with 7847168 4k blocks and 1962240 inodes
Filesystem UUID: 3ba3f7f5-1fb2-47af-b22c-fa4ca227744a
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
4096000
Allocating group tables: done
Writing inode tables: done
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done
Изменение метки файловой системы
Утилита e2label позволяет изменить или посмотреть метку раздела диска. Принимает всего два параметра - устройство и новую метку если нужно.
sudo e2label /dev/sda6
sudo e2label /dev/sda6 root1
Настройка файловой системы linux
Различные параметры файловой системы, такие как размер блока данных, иноды или зарезервированное место под данные пользователя root можно настроить. Для этого существует утилита tune2fs.
Синтаксис команды очень прост:
$ tune2fs опции устройство
Поддерживаются следующие опции:
- -j - создать файл журнала. Позволяет превратить файловую систему ext2 в ext3.
- -J - настроить параметры журнала
- -l - получить содержимое суперблока
- -L - изменить метку раздела
- -m - изменить процент дискового пространства, зарезервированного для суперпользователя
- -M - изменить последнюю папку монтирования
- -U - задать UUID файловой системы
- -C - изменить значение счетчика монтирования
- -T - изменить последнюю дату проверки файловой системы
- -с - изменить периодичность проверок файловой системы с помощью fsck
- -O - изменить опции файловой системы.
Изменить размер зарезервированного места для суперпользователя до пяти процентов:
sudo tune2fs -m 5 /dev/sda6
Setting reserved blocks percentage to 5% (392358 blocks)
Посмотреть информацию из суперблока, эта команда показывает всю доступную информацию параметрах файловой системы:
Изменить счетчик количества монитрований:
tune2fs -C 0 /dev/sda6
Setting current mount count to 0
Думаю тут смысл понятен, нужно только немного со всем этим поэкспериментировать.
С помощью опции -O мы вообще можем превратить нашу ext3 в ext4 следующей командой:
sudo tune2fs -O extents,uninit_bg,dir_index
После этого действия нужно выполнить проверку файловой системы на ошибки в fsck. Подробнее об этом поговорим ниже.
sudo fsck -np /dev/sda6
Таким образом вы можете изменить файловую систему linux, и настроить по своему усмотрению любые ее параметры.
Изменение размера файловой системы Linux
Раньше такая функция поддерживалась в утилите parted, но потом ее убрали и для этого действия приходится использовать утилиту из набора e2fsprogs - resize2fs.
Запустить утилиту очень просто. Ей нужно передать всего два параметра:
$ resize2fs [опции] устройство размер
Доступны также опции:
- -M уменьшить файловую систему до минимального размера
- -f - принудительное изменение, не смотря на потерю данных
- -F - очистить буфер файловой системы
Размер передается, как и во многих других утилитах, целым числом с указанием единиц измерения, например, 100М или 1G.
Для примера уменьшим размер нашего раздела до 400 Мегабайт:
sudo resize2fs /dev/sda6 400M
Resizing the filesystem on /dev/sda7 to 102400 (4k) blocks.
The filesystem on /dev/sda7 is now 102400 blocks long
Проверка файловой системы Linux
При неправильном отключении носителей или неожиданном отключении питания, файловая система Linux может быть повреждена. Обычно проверка корневой файловой системы и домашнего каталога на ошибки выполняется во время загрузки. Но если эта проверка не была выполнена или нужно поверить другой носитель, придется все делать вручную. Для этого есть утилита fsck.
$ fsck [опции] устройство
- -p - автоматическое восстановление
- -n - только проверка, без восстановления
- -y - ответить да на все запросы программы
- -с - проверить на битые сектора (аналог badblocks
- -f - принудительная проверка, даже если раздел помечен как чистый
- -j - внешний журнал файловой системы
Проверка файловой системы Linux выполняется такой командой, проверим диск /dev/sda6, заметьте, что диск должен быть не примонтирован:
sudo fsck -a /dev/sda6
root: clean, 11/32704 files, 37901/102400 blocks
Дефрагментация файловой системы
Хотя и фрагментация нехарактерное явление для файловых систем семейства ext, при очень интенсивном использовании может накапливаться фрагментированость, что будет замедлять работу файловой системы. Для дефрагментации можно использовать стандартную утилиту e4defrag. Просто выполните:
Чтобы проверить нужна ли дефрагментация в Linux выполните эту же команду с опцией -c:
Total/best extents 26247/24953
Average size per extent 1432 KB
Fragmentation score 0
[0-30 no problem: 31-55 a little bit fragmented: 56- needs defrag]
This device (/dev/sda6) does not need defragmentation.
Done.
В поле Fragmentation score отображен процент фрагментации, как видите, у меня 0, нормой считается до 30, 31-55 небольшие проблемы, и больше 56 - нужна дефрагментация.
Выводы
В одной из предыдущих статей мы рассмотрели как выполняется разметка диска с помощью parted. Из этой статьи вы узнали все что нужно о работе с файловой системой. Теперь у вас не возникнет проблем если у вас вдруг не будет доступа к графическим утилитам и нужно будет исправлять ошибки или настраивать файловую систему. Если остались вопросы, спрашивайте в комментариях!
По-умолчанию ядро не умеет работать с нтфс, для этого необходимы драйвера. Чтобы сделать liveusb используй фат либо ext3/4
Я пробовал сделать давеча загрузочную флешку Дебиана,
А рецептом поделитесь ?
В общем случае, разумеется, тип файловой системы имеет некоторую роль, но, думаю не вашем случае ))
Ну а как ещё. UNetbootin'ом, конечно же!
у деба давно все исошики гибридные и могут спокойно быть записаны
утилиткой dd с любого livcd на флешку.
Я тупо копирую iso на флеху с помощью dd.
ТС, вроде, желает поставить систему на флешку, а не livecd записать.
читать когда научимся?
4.5.2 Copying an ISO hybrid image to a USB stick 187
ISO images prepared with xorriso, can be simply copied to a USB stick with the dd program or an equivalent. Plug in a USB stick with a size large enough for your image file and determine which device it is, which we hereafter refer to as $. This is the device file of your key, such as /dev/sdb, not a partition, such as /dev/sdb1! You can find the right device name by looking in dmesg's output after plugging in the stick, or better yet, ls -l /dev/disk/by-id. 188
Once you are certain you have the correct device name, use the dd command to copy the image to the stick. This will definitely overwrite any previous contents on your stick! 189
$ dd if=binary.hybrid.iso of=$
пофиг. Всё равно затрётся.
ТС, вроде, желает поставить систему на флешку, а не livecd записать.
А. ну да, меня запутало то, что он там фс создавал. Я думал, он хочет развернуть систему на флешке.
Я думал, он хочет развернуть систему на флешке.
Она был разработана как прогрессивная версия файловой системы ext3 и преодолевает ряд ограничений в ext3.
Она имеет значительные преимущества перед предшественником, такие как улучшенный дизайн, лучшая производительность, надежность и новые функции.
Хотя она лучше всего подходит для жестких дисков, его также можно использовать на съемных устройствах.
Эта статья покажет вам, как создать новую файловую систему ext4 (раздел) в Linux.
Сначала мы рассмотрим, как создать новый раздел в Linux, отформатировать его в файловой системе ext4 и смонтировать.
Примечание. Для целей данной статьи:
- Предположим, что вы добавили новый жесткий диск на свой компьютер Linux, на котором вы создадите новый раздел ext4, и
- Если вы работаете с системой как пользователь с правами администратора, используйте команду sudo для получения привилегий root для запуска команд, показанных в этой статье.
Создание нового раздела в Linux
Перечислите разделы с помощью команд fdisk -l или parted -l, чтобы определить жесткий диск, который вы хотите разбить на разделы.
Посмотрите на вывод на скриншоте выше, у нас есть два жестких диска, добавленных в тестовую систему, и мы разделим диск /dev/sdb.
Теперь используйте команду parted, чтобы начать создание раздела на выбранном устройстве хранения.
Теперь присвойте новому диску метку с помощью команды mklabel.
Затем создайте раздел с помощью команды mkpart, присвойте ему дополнительные параметры, такие как «основной» или «логический», в зависимости от типа раздела, который вы хотите создать.
Затем выберите ext4 в качестве типа файловой системы, установите начало и конец, чтобы установить размер раздела:
Чтобы вывести таблицу разделов на устройстве /dev/sdb или подробную информацию о новом разделе, выполните команду print
Теперь выйдите из программы, используя команду quit.
Форматирование нового раздела Ext4
Далее необходимо правильно отформатировать новый раздел с типом файловой системы ext4 с помощью команды mkfs.ext4 или mke4fs, как показано ниже.
Затем пометьте раздел с помощью команды e4label следующим образом.
Монтирование нового раздела Ext4 в файловой системе
Затем создайте точку монтирования и смонтируйте только что созданную файловую систему раздела ext4.
Теперь с помощью команды df вы можете перечислить все файловые системы в вашей системе вместе с их размерами в удобочитаемом формате (-h), а также их точки монтирования и типы файловых систем (-T):
Наконец, добавьте следующую запись в ваш /etc/fstab, чтобы включить постоянное монтирование файловой системы даже после перезагрузки.
Читайте также: