Монтирование диска в linux

Монтирование файловой системы в linux

Для монтирования используется команда mount. Чтобы смонтировать наш новый диск в папку, что мы создали в самом начале статьи достаточно ввести команду:

Команда не выведет никаких уведомлений, поэтому чтобы убедится, что раздел смонтирован вводим команду mount без ключей.

mount
/dev/sda1 on / type ext4 (rw,errors=remount-ro)
proc on /proc type proc (rw,noexec,nosuid,nodev)
sysfs on /sys type sysfs (rw,noexec,nosuid,nodev)
none on /sys/fs/cgroup type tmpfs (rw)
none on /sys/fs/fuse/connections type fusectl (rw)
none on /sys/kernel/debug type debugfs (rw)
none on /sys/kernel/security type securityfs (rw)
udev on /dev type devtmpfs (rw,mode=0755)
devpts on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=0620)
tmpfs on /run type tmpfs (rw,noexec,nosuid,size=10%,mode=0755)
none on /run/lock type tmpfs (rw,noexec,nosuid,nodev,size=5242880)
none on /run/shm type tmpfs (rw,nosuid,nodev)
none on /run/user type tmpfs (rw,noexec,nosuid,nodev,size=104857600,mode=0755)
none on /sys/fs/pstore type pstore (rw)
systemd on /sys/fs/cgroup/systemd type cgroup (rw,noexec,nosuid,nodev,none,name=systemd)
vmware-vmblock on /run/vmblock-fuse type fuse.vmware-vmblock (rw,nosuid,nodev,default_permissions,allow_other)
gvfsd-fuse on /run/user/1000/gvfs type fuse.gvfsd-fuse (rw,nosuid,nodev,user=testuser)
/dev/sdb1 on /mnt/disk1 type ext4 (rw)

В последней строке видим смонтированную нашу файловую систему. Чтобы отмонтировать ее достаточно ввести команду unmount:

Справочник по командной строке

Подключение определенной файловой системы

По умолчанию WSL 2 будет пытаться подключить устройство как ext4. Чтобы указать другую файловую систему, выполните команду:

Например, чтобы подключить диск в файловой системе FAT, выполните команду:

Примечание

Чтобы получить список доступных файловых систем в WSL2, выполните команду:
если диск подключен через WSL2 (файловая система Linux), он больше не доступен для подключения через драйвер ext4 в Windowsной файловой системе.

Подключение определенного раздела

По умолчанию WSL 2 пытается подключить весь диск. Чтобы подключить конкретный раздел, выполните команду:

Это работает только в том случае, если диск является основной загрузочной записью (MBR) или GPT (таблица разделов GUID). .

Указание параметров подключения

Чтобы указать параметры подключения, выполните:

Пример.

Примечание

В настоящее время поддерживаются только параметры файловой системы. Универсальные параметры, такие как , не поддерживаются.

Подключение диска без подключения

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

Это сделает блочное устройство доступным в WSL 2, чтобы его можно было подключить вручную. Используйте для перечисления доступных блочных устройств в WSL 2.

Указание имени подключения

Примечание

Этот параметр доступен только для WSL из Microsoft Store

По умолчанию имя подключения к локальной системе создается на основе имени физического диска или VHD. Это можно переопределить с помощью . Пример.

Отсоединение диска

Чтобы отсоединить диск от WSL 2, выполните команду:

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

Примечание

Если не удается отключить один диск, WSL 2 можно принудительно завершить, выполнив команду, которая отключит диск.

Смонтировать / извлечь с помощью менеджеров архивов

Файловые менеджеры почти во всех основных дистрибутивах Linux поставляются со встроенным плагином для извлечения сжатых архивов и управления ими. Эти менеджеры архивов можно использовать для монтирования или извлечения содержимого из файлов образов ISO.

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

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

Постоянное крепление

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

Сначала создайте папку, в которую будет загружаться жесткий диск. Эта папка будет домом жесткого диска, поэтому НЕ удаляйте ее. Если вы это сделаете, Linux не загрузится и все сломается.

mkdir -p ~/secondary-hard-drive

Папка вторичный жесткий диск находится в / home / username. Теперь скажите Linux, чтобы он монтировал его навсегда.

Примечание: добавление жесткого диска на вкладку файловой системы НЕ РАБОТАЕТ, если вы не укажете правильный тип файловой системы. Узнайте правильный тип файловой системы, сначала определив метку диска с помощью lsblk, а затем используя df -T, чтобы выяснить тип файловой системы. Рядом с каждым диском в df -T будет метка диска.

Редактирование Fstab

Сначала получите корневую оболочку.

sudo -s

Затем добавьте комментарий

Это важно, так как на вкладке файловой системы есть много вещей, и это поможет отличить запись от других

echo "# Secondary Hard Drive" >> /etc/fstab

Наконец, добавьте жесткий диск в список монтирования

Обратите внимание на эту команду и отредактируйте часть, в которой указано имя пользователя, чтобы вместо нее было ваше имя пользователя. Также отредактируйте часть команды с NTFS, если раздел использует другую файловую систему, и измените / dev / sdb4 на раздел, который вы хотите смонтировать

echo "/dev/sdb4 /home/username/secondary-hard-drive ntfs defaults,noatime 0 2" >> /etc/fstab

Повторите это для любого количества жестких дисков.

Активация диска в Linux

Предположим вы подключили новый диск, на котором ещё нет файловой системы. Система его не видит и нам нужно выполнить команды для его подключения.

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

При подключении нового диска нам нужно:

  • разметить его на разделы
  • отформатировать каждый раздел для создания файловой системы
  • смонтировать диск для возможности записи и чтения данных
  • настроить автоматическое монтирование при включении компьютера

Решение проблем

Никакие устройства хранения USB не распознаются системой

Если вы подключили USB-накопитель к компьютеру, но он не отображается в списке или , убедитесь, что в BIOS включена функция XHCI Handoff и EHCI Handoff.

Устройство USB определилось, но его не получается примонтировать

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

Устройство не выключается после размонтирования всех разделов

Невыключение питания устройства может привести к тому, что:

# echo 1 > /sys/block/имя_диска/device/delete
$ udisksctl unmount -b /dev/sdXY
$ udisksctl power-off -b /dev/sdX

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

Для того чтобы отформатировать свежесозданный раздел используется команда mkfs. Пользоваться ей очень просто. Достаточно через точку указать файловую систему, в которую необходимо отформатировать раздел, а затем через пробел устройство которое необходимо отформатировать. В нашем примере это устройство /dev/sdb1 (мы уже создали на /dev/sdb раздел, поэтому добавляем единичку в конец).

sudo mkfs.ext4 /dev/sdb1
 password for testuser:
mke2fs 1.42.9 (4-Feb-2014)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
1310720 inodes, 5242624 blocks
262131 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=0
160 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
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

Форматирование завершено. Теперь можно монтировать раздел в папку, которую мы создали в самом начале.

Монтирование ISO-образа

Легко смонтировать ISO-образ, чтобы вы могли получить доступ к его содержимому как части файловой системы.

Это будет работать с любым образом ISO. В этом примере мы используем Tiny Core Linux ISO, потому что он удобно небольшой и быстрый для загрузки. (Небольшой дистрибутив Linux с графическим интерфейсом, размером 18 МБ! Вероятно, у вас больше файлов .mp3.)

В той же директории, что и образ ISO, введите эту команду. Подставьте имя файла ISO, который вы монтируете.

  sudo mount -t iso9660 -o loop TinyCore-current.iso / mnt 

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

Опция (type) сообщает какой тип файловой системы мы монтируем. Это файл ISO, поэтому мы предоставляем типа .

Флаг (опции) используется для передачи дополнительных параметров для . Наш параметр это .

Мы используем для принудительного чтобы использовать файл устройства loop для подключения к нашему ISO-образу. Файл устройства цикла позволяет монтировать файл (например, образ ISO) и обрабатывать его так, как если бы он был устройством хранения.

Файлы устройств — это специальные файлы, используемые в качестве интерфейса, поэтому подключенные устройства выглядят так, как если бы они были обычным файлом файловой системы. Это часть всего, что в Linux является философией файлового дизайна.

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

Чтобы быть более точным, эта файловая система находится на устройстве хранения, подключенном к файловой системе через файл устройства и файловую систему на этом устройстве хранения, смонтированную в .

Конечно, мы должны указать имя ISO-образа и сообщить , где мы хотим файловую систему. Мы выбрали .

ISO-образ смонтирован. Напоминание о том, что ISO-образы всегда монтируются в режиме только для чтения, появляется в окне терминала.

Об авторах

Daniel Robbins

Дэниэль Роббинс — основатель сообщества Gentoo и создатель операционной системы Gentoo Linux. Дэниэль проживает в Нью-Мехико со свой женой Мэри и двумя энергичными дочерьми. Он также основатель и глава Funtoo, написал множество технических статей для IBM developerWorks, Intel Developer Services и C/C++ Users Journal.

Chris Houser

Крис Хаусер был сторонником UNIX c 1994 года, когда присоединился к команде администраторов университета Тэйлора (Индиана, США), где получил степень бакалавра в компьютерных науках и математике. После он работал во множестве областей, включая веб-приложения, редактирование видео, драйвера для UNIX и криптографическую защиту. В настоящий момент работает в Sentry Data Systems. Крис также сделал вклад во множество свободных проектов, таких как Gentoo Linux и Clojure, стал соавтором книги The Joy of Clojure.

Aron Griffis

Эйрон Гриффис живет на территории Бостона, где провел последнее десятилетие работая в Hewlett-Packard над такими проектами, как сетевые UNIX-драйвера для Tru64, сертификация безопасности Linux, Xen и KVM виртуализация, и самое последнее — платформа HP ePrint. В свободное от программирования время Эйрон предпочитает размыщлять над проблемами программирования катаясь на своем велосипеде, жонглируя битами, или болея за бостонскую профессиональную бейсбольную команду «Красные Носки».

Определение файловой системы

Конкретное место расположения файловой системы может быть определено различными способами. В файле /etc/fstab можно указать имя файла устройства, его метку или UUID (в том числе GPT-метку и GPT-UUID для дисков GPT). Определение по UUID является наиболее предпочтительным способом.
Далее приведены примеры определений файловых систем с использованием каждого из способов. Вывод lsblk -f and blkid для этих примеров вы можете найти на странице Persistent block device naming.

По именам устройств

Запустите lsblk -f , чтобы отобразить список разделов. Укажите имена устройств с префиксом /dev/ :

# <file system> <dir> <type> <options>                                                                                            <dump> <pass>
/dev/sda1       /boot vfat   rw,relatime,fmask=0022,dmask=0022,codepage=437,iocharset=utf-8,shortname=mixed,errors=remount-ro 0      2
/dev/sda2       /     ext4   rw,relatime,discard,data=ordered                                                                     0      1
/dev/sda3       /home ext4   rw,relatime,discard,data=ordered                                                                     0      2
/dev/sda4       none  swap   defaults                                                                                             0      0

По меткам

Запустите lsblk -f , чтобы отобразить список разделов. Укажите метки из столбца LABEL с префиксом LABEL= :

# <file system> <dir> <type> <options>                                                                                            <dump> <pass>
LABEL=EFI       /boot vfat   rw,relatime,fmask=0022,dmask=0022,codepage=437,iocharset=utf-8,shortname=mixed,errors=remount-ro 0      2
LABEL=SYSTEM    /     ext4   rw,relatime,discard,data=ordered                                                                     0      1
LABEL=DATA      /home ext4   rw,relatime,discard,data=ordered                                                                     0      2
LABEL=SWAP      none  swap   defaults                                                                                             0      0

По UUID

Запустите lsblk -f, чтобы отобразить список разделов. Укажите идентификаторы из столбца UUID с префиксом UUID= :

# <file system>                           <dir> <type> <options>                                                                                            <dump> <pass>
UUID=CBB6-24F2                            /boot vfat   rw,relatime,fmask=0022,dmask=0022,codepage=437,iocharset=utf-8,shortname=mixed,errors=remount-ro 0      2
UUID=0a3407de-014b-458b-b5c1-848e92a327a3 /     ext4   rw,relatime,discard,data=ordered                                                                     0      1
UUID=b411dc99-f0a0-4c87-9e05-184977be8539 /home ext4   rw,relatime,discard,data=ordered                                                                     0      2
UUID=f9fe0b69-a280-415d-a03a-a32752370dee none  swap   defaults                                                                                             0      0

Совет: Если вы хотите отобразить только UUID конкретного раздела, используйте команду lsblk -no UUID /dev/sda2.

По меткам GPT

Запустите blkid чтобы отобразить список разделов. Укажите значения PARTLABEL без кавычек:

# <file system>                      <dir> <type> <options>                                                                                            <dump> <pass>
PARTLABEL=EFI\040SYSTEM\040PARTITION /boot vfat   rw,relatime,fmask=0022,dmask=0022,codepage=437,iocharset=utf-8,shortname=mixed,errors=remount-ro 0      2
PARTLABEL=GNU/LINUX                  /     ext4   rw,relatime,discard,data=ordered                                                                     0      1
PARTLABEL=HOME                       /home ext4   rw,relatime,discard,data=ordered                                                                     0      2
PARTLABEL=SWAP                       none  swap   defaults                                                                                             0      0

По UUID GPT

Запустите blkid чтобы отобразить список разделов. Укажите значения PARTUUID без кавычек:

# <file system>                               <dir> <type> <options>                                                                                            <dump> <pass>
PARTUUID=d0d0d110-0a71-4ed6-936a-304969ea36af /boot vfat   rw,relatime,fmask=0022,dmask=0022,codepage=437,iocharset=utf-8,shortname=mixed,errors=remount-ro 0      2
PARTUUID=98a81274-10f7-40db-872a-03df048df366 /     ext4   rw,relatime,discard,data=ordered                                                                     0      1
PARTUUID=7280201c-fc5d-40f2-a9b2-466611d3d49e /home ext4   rw,relatime,discard,data=ordered                                                                     0      2
PARTUUID=039b6c1c-7553-4455-9537-1befbc9fbc5b none  swap   defaults

Просмотр разделов Linux, создание раздела на диске

Для разметки используется команда fdisk. Первым делом необходимо определить имя нового диска. Все диски в linux именуются по следующей схеме sda1 — где sd — значит scsi disk (в современных дистрибутивах все диски чаще всего именуются начиная с sd, по крайней мере в ubuntu и ее производных), a — это первый подключенный диск, например sata диск подключенный в первый порт sata контроллера, 1 -номер раздела на этом диске.

Всего на диске может быть 4 основных раздела или 3 основных и один расширенный, в котором можно создавать сколько угодно логических дисков. Логические диски в расширенном разделе нумеруются с цифры 5. Таким образом sda1 — указывает на первый первичный раздел первого диска, а например sdb5 — указывает на первый логический диск расширенного раздела второго физического диска.

Зная эту теорию перейдем к разметке диска. Первое, что нам необходимо  — это получить список доступных и размеченных дисков. Сделать это можно командой sudo fdisk -l:

sudo fdisk -l
 password for testuser: 

Disk /dev/sda: 21.5 GB, 21474836480 bytes
255 heads, 63 sectors/track, 2610 cylinders, total 41943040 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x000ced88

 Device Boot Start End Blocks Id System
/dev/sda1 * 2048 39845887 19921920 83 Linux
/dev/sda2 39847934 41940991 1046529 5 Extended
/dev/sda5 39847936 41940991 1046528 82 Linux swap / Solaris

Disk /dev/sdb: 21.5 GB, 21474836480 bytes
255 heads, 63 sectors/track, 2610 cylinders, total 41943040 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000

Disk /dev/sdb doesn't contain a valid partition table

По размеру и отсутствию разделов (Disk /dev/sdb doesn’t contain a valid partition table) мы определяем номер дискового устройства, на котором необходимо создать и отформатировать раздел. Делаем это командой sudo fdisk /dev/sdb:

sudo fdisk /dev/sdb
Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel
Building a new DOS disklabel with disk identifier 0x541a2b7b.
Changes will remain in memory only, until you decide to write them.
After that, of course, the previous content won't be recoverable.

Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite)
Command (m for help): n

Partition type:
 p primary (0 primary, 0 extended, 4 free)
 e extended
Select (default p): 
Using default response p
Partition number (1-4, default 1): 
Using default value 1
First sector (2048-41943039, default 2048): 
Using default value 2048
Last sector, +sectors or +size{K,M,G} (2048-41943039, default 41943039): 
Using default value 41943039

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

Calling ioctl() to re-read partition table.
Syncing disks.

В данном примере сразу после приглашения Command (m for help): мы отправляем команду n — для создания нового раздела. Далее, поскольку нам необходим единственный раздел на весь диск, соглашаемся со всеми вопросами просто нажимая Enter. А именно Partition Type — primary, Partition Number — 1, First Sector 2048, Last Sector 41943039. После второго приглашения Command (m for help):  вводим команду w для записи таблицы разделов на диск. Если вам необходим иной размер раздела то на шаге Last Sector вы можете указать размер в килобайтах, мегабайтах или гигабайтах. Например так 100G — 100 Гб.

Работаем с разделами дисков.

Теперь когда мы можем посмотреть и узнать имена наших дисков можно поработать и с разделами.

Первым представлю вам команду которая «визуально» дает представление о том что делаешь, подойдет тем кто больше предпочитает графический интерфейс.

Команда cfdisk

Для ее использования нужно ввести команду и затем указать с каким диском будем работать

Вот пример, результат ввода команды sudo cfdisk /dev/vda1

после ввода команды вы выбираете действие из предложенных внизу, последней командой будет Write — она запишет все произведенные изменения.

Команда fdisk

Эта команда содержит множество опций. Выше мы рассматривали один из ее параметров, а именно вывод списка дисков

Команда fdisk используется в командном режиме, чтоб его запустить нужно набрать команду и указать в конце имя диска с которым хотите работать

После ввода команды система будет ждать команду на следующее действие

Список команд можно посмотреть введя букву «m»

Все команды представлены в виде одной буквы, вот их список:

a — сделать диск загрузочнымb — редактировать bsd-метку дискаc — установить флаг совместимости с DOSd — удалить разделl — перечислить известные типы разделовm — вывести это менюn — создать новый разделo — создать новую пустую таблицу разделов DOSp — вывести таблицу разделов (аналогична fdisk -l)q — выйти без сохраненияs — создать новую метку диска Sunt — изменить системный идентификатор разделаu — изменить единицы отображения/вводаv — проверить таблицу разделовw — записать таблицу на диск и выйтиx — дополнительные функции (только  для экспертов)

Если например вы хотите создать диск то после первой команды вводим «n«

— далее указываем какой это раздел, будут подсказки.

— далее попросят указать номер первого и последнего цилиндра, лучше первый оставить по умолчанию, а второй указать цифрами, какой размер вам нужен, например +50G , прибавится 50 гигабайт.

Размер указывается опциями K — килобайты, М — мегабайты, G — гигабайты

Рейтинг
( Пока оценок нет )
Editor
Editor/ автор статьи

Давно интересуюсь темой. Мне нравится писать о том, в чём разбираюсь.

Понравилась статья? Поделиться с друзьями:
IP-файл
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: