Глава 25. Настройка установленной системы в System z

Глава 27, Информационные ресурсы IBM System z содержит список публикаций о Linux в System z. В этой главе перечислены типичные задачи.

25.1. Добавление DASD

Следующий далее пример демонстрирует настройку устройства DASD и его форматирование.

Примечание

При работе с z/VM убедитесь, что устройство подключено к системе Linux.
CP ATTACH EB1C TO *
Для подключения минидиска надо выполнить:
CP LINK RHEL6X 4B2E 4B2E MR 
DASD 4B2E LINKED R/W
Подробное описание команд можно найти в справочнике z/VM (SC24-6175).

25.1.1. Динамическая активация DASD

Активация устройств DASD выполняется следующим образом:
  1. С помощью команды cio_ignore удалите DASD из списка игнорируемых устройств и откройте его для Linux:
    # cio_ignore -r номер
    Укажите номер устройства DASD. Например:
    # cio_ignore -r 4b2e
  2. Собственно, команда активации:
    # chccwdev -e номер
    Укажите номер устройства DASD. Например:
    # chccwdev -e 4b2e
    Другой способ активации устройства состоит в установке атрибутов sysfs:
    1. Перейдите в каталог /sys/:
      # cd /sys/bus/ccw/drivers/dasd-eckd/0.0.4b2e/
      # ls -l
      total 0
      -r--r--r--  1 root root 4096 Aug 25 17:04 availability
      -rw-r--r--  1 root root 4096 Aug 25 17:04 cmb_enable
      -r--r--r--  1 root root 4096 Aug 25 17:04 cutype
      -rw-r--r--  1 root root 4096 Aug 25 17:04 detach_state
      -r--r--r--  1 root root 4096 Aug 25 17:04 devtype
      -r--r--r--  1 root root 4096 Aug 25 17:04 discipline
      -rw-r--r--  1 root root 4096 Aug 25 17:04 online
      -rw-r--r--  1 root root 4096 Aug 25 17:04 readonly
      -rw-r--r--  1 root root 4096 Aug 25 17:04 use_diag
    2. Убедитесь, что устройство включено:
      # cat online
      0
    3. Если нет, выполните команду
      # echo 1 > online
      # cat online
      1
  3. Затем выполните проверку адресации устройства:
    # ls -l
    total 0
    -r--r--r--  1 root root 4096 Aug 25 17:04 availability
    lrwxrwxrwx  1 root root    0 Aug 25 17:07 block -> ../../../../block/dasdb
    -rw-r--r--  1 root root 4096 Aug 25 17:04 cmb_enable
    -r--r--r--  1 root root 4096 Aug 25 17:04 cutype
    -rw-r--r--  1 root root 4096 Aug 25 17:04 detach_state
    -r--r--r--  1 root root 4096 Aug 25 17:04 devtype
    -r--r--r--  1 root root 4096 Aug 25 17:04 discipline
    -rw-r--r--  1 root root    0 Aug 25 17:04 online
    -rw-r--r--  1 root root 4096 Aug 25 17:04 readonly
    -rw-r--r--  1 root root 4096 Aug 25 17:04 use_diag
    В этом примере устройство 4B2E адресуется как /dev/dasdb.
После этого устройство DASD будет доступно, но лишь в текущем сеансе. Раздел 25.1.3, «Активация DASD с сохранением постоянства» содержит информацию о том, как включать устройство DASD при каждой перезагрузке. При этом символьные ссылки на устройства следует хранить в /dev/disk/by-path/.
За дальнейшей информацией обратитесь к главе, посвященной DASD, в документе Linux в System z. Драйверы устройств, функции и команды в Red Hat Enterprise Linux 6.

25.1.2. Подготовка нового DASD к низкоуровневому форматированию

Если диск уже подключен, перейдите в каталог /root и отформатируйте устройство:
# cd
# dasdfmt -b 4096 -d cdl -p /dev/disk/by-path/ccw-0.0.4b2e 
Drive Geometry: 10017 Cylinders * 15 Heads =  150255 Tracks 

I am going to format the device /dev/disk/by-path/ccw-0.0.4b2e in the following way: 
   Device number of device : 0x4b2e 
   Labelling device        : yes 
   Disk label              : VOL1 
   Disk identifier         : 0X4B2E
   Extent start (trk no)   : 0 
   Extent end (trk no)     : 150254 
   Compatible Disk Layout  : yes 
   Blocksize               : 4096 

--->> ATTENTION! <<--- 
All data of that device will be lost. 
Type "yes" to continue, no will leave the disk untouched: yes
cyl    97 of  3338 |#----------------------------------------------|   2%
Когда индикатор прогресса достигнет конца, команда fdasd сообщит следующее:
Rereading the partition table... 
Exiting...
Теперь создайте разделы на DASD с помощью fdasd (до трех разделов). В приведенном примере будет создан один раздел, занимающий весь диск:
# fdasd -a /dev/disk/by-path/ccw-0.0.4b2e
auto-creating one partition for the whole disk...
writing volume label...
writing VTOC...
checking !
wrote NATIVE!
rereading partition table...
За дальнейшей информацией обратитесь к главе, посвященной DASD, в документе Linux в System z. Драйверы устройств, функции и команды в Red Hat Enterprise Linux 6.
После активации отформатированного устройства его можно использовать как любой другой диск в Linux: создавать файловые системы, физические тома LVM, пространство подкачки в разделах (например, /dev/disk/by-path/ccw-0.0.4b2e-part1). Устройство dev/dasdb само по себе может использоваться только с командами dasdfmt и fdasd. В противном случае надо создать раздел, занимающий все пространство диска (как в приведенном выше примере), и уже работать с ним.
С помощью символьных ссылок в /dev/disk/by-path/можно добавить новые диски без повреждения существующих записей в /etc/fstab.

25.1.3. Активация DASD с сохранением постоянства

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

25.1.3.1. DASD в составе корневой файловой системы

В этом случае потребуется лишь изменить файл /etc/zipl.conf и выполнить zipl. Повторное создание initramfs не требуется.
Два параметра могут включить DASD на ранней стадии процесса загрузки:
  • rd_DASD=
  • rd_DASD_MOD= используется лишь для обеспечения совместимости со старыми конфигурациями систем. За подробной информацией обратитесь к описанию параметра dasd= в главе, посвященной DASD, в документе Linux в System z. Драйверы устройств, функции и команды в Red Hat Enterprise Linux 6.
rd_DASD может содержать список разделенных запятой значений (идентификатор шины и дополнительные параметры, соответствующие атрибутам sysfs).
Ниже приведен пример файла zipl.conf для системы с физическими томами на основе разделов двух устройств DASD, объединенных в группу томов vg_devel1, на основе которой создан логический том lv_root для корневой файловой системы.
[defaultboot]
default=linux
target=/boot/
[linux]
        image=/boot/vmlinuz-2.6.32-19.el6.s390x
        ramdisk=/boot/initramfs-2.6.32-19.el6.s390x.img
        parameters="root=/dev/mapper/vg_devel1-lv_root rd_DASD=0.0.0200,use_diag=0,readonly=0,erplog=0,failfast=0 rd_DASD=0.0.0207,use_diag=0,readonly=0,erplog=0,failfast=0  rd_LVM_LV=vg_devel1/lv_root rd_NO_LUKS rd_NO_MD rd_NO_DM LANG=en_US.UTF-8 SYSFONT=latarcyrheb-sun16 KEYTABLE=us cio_ignore=all,!0.0.0009"
Предположим, что надо добавить дополнительный физический том в раздел третьего устройства DASD с идентификатором шины 0.0.202b. В этом случае следует просто добавить выражение rd_DASD=0.0.202b к строке параметров ядра в zipl.conf:
[defaultboot]
default=linux
target=/boot/
[linux]
        image=/boot/vmlinuz-2.6.32-19.el6.s390x
        ramdisk=/boot/initramfs-2.6.32-19.el6.s390x.img
        parameters="root=/dev/mapper/vg_devel1-lv_root rd_DASD=0.0.0200,use_diag=0,readonly=0,erplog=0,failfast=0 rd_DASD=0.0.0207,use_diag=0,readonly=0,erplog=0,failfast=0 rd_DASD=0.0.202b  rd_LVM_LV=vg_devel1/lv_root rd_NO_LUKS rd_NO_MD rd_NO_DM LANG=en_US.UTF-8 SYSFONT=latarcyrheb-sun16 KEYTABLE=us cio_ignore=all,!0.0.0009"
Выполните zipl для сохранения изменений в /etc/zipl.conf:
# zipl -V
Using config file '/etc/zipl.conf'
Target device information
  Device..........................: 5e:00
  Partition.......................: 5e:01
  Device name.....................: dasda
  DASD device number..............: 0201
  Type............................: disk partition
  Disk layout.....................: ECKD/compatible disk layout
  Geometry - heads................: 15
  Geometry - sectors..............: 12
  Geometry - cylinders............: 3308
  Geometry - start................: 24
  File system block size..........: 4096
  Physical block size.............: 4096
  Device size in physical blocks..: 595416
Building bootmap in '/boot/'
Building menu 'rh-automatic-menu'
Adding #1: IPL section 'linux' (default)
  kernel image......: /boot/vmlinuz-2.6.32-19.el6.s390x
  kernel parmline...: 'root=/dev/mapper/vg_devel1-lv_root rd_DASD=0.0.0200,use_diag=0,readonly=0,erplog=0,failfast=0 rd_DASD=0.0.0207,use_diag=0,readonly=0,erplog=0,failfast=0 rd_DASD=0.0.202b rd_LVM_LV=vg_devel1/lv_root rd_NO_LUKS rd_NO_MD rd_NO_DM LANG=en_US.UTF-8 SYSFONT=latarcyrheb-sun16 KEYTABLE=us cio_ignore=all,!0.0.0009'
  initial ramdisk...: /boot/initramfs-2.6.32-19.el6.s390x.img
  component address: 
    kernel image....: 0x00010000-0x00a70fff 
    parmline........: 0x00001000-0x00001fff 
    initial ramdisk.: 0x02000000-0x022d2fff 
    internal loader.: 0x0000a000-0x0000afff 
Preparing boot device: dasda (0201).
Preparing boot menu
  Interactive prompt......: enabled 
  Menu timeout............: 15 seconds
  Default configuration...: 'linux' 
Syncing disks...
Done.

25.1.3.2. DASD за пределами корневой файловой системы

Если устройства DASD не принадлежат корневой файловой системе, а служат лишь для хранения данных, сохранение постоянства их конфигурации можно настроить в файле /etc/dasd.conf. Каждая строка в файле определяет отдельный DASD и начинается с идентификатора шины, затем следуют выражения «параметр=значение», разделенные пробелом или табуляцией.
Параметр в выражении соответствует атрибуту sysfs, его значение будет сохранено в атрибут. При добавлении в систему нового DASD будут соответственно изменены записи в файле /etc/dasd.conf. Во время загрузки будут добавлены все видимые DASD.
Пример файла /etc/dasd.conf:
0.0.0207
0.0.0200 use_diag=1 readonly=1
Изменения в /etc/dasd.conf вступят в силу после перезагрузки системы или динамического добавления нового диска DASD и соответствующего изменения системной конфигурации ввода-вывода (то есть при подключении DASD в z/VM). Как вариант, можно включить новую запись в /etc/dasd.conf для активации DASD, который раньше не использовался. Для этого выполните описанные ниже действия.
  1. С помощью команды cio_ignore удалите DASD из списка игнорируемых устройств и откройте его для Linux:
    # cio_ignore -r номер
    Пример:
    # cio_ignore -r 021a
  2. Разрешите активацию устройства, изменив его атрибут uevent:
    echo add > /sys/bus/ccw/devices/ID_шины/uevent
    Пример:
    echo add > /sys/bus/ccw/devices/0.0.021a/uevent