Archive for December, 2007

How to Disable JFS2 Logging in AIX 6.1

Wednesday, December 26th, 2007


AIX 6.1 allows you to mount a JFS2 filesystem without logging. This can increase performance by not requiring the FS to write metadata or log details. You could probably benefit by using this feature on temporary non-critical filesystems such as frequently used tmp space or a backup/restore tmp type of filesystem. With using this feature, you should assume that if the machine were to crash or you have other system related issues, you could potentially lose the entire non-logging filesystem.

If you still feel you can use this feature, you can mount by using the following:

To mount on the fly:

mount -o log=NULL /testfs

You will need to modify /etc/filesystems in order to make this change persistent across boots.

How to create a basic WPAR(Workload Partition) in AIX 6.1

Wednesday, December 26th, 2007


To demonstrate the simplicity of creating a Workload Partition within AIX 6.1 via CLI, here’s a quick example. The WPAR commands in AIX are pretty easy to figure out. You can even guess what they are, using the standard AIX file naming convention; mkwpar, lswpar, startwpar, stopwpar, chwpar, etc. If you prefer the GUI type of configuration, there is also a web based Workload Partition Manager tool that IBM introduced. Please see the AIX Version 6.1 IBM Workload Partitions Manager for AIX Redbook for more information.

Start out by creating the WPAR using the mkwpar command.

bash-3.00# mkwpar
mkwpar: 0960-046 Workload partition name is required.
Usage: mkwpar [-a] [-A] [-b devexportsFile] [-B wparBackupDevice] [-c]
[-d directory] [-D attr=value ...] … [-F] [-g vg ]
[-h hostName] [-l] [-L attr=value ...] [-M attr=value ...] …
[-N attr=value ...] … [-P] [-r] [-R attr=value ...]
[-S attr[+|-]=value …] [-s] [-u /path/to/script] [-v]
{ -n wparName [-p [name]] [-e existing_wpar | -f inFile] [-o outFile [-w]]
| -p name [-n wparName] [-e existing_wpar | -f inFile] [-o outFile [-w]]
| -f inFile [-n wparName] [-p [name]] [-o outFile [-w]]
| -w -o outFile [-n wparName] [-p [name]] [-f inFile | -e existing_wpar] }

Flags:
-a = Automatically resolve erroneous/conflicting settings.
-A = Start automatically on system boot.
-b = Path to permitted device exports file.
-B = Device or Pathname of savewpar backup image.
-c = Flag as checkpointable.
-d = Base directory.
-D = Override default device exports (devname, devtype, export).
-e = Get specification data from existing workload partition.
-f = Path to input specification file.
-F = Force - ignore certain errors.
-g = Default volume group for local file systems.
-h = Hostname.
-l = Create private, writeable versions of /usr and /opt.
-L = Logical volume management policy (image_data, shrink, ignore_maps).
-M = Mount settings (dev, directory, vfs, size, crfsopts, mode,
vg, logname, host, mountopts).
-n = Workload partition name.
-N = Network settings (interface, address, netmask, broadcast).
-o = Path to output specification file.
-p = Preserve file system data from the named mount group.
-P = Set workload partition root password interactively.
-r = Copy global network name resolution configuration into the workload
partition.
-R = Resource control settings (active, rset, CPU, memory, procVirtMem,
shares_CPU, shares_memory, totalProcesses, totalThreads).
-S = Configures the security settings of a workload partition (secfile, privs[+|-]).
-s = Start after creation.
-u = User script to execute on start & stop.
-v = Verbose mode.
-w = Only write specification file (do not create).

I am just creating a basic WPAR with a writable /usr and /opt. If -l is not specified, this WPAR will contain a loop back mounted fs for /usr and /opt using the global WPARs filesystem. You will obviously not be able to install any WPAR specific software that requires writing to /usr or /opt, unless your in the global WPAR. -a tells the WPAR to boot upon system boot, or global WPAR boot. -n will define the WPAR name, which shows up in the global WPAR. -h will define the hostname of the WPAR, and will grab its ethernet address from /etc/hosts.

bash-3.00# mkwpar -a -h wpar1 -l -n wpar1 -v
mkwpar: Creating file systems…
/
/home
/opt
/proc
/tmp
/usr
/var
Mounting all workload partition file systems.
mkwpar: Copying base files…

syncroot: Installing RPM file: /var/ssl/openssl.cnf
syncroot: RPM root packages are currently synchronized.
syncroot: Root part is currently synchronized.
syncroot: Returns Status = SUCCESS
Workload partition wpar1 created successfully.
mkwpar: 0960-390 To start the workload partition, execute the following as root: startwpar [-v] wpar1

mkwpar will create new logical volumes for the WPAR to live on. It will then make a copy of the running AIX instance and prepare the WPAR for boot.

’startwpar’ is the command you will boot the WPAR with.

bash-3.00# startwpar -v wpar1
Starting workload partition wpar1.
Mounting all workload partition file systems.
Mounting /wpars/wpar1
Mounting /wpars/wpar1/home
Mounting /wpars/wpar1/opt
Mounting /wpars/wpar1/proc
Mounting /wpars/wpar1/tmp
Mounting /wpars/wpar1/usr
Mounting /wpars/wpar1/var
Loading workload partition.

Exporting workload partition devices.
Starting workload partition subsystem cor_wpar1.
0513-059 The cor_wpar1 Subsystem has been started. Subsystem PID is 876724.
Verifying workload partition startup.
Return Status = SUCCESS.

Once the WPAR is booted, you can check the status by using ‘lswpar’

bash-3.00# lswpar
Name State Type Hostname Directory
—————————————————————-
wpar1 A S wpar1 /wpars/wpar1

Now that the WPAR is online, you can telnet to it, ssh to it, or use the ‘clogin’ tool for console login. You can also use clogin with a command as a parameter as well, then it will execute the command within the WPAR as shown.

bash-3.00# clogin wpar1
*******************************************************************************
* *
* *
* Welcome to AIX Version 6.1! *
* *
* *
* Please see the README file in /usr/lpp/bos for information pertinent to *
* this release of the AIX Operating System. *
* *
* *
*******************************************************************************

# hostname
wpar1
#

bash-3.00# clogin wpar1 hostname
wpar1

Tired of playing with it? ’stopwpar’ will kill it.

bash-3.00# stopwpar
Usage: stopwpar [-F|-h] [-N|-t ] [-r] [-v] wparName

Flags:
-F = Forced stop.
-h = Hard stop.
-N = No timeout for halt.
-t = User specified halt timeout in seconds.
-r = Reboot after halt is completed.
-v = Verbose mode.
bash-3.00# stopwpar wpar1
Stopping workload partition wpar1.
Stopping workload partition subsystem cor_wpar1.
0513-044 The cor_wpar1 Subsystem was requested to stop.
stopwpar: 0960-261 Waiting up to 600 seconds for workload partition to halt.
Shutting down all workload partition processes.
Unmounting all workload partition file systems.
bash-3.00#

Also you might want to check out ‘chwpar’ for changing WPAR configurations.

bash-3.00# chwpar
Usage:
To change a setting:

chwpar [-a] [-A] [-c] [-d directory] [-D attr=value ...] …
[-F] [-h hostName] [-n newName] [-N attr=value ...] …
[-P] [-R attr=value ...] [-S attr[+|-]=value …] [-u userScript] [-v]
wparName

To delete a setting:

chwpar -K [-A] [-c] [-D devname=value] … [-F] [-N address=value] …
[-R [attr ...] ] [-S] [-u] [-v]
wparName

Flags:
-a = Automatically resolve erroneous/conflicting settings.
-A = Start automatically on system boot.
-c = Flag as checkpointable.
-d = Base directory.
-D = Device exports (devname, devtype, export).
-F = Force - ignore certain errors.
-h = Hostname.
-n = New workload partition name.
-N = Network settings (interface, address, netmask, broadcast).
-P = Set workload partition root password interactively.
-R = Resource control settings (active, rset, CPU, memory, procVirtMem,
shares_CPU, shares_memory, totalProcesses, totalThreads).
-S = Configures the security settings of a workload partition (secfile, privs[+|-]).
-u = User script to execute on start & stop.
-v = Verbose mode.

That’s a basic overview of creating a WPAR. Consult the man page for more complex configurations. This just demonstrates basic functionality.

A quick HOWTO for LVM2 and Linux

Wednesday, December 26th, 2007


This is just a quick overview of LVM2 and how to use it. LVM in general makes managing servers much easier due to being more flexible with storage devices. Disk management is much simpler. No longer do you have to use an entire disk partition for a file system, you can just create a new logival volume and go on.

You can see the partition layout of this box. I’ll be playing around with /dev/hda6 which is a single partition labeled as Linux/LVM.

Device Boot Start End Blocks Id System
/dev/hda1 1 609 4891761 83 Linux
/dev/hda2 610 734 1004062+ 82 Linux swap / Solaris
/dev/hda3 735 1951 9775552+ 83 Linux
/dev/hda4 3168 19457 130849425 5 Extended
/dev/hda5 8034 19457 91763248+ 7 HPFS/NTFS
/dev/hda6 3168 4384 9775521 8e Linux LVM

The first step to using LVM is assigning an unused partition or physical disk to LVM. You do this by running the ‘pvcreate’ command. The device can be a disk partition, entire whole disk, meta device, or a loop back file.

firmo log # pvcreate /dev/hda6
Physical volume “/dev/hda6″ successfully created

firmo log # pvs
PV VG Fmt Attr PSize PFree
/dev/hda6 lvm2 — 9.32G 9.32G

Once the physical volume is initialized, you will have to create a volume group using the ‘vgcreate’ command. The volume group is a collection of physical volumes as created above. Your logical volumes will live within this volume group. It’s generally best to make a volume group for a certain group of storage since it will be somewhat sharing the same backend devices, such as rootvg in the AIX world. If you were to eventually create another volume group for a groupd of database filesystems, you would probably name it accordingly. One of the reasons I generally keep storage groups separate is for data migrations. If you have SAN storage going to host1, and have a single volume group with 10 different applications running in it, it’ll make migration of one or two applications very difficult when moving to a new host. If you have a volume group for each different application, you can easily manipulate that individual volume group to export it to a new host.

Here is an example of creating volume group test_vg using physical volume /dev/hda6

firmo ~ # vgcreate test_vg /dev/hda6
Volume group “test_vg” successfully created

The ‘vgs’ command will show you detected volume groups.

firmo ~ # vgs
VG #PV #LV #SN Attr VSize VFree
test_vg 1 0 0 wz–n- 9.32G 9.32G

Now that you have a usable volume group, you will need to create a logical volume to actually write the data to. This is done using the ‘lvcreate’ command as shown below.

This command is creating a 2GB logical volume that is read/write using test_vg to grab its storage from.

firmo linux # lvcreate -L 2G -p rw test_vg
Logical volume “lvol0″ created

Notice I didn’t specify a name, so the logical volume is named lvol0 by default. If you were to do this again, you could have lvol1, etc.

firmo linux # lvs
LV VG Attr LSize Origin Snap% Move Log Copy%
lvol0 test_vg -wi-a- 2.00G

Here I specify name for the LV.

firmo linux # lvcreate -L 2G -p rw -n test_lv test_vg
Logical volume “test_lv” created

firmo linux # lvs
LV VG Attr LSize Origin Snap% Move Log Copy%
lvol0 test_vg -wi-a- 2.00G
test_lv test_vg -wi-a- 2.00G

Now the device is ready for use. I will format it with reiserfs.

firmo linux # mkreiserfs /dev/test_vg/test_lv

Once the file system is created, you are free to mount the volume. Notice the mount device, it will be /dev/volume_group/logical_volume.

firmo linux # mount /dev/test_vg/test_lv /test
firmo linux # df -h /test
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/test_vg-test_lv
2.0G 33M 2.0G 2% /test

Once you’re done playing around, you can go ahead and delete the logical volume and volume group. You can even remove the physical volume definition for that matter.

The volume must be unmounted before removing the device as shown.

firmo linux # lvremove /dev/test_vg/test_lv
Can’t remove open logical volume “test_lv”
firmo linux # umount /test
firmo linux # lvremove /dev/test_vg/test_lv
Do you really want to remove active logical volume “test_lv”? [y/n]: y
Logical volume “test_lv” successfully removed

firmo linux # lvremove -f /dev/test_vg/lvol0
Logical volume “lvol0″ successfully removed

Now I remove the test_vg volume group

firmo linux # vgremove test_vg
Volume group “test_vg” successfully removed

And remove the physical volume

firmo linux # pvremove /dev/hda6
Labels on physical volume “/dev/hda6″ successfully wiped

Redbook: Advanced POWER Virtualization on IBM System p Introduction and Configuration

Wednesday, December 26th, 2007


Advanced POWER Virtualization on IBM System p Introduction and Configuration

Using ssh-agent with SSH

Thursday, December 20th, 2007


Here’s a good link that I came across for using ssh-agent. There good .profile examples near the bottom.
http://mah.everybody.org/docs/ssh

AIX 6.1 SP2 Available

Thursday, December 13th, 2007


Oddly enough, AIX 6.1 SP2 is now available. Sorta concerns me after seeing the patch list but hey, at least the bugs are being discovered and fixed. It’s kind of hard to imagine that 6.1 was just released last month, as well as SP1 during same time. Now we’re in December, a month later, and SP2 is out with a *lot* of fixes, hmmm. I guess I’m glad I currently have no plans for it anywhere except in the lab!

Check the link to Fix Central out for more information:

http://www-912.ibm.com/eserver/support/fixes/fixcentral/pfixpacks/61

New Security APARs
Security updates are initially released as interim fixes to expadite availability. The updates are later repackaged in the same format as generally available AIX updates.
IZ07819 Potential security issue.
IZ07824 Potential security issue.
IZ07835 Potential security issue.
IZ07838 Potential security issue.
IZ08563 Potential security issue.
IZ08564 Potential security issue.
IZ08565 Potential security issue.
IZ08566 Potential security issue.
IZ08582 Potential security issue.
IZ08721 Potential security issue.
IZ08735 Potential security issue.
IZ09528 Potential security issue.
IZ09529 Potential security issue.
IZ09544 Potential security issue.
IZ09545 Potential security issue.
IZ09546 Potential security issue.
IZ09547 Potential security issue.
New High Impact for Highly Pervasive APARs
IBM classifies some APARS as HIPER. Installation of packages containing these APARs is highly recommended.
IZ09375 page state mismanaged under heavy migration/paging activity
All Other New APARs
IZ07117 MVFS unable to communicate to external process
IZ07465 crash at lpar_halt
IZ07801 Restart of a system WPAR fails with unexpected thread death
IZ07802 BRING UNMANAGED RESOURCE GROUP ONLINE FAILS
IZ07807 low paging space problem on MLS NFS server
IZ07808 Incomplete dump on low paging space system
IZ07809 system crash in siIODFreeMap with JFS2 internal snapshots
IZ07810 more command failure in multibyte locale environment
IZ07811 unexpected reboot while doc.server installation
IZ07812 System crashes when closing optical drive
IZ07813 ITII in kmeminit_thread+000090
IZ07814 System crash in SAS espansion card driver
IZ07815 Restart of WPAR fails if storage keys are enabled
IZ07816 restore of EFS filesystem fails
IZ07818 Crash in nfs3_rele removing symlink from NFS mount
IZ07820 DSI at hd_avoid
IZ07821 smit not passing -Z flag for snapshot backup
IZ07822 pconsle menu doesnt show up on director agents
IZ07823 multi-hit derat prob. w/private rtshm
IZ07825 Partition hang after partition migration
IZ07827 traditional dump crashed or did not start
IZ07828 Bad error message from probevue causing confusion
IZ07830 DSI when re-distribute LUNs on DS3K storage
IZ07832 System crash in rpc.lockd at .simple_lock
IZ07833 System may hang when Trusted Execution is enabled
IZ07834 projctl command omitting invalid error message
IZ07836 DSI in siReaderLookupSMap
IZ07839 dmp_minimal core dumps
IZ07840 node add problem during migration
IZ07841 rn_insert msgs scrolling on console
IZ07842 RDS, rdsctrl command bugs
IZ07843 RDS: 2 nodes crash when running test case using 20 ports on 3 n
IZ07844 execution failing on WPAR for non-root NFSv4 dir
IZ07845 traditional dump fails on 1st attempt after install
IZ07846 traditional dump crashed or did not start
IZ07847 EEH Event During sissas_undo_cfg_init can cause crash
IZ07848 unresponsive system running filesystem and eRAS tests
IZ07849 syncvg -f doesn’t work if ltg != mwc_ltg
IZ07850 mkwpar hangs in odm_lock creating nfsv4 wpar
IZ07851 out of paging space with snapshots
IZ07852 system crash during chown when creating wpars
IZ07853 lchangelv core dump
IZ07854 WPAR fails to start after mksysb restore, complains of perms
IZ07855 Unavailable symbol after WPAR checkpoint/restart
IZ07860 Incorrect mkwpar -e output for transitional WPAR
IZ07861 System crash while deleting a JFS2 snapshot
IZ07862 Reading the snapshot data giving snapshot corrupt errors
IZ07996 dmf create replica fails for 6GB data
IZ07997 Cannot create cell using NDAF and kerberos
IZ08022 dbx where subcommand output wrong in signal handler
IZ08562 installp hangs on nfs based wpars
IZ08567 bootsy02 /nfstest/nfsstr2 has 3 lost+found
IZ08568 Modified stanzas not getting shipped in updates
IZ08569 IB connectivity lost when using HCA sharing
IZ08570 32 bit driver issues
IZ08571 Download to 2-port adapters can destroy adapter
IZ08572 Deadlock due to loopback path; Double-free of pvt pool buf
IZ08573 cannot enable vscsi mpio paths after VIOS failover test
IZ08574 NATTCH FOR SHARED MEMORY SEGMENT INCREMENTED ON FAILING FORK
IZ08575 corrupted or truncated live dump
IZ08576 crash at soo_select+0000F4
IZ08577 User stack trace not printed
IZ08578 specfs should handle DEV_NOLONGJMPX better
IZ08579 sec_getsecconf FAIL to read kernel sec flags in WPAR
IZ08580 Thread paging slows down system response time
IZ08581 shrinkfs crashes in eaRelocate
IZ08583 Process private segment 2 protected by key 2 instead of key 0.
IZ08584 Crash with corrupt stack in KDB
IZ08585 uvmount() able to unmount global FS
IZ08586 Compilation problems with stropts.h
IZ08587 mklv command hanging
IZ08588 FE_ macro definitions cause compile problems
IZ08589 System crashed at clock / i_softmod
IZ08590 mkprojldap does not support TDS 6.1 or later
IZ08591 Can’t get an IP address via DHCP on AIX610
IZ08592 cronadm/crontab fail on trusted aix wpar
IZ08593 project definitions are already loaded
IZ08594 lvmo tuneables save/restore incorrectly
IZ08595 Install commit only operation fails
IZ08723 get_location_point does not return proper value
IZ08724 etrace: size(type) fails
IZ08725 hpmcount coredumps when broken groups are present in .gps file
IZ08726 typedef with const and volatile fail for structure
IZ08727 Unable to delete stanza: /usr/sbin/execerror
IZ08728 Enabling TE failed with Error loading TSD
IZ08729 Syscall probes should also provide probe name
IZ08730 sem_unlink() fails in removeipcat the stop of wpar
IZ08731 System crahs in v_kmem_hide
IZ08732 Trusted Library paths can be set from a WPAR
IZ08733 Probevue fails to start on systems with > 64 CPUs
IZ08734 Additional Probevue trace hooks
IZ08744 System crash at get_from_list_excp+2c
IZ09523 svm_getrpid() returns other wpar real pid
IZ09524 EMGR CLEANUP LEAVES THE FILESET IS EFIXLOCKED STATE
IZ09525 restwpar fails to restore wpar with nfs mounted’/’
IZ09526 perfstat enhancements for WPARs
IZ09527 CC_EVAL: /audit is created as jfs instead of jfs2
IZ09530 emgr does not remove CU patches that have been committed
IZ09531 wpar isolation failed with hd_cfg
IZ09532 Possible crash in disk driver
IZ09533 IO hang after multiple failed attempts to access SVC disks
IZ09534 Update head driver for SDD PCM compatability
IZ09535 Eras registration failure for 2nd adapter
IZ09536 Reboot hangs during reserve testing
IZ09537 HA Discover operations crashing the machine
IZ09538 bootsy02 can not telnet in, waiting for lock or cpu
IZ09542 System crash in siRONUpdateSMap
IZ09543 Incorrect Oracle behavior in an RSET restricted WPAR
IZ09560 firmware-assisted system dump initialization failed
IZ09577 mknfsexp will fail if /etc/exports is absent
IZ09580 Performace regression on 10GB ethernet
IZ09600 some test cases mentioned below are failing in dst.p.1
IZ09601 tzset() not returning right values in Olson TZ
IZ09602 Authorized user cannot execute “timedc trace” command
IZ09604 wpar: relocation failed at restart, no oper permitted
IZ09605 nextrole fails with Invalid Argument
IZ09606 trustchk should allow modifications to all attributes
IZ09607 Passwd restriction config for CAPP missing items
IZ09608 J2_USERDATA_EIO on truncating encrypted files
IZ09609 trustchk -y does not change the file mode to 000
IZ09610 trustchk -g is hanging
IZ09614 “login -e <label>” fails when tnet=enable
IZ09675 high or incorrect load average due to uninitialized kernel proc
IZ09703 Fixdata for new service pack
IZ10000 AIX 6.1 odm change required to run RDAC on DS4K

How to grow an LVM based ext3 and reiserfs file systems in Linux

Wednesday, December 5th, 2007


So you have an LVM based file system that needs extended? Now a days this can be done pretty quickly with a few commands. The following will walk you through a basic online resize of an ext3 and reiserfs based filesystem. Keep in mind, if you’re dealing with critical production data of any type, you probably should resize those offline, and during a scheduled maintenance window as a safety measure.

#df -k /mnt/test
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/mapper/testvg-test
2097084 1760768 336316 84% /mnt/test

When resizing volumes, you have to keep in mind that the file system also has to be made aware of the new volume size. A common misconception is that you can resize the LVM device and the file system will automatically grow with it, not the case in ext3 and reiserfs that I’m aware of.

The test volume we’re messing with is nearly full, so we will add another 1GB to this. We’ll start off first by extending the logical volume using the ‘lvextend’ command.

#lvextend
Please specify either size or extents (not both)
lvextend: Add space to a logical volume

lvextend
[-A|--autobackup y|n]
[--alloc AllocationPolicy]
[-d|--debug]
[-h|--help]
[-i|--stripes Stripes [-I|--stripesize StripeSize]]
{-l|–extents [+]LogicalExtentsNumber[%{VG|FREE}] |
-L|–size [+]LogicalVolumeSize[kKmMgGtTpPeE]}
[-m|--mirrors Mirrors]
[-n|--nofsck]
[-r|--resizefs]
[-t|--test]
[--type VolumeType]
[-v|--verbose]
[--version]
LogicalVolume[Path] [ PhysicalVolumePath... ]

#lvextend -L+1G /dev/testvg/test
Extending logical volume test to 3.00 GB
Logical volume test successfully resized
#lvs /dev/testvg/test
LV VG Attr LSize Origin Snap% Move Log Copy%
test testvg -wi-ao 3.00G
#
#df -h /mnt/test
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/testvg-test
2.0G 1.7G 329M 84% /mnt/test
#

Note the file system size remains at 2GB. Once the logical volume is extended, we will have to figure out what type of file system this is. You can run the following to determine this:

#mount | grep /mnt/test
/dev/mapper/testvg-test on /mnt/test type reiserfs (rw)

So we’re dealing with reiserfs.

It may also be smart to run an fsck at this point, depending on whether or not you can take the volume offline. Since this is test data, I’ll ignore the fsck and go ahead and resize the file system while it’s online. For reiserfs, this is done using the ‘resize_reiserfs’ command. You can either specify the size of let the command figure it out, and grow to the full extent of the volume. I’ll let it figure it out.

#resize_reiserfs /dev/testvg/test
resize_reiserfs 3.6.19 (2003 www.namesys.com)

resize_reiserfs: On-line resizing finished successfully.

#df -h /mnt/test/
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/testvg-test
3.0G 1.7G 1.4G 56% /mnt/test
#

That’s it… Pretty tough huh?

Now for ext3, we’ll use the same volume.

#df -h /mnt/test
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/testvg-test
2.0G 68M 1.9G 4% /mnt/test
#mount | grep /mnt/test
/dev/mapper/testvg-test on /mnt/test type ext3 (rw)
#

#lvextend -L+1G /dev/testvg/test
Extending logical volume test to 3.00 GB
Logical volume test successfully resized
#!df
df -h /mnt/test
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/testvg-test
2.0G 68M 1.9G 4% /mnt/test
#

You’ll resize ext3 using the ‘resize2fs’ command as shown. Pretty similar to reiserfs.

#resize2fs
resize2fs 1.40.2 (12-Jul-2007)
Usage: resize2fs [-d debug_flags] [-f] [-F] [-p] device [new_size]

#resize2fs /dev/testvg/test
resize2fs 1.40.2 (12-Jul-2007)
Filesystem at /dev/testvg/test is mounted on /mnt/test; on-line resizing required
old desc_blocks = 1, new_desc_blocks = 1
Performing an on-line resize of /dev/testvg/test to 786432 (4k) blocks.
The filesystem on /dev/testvg/test is now 786432 blocks long.

#!df
df -h /mnt/test
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/testvg-test
3.0G 68M 2.8G 3% /mnt/test
#

Redbook: IBM Partition Mobility Redbook Updated

Monday, December 3rd, 2007

A good redbook on Live Partition Mobility

IBM System p Live Partition Mobility

SAN Volume Controller(SVC) Best Practices Redbook

Monday, December 3rd, 2007

Some good information in this redbook if you work with SVC at all.

SAN Volume Controller: Best Practices and Performance Guidelines