Добавление логическим разделам Linux виртуальных дисков
Вы можете динамически добавлять виртуальные диски в логический раздел Linux®, использующий ресурсы IBM® i. Это позволяет при необходимости увеличивать объем памяти логического раздела AIX.
Об этой задаче
Виртуальные диски позволяют упростить процесс настройки аппаратного обеспечения сервера, так как они позволяют запускать разделы Linux без добавления дополнительных физических устройств. Каждому логическому разделу Linux можно присвоить до 64 виртуальных дисков. Каждый виртуальный диск поддерживает до 1000 ГБ памяти. Каждый виртуальный диск рассматривается операционной системой Linux в качестве отдельного диска. Однако связанная память в интегрированной файловой системе i распределена между дисками, принадлежащими логическому разделу i. Распределение памяти между дисками позволяет выполнять проверку четности средствами i. Такой подход позволяет сэкономить ресурсы процессоров и памяти, используемые для проверки четности в Linux.
IBM i позволяет динамически добавлять виртуальные диски логическим разделами Linux. Для добавления выделенной области памяти интегрированной файловой разделу Linux не требуется перезапуск этого раздела или сервера. Кроме того, администратор Linux может настроить выделенную область памяти и сделать ее доступной без перезапуска сервера.
Для динамического добавления виртуальных дисков в логический раздел Linux выполните следующие действия:
Процедура
- Если вы применяете IBM Navigator for i,
создайте область памяти сетевого сервера с помощью
IBM Navigator for i:
- Откройте Мои соединения > ваш сервер > Сеть > Администрирование Windows.
- Правой кнопкой мыши щелкните Диски и выберите Создать диск.
- В поле Имя диска укажите имя для области памяти сетевого сервера.
- В поле Описание укажите краткое описание области памяти сетевого сервера.
- В поле Емкость укажите размер диска области памяти сетевого
сервера.
Для определения необходимого размера обратитесь к документации по установке Linux.
- Нажмите кнопку ОК.
- Перейдите к шагу 4.
- Для того чтобы создать область
памяти сетевого сервера с помощью командной строки, выполните
следующие действия:
- В командной строке IBM i введите команду CRTNWSSTG и нажмите F4. Откроется меню Создать область памяти NWS (CRTNWSSTG).
- В поле Область памяти сетевого сервера укажите имя области памяти.
- В поле Размер укажите размер области памяти в мегабайтах. Для определения необходимого размера обратитесь к документации по установке Linux.
- В поле Описание укажите краткое описание области памяти.
- Нажмите клавишу Enter.
- В командной строке IBM i введите команду CRTNWSSTG и нажмите F4.
- При использовании IBM Navigator for i
свяжите область памяти сетевого сервера с помощью
IBM Navigator for i:
- Откройте Мои соединения > ваш сервер > Сеть > Администрирование Windows.
- Выберите Диски, щелкните правой кнопкой мыши на области памяти сетевого сервер и выберите Добавить соединение.
- Выберите сервер, к которому необходимо подключить область памяти сетевого сервера.
- Выберите один из доступных типов доступа к данным.
- Нажмите кнопку OK.
- Перейдите к шагу 5.
- Для того чтобы подключить
область памяти сетевого сервера с помощью командной строки, выполните
следующие действия:
- В командной строке
IBM i введите
команду ADDNWSSTGL и нажмите F4.
Откроется меню Добавить соединение для памяти сетевого сервера (ADDNWSSTGL).
- В поле NWSD (Описание сетевого сервера) укажите имя описания сетевого сервера.
- В поле Соединение с динамической памятью укажите значение *YES для того, чтобы сделать область памяти сетевого сервера доступной логическому разделу в динамическом режиме (т.е. доступной без перезагрузки логического раздела Linux).
- В поле Порядковый номер диска укажите необходимый порядковый номер соединения.
- Нажмите клавишу Enter.
- В командной строке
IBM i введите
команду ADDNWSSTGL и нажмите F4.
- Если логический раздел Linux не запущен, активируйте логический раздел Linux. Дождитесь запуска логического раздела.
- Войдите в систему Linux от имени пользователя, обладающего правами доступа администратора (root).
- Определите ИД хоста, шину SCSI и LUN нового виртуального диска. Для просмотра списка существующих устройств введите в командной строке Linux следующую команду:
cat /proc/scsi/scsi
. Ниже показан пример вывода команды:
В этом примереПодключенные устройства: Хост: scsi0 Канал: 00 Id: 00 Lun: 00 Вендор: IBM Модель: VDASD NETSPACE Rev: 0001 Тип: Direct-Access ANSI SCSI revision: 04
NETSPACE
- это имя области сетевого сервера, соответствующей показанному устройству. Найдите имя область памяти сетевого сервера логического раздела Linux. Запишите числовую часть значений, указанных в поляхХост:
(ИД хоста),Канал:
(шина SCSI)и Lun:
(логический номер блока) существующей области памяти сетевого сервера. Новый виртуальный диск будет иметь те же значения ИД хоста, шины SCSI и LUN, что и существующая область памяти сетевого сервера. Например, для области памяти сетевого сервера, показанной в предыдущем примере вывода новый виртуальный диск будет иметь ИД хоста0
, шину SCSI0
и LUN0
. - Определите ИД SCSI нового виртуального диска.
Просмотрите список существующих устройств, введя следующую команду в командной строке Linux:
Ниже показан пример вывода команд:cd /proc/scsi/sg cat device_hdr; cat devices
Обратите внимания на значения, указанные для существующих устройств в столбцахhost chan id lun type opens qdepth busy online 0 0 0 0 0 2 30 0 1 0 1 0 0 0 0 30 0 1
host
(ИД хоста),chan
(шина SCSI),id
(ИД SCSI) иlun
(логический номер блока). Найдите устройства, для которых указаны те же значения ИД хоста, шины SCSI и LUN, что и для нового виртуального диска (эти значения вы определили на предыдущем шаге). Среди этих устройств найдите устройство с наибольшим ИД SCSI. ИД SCSI нового диска будет на единицу больше максимального существующего ИД SCSI. Например, если новый виртуальный диск имеет ИД хоста0
, шину SCSI0
и LUN0
и устройства логического раздела Linux указаны в приведенном выше примере вывода, то ИД SCSI нового виртуального диска будет равен1
. - Для добавления виртуального диска вручную введите в командной строке
Linux следующую команду:
echo "scsi add-single-device host chan id lun" > /proc/scsi/scsi
.Ниже приведены описания аргументов команды:host
- ИД хоста.chan
- шина SCSI.id
- идентификатор устройства SCSI.lun
- LUN.
Например, если новому виртуальному диску должен быть присвоен ИД хоста0
, шина SCSI0
, идентификатор устройства SCSI1
и LUN0
, то необходимо ввести в командной строке Linux командуecho "scsi add-single-device 0 0 1 0" > /proc/scsi/scsi
. - С помощью команды операционной системы Linux
создайте дисковый раздел виртуального диска:
fdisk /dev/sdb
.Для выполнения этой команды необходимы права доступа администратора (пользователя root).Появится приглашение команды:Command (m for help):
. - Введите
p
для просмотра текущей таблицы разделов виртуального диска.По умолчанию в новом виртуальном диске создан один раздел.Например,Диск /dev/sdb: 64 головки, 32 сектора, 200 цилиндров Единицы измерения = цилиндры размером 2048 * 512 байт Загр. устройство Нач. Конеч. Блоки ИД Система /dev/sdb1 1 199 203760 6 FAT16
- Введите
d
в командной строке, чтобы удалить текущий раздел, затем создайте новый раздел.По умолчанию в дисковом разделе применяется формат FAT16. Не следует применять виртуальные диски, отформатированные как FAT16.Будет показан запрос на ввод номера раздела:Partition number (1-4):
. - Введите номер раздела, который необходимо удалить, и нажмите Enter. S этом примере введите
1
.Если раздел удален успешно, командаfdisk
снова выводит приглашение. - Введите
n
, чтобы создать новый раздел.Будет предложено выбрать тип раздела:Command action E extended P primary partition (1-4)
. - Создайте основной раздел виртуального диска. Для этого введите
p
и нажмите Enter.Будет показан запрос на ввод номера раздела:Partition number (1-4):
. - Так как это первый раздел виртуального диска, введите
1
и нажмите Enter.После этого следует выбрать первый цилиндр раздела:First cylinder (1-200, default 1):
. - Нажмите Enter для применения значения по умолчанию
(1) для первого цилиндра диска. Тем самым вы выделите этому разделу всю доступную память диска.Появится запрос
Last cylinder or +size or +sizeM or +sizeK (1-200, default 200):
. - Нажмите Enter для применения значения по умолчанию
(200) для последнего цилиндра диска. Тем самым вы выделите этому разделу всю доступную память виртуального диска.Прим.: По умолчанию для типа раздела задается значение Linux. Для того чтобы указать другой тип раздела (например, Администратор логических томов (LVM) или Linux Extended), введите
t
.Если раздел создан успешно, командаfdisk
выводит приглашение. - Выполните фиксацию изменений, внесенных в структуру диска. Для этого введите
w
и нажмите Enter.Командаfdisk
сохраняет изменения на виртуальном диске. В результате командойfdisk
выдается следующее диагностическое сообщение:
После завершения операции команда fdisk выдает приглашение.Таблица разделов была изменена! Вызов ioctl() для повторного чтения таблицы разделов. Синхронизация дисков.
- Отформатируйте раздел диска с помощью команды Linux mkfs. Команда mkfs поддерживает большое число дополнительных параметров, но как правило рекомендуется применять значения по умолчанию. Для того чтобы отформатировать дисковый раздел, созданный выше, войдите в систему от имени администратора (пользователя root) и введите в командной строке Linux следующую команду:
Так как на втором виртуальном диске создан только один дисковый раздел, задано имя /dev/sdb1 ("sdb" указывает, на то что это второй диск, "1" указывает на первый раздел). В результате выдается следующее диагностическое сообщение:mkfs /dev/sdb1
mke2fs 1.28 (31-Aug-2002) Fileserver label= OS type: Linux Block size=1024 (log=0) Fragment size=1024 (log=0) 51200 inodes, 204784 blocks 10239 blocks (5.00%) reserved for the super user First data block=1 25 block groups 8192 blocks per group, 8192 fragments per group 2048 inodes per group Superblock backups stored on blocks: 8193, 24577, 40961, 57345, 73729 Writing inode tables: done Writing superblocks and fileserver accounting information: done Этот файловый сервер будет автоматически проверяться через каждые 29 операций монтирования или 180 дней, в зависимости от того, что произойдет раньше. Для переопределения этих значений воспользуйтесь tune2fs -c или -i.
- Введите команду для создания каталога, который будет применяться для работы с новым файлом:
mkdir /mnt/data
- Смонтируйте виртуальный диск в новом каталоге. Для этого выполните следующую
команду:
mount /dev/sdb1 /mnt/data
. - С помощью текстового редактора Linux, такого как vi, добавьте запись в файл /etc/fstab. Например,
/dev/sdb1 /mnt/data ext2 defaults 1 1
. Данная запись монтирует виртуальный диск каждый раз при загрузке Linux.