Table of Contents
AIX Storage
Summary: ALthough AIX is by now on version 7.3 I find these old pages so fascinating I decided to keep them. On this page I'll show you how to configure and work with storage on AIX. This page is for AIX 5.3 and AIX 6.1.
Date: Between 2010-2013
Refactor: 21 December 2024: Checked formatting. Translated from Dutch to English.
Overzicht AIX Storage
- Volume Group (VG)
- A collection of disk accessible by one name.
- Volume Group Description Area (VGDA)
- On each PV there is a minimum of 1 VGDA in which the data is kept of the entire VG.
- Physical Volume (PV)
- A physical drive, can only be in one VG.
- Physical Partition (PP)
- Each physical drive is devided into a number of PPs. All PPs in a VG have the same size.
- Logical Partition (LP)
- Has the sime size as a PP, and each LP has at least one mapping to a PP, but there could be more (for example, with a mirror)
- Logical Volume (LV)
- A mapping of a number of PPs. A filesystem is defined on a LV.
Other terminilogy
Filesystem: a directory stucture to save files in. The root of a filesystem always has the inode number 2 (for example /home is the root of hd1). Inodes are kept per filesystem. If you remove a filesystem or create a new one, the corresponding LV is also removed or created. If you remove or create a LV, you still have to remove or create the filesystem manually. Filesystems are kept in /etc/filesystems. Filesystems in this file can be mounted by giving the mountpoint. The mountpoint is also the name you refer to when you talk about a filesystem.
Default filesystems: During the installation of AIX, a default VG is created with the following filesystems:
- / (root) = /dev/hd4
- Contains the OS files and the files needed for booting
- /usr = /dev/hd2
- Commands, libraries, and application files.
- /var = /dev/hd9var
- Spool, log, and mail files. Content is subject to frequent changes.
- /home = /dev/hd1
- Home directories of users
- /tmp = /dev/hd3
- /opt = /dev/hd10opt
- Intended for freeware and 3rd party software
- /proc = /proc
- Special pseudo filesystem loaded into memory for threads and lightweight processes.
JFS: Journaled FileSystem, the standard filesystem for AIX. For more information, refer to the excellent page on Wikipedia: http://en.wikipedia.org/wiki/JFS2.
Inode extra info: The following story is a standard story for inodes under Unix and Linux. Small differences may occur per distribution: Understanding UNIX / Linux filesystem Inodes The inode (index node) is a fundamental concept in the Linux filesystem. Each object in the filesystem is represented by an inode. But what are the objects? Let us try to understand it in simple words. Each and every file under Linux (and UNIX) has the following attributes:
- File type (executable, block special etc)
- Permissions (read, write etc)
- Owner
- Group
- File Size
- File access, change and modification time (remember UNIX or Linux never stores file creation time, this is a favorite question asked in UNIX/Linux sys admin job interview)
- File deletion time
- Number of links (soft/hard)
- Extended attribute such as append only or no one can delete file including root user (immutability)
- Access Control List (ACLs)
All the above information is stored in an inode. In short, the inode identifies the file and its attributes (as above). Each inode is identified by a unique inode number within the file system. Inode is also known as index number.
How do I see file inode number? > ls -i /etc/passwd You can also use the stat command to find out the inode number and its attributes: > stat /etc/passwd Find and remove a file using the find command (necessary with special characters), type the command as follows: > find . -inum 782263 -exec rm -i {} \;
What is a directory then: A directory is nothing more than a table with the names of the files it contains and a reference to the inode number of these files. If you do not have execute rights on a directory, you cannot make the jump to the inode table and retrieve the extra info of the files. To delete a file, you only need read and execute rights on the directory, no rights on the file itself.
Commands
Commando | Uitleg |
lsvg | List all volume groups |
lsvg -o | List all active volume groups |
lsvg rootvg | List info over rootvg |
lsvg -p rootvg | List PVs in de volume group rootvg |
lsvg -l rootvg | List LVs in de volume group rootvg |
mkvg | Create a volume group |
extendvg | Extend a volume group |
reducevg | Shrink a volume group |
varyoffvg vg1 | Temporary turn off the volume group vg1 |
varyonvg vg1 | Turn on the volume group vg1 |
lsvg | lsvg -i | Provides information on all volume groups |
lsvg | lsvg -il | Lists all logical volumes of all volume groups |
lsvg | lsvg -ip | Lists all physical volumes of all volume groups |
df | Display filesystems |
df -m | Display filesystems in MB |
lsfs | List all filesystems |
du /home | sort -r -n | Lists all folder's sizes, biggest one first |
ls -l | sort +4b -nr | Lists the biggest file in the current directory |
defragfs | Defrags the filesystem |
fsck | Checks the filesysteem |
mount /tmp | Mounts the filesysteem /tmp (/dev/hd3) |
lspv | List all physical volumes |
lspv hdisk0 | List info on hdisk0 |
lspv -l hdisk0 | List all LVs on hdisk0 and their spreading on the disk |
lspv -p hdisk0 | List all PPs on hdisk0 and which LV is hosted on it |
lslv hd1 | List info on the logical volume hd1 |
lslv -l hd1 | List the policy compliance percentage of the LV |
lslv -m hd1 | List the physical spread of the LV over the available disks |
mklv | Create a logical volume |
extendlv hd1 2 | Extend the logical volume hd1 with 2 PPs |
mklvcopy hd1 2 hdisk1 | Create a total of 2 copies of the logical volume hd1 and put the new copy on hdisk1 |
chlv | Change a logical volume |
rmlv hd1 | Remove the logical volume hd1 |
syncvg -l hd1 | Sync the LV with its mirror (-p for PV and -v for VG) |
Tasks
Remove a volume group and it's disks
bash-3.00# lsvg -p tempvg tempvg: PV_NAME PV STATE TOTAL PPs FREE PPs FREE DISTRIBUTION hdisk2 active 799 166 160..00..00..00..06 bash-3.00# reducevg tempvg hdisk2 0516-016 ldeletepv: Cannot delete physical volume with allocated partitions. Use either migratepv to move the partitions or reducevg with the -d option to delete the partitions. 0516-884 reducevg: Unable to remove physical volume hdisk2. bash-3.00# reducevg -d tempvg hdisk2 0516-914 rmlv: Warning, all data belonging to logical volume fslv04 on physical volume hdisk2 will be destroyed. rmlv: Do you wish to continue? y(es) n(o)? y rmlv: Logical volume fslv04 is removed. ldeletepv: Volume Group deleted since it contains no physical volumes. bash-3.00# rmdev -d -l hdisk2 hdisk2 deleted
- rmdev
- -d ; also remove the disk from the device database
- -l ; the logical device you want to remove
Check the size of a physical volume
Option 1:
bash-3.00# lspv hdisk1 PHYSICAL VOLUME: hdisk1 VOLUME GROUP: sanvg PV IDENTIFIER: 0001320a6935cee8 VG IDENTIFIER 0001320a0000d4000000011b6935e652 PV STATE: active STALE PARTITIONS: 0 ALLOCATABLE: yes PP SIZE: 128 megabyte(s) LOGICAL VOLUMES: 5 TOTAL PPs: 702 (89856 megabytes) VG DESCRIPTORS: 2 FREE PPs: 4 (512 megabytes) HOT SPARE: no USED PPs: 698 (89344 megabytes) MAX REQUEST: 256 kilobytes FREE DISTRIBUTION: 00..00..00..00..04 USED DISTRIBUTION: 141..140..140..140..137
The line TOTAL PPs provides the size of the disk in MBs
Option 2:
bash-3.00# bootinfo -s hdisk1 150528
As you can see, there is a difference between the two disks. The command below looks at the actual physical size of the disk, while the command above looks at the size of the disk as defined in the device database. To expand this, you need to perform the following task.
Increase available disk space of a SAN LUN
Info: In case you have a SAN volume, you can increase the size of the LUN on the SAN. With the following steps, you can then increase the size of the physical disk.
Increase physical disk:
# varyoffvg sanvg # varyonvg sanvg 0516-1434 varyonvg: Following physical volumes appear to be grown in size. Run chvg command to activate the new space. hdisk1 # chvg -g sanvg 0516-1164 chvg: Volume group sanvg changed. With given characteristics sanvg can include upto 16 physical volumes with 2032 physical partitions each.
You've now added the extra space from the SAN to thye hdisk.
Note: This is not supported for the rootvg!!!
Extend logical volume
# lsvg sanvg VOLUME GROUP: sanvg VG IDENTIFIER: 0001320a0000d4000000011b6935e652 VG STATE: active PP SIZE: 128 megabyte(s) VG PERMISSION: read/write TOTAL PPs: 1175 (150400 megabytes) MAX LVs: 256 FREE PPs: 473 (60544 megabytes) LVs: 5 USED PPs: 702 (89856 megabytes) OPEN LVs: 2 QUORUM: 2 TOTAL PVs: 1 VG DESCRIPTORS: 2 STALE PVs: 0 STALE PPs: 0 ACTIVE PVs: 1 AUTO ON: yes MAX PPs per VG: 32512 MAX PPs per PV: 2032 MAX PVs: 16 LTG size (Dynamic): 256 kilobyte(s) AUTO SYNC: no HOT SPARE: no BB POLICY: relocatable # lslv fslv03 LOGICAL VOLUME: fslv03 VOLUME GROUP: sanvg LV IDENTIFIER: 0001320a0000d4000000011b6935e652.4 PERMISSION: read/write VG STATE: active/complete LV STATE: opened/syncd TYPE: jfs2 WRITE VERIFY: off MAX LPs: 512 PP SIZE: 128 megabyte(s) COPIES: 1 SCHED POLICY: parallel LPs: 476 PPs: 476 STALE PPs: 0 BB POLICY: relocatable INTER-POLICY: minimum RELOCATABLE: yes INTRA-POLICY: middle UPPER BOUND: 32 MOUNT POINT: /var/data LABEL: /var/data MIRROR WRITE CONSISTENCY: on/ACTIVE EACH LP COPY ON A SEPARATE PV ?: yes Serialize IO ?: NO
As you can see, you have 473 PP's available in the sanvg. You want to add these to the logical volume fslv03. This one can only have 512 PP's while it already has 476. The command below tells you this:
# chfs -a size=121472M /var/data 0516-787 extendlv: Maximum allocation for logical volume fslv03 is 512.
You need to adjust the logical volume first:
# chlv -x 949 fslv03 # lslv fslv03 LOGICAL VOLUME: fslv03 VOLUME GROUP: sanvg LV IDENTIFIER: 0001320a0000d4000000011b6935e652.4 PERMISSION: read/write VG STATE: active/complete LV STATE: opened/syncd TYPE: jfs2 WRITE VERIFY: off MAX LPs: 949 PP SIZE: 128 megabyte(s) COPIES: 1 SCHED POLICY: parallel LPs: 949 PPs: 949 STALE PPs: 0 BB POLICY: relocatable INTER-POLICY: minimum RELOCATABLE: yes INTRA-POLICY: middle UPPER BOUND: 32 MOUNT POINT: /var/data LABEL: /var/data MIRROR WRITE CONSISTENCY: on/ACTIVE EACH LP COPY ON A SEPARATE PV ?: yes Serialize IO ?: NO
You can now extend the logical volume:
# chfs -a size=121472M /var/data Filesystem size changed to 248774656
Create a new filesystem from a physical disk
Check the disks:
bash-3.00# lspv hdisk0 0001320a5613aa33 rootvg active hdisk1 0001320a6935cee8 sanvg active hdisk2 none None
First create a new volume group:
bash-3.00# mkvg -y testvg hdisk2 0516-1254 mkvg: Changing the PVID in the ODM. testvg
The disk now has a new PVID:
bash-3.00# lspv hdisk0 0001320a5613aa33 rootvg active hdisk1 0001320a6935cee8 sanvg active hdisk2 0001320a37f02546 testvg active
Now we'll add a filesystem using smitty:
- Smitty
- System Storage Management (Physical & Logical Storage)
- File Systems
- Add / Change / Show / Delete File Systems
- Enhanced Journaled File Systems
- Add an Enhanced Journaled File System
- Selecteer de juiste vg om een filesystem in te maken, in dit geval testvg, en vul de juiste gegevens in:
Now you only need to mount it:
mount /iscsifc
Change mount properties of a filesystem
The properties of filesystems are kept in AIX in the file /etc/filesystems:
bash-3.00# cat /etc/filesystems * @(#)filesystems @(#)29 1.22 src/bos/etc/filesystems/filesystems, cmdfs, bos530 9/8/00 13:57:45 * IBM_PROLOG_BEGIN_TAG * This is an automatically generated prolog. * * bos530 src/bos/etc/filesystems/filesystems 1.22 * * Licensed Materials - Property of IBM * * (C) COPYRIGHT International Business Machines Corp. 1985,1993 * All Rights Reserved * * US Government Users Restricted Rights - Use, duplication or * disclosure restricted by GSA ADP Schedule Contract with IBM Corp. * * IBM_PROLOG_END_TAG * * COMPONENT_NAME: CMDFS * * FUNCTIONS: none * * ORIGINS: 27 * * (C) COPYRIGHT International Business Machines Corp. 1985, 1993 * All Rights Reserved * Licensed Materials - Property of IBM * * US Government Users Restricted Rights - Use, duplication or * disclosure restricted by GSA ADP Schedule Contract with IBM Corp. * * * * This version of /etc/filesystems assumes that only the root file system * is created and ready. As new file systems are added, change the check, * mount, free, log, vol and vfs entries for the appropriate stanza. * /: dev = /dev/hd4 vfs = jfs2 log = /dev/hd8 mount = automatic check = false type = bootfs vol = root free = true /home: dev = /dev/hd1 vfs = jfs2 log = /dev/hd8 mount = true check = true vol = /home free = false /usr: dev = /dev/hd2 vfs = jfs2 log = /dev/hd8 mount = automatic check = false type = bootfs vol = /usr free = false /var: dev = /dev/hd9var vfs = jfs2 log = /dev/hd8 mount = automatic check = false type = bootfs vol = /var free = false /tmp: dev = /dev/hd3 vfs = jfs2 log = /dev/hd8 mount = automatic check = false vol = /tmp free = false /proc: dev = /proc vol = "/proc" mount = true check = false free = false vfs = procfs /setup: dev = /dev/fslv00 vfs = jfs2 log = /dev/hd8 mount = true account = false /opt: dev = /dev/fslv01 vfs = jfs2 log = /dev/loglv00 mount = true check = false options = rw account = false /var/log: dev = /dev/fslv02 vfs = jfs2 log = /dev/loglv00 mount = true check = false options = rw account = false /var/data: dev = /dev/fslv03 vfs = jfs2 log = /dev/loglv00 mount = true check = false options = rw account = false
This file is just a text file and can be edited as such. But changes made this way will not be saved if you export and import the volume group where the filesystems are in. If you want to make changes that will be saved you can do this with smitty or the “chfs” command. Below are a few options:
Change properties:
chfs -p rw /opt chfs -p rw /var/data chfs -p rw /var/log
Set automount:
chfs -A yes /opt chfs -A yes /var/data chfs -A yes /var/log
Change mountpoint
bash-3.2# chfs -m /var/data1 /var/data bash-3.2# chfs -m /var/backup1 /var/backup bash-3.2# chfs -m /var/dump1 /var/dump bash-3.2# chfs -m /var/log1 /var/log
Change iSCSI disk to FC disk
This is how to change a connected iSCSI disk to FibreChannel. Of course the SAN will have to be able to do this. First you have to remove the volume group from the server, and after changing the access protocol you can import the volume group again.
- Umount /mountpoint
- Varyoffvg testvg
- exportvg testvg
- rmdev -dl hdisk2
Change the initiator group in the SAN from iSCSI to FC and:
- cfgmgr
- importvg -y testvg hdisk2
- varyonvg testvg
- mount /mountpoint
Mount an ISO
Because there is no direct way of mounting an ISO on AIX we'll have to use a workaround.
Create a filesystem
Make sure you have a volume group with enough free space. In this example that's rootvg:
bash-3.2# lsvg -p rootvg rootvg: PV_NAME PV STATE TOTAL PPs FREE PPs FREE DISTRIBUTION hdisk0 active 638 140 12..00..00..00..128 bash-3.2# lsvg rootvg VOLUME GROUP: rootvg VG IDENTIFIER: 000153ba0000d4000000011ffa8be3fb VG STATE: active PP SIZE: 32 megabyte(s) VG PERMISSION: read/write TOTAL PPs: 638 (20416 megabytes) MAX LVs: 256 FREE PPs: 140 (4480 megabytes) LVs: 10 USED PPs: 498 (15936 megabytes) OPEN LVs: 9 QUORUM: 2 TOTAL PVs: 1 VG DESCRIPTORS: 2 STALE PVs: 0 STALE PPs: 0 ACTIVE PVs: 1 AUTO ON: yes MAX PPs per VG: 32512 MAX PPs per PV: 1016 MAX PVs: 32 LTG size (Dynamic): 256 kilobyte(s) AUTO SYNC: no HOT SPARE: no BB POLICY: relocatable
As you can see the rootvg consists of one physical disk with a total of 140 free PPs, and each PP is 32 MB big.
Then you can create a filesystem:
bash-3.2# mklv -y cdlv -s n -L /dev/cdlv rootvg 672M hdisk0 cdlv
- -y LVname
- -s Strict
- -L Label
You'll need a size big enough to support the ISOs you're going to mount. Mine biggest ISO is about 650 MB big, so 672 should be big enough.
Create a pseudo device
Use the dd command to create a pseudo-device. Ensure that the partition has enough space for the pseudo-device. In the following example command, the pseudo-device is /dev/cdlv.
bash-3.2# dd if=/tmp/iso/u817522.v1.iso of=/dev/cdlv 1141312+0 records in 1141312+0 records out
Note that this command may take a long time (took me 2 hours) and will create two dd processes:
bash-3.2# ps -ef | grep dd root 545020 589994 0 09:38:52 pts/3 0:00 dd if=/tmp/iso/u817522.v1.iso of=/dev/cdlv root 630938 545020 1 09:38:52 pts/3 0:00 dd if=/tmp/iso/u817522.v1.iso of=/dev/cdlv
Mount the pseudo device
Mount the device like a CD-ROM in AIX. Ensure that the mount point exists.
bash-3.2# mount -v cdrfs -o ro /dev/cdlv /mnt/iso bash-3.2# ls /mnt/iso/ .Version RPMS installp usr
Now the iso is mounted.
Undo the mount
Unmount the iso:
bash-3.2# umount /mnt/iso/
Remove the logical volume
bash-3.2# rmlv cdlv Warning, all data contained on logical volume cdlv will be destroyed. rmlv: Do you wish to continue? y(es) n(o)? y rmlv: Logical volume cdlv is removed.
Source
Mount a CD-ROM
To mount a CD-ROM on AIX:
- Switch user to root:
- $ su - root
- If necessary, enter the a command similar to following to unmount the currently mounted CD-ROM, then remove it from the drive:
- # umount /cdrom
- In this example, /cdrom is the mount point directory for the CD-ROM drive.
- Insert the appropriate CD-ROM into the CD-ROM drive, then enter a command similar to the following to mount it:
- # /usr/sbin/mount -rv cdrfs /dev/cd0 /cdrom
- # /usr/sbin/mount -v cdrfs -o ro /dev/cd0 /cdrom
- In this example, /dev/cd0 is the device name of the CD-ROM drive and /cdrom is the mount point directory.
- If the Installer is displaying the Disk Location dialog box, enter the CD-ROM mount point directory path, for example:
- /cdrom
Move filespace to another PV / add disk to VG
Done and tested by a collegue of mine:
- add new hdisk to vgname
- extendvg <vgname> <new hdisk>
- move PP's
- migratepv <old hdisk> <new hdisk>
- check USED/FREE
- lspv -p <old hdisk>
- check used PP on old hdisk
- lslv -p <old hdisk> | grep USED
- remove old disk from vg
- reducevg <vgname> <old hdisk>
Change disk properties of disks in use
This is a scenario in which the disk properties of the disks in volume group testvg needed to change, but without losing the files (of course):
bash-3.00# cd / bash-3.00# umount /test bash-3.00# varyoffvg testvg bash-3.00# exportvg testvg bash-3.00# chdev -l hdisk9 -a queue_depth=1 hdisk9 changed bash-3.00# chdev -l hdisk10 -a queue_depth=1 hdisk10 changed bash-3.00# importvg -y testvg hdisk9 testvg bash-3.00# varyonvg testvg bash-3.00# mount /test bash-3.00# ls /test GroteBestanden KleineBestanden lost+found
Find LUN id and LUN info
Find manufacturer of LUN:
/home/root>lscfg -vl hdisk14 hdisk14 U78A5.001.WIH0975-P1-C7-T2-W210000092B286179-L10000000000000 Other FC SCSI Disk Drive Manufacturer................IQSTOR Machine Type and Model......iQ2880 ROS Level and ID............36313930 Serial Number...............00586191 Device Specific.(Z0)........000004125B005002 Device Specific.(Z1)........110000790128
Find LUN id:
/home/root>lsattr -El hdisk14 clr_q no Device CLEARS its Queue on error True location Location Label True lun_id 0x10000000000000 Logical Unit Number ID False max_transfer 0x40000 Maximum TRANSFER Size True node_name 0x210000092b286179 FC Node Name False pvid 000153caa9a979e40000000000000000 Physical volume identifier False q_err yes Use QERR bit True q_type simple Queuing TYPE True queue_depth 1 Queue DEPTH True reassign_to 120 REASSIGN time out value True rw_timeout 30 READ/WRITE time out value True scsi_id 0x11300 SCSI ID False start_timeout 60 START unit time out value True ww_name 0x210000092b286179 FC World Wide Name False
lun_id: 0x10000000000000
Remove the first two and the last 12 digits: 10 in hex is 16 in dec
Another example:
:/home/root>lsattr -El hdisk6 clr_q no Device CLEARS its Queue on error True location Location Label True lun_id 0xb000000000000 Logical Unit Number ID False max_transfer 0x40000 Maximum TRANSFER Size True node_name 0x290000092b286179 FC Node Name False pvid 000153ca127112140000000000000000 Physical volume identifier False q_err yes Use QERR bit True q_type simple Queuing TYPE True queue_depth 1 Queue DEPTH True reassign_to 120 REASSIGN time out value True rw_timeout 30 READ/WRITE time out value True scsi_id 0x11300 SCSI ID False start_timeout 60 START unit time out value True ww_name 0x290000092b286179 FC World Wide Name False
lun_id: 0xb000000000000
Remove the first two and the last 12 digits: b in hex is 11 in dec
Find Open Files
root@aixbox:/>fuser -uc / /: 0c(root) 1c(root) 90252c(root) 131230(root) 164004c(sjoerd) 233714(root) 286778c(root) 376888c(root) 381030(root) 426112c(sjoerd) 446480c(root) 512200(user5) 671846c(root) 692428c(root) 53604(root) 82320c(root) 86428c(root) 102864(root) 106858c(root) 123262c(root) 143796(root) 147916(root) 151818c(sjoerd) 213476(root) 229634(root) 598380c(user5) 606488c(sjoerd) 635164(root) 778542c(root) 782650c(sjoerd) 795126c(root) root@aixbox:/>fuser -uc /var /var: 233714c(root) 53604c(root) 102864c(root) 143796c(root) 147916c(root) 213476c(root) 229634c(root)
MPIO
MPIO is a way to connect to a SAN with multiple paths. This way you can have a redundant connection to the SAN. AIX has a native MPIO driver, but you can also use the IBM SDD driver. The SDD driver is a bit more advanced and has more options. The native driver is a bit more simple and is easier to use.
Show SAN luns
With a NetApp SAN:
root@sanserver:/home/root>sanlun lun show controller: lun-pathname device filename adapter protocol lun size lun state netapp2: /vol/sanserver_boot/boot hdisk0 fcs0 FCP 29.9g (32144097280) GOOD
Set Path Priority
First query:
root@sanserver:/home/root>dotpaths -q hdisk5 (path 0): Unoptimized path - Default priority is 1 hdisk5 (path 1): Optimized path - Default priority is 1 hdisk5 (path 2): Optimized path - Default priority is 1 hdisk5 (path 3): Unoptimized path - Default priority is 1
Than set:
Not prioritized yet:
root@sanserver:/home/root>dotpaths -v hdisk0 (path 0): Unoptimized path - Current priority of 1 is correct hdisk0 (path 1): Optimized path - Setting priority to 255 hdisk0 (path 2): Optimized path - Setting priority to 255 hdisk0 (path 3): Unoptimized path - Current priority of 1 is correct Path priority set and/or verified for 1 disks, 2 total paths.
Already prioritized:
root@sanserver:/home/root>dotpaths -v hdisk0 (path 0): Optimized path - Current priority of 255 is correct hdisk0 (path 1): Optimized path - Current priority of 255 is correct Path priority set and/or verified for 1 disks, 2 total paths.
See Number of Paths
root@sanserver:/home/root>lspath Enabled hdisk0 fscsi0 Enabled hdisk0 fscsi1
See SAN Data
root@sanserver:/home/root>sanlun lun show -p ONTAP_PATH: netapp2:/vol/sanserver_boot/boot LUN: 0 LUN Size: 29.9g (32144097280) Host Device: hdisk0 LUN State: GOOD Controller_CF_State: Cluster Enabled Controller Partner: netapp1 Multipath Provider: AIX Native Multipathing Algorithm: round_robin --------- ----------- ------ ------ ----------- ---------- MPIO Controller AIX Controller AIX MPIO path path MPIO host target HBA path status type path HBA port priority --------- ----------- ------ ------ ----------- ---------- Enabled primary path0 fcs0 0b 255 Enabled primary path1 fcs1 0d 255
Enable Failed Paths
When paths have gone wrong they stay in a disabled state until the operator enables them again: See failed paths:
root@aixbox:/home/root>lspath -l hdisk0 Enabled hdisk0 fscsi0 Failed hdisk0 fscsi0 Enabled hdisk0 fscsi1 Failed hdisk0 fscsi1
Enable the failed paths:
root@aixbox:/home/root>chpath -l hdisk0 -s enable paths Changed root@aixbox:/home/root>lspath -l hdisk0 Enabled hdisk0 fscsi0 Enabled hdisk0 fscsi0 Enabled hdisk0 fscsi1 Enabled hdisk0 fscsi1
You can also do that per adapter:
root@aixbox:/home/root>chpath -l hdisk0 -p fscsi1 -s enable