HP-UX
supports large files (greater than 2 GB), however, when working with
large files be aware of these issues:
You cannot perform interactive
editing on large files. For example, if you try to run vi on a large file, the following error message appears:
vi large_file
"large_file" Value too large to be stored in data type
|
You cannot mail a large
file.
You cannot print a large
file.
Creating a Large-Files File System |
 |
If you want a file system to support large files (greater
than 2 GB), then large files must be enabled.
HFS file systems
The default for HFS file systems is nolargefiles. To enable the use of large files, you must explicitly enable this
feature.
You can create a large-files file system using
the mkfs command or the newfs command.
VxFS file systems
The default for VxFS file systems is largefiles. To prevent the use of large files, you must explicitly disable
them for VxFS file systems.
In case the default changes in a future release,
it is a good idea to explicitly set either the largefiles or nolargefiles option when you create a file system.
See theexamples in the following
sections.
Examples of Creating a Large Files File System |
 |
The following examples show different ways to
create a large-files file system.
/usr/sbin/mkfs -F hfs -o largefiles /dev/vg02/rlvol1
|
/usr/sbin/newfs -F hfs -o largefiles /dev/vg02/rlvol1
|
/usr/sbin/mkfs -F vxfs -o largefiles /dev/vg02/rlvol1
|
/usr/sbin/newfs -F vxfs -o largefiles /dev/vg02/rlvol1
|
Examples of Creating a No-Large-Files File System |
 |
The following examples show different ways to
create a file system that will not support large
files.
/usr/sbin/mkfs -F hfs -o nolargefiles /dev/vg02/rlvol1
|
/usr/sbin/newfs -F hfs -o nolargefiles /dev/vg02/rlvol1
|
/usr/sbin/mkfs -F vxfs -o nolargefiles /dev/vg02/rlvol1
|
/usr/sbin/newfs -F vxfs -o nolargefiles /dev/vg02/rlvol1
|
Changing from a Large-Files File System |
 |
You can change a file system back and forth between largefiles and nolargefiles using the HP
System Management Homepage (HP SMH) or the fsadm command (shown below).
To make the change using the HP System Management Homepage:
HFS file systems:
To convert an HFS file system from largefiles to nolargefiles, the file system must be in a clean
state[4] and must be unmounted. Also, in order for the fsadm command to succeed in the conversion from a largefiles mode to a nolargefiles mode,
you must first remove an files that are greater than 2GB in size.
The following example shows how to convert a largefiles HFS file system to a nolargefiles HFS file system.
# fsck -F hfs /dev/vg03/lvol2
fsck: /dev/vg03/lvol2: mounted file system
continue (y/n)? y
** /dev/vg03/lvol2
** Last Mounted on /testHFS
** Phase 1 - Check Blocks and Sizes
** Phase 2 - Check Pathnames
** Phase 3 - Check Connectivity
** Phase 4 - Check Reference Counts
** Phase 5 - Check Cyl groups
2 files, 0 icont, 9 used, 512490 free (10 frags, 64060 blocks)
***** MARKING FILE SYSTEM CLEAN *****
***** FILE SYSTEM WAS MODIFIED *****
#/usr/sbin/umount /myfilesystem
#/usr/sbin/fsadm -F hfs -o nolargefiles /dev/vg03/rlvol2 |
VxFS file systems: Unlike HFS file systems, VxFS file systems can be switched between largefiles and nolargefiles without unmounting
(and without requiring an fsck operation to verify
file system state). However, as with HFS file systems, you must remove
any large files (files with size greater than 2GB) from the file system
before a switch between largefiles to nolargefiles will succeed.
 |
 |  |
 |
 | NOTE: largefiles and nolargefiles are mount options to file systems. If you manually switch a file
system between one mode and another, you might need to edit the corresponding entry in the file /etc/fstab so that future mounts and boots will mount the file system using
the proper mode. |
 |
 |  |
 |
Command Support for Large Files |
 |
All of the file system
administration commands, as well as all file system user commands, for HFS and VxFS support large files (greater than 2 GB
in size).
If a command that does not support large files
encounters a large file, the command will return an [EOVERFLOW] error and print a message
like the following:
Value too large to be stored in
data type
Repairing a Large-Files File System with fsck |
 |
The fsck(1M) command repairs damaged file
systems. Typically, large files should not appear in a no-large-files
file system. There are two ways fsck recovers from
this situation if a large file does appear.
In the first scenario, you use fsck in the interactive mode. fsck finds a large file
on a no-large-files file system, marks the file system dirty and stops.
You can then correct the situation using the fsadmcommand with the -o largefiles option. The fsck command repairs the file system, which you are then
able to mount. This scenario would preserve the large file, if fsck did not find it corrupt in any other way.
In the second scenario, using non-interactive
mode, fsck purges the large file on a no-large-files
file system. fsck assumes the superblock to be
accurate based on its accuracy checks since the probability of a superblock
being corrupt is insignificant when compared to the instance of a
large file manifesting in a no-large-files file system. Consequently, fsck will remove the large file from a file system it believes
should not contain large files.
For More Information on Large Files |
 |
Refer to:
HP-UX Large
Files White Paper Version 1.4