Red Hat Training
A Red Hat training course is available for Red Hat Enterprise Linux
22.5. 加入 DASD
底下是如何加入 DASD volume 的例子:
注意
請確定裝置已經接上,如果您的 Linux 系統正在 VM 下執行,請確定裝置已經連上系統。
CP LINK RHEL4X 4B2E 4B2E MR DASD 4B2E LINKED R/W
使用
cd
指令移到代表該 volume 的 /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
接下來,檢查它是不是已經上線:
# cat online 0
如果還未上線,請執行以下指令讓它上線:
# echo 1 > online # cat online 1
檢查它被哪個區塊的 devnode 所存取:
# 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
為名被系統存取。
請使用
cd
指令切換到 /root
目錄下,並將該裝置格式化:
# cd # dasdfmt -b 4096 -d cdl -f /dev/dasdb -l LX4B2E -p -y cyl 97 of 3338 |#----------------------------------------------| 2%
當進度表到底,格式化完成之後,請使用
fdasd
將這裝置格式化:
# fdasd -a /dev/dasdb auto-creating one partition for the whole disk... writing volume label... writing VTOC... checking ! wrote NATIVE! rereading partition table...
接下來,在新的分割區上建立檔案系統:
# mke2fs -j /dev/dasdb1 mke2fs 1.35 (28-Feb-2004) Filesystem label= OS type: Linux Block size=4096 (log=2) Fragment size=4096 (log=2) 300960 inodes, 600816 blocks 30040 blocks (5.00%) reserved for the super user First data block=0 19 block groups 32768 blocks per group, 32768 fragments per group 15840 inodes per group Superblock backups stored on blocks: 32768, 98304, 163840, 229376, 294912 Writing inode tables: done Creating journal (8192 blocks): done Writing superblocks and filesystem accounting information: done This filesystem will be automatically checked every 39 mounts or 180 days, whichever comes first. Use tune2fs -c or -i to override.
掛載新的檔案系統:
# mount /dev/dasdb1 /opt # mount /dev/dasda1 on / type ext3 (rw) none on /proc type proc (rw) none on /sys type sysfs (rw) none on /dev/pts type devpts (rw,gid=5,mode=620) none on /dev/shm type tmpfs (rw) /dev/dasdb1 on /opt type ext3 (rw)
在
/etc/fstab
中加入一條紀錄,讓系統開機的時候,即可掛載檔案系統:
# vi /etc/fstab # cat /etc/fstab LABEL=/ / ext3 defaults 1 1 none /dev/pts devpts gid=5,mode=620 0 0 none /dev/shm tmpfs defaults 0 0 none /proc proc defaults 0 0 none /sys sysfs defaults 0 0 /dev/dasdb1 /opt ext3 defaults 1 2
在
/etc/modprobe.conf
中,把裝置加入 dasd_mod 選項中。確定在清單的最後,加入新裝置,否則這清單會改變裝置的號碼:devnode 對應與檔案系統不再位於裝置該在的位置。
# vi /etc/modprobe.conf # cat /etc/modprobe.conf alias eth0 qeth options dasd_mod dasd=201,4B2E
回到
mkinitrd
指令,把變更加入 modprobe.conf
中,讓裝置在下次開機時,能恢復上線並可掛載到系統上:
Note that the example below has been modified slightly for readability and for printing purposes. Each line that ends with "(elf64-s390)" should be treated as one line with no spaces, such as
/tmp/initrd.AR1182/lib/dasd_mod.ko(elf64-s390)
.
# cd /boot # mv initrd-2.6.7-1.451.2.3.img initrd-2.6.7-1.451.2.3.img.old # mkinitrd -v initrd-2.6.7-1.451.2.3.img 2.6.7-1.451.2.3 Looking for deps of module ide-disk Looking for deps of module dasd_mod Looking for deps of module dasd_eckd_mod dasd_mod Looking for deps of module dasd_mod Looking for deps of module dasd_fba_mod dasd_mod Looking for deps of module dasd_mod Looking for deps of module ext3 jbd Looking for deps of module jbd Using modules: ./kernel/drivers/s390/block/dasd_mod.ko ./kernel/drivers/s390/block/dasd_eckd_mod.ko ./kernel/drivers/s390/block/dasd_fba_mod.ko ./kernel/fs/jbd/jbd.ko ./kernel/fs/ext3/ext3.ko Using loopback device /dev/loop0 /sbin/nash -> /tmp/initrd.AR1182/bin/nash /sbin/insmod.static -> /tmp/initrd.AR1182/bin/insmod copy from /lib/modules/2.6.7-1.451.2.3/./kernel/drivers/s390/block/dasd_mod.ko (elf64-s390) to /tmp/initrd.AR1182/lib/dasd_mod.ko(elf64-s390) copy from /lib/modules/2.6.7-1.451.2.3/./kernel/drivers/s390/block/dasd_eckd_mod.ko (elf64-s390) to /tmp/initrd.AR1182/lib/dasd_eckd_mod.ko (elf64-s390) copy from /lib/modules/2.6.7-1.451.2.3/./kernel/drivers/s390/block/dasd_fba_mod.ko (elf64-s390) to /tmp/initrd.AR1182/lib/dasd_fba_mod.ko (elf64-s390) copy from /lib/modules/2.6.7-1.451.2.3/./kernel/fs/jbd/jbd.ko(elf64-s390) to /tmp/initrd.AR1182/lib/jbd.ko(elf64-s390) copy from /lib/modules/2.6.7-1.451.2.3/./kernel/fs/ext3/ext3.ko(elf64-s390) to /tmp/initrd.AR1182/lib/ext3.ko(elf64-s390) Loading module dasd_mod with options dasd=201,4B2E Loading module dasd_eckd_mod Loading module dasd_fba_mod Loading module jbd Loading module ext3
請執行
zipl
將變更存入 initrd
,使得下次系統開機時,改變也能生效。
# 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 '/boot//bootmap' Building menu 'rh-automatic-menu' Adding #1: IPL section 'linux' (default) kernel image......: /boot/vmlinuz-2.6.7-1.451.2.3 at 0x10000 kernel parmline...: 'root=LABEL=/' at 0x1000 initial ramdisk...: /boot/initrd-2.6.7-1.451.2.3.img at 0x800000 Preparing boot device: dasda (0201). Preparing boot menu Interactive prompt......: disabled Menu timeout............: disabled Default configuration...: 'linux' Syncing disks... Done.