Show Table of Contents
22.5. Adding DASD
The following is an example of how to add a DASD volume:
Note
Make sure the device is attached or linked to the Linux system if running under VM.
CP LINK RHEL4X 4B2E 4B2E MR DASD 4B2E LINKED R/W
Procedure 22.1. Bringing a disk online
- Use the
cdcommand to change to the/sys/directory that represents that volume:# 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
- Next, check to see if it is already online:
# cat online 0
- If it is not online, run the following command to bring it online:
# echo 1 > online # cat online 1
- Verify which block devnode it is being accessed as:
# 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
As shown in this example, device 4B2E is being accessed as/dev/dasdb.
As an alternative, the recommended method for bringing a disk online (automatically) is to use the following simple command:
# chccwdev -e 4b2e
Once the disk is online, change back to the
/root directory and format the device:
# cd # dasdfmt -b 4096 -d cdl -f /dev/dasdb -l LX4B2E -p -y cyl 97 of 3338 |#----------------------------------------------| 2%
When the progress bar reaches the end and the format is complete, use
fdasd to partition the device:
# fdasd -a /dev/dasdb auto-creating one partition for the whole disk... writing volume label... writing VTOC... checking ! wrote NATIVE! rereading partition table...
Next, make a file system on the new partition:
# 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 the new file system:
# 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)
Add an entry to
/etc/fstab so that the file system is mounted at IPL time:
# 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
Add the device to the option line for the dasd_mod in
/etc/modprobe.conf Make sure to add the new device at the end of the list, otherwise it changes the device number : devnode mapping and file systems are not on the devices they used to be on.
# vi /etc/modprobe.conf # cat /etc/modprobe.conf alias eth0 qeth options dasd_mod dasd=201,4B2E
Rerun
mkinitrd to pick up the changes to modprobe.conf so that the device can be online and mountable after the next IPL:
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
Run
zipl to save the changes to initrd for the next IPL:
# 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.

Where did the comment section go?
Red Hat's documentation publication system recently went through an upgrade to enable speedier, more mobile-friendly content. We decided to re-evaluate our commenting platform to ensure that it meets your expectations and serves as an optimal feedback mechanism. During this redesign, we invite your input on providing feedback on Red Hat documentation via the discussion platform.