Expected state: the candidate disk should appear in lspv with None in the VG column. If it shows an existing VG name, stop — the disk is in use. If it has a stale PVID but no VG (e.g. recycled from a removed system), continue to Step 03.
Sizing math: with PP size 256 MB on a ~1 TB disk you get approximately 3,996 usable PPs (some PPs reserved for VGDA/VGSA metadata). See the concept primer below for a full breakdown of how PP, LP, and FS sizes relate.
Skip this step on a brand-new disk. mkvg will assign a fresh PVID automatically when the VG is created. Only clear the PVID when you are certain the disk previously belonged to a system that is no longer running and the data is genuinely abandoned — there is no recovery path after pv=clear.
AIX LVM presents three layers of abstraction between the raw disk and the filesystem. Understanding how they relate is essential to sizing LVs correctly and reading the output of lsvg / lslv.
| Term | Description |
|---|---|
| PV | Physical Volume — a disk presented to AIX (hdiskX). Belongs to exactly one VG when in use. |
| PP | Physical Partition — fixed-size chunk a PV is divided into when it joins a VG. Set by mkvg -s in MB. Cannot be changed after VG creation. All PVs in a VG share the same PP size. |
| LP | Logical Partition — the unit an LV is built from. An LP is a logical reference that maps to one or more PPs depending on mirroring. |
| LV | Logical Volume — a collection of LPs that presents itself as a block device under /dev/<lvname>. The filesystem (or raw consumer) sits on top of this. |
The LP-to-PP mapping is where the mirroring story lives. In an unmirrored VG, each LP maps to one PP — they are 1:1. In a 2-copy mirrored VG, each LP maps to two PPs (one per copy). In a 3-copy mirror, each LP maps to three PPs. This is why mirroring "doubles" or "triples" the PP cost of an LV without changing its usable size.
Filesystem size vs LV size. A JFS2 filesystem on a 250 GB LV will not show 250 GB free in df -g. A small portion is consumed by the JFS2 superblock and (with INLINE log) the transaction log. Expect a few hundred MB of overhead per filesystem — usually negligible at this scale, but worth knowing about when you size LVs near the edge of available VG capacity.
Reading lsvg output: TOTAL PPs is the count after VGDA/VGSA reservation; USED PPs is what your LVs have allocated; FREE PPs is what's left for new LVs or expansion. The (megabytes) figures next to each are simply count × PP size — multiply yourself if you have a non-MB PP size in mind.
Why Scalable (-S): Scalable VGs supersede the older Original (default) and Big (-B) formats. They support far higher PV/LV/PP counts out of the box and avoid the need for later chvg -B / chvg -G conversions if the VG grows. For any new VG on AIX 6.1 or later, Scalable is the right default unless there is a specific compatibility reason otherwise.
PP size tradeoff: 256 MB is a balanced choice for a 1 TB disk. Smaller PPs (e.g. 32 MB) give finer LV sizing granularity but exhaust the per-PV PP limit faster on large disks. Larger PPs (e.g. 1024 MB) waste space on small LVs. Once set at mkvg time, PP size cannot be changed — the VG must be recreated.
See the concept primer above for the LP-to-PP relationship. In this unmirrored VG, 1000 LPs at 256 MB = 250 GB and consumes exactly 1000 PPs from the VG's free pool. If this VG were 2-copy mirrored, the same mklv ... 1000 would consume 2000 PPs.
Expected post-create state: TOTAL PPs ≈ 3996, USED PPs = 3000, FREE PPs ≈ 996. The remaining ~249 GB of free space is what makes the expansion in Phase 6 possible without adding more disks.
INLINE log vs separate jfs2log: INLINE places the JFS2 transaction log inside the data LV — simpler to manage, no separate logform step, and the log grows with the filesystem on chfs. A dedicated jfs2log LV (shared across multiple filesystems) can offer marginal performance gains on heavy-write workloads but adds a separately-mirrored single point of failure to plan around. INLINE is the modern default for general-purpose filesystems.
If mount fails: common causes are (1) the mountpoint already contains data — ls -la /testN before mounting; (2) /etc/filesystems stanza was malformed — check with lsfs; (3) the LV is being held by another process. Do not reboot to clear a mount issue — fix the stanza in /etc/filesystems first or the host may fail to come up cleanly.
varyoffvg is fail-safe by default. If any LV is open or any filesystem is mounted, varyoffvg will refuse and report the offending LV. Don't be tempted to use forceful workarounds — fix the open handle (umount the FS, kill the holding process) and retry cleanly.
varyonvg -f exists but is for recovery scenarios — quorum loss, partial VGDA availability after disk failure. Don't use it routinely; if a normal varyonvg fails, investigate why before reaching for -f.
importvg uses PVID, not hdisk number. The source-host hdiskX may show up as hdiskY (or any other number) on the target. Always verify by PVID, not device name. importvg only needs one PV from a multi-PV VG — it will find the others automatically via the VGDA.
Mountpoint collisions on import: if /test1 already exists on the target host with content, the mount will overlay it (hiding the existing files until unmount). If the target has its own filesystem at the same path, you'll need to plan a rename — either alter the source-host stanzas before export, or edit /etc/filesystems on the target after import and before mounting.
exportvg does NOT delete data. It removes the ODM entries only. The VGDA on disk is untouched. This means: (1) you can re-import on the same host with importvg if export was done in error; (2) never use exportvg as a "delete everything" command — use reducevg + chpv -C + disk wipe for that.
mkvg -s is set, it cannot be changed — the VG must be backed up, removed, and recreated. Choose with the disk size and expected LV granularity in mind.chvg -B / chvg -G conversions if the VG outgrows Original/Big format limits.-f deliberately. The force flag bypasses the safety check that warns about residual VG metadata. Always run Step 02 (lquerypv -h) first so the force is informed, not blind.chfs -a size=+N grows; bare size=N sets absolute size. The latter is a footgun on filesystems with data. Always include the + or - sign./etc/filesystems stanzas can break boot. If a non-root filesystem fails to mount at boot, AIX will drop to maintenance mode. Validate with lsfs after any manual edit and never reboot before mount -a succeeds (or the equivalent verification per filesystem).fuser -c) before running. Don't reach for forceful workarounds — fix the holder.reducevg + chpv -C + a manual zero-fill.