Добавление логическим разделам Linux виртуальных дисков

Вы можете динамически добавлять виртуальные диски в логический раздел Linux®, использующий ресурсы IBM® i. Это позволяет при необходимости увеличивать объем памяти логического раздела AIX.

Об этой задаче

Виртуальные диски позволяют упростить процесс настройки аппаратного обеспечения сервера, так как они позволяют запускать разделы Linux без добавления дополнительных физических устройств. Каждому логическому разделу Linux можно присвоить до 64 виртуальных дисков. Каждый виртуальный диск поддерживает до 1000 ГБ памяти. Каждый виртуальный диск рассматривается операционной системой Linux в качестве отдельного диска. Однако связанная память в интегрированной файловой системе i распределена между дисками, принадлежащими логическому разделу i. Распределение памяти между дисками позволяет выполнять проверку четности средствами i. Такой подход позволяет сэкономить ресурсы процессоров и памяти, используемые для проверки четности в Linux.

IBM i позволяет динамически добавлять виртуальные диски логическим разделами Linux. Для добавления выделенной области памяти интегрированной файловой разделу Linux не требуется перезапуск этого раздела или сервера. Кроме того, администратор Linux может настроить выделенную область памяти и сделать ее доступной без перезапуска сервера.

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

Процедура

  1. Если вы применяете IBM Navigator for i, создайте область памяти сетевого сервера с помощью IBM Navigator for i:
    1. Откройте Мои соединения > ваш сервер > Сеть > Администрирование Windows.
    2. Правой кнопкой мыши щелкните Диски и выберите Создать диск.
    3. В поле Имя диска укажите имя для области памяти сетевого сервера.
    4. В поле Описание укажите краткое описание области памяти сетевого сервера.
    5. В поле Емкость укажите размер диска области памяти сетевого сервера.
      Для определения необходимого размера обратитесь к документации по установке Linux.
    6. Нажмите кнопку ОК.
    7. Перейдите к шагу 4.
  2. Для того чтобы создать область памяти сетевого сервера с помощью командной строки, выполните следующие действия:
    1. В командной строке IBM i введите команду CRTNWSSTG и нажмите F4.
      Откроется меню Создать область памяти NWS (CRTNWSSTG).
    2. В поле Область памяти сетевого сервера укажите имя области памяти.
    3. В поле Размер укажите размер области памяти в мегабайтах.
      Для определения необходимого размера обратитесь к документации по установке Linux.
    4. В поле Описание укажите краткое описание области памяти.
    5. Нажмите клавишу Enter.
  3. При использовании IBM Navigator for i свяжите область памяти сетевого сервера с помощью IBM Navigator for i:
    1. Откройте Мои соединения > ваш сервер > Сеть > Администрирование Windows.
    2. Выберите Диски, щелкните правой кнопкой мыши на области памяти сетевого сервер и выберите Добавить соединение.
    3. Выберите сервер, к которому необходимо подключить область памяти сетевого сервера.
    4. Выберите один из доступных типов доступа к данным.
    5. Нажмите кнопку OK.
    6. Перейдите к шагу 5.
  4. Для того чтобы подключить область памяти сетевого сервера с помощью командной строки, выполните следующие действия:
    1. В командной строке IBM i введите команду ADDNWSSTGL и нажмите F4.
      Откроется меню Добавить соединение для памяти сетевого сервера (ADDNWSSTGL).
    2. В поле NWSD (Описание сетевого сервера) укажите имя описания сетевого сервера.
    3. В поле Соединение с динамической памятью укажите значение *YES для того, чтобы сделать область памяти сетевого сервера доступной логическому разделу в динамическом режиме (т.е. доступной без перезагрузки логического раздела Linux).
    4. В поле Порядковый номер диска укажите необходимый порядковый номер соединения.
    5. Нажмите клавишу Enter.
  5. Если логический раздел Linux не запущен, активируйте логический раздел Linux. Дождитесь запуска логического раздела.
  6. Войдите в систему Linux от имени пользователя, обладающего правами доступа администратора (root).
  7. Определите ИД хоста, шину 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, шину SCSI 0 и LUN 0.
  8. Определите ИД 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, шину SCSI 0 и LUN 0 и устройства логического раздела Linux указаны в приведенном выше примере вывода, то ИД SCSI нового виртуального диска будет равен 1.
  9. Для добавления виртуального диска вручную введите в командной строке Linux следующую команду: echo "scsi add-single-device host chan id lun" > /proc/scsi/scsi.
    Ниже приведены описания аргументов команды:
    • host - ИД хоста.
    • chan - шина SCSI.
    • id - идентификатор устройства SCSI.
    • lun - LUN.
    Например, если новому виртуальному диску должен быть присвоен ИД хоста 0, шина SCSI 0, идентификатор устройства SCSI 1 и LUN 0, то необходимо ввести в командной строке Linux команду echo "scsi add-single-device 0 0 1 0" > /proc/scsi/scsi .
  10. С помощью команды операционной системы Linux создайте дисковый раздел виртуального диска: fdisk /dev/sdb.
    Для выполнения этой команды необходимы права доступа администратора (пользователя root).
    Появится приглашение команды: Command (m for help):.
  11. Введите p для просмотра текущей таблицы разделов виртуального диска.
    По умолчанию в новом виртуальном диске создан один раздел.
    Например,
     Диск /dev/sdb: 64
    головки, 32 сектора, 200 цилиндров
     Единицы измерения = цилиндры размером 2048 * 512 байт
    
     Загр. устройство  Нач.    Конеч.  Блоки    ИД  Система
     /dev/sdb1          1       199    203760    6   FAT16  
  12. Введите d в командной строке, чтобы удалить текущий раздел, затем создайте новый раздел.
    По умолчанию в дисковом разделе применяется формат FAT16. Не следует применять виртуальные диски, отформатированные как FAT16.
    Будет показан запрос на ввод номера раздела: Partition number (1-4):.
  13. Введите номер раздела, который необходимо удалить, и нажмите Enter.
    S этом примере введите 1.
    Если раздел удален успешно, команда fdisk снова выводит приглашение.
  14. Введите n, чтобы создать новый раздел.
    Будет предложено выбрать тип раздела: Command action E extended P primary partition (1-4).
  15. Создайте основной раздел виртуального диска. Для этого введите p и нажмите Enter.
    Будет показан запрос на ввод номера раздела: Partition number (1-4):.
  16. Так как это первый раздел виртуального диска, введите 1 и нажмите Enter.
    После этого следует выбрать первый цилиндр раздела: First cylinder (1-200, default 1):.
  17. Нажмите Enter для применения значения по умолчанию (1) для первого цилиндра диска.
    Тем самым вы выделите этому разделу всю доступную память диска.
    Появится запрос Last cylinder or +size or +sizeM or +sizeK (1-200, default 200):.
  18. Нажмите Enter для применения значения по умолчанию (200) для последнего цилиндра диска.
    Тем самым вы выделите этому разделу всю доступную память виртуального диска.
    Прим.: По умолчанию для типа раздела задается значение Linux. Для того чтобы указать другой тип раздела (например, Администратор логических томов (LVM) или Linux Extended), введите t.
    Если раздел создан успешно, команда fdisk выводит приглашение.
  19. Выполните фиксацию изменений, внесенных в структуру диска. Для этого введите w и нажмите Enter.
    Команда fdisk сохраняет изменения на виртуальном диске. В результате командой fdisk выдается следующее диагностическое сообщение:
    Таблица разделов была изменена!
    
    Вызов ioctl() для повторного чтения таблицы разделов.
    Синхронизация дисков.  
    После завершения операции команда fdisk выдает приглашение.
  20. Отформатируйте раздел диска с помощью команды Linux mkfs.
    Команда mkfs поддерживает большое число дополнительных параметров, но как правило рекомендуется применять значения по умолчанию. Для того чтобы отформатировать дисковый раздел, созданный выше, войдите в систему от имени администратора (пользователя root) и введите в командной строке Linux следующую команду:
     mkfs /dev/sdb1  
    Так как на втором виртуальном диске создан только один дисковый раздел, задано имя /dev/sdb1 ("sdb" указывает, на то что это второй диск, "1" указывает на первый раздел). В результате выдается следующее диагностическое сообщение:
    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.  
  21. Введите команду для создания каталога, который будет применяться для работы с новым файлом: mkdir /mnt/data
  22. Смонтируйте виртуальный диск в новом каталоге. Для этого выполните следующую команду: mount /dev/sdb1 /mnt/data.
  23. С помощью текстового редактора Linux, такого как vi, добавьте запись в файл /etc/fstab.
    Например, /dev/sdb1 /mnt/data ext2 defaults 1 1. Данная запись монтирует виртуальный диск каждый раз при загрузке Linux.