4    Base System Software Notes

This chapter contains notes about issues and known problems with the base operating system and, whenever possible, provides solutions or workarounds to those problems.

The following topics are discussed:

Compaq maintains an online Technical Update that contains information about restrictions and problems that have been discovered since Version 4.0E began shipping. To view this document on the Web, go to the following URL:

http://www.unix.digital.com/faqs/publications/updates/V40E-update.html

Compaq recommends that you visit this site periodically to see if any new information has been added.


4.1    Commands and Utilities

The following notes apply to commands and utilities.


4.1.1    Escaped Comment Symbols in a Makefile

The make command will not recognize escaped comment symbols as literal characters in a Makefile. Comment lines that begin with a # (number sign) and all text following this symbol up to the end of the line are considered part of a comment. This is also true even if the symbol is preceded with a backslash (\).


4.1.2    Security

The following notes describe problems that may occur when using commands and utilities under certain security settings.


4.1.2.1    Unexpected Command Behavior with ACLs

Programs cannot reliably inspect the permission bits in the stat structure and determine the access that will be granted to a particular user. On local file systems, read-only mounts and Access Control Lists (ACLs) can both modify the access that will be allowed. On remote file systems, in addition to read-only mounts and ACLs, there may be additional controls that can alter the permitted access such as:

Programs that copy files to update them, rather than updating them in place, often do not preserve ACLs. Some programs that have this problem are gzip, compress, and emacs.

The best solution for programs that need to make access decisions is for the program to use the access() call to determine what access will be granted. Note that even this may not work as the access protections of the file could be changed between the access() call and the read, write, or execute operation.

For programs that copy files, the following command will copy a file while preserving ACLs and any other extended attribute (property list):

cp -p

See the acl(4), and proplist(4) reference pages for more information.


4.1.2.2    ACLs and Archive Tools

The pax, tar, cpio, dump, restore, vdump, and vrestore archive tools may not restore ACLs on files in the manner you would think that they should be restored. Always check the ACLs on your files after saving and restoring them with any of these tools.


4.1.3    Emacs Can Lose ACL File Settings

By default, the Emacs editor will rename the original file and save the new file as a copy under the original name. If the original file had an Access Control List (ACL) it will now apply to the backup file. If the directory had a default ACL, the new file (original file name) will now have the default ACL instead of the original ACL. If the directory did not have a default ACL, the new file will be protected only by the file permission bits.

The Emacs editor has some user-preference variables that you can set to control which file will retain the original ACL. The relevant Emacs variables are:


4.1.4    Some Emacs Command Line Options Fail

DIGITAL ships the Emacs software as it is received from the source. The following command line options do not work as documented in the emacs(1) reference page: -cr, -geometry, -i, -ib, -iconic,
-iconname, -in, -internal borderwidth, -mc, -T, and -title.

In some cases, a workaround is available by using an appropriate X resource.


4.1.5    Executing Program Images Cannot Be Overwritten

The write() system call may fail with an ETXTBSY error when an attempt is made to overwrite a running program or shared library. This prevents the image in memory from being overwritten accidentally, which can result in application crashes or hangs.

For example, using the /usr/bin/cp command to copy into an executing program will fail with the message Text file busy when the write system call is invoked:

a.out &
cp foo a.out

cp: a.out: Text file busy

A workaround is to use the /usr/bin/mv command:

mv -f foo a.out

You may also see this error in a development or compilation environment where the make utility is used to build executables.


4.1.6    New Tunable Parameter for Running Oracle8

If Oracle8 running on DIGITAL UNIX hangs, look for console message

malloc_wait:X : no space in map.

If this message is present add the following to /etc/sysconfigtab:

generic:
kmem-percent=XXX

where XXX is the size of the kernel malloc map. By default, XXX is set to 25 percent of physical memory. Increase this parameter to 50 and reboot the system. If Oracle8 continues to hang, increase this parameter up to 100.


4.1.7    disklabel Command Supports ISO 9660 CD-ROM Image File Operations

The /sbin/disklabel command supports operations on an image file, including the capability of writing a disk label and boot blocks. The default format is ISO 9660 Rock Ridge standard CD-ROM format known as the CD-ROM File System (CDFS).

With this feature, users can create a bootable CD-ROM, in CDFS format, from the image file.


4.1.8    Change to format of ipcs command

The output format of the ipcs command has been modified. The KEY field now presents the value in hexadecimal format instead of decimal. This change is compatible with other UNIX implementations and conforms to the upcoming X/Open Unix98 standard.


4.1.9    New sendmail Version 8.8.8

The sendmail program has been upgraded to Version 8.8.8 as the default version for DIGITAL UNIX. The current version, Version 5.65, is still available for use.

The new version, known as V8, has become the defacto standard in the industry, especially for ISPs. Some of the features and enhacements provided with this new version include masquerading, virtual domains, relay control, and spam. For more information, see the sendmail book by O'Reilly and Associates, or the sendmail Installation and Operations Guide, or the sendmail(8) and sendmail.cf(4) reference pages. The sendmail Installation and Operations Guide is included in PDF format on the Supplementary Documents bookshelf of the online DIGITAL UNIX documentation.

You can configure sendmail using the mailconfig or mailsetup applications. During an update installation, the system will attempt to update your existing sendmail.cf file to comply with this new version. This updated sendmail.cf is compatible with both new and old version of sendmail.

To continue using the previous version of sendmail, invoke the following command as root:

/sbin/init.d/sendmail select old

This will change all links related to sendmail to point to the version previous to Version 8.0. Once you are ready to use the new version, you can switch back by invoking the following command:

/sbin/init.d/sendmail select v8.8.8


4.1.10    Sendmail Warning Message

When the system is first booted, after a full installation, the following warning message is displayed as a result of starting sendmail:

warning: local host name(hostname) is not qualified;
fix $j in config file.

This means the system does not have a qualified name. This is because neither bind nor mail has been configured. Sendmail will continue to operate.


4.1.11    Warning Message when sendmail Updates the alias Database

Sendmail gives the following warning message when it is started and its alias database is updated:

WARNING: writable directory /var/adm/sendmail

When sendmail initializes the alias database, it checks the modes on system directories and files to determine if they have been trusted.

Because the permission on the /var directory is 775, sendmail gives a warning message because it expects the permission on /var to be set as follows:

chmod go-w /var

Ignore this warning.


4.1.12    Status Message From ifconfig Command

The ifconfig command will sometimes show "trustgrp unknown" in the status line for an interface. This is mainly restricted to ATM lis and elan interfaces, but might be seen on any interface configured after the system has booted.

For example, if you have an ATM lis0 interface:

# ifconfig lis0
lis0: flags=808e1<UP,NOTRAILERS,RUNNING,NOARP,SIMPLEX>
inet 212.180.32.49 netmask ffffff00  ipmtu 9180  trustgrp unknown

The message can be ignored and has no effect on your system. It will be fixed in a future release of DIGITAL UNIX.


4.1.13    tar Command Option Does Not Work As Documented

The h option to the tar command, which expands symbolic links to real files and directories in the archive, does not work as documented. Do not use the h option. This problem will be fixed in a future release.


4.1.14    Netscape Communicator

The following notes apply to the Netscape communicator.


4.1.14.1    Netscape Communicator Dumps Core Running in CDE

Netscape Communicator V4.05 dumps core when the application posts a file selection dialog (XmFileSelectionBox). Typically, this occurs when you are running the application in the Common Desktop Environment (CDE) and select the Save As option in the File pulldown menu of the Navigator browser. It can also occur when you select a link to download a file or save an attachment to a mail message in the Messenger Mailbox component.

To avoid this problem, edit the /usr/bin/X11/netscape script, as follows:

  1. Locate the following line (92):

    exec $REAL_NETSCAPE -name netscape $*
    

  2. Edit the line as to read as follows:

    exec $REAL_NETSCAPE -name netscape -xrm '*nsMotifFSBCdeMode: True' $*
    

For more information, see the Communicator on UNIX release notes at the Netscape Web site:


http://home.netscape.com/eng/mozilla/4.0/relnotes/unix-4.0.html


4.1.14.2    Netscape Communicator Hangs Starting Java on Some Processors

The Netscape Communicator V4.05 process hangs the first time a page containing a Java applet is loaded by the Navigator browser when running on a DEC 3000 or AlphaStation 200. The Netscape process also hangs if you select the Java Console option in the Communicator pulldown menu. How long the process hangs depends on the processor type.

This hang only occurs the first time you start Java. Therefore, leave the Netscape process running in background until the hung process clears itself. After the hang has cleared once, you can continue to use Netscape Communicator normally.


4.1.14.3    Netscape Communicator Does Not Include Localization

Unlike the Netscape Navigator software in previous versions of the DIGITAL UNIX Operating System, the Netscape Communicator software bundled with the current version of DIGITAL UNIX does not currently come with any localization. Therefore, you cannot bring up a Japanese interface of the Communicator, for instance, even when your process is running in a Japanese locale.

Localizations for Netscape Communicator are planned. When available, these localizations will be provided on the DIGITAL UNIX web site, and in future releases of the operating system.


4.2    SysMan System Management Graphical User Interface

The following sections apply to restrictions on using the SysMan applications.


4.2.1    Account Manager

The following notes apply to Account Manager, dxaccounts.


4.2.1.1    Copying Accounts and UID

When copying user accounts via cut and paste or drag and drop, the Allow Duplicate UIDs option in the General Preferences dialog box will be honored. For example, when making a copy of user account that has a UID of 200, if the Allow Duplicate UIDs check box is off (the default), the resulting copy will have a unique UID automatically generated. If the Allow Duplicate UIDs check box is on, then the copy will have an identical UID. The same rules apply to copying groups.


4.2.1.2    Account Manager Restrictions

The Account Manager has the following restrictions on both base security and enhanced security (C2) systems:


4.2.1.3    Account Manager Problems

Leading and trailing white space is not stripped from text entry areas. This could lead to confusion, for example, if a field on the Find dialog contains a space character before the desired search string. The search string would not match because of the spurious space character.


4.2.1.4    Enhanced Security Account Manager Problems

The following problems apply to Account Manager when running on enhanced security systems:


4.2.2    Print Configuration Manager

The Print Configuration Manager may have some problems with /etc/printcap files from DEC OSF/1 Version 3.2 or earlier, as follows:

To avoid these problems, invoke the printconfig utility with the menu interface (printconfig -ui menu). This brings up the lprsetup utility, which is fully compatible with earlier printcap files.


4.2.3    BIND Configuration

The following problems apply to configuring BIND servers with the BIND configuration graphical user interface.


4.2.4    The dxshutdown Application Does Not Prohibit Logins

The dxshutdown application does not create the /etc/nologin file as described in the documentation. This means that users will be able to log in to a machine that is being shut down up until the actual time of the shut down.

Note that this behavior differs from that of the shutdown command that creates the /etc/nologin file at 5 minutes prior to the shutdown.


4.3    System Administration

The following notes apply to system administration.


4.3.1    Change in mkpasswd Creates Potential Password Database Incompatibility

When the /etc/passwd file is very large, a performance degradation may occur.

When the number of passwd entries reaches the 30,000 to 80,000 range or greater, mkpasswd will sometimes fail to create a hashed (ndbm) database. Because the purpose of this database is to allow for efficient (fast) searches for passwd file information, failure to build it causes commands that rely on it to do a linear search of /etc/passwd. This results in a serious performance degradation for those commands.

For customers choosing to use the mkpasswd -s option to avoid this type of failure, a potential database or binary compatibility problem may arise. If a customer application that accesses the password database created by mkpasswd is built statically (nonshared), that application will be unable to read from or write to the password database correctly. This would cause the customer application to fail either by generating incorrect results or by possibly dumping core. Any statically linked application would be affected if it directly or indirectly calls any of the libc ndbm routines documented in the ndbm(3) reference page and then accesses the password database. To remedy this situation, you must re-link the application.

Customers who do not use the mkpasswd -s option will not see this compatibility problem.


4.3.2    License Management Facility Allows Year 2000 Testing

Certain software license PAKs include expiration dates that currently limit the ability to run software when the date is set well into the future (into the year 2000). While most customers do not have PAKs with expiration dates, those who do (such as CSLG, ASAP, or Partner PAK Program members) may benefit from the following enhancements.

The lmf utility and supporting code have been enhanced to allow customers with expiring software license PAKs to set the system date beyond the expiration dates within a specific time window to allow Year 2000 (Y2K) testing.

Also, a test PAK, 00Y2K-TESTING, is available for use with DIGITAL UNIX Version 4.0D and higher. If you have expiring license PAKs, you can install this test PAK, allowing your PAKs to operate beyond their expiration dates between the dates of December 1, 1999 and March 2, 2000. The test PAK allows you to conduct Y2K testing within the specified time window.

For information about obtaining the 00Y2K-TESTING PAK and other Y2K issues, see the DIGITAL UNIX Year 2000 Readiness white paper, which is available in HTML format on the DIGITAL UNIX 4.0E Documentation, Volume 1 CD-ROM. This document is also available on the DIGITAL UNIX web page at the following URL:


http://www.UNIX.digital.com/unix/year2000/whitepaper.html

Once you obtain and install the 00Y2K-TESTING PAK and set the system date forward for Y2K testing, you must execute the following command from the root account the first time run level 3 (also referred to as "init 3" or "multiuser mode") is entered after each system boot:

/usr/sbin/lmf reset

This will ensure that all software licenses are loaded while the system date is set within the Y2K testing window. You need to execute this command only once within run level 3 between each system boot. You can toggle the system between run level 1 and run level 3 after the first execution of the command in run level 3. You will only be required to execute the command again after rebooting the system.


4.3.3    Disabling Compressed Crash Dumps

Compressed crash dumps have been enabled for this release of DIGITAL UNIX.

You may need to disable this feature if you have tools or scripts that do not work with compressed crash dumps. If necessary, use dbx to set the compressed_dump variable to 0 in the running kernel, as follows:

(dbx) assign compressed_dump = 0

Note that this must be repeated each time the kernel is booted. Alternatively, you can use dbx to patch the value of compressed_dump to 0 in the kernel image file.

Chapter 4 of the Kernel Debugging guide provides more information about crash dump settings. Also, see the savecore(8), sysconfig(8), and dbx(1) reference pages.


4.3.4    Log Files in /var/adm/syslog.dated

The /var/adm/syslog.dated directory contains preserved copies of log files that are used for debugging. Normally, these files do not contain many entries. However, under certain error conditions, a DIGITAL UNIX subsystem might log an excessive amount of entries to a file and cause a problem.

You should either physically check the logs on a regular basis or use the cron utility to set up a regular job to clear the log files. The default root crontab file in the /var/spool/cron/crontabs directory contains the following sample line for clearing up the /var/adm/syslog.dated directory (the \ indicates line continuation):

40 4 * * * find /var/adm/syslog.dated -depth -type d -ctime +5 \
-exec rm -rf {} ;

If enabled, this cron job will be activated every morning at 4:40 a.m. and will delete any log file in /var/adm/syslog.dated that has not been updated for the last five days. You can edit the crontab file to uncomment and modify this line or add a similar line by using the following command:

# crontab -e

For more information, see the crontab(8) reference page.


4.3.5    Secure version of syslog

The security of the syslog facility has been enhanced in this release. Unless the domain host name of a remote host is entered in the local file, /etc/syslog.auth, the local system will not log any syslog messages from that remote host.

If you are installing the secure version of syslogd on a system, and you have configured or intend to configure other hosts to forward syslog messages to the system, complete the following steps:

  1. Use su to become the superuser (root)

  2. Create the file /etc/syslog.auth using a text editor. This file must be owned by root and have permissions set to 0600.

  3. Add the names of any remote hosts that are allowed to forward syslog messages to the local system. Host names must meet the following criteria:


4.3.6    Fixing Truncated Log Messages in /var/adm/messages

System configurations that are large, containing many adapters and devices, may exhibit incomplete message logging in the /var/adm/messages file.

If this happens, you should compensate for the large system configuration by increasing the value of the msgbuf_size attribute in the generic subsystem using sysconfigdb utility or the dxkerneltuner interface. The default value for msgbuf_size is 4096. Usually, setting it to 8192 is sufficient to resolve the problem. If you have a smaller configuration and you do not see this problem, you should not make the change.

Refer to the sysconfigdb(8), reference page and the System Configuration and Tuning guide for information about modifying system attributes.


4.3.7    EISA Configuration Utility Revision Requirements

For DIGITAL UNIX Version 4.0E and its software supplements, the supported version of the EISA Configuration Utility (ECU) is Version 1.10 or higher. If your system is configured with an EISA bus, you should update the ECU to this supported version.


4.3.8    Open3D Support

Consult the Open3D Software Product Description (SPD) before installing Open3D to ensure that this DIGITAL layered product is supported on your system.

Installing Open3D on systems not supported by the Open3D layered product can leave your system in an unusable state.


4.3.9    Bootable Tape

For this release, bootable tape will not work with the LSM product. Not all platforms and tape drives support bootable tape. The following processor platforms are supported:

The following tape devices are supported:


4.3.9.1    Disk Space Issues

To use the btcreate utility, your system must have at least 156,000 512-byte blocks of free space in the /usr directory.

You will not have enough space if your system uses an RZ26 or smaller disk with the default partitions and you have installed all of the subsets and kernel options.

To overcome this limitation, you can reclaim the required space by removing some subsets or by creating and mounting new partitions.

The following steps show you how to create and mount new partitions for a UNIX file system (UFS). If you prefer to use AdvFS, use the mkfdmn and mkfset commands.

  1. Run the newfs command to recreate a new partition:

    newfs /dev/rz1d

  2. Change the current working directory to the /usr/sys directory:

    cd /usr/sys

  3. Make a SYSTEM.BOOTABLE directory under the /usr/sys directory, where SYSTEM is the system name:

    mkdir FLAWLESS.BOOTABLE

  4. Mount the new partition on the SYSTEM.BOOTABLE directory:

    mount /dev/rz1d  /usr/sys/FLAWLESS.BOOTABLE

    This device should have at least 75,000 512-blocks available.

  5. Create another new partition:

    newfs /dev/rz1b

  6. Mount the partition:

    mount /dev/rz1b /mnt

  7. Change the current working directory to the /usr/sys/bin directory.

  8. Copy the contents of the /usr/sys/bin directory to the /mnt directory:

    cp * /mnt

  9. Unmount the /mnt directory:

    umount /mnt

  10. Mount the new partition on the /usr/sys/bin directory:

    mount /dev/rz1b /usr/sys/bin

After completing these steps, your system should have the necessary space to run btcreate.

If you are using AdvFS, the /usr/sys/bin file system must be copied during btcreate in order to copy the entire contents of the /usr file system.


4.3.9.2    Tape Drive Restriction

Ensure that the kernel has been built with the tape drive connected to your system. If the drive was not connected when the kernel was built, you will see dump errors and the system will not be able to boot from the tape drive.


4.3.9.3    Bootable Tape Notes for 32 MB Systems

Bootable tape will not function with the -m mfs option on systems with 32 MB memory configurations. After booting the kernel from tape, commands that use shared libraries will core dump.

Use the -m ufs option while creating the tape on systems with 32 MB memory configurations.


4.3.9.4    Bootable Tape Does Not Support Generic Kernels

Bootable tape does not support the bootable kernel built with the /usr/sys/conf/GENERIC kernel configuration file.

Be sure to use a system-specific custom kernel.


4.3.9.5    Cross-Platform Bootable Tapes Are Not Supported

Using a bootable tape on a platform other than the one on which it was created is not supported. For example, you cannot create a tape on a 4100 system and boot from it on a 1000A system.


4.3.9.6    QIC Tape Drives

When using QIC tape drives to create bootable tapes, you must use only high-density tapes of 320 or more megabytes. The QIC-24, QIC-120, and QIC-150 format tapes of fixed-512 blocks will not work. Tapes with a variable block size, such as the QIC-320 and QIC-525, will work with bootable tape.

Using an improperly configured QIC tape drive to create a bootable tape will result in an I/O error, a write error, or permission denied error. Therefore, you must take one of the following actions:


4.3.9.7    Multiple Tapes

If creating a bootable tape with a UFS file system extends to multiple tapes, the /sbin/dump command displays a message indicating that the tape must be changed. If the tape is not changed promptly, warning messages repeat periodically until the tape is changed.

When you change the tape, the warning messages will stop.


4.3.9.8    Disk Overhead Requirements

When selecting disk partitions while restoring file systems from tape, add 5 percent to the needed file size displayed on the console.


4.3.9.9    Write Protection for Bootable Tape

A QIC tape created with the btcreate utility may fail with the following error when booted:

failed to send Read to mka...

Be sure that the tape is write protected before booting.


4.3.10    Opening a Write-Protected Tape in Write Mode

The behavior of the open call to a tape device has changed. You can no longer use write mode to open a write protected tape. The attempt to open the tape will fail, returning the following message:

EACCES (permission denied).

If an application is written so that it attempts to open the tape device with O_RDWR when the intention is only to read the tape, the open attempt will fail. Applications should be changed to open the device with O_RDONLY. For applications that cannot be changed, use the following command to obtain the previous behaviour of the open call:

sysconfig -r cam_tape open_behaviour=0


4.3.11    Restrictions for a Dataless Environment

The DIGITAL UNIX Server Extensions includes support for installing and operating systems in a dataless configuration. A server system maintains the root, /usr, and /var file systems for all client systems. The server maintains one copy of root f or each client. The /usr file system is exported read-only and is shared by all clients registered to the environment. Each client has their own /var file system. Dataless clients access the file systems maintained on the server utilizing NFS.

A dataless environment should be considered in the following scenarios:

You should consider the following limitations when deciding to implement a dataless environment:


4.3.12    Enhanced Security

The following notes apply to the use of enhanced security features.


4.3.12.1    Distribution of Enhanced Security Profiles via NIS

The following restrictions apply to distributing enhanced security profiles via NIS:

In previous releases of DIGITAL UNIX, NIS slaves that were listed in the ypservers NIS map on the NIS master but that did not already have a copy of the prpasswd and prpasswd_nonsecure NIS maps may not have succeeded in transferring those maps during the yppush operation. This problem has been fixed for Version 4.0D and higher.


4.3.12.2    Disaster Recovery

Because the user profile and tty information is now stored in database files, the previous recovery method of editing the files while in single-user mode is no longer available. However, as long as the /usr (and, if separate, /var) file systems are mounted, you can use the edauth utility in single-user mode to edit extended profiles and ttys database entries.

If the /etc/passwd file is somehow lost, but the extended profiles are still available, then you can use a command sequence as in the following example to recover some of the missing data (the "\" characters indicate line continuation):

bcheckrc
/tcb/bin/convuser -dn | /usr/bin/xargs /tcb/bin/edauth -g | \ sed '/:u_id#/!d;s/.*:u_name=//;s/:u_id#/:*:/;s/:u_.*$/:/' \ >psw.missing

This will create a psw.missing file containing entries like the following:

root:*:0:

Primary group information, finger information, home directory, and login shell are not recorded in the extended profile. You must recover the data for those fields by other means.


4.3.12.3    pw_id_map and gr_id_map Files Are Obsolete

The Enhanced Security routines pw_idtoname, pw_nametoid, gr_idtoname, and gr_nametoid (described in pw_mapping(3)) previously used the /etc/auth/system/pw_id_map and /etc/auth/system/gr_id_map files to find the required information for mapping names to numeric identifiers, and vice versa. The disk space required by those files imposed a limit on how many accounts a system could support.

The Enhanced Security routines no longer use the pw_id_map and gr_id_map files. If you are running DIGITAL UNIX Version 4.0D or later and still have those files, it is recommended that you remove them to recover the space occupied on the root paritition.


4.3.12.4    Restriction to 4000 NIS Accounts Removed

Logins with NIS-shared extended user profiles under Enhanced Security have been streamlined, thus lifting the former restriction of 4,000 accounts. However, depending on the method chosen for building the NIS maps (using nissetup or the /var/yp/Makefile file), the limits of the ndbm storage format may still impose a limit on the number of accounts that can be shared through NIS. If you are sharing more than 10,000 accounts with NIS, DIGITAL recommends that you use the btree storage format instead of ndbm (where practical). The limitations on NIS slave servers and NIS master availability for use of the prpasswd NIS map are unchanged.


4.3.12.5    Behavior of useradd, usermod, and userdel Commands

The useradd command correctly honors the default administrative lock value found in the /.sysman/Account_defaults file. If Account_defaults does not exist, the internal default for useradd is to create locked accounts. You can use the administrative_lock_applied extended command line option to override the default. In the following example, useradd creates a locked account for foo regardless of the default value for administrative lock:

useradd -x administrative_lock_applied=1 foo

For base security, a locked account has the text Nologin in the password field in the /etc/passwd file. If an account is unlocked and has no password, that account has no value in the password field. The account is open and accessible to anyone. A warning is displayed if an unlocked account with no password is created.

For enhanced security, all accounts have an asterisk (*) in the password field in /etc/passwd, but the lock flag in the protected password database is correctly set to reflect the lock status. As with base security, an unlocked account with no password is accessible to anyone.

The usermod command correctly sets the lock flags for enhanced security when the administrative_lock_applied option is given on the command line. If usermod is used to unlock a locked account with no password, a warning is displayed.

The userdel command will retire, instead of remove, accounts on a system running enhanced security.


4.3.13    Enabling Extended UIDs in the Kernel

By default, extended UIDs are not enabled in the kernel. To enable this feature, use sysconfig or the dxkerneltuner interface to set the value of variable enable_extended_uids to. 1 (enabled).

If you chose to do this, please note the following:


4.4    Network and Communications

The following notes apply to network and communications software.


4.4.1    Using netconfig

When using netconfig while CDE is running, avoid restarting network services after reconfiguring the primary network interface. This action can result in error dialog boxes and may even cause CDE to hang. The problems may not be observed until you use bindconfig to set up BIND.

In particular, do not use the following netconfig features while running a CDE session:

For the configuration changes to take effect, you must use /sbin/reboot or /sbin/shutdown -r now to reboot your machine from the command line.


4.4.2    IP Switching over ATM

The following restrictions apply when using IP switching over ATM:


4.4.3    Orderly Release in XTI

This release does not support Orderly Release in XPG4 XTI (default XTI interface). It is still available for users of XPG3 XTI. See the Network Programmer's Guide for information on using XPG3 XTI.


4.4.4    Incorrect Error Message When Using netsetup and rcinet

When you use netsetup to restart the network, an error message similar to the following will be displayed:

kill: 204: no such process

This problem also appears when you execute the following commands:

rcinet stop
rcinet restart

The message is incorrect and has no effect on your system.


4.4.5    Edit the /etc/hosts File After Running netsetup

In DIGITAL UNIX Version 4.0E, once you configure your interfaces using netsetup, view the /etc/hosts file and make sure that the hostname and the ip address of your system has been added to this file. If not, then you need to add this information in the /etc/hosts file. Edit the /etc/hosts file as a root, and add the following line:

<your system's ip address>  <your system's hostname>  <any aliases for your system>

Example:

16.60.266.6    example.domain.com    example

where:

16.60.266.6 = ip address of your system.

example.domain.com = fully qualified hostname of your system.

example = aliases for your system.

Refer to the hosts(4) reference page for further information regarding the /etc/hosts file.


4.4.6    CDE's Static Dependency on the Network

The Common Desktop Environment (CDE) provides facilities and features for applications to communicate in a networked environment. After the network is configured and enabled, these features become available each time a new desktop session is started. After a desktop session has started, the current session has a static dependency on the state of the network configuration. Network and system administrators should be very cautious about dynamic changes to the network configuration while in a network-aware desktop session.

Prior to making any dynamic network changes, such as changing the state of your network adapter to off or changing your primary network address, add the following entry to the /.dtprofile file:

export DTNONETWORK=true

The system administrator must then log out and back in as root for the change to take effect. This change removes the dependency on the state of the network. Failure to do this may result in a session hanging after clicking on a CDE icon, such as the screen lock or Exit icons.

After all network changes are completed, remove the export DTNONETWORK=true entry from the /.dtprofile file.


4.4.7    Autosense Removed from Tulip Ethernet Driver

The autosense feature has been removed from the Tulip Ethernet and Fast Ethernet driver. This feature automatically determined whether your Ethernet connection was 10BaseT (UTP, Twisted Pair), 10Base2 (BNC, Thinwire), or 10Base5 (AUI, Thickwire) during the boot sequence. It also attempted to select between 10 Mbps and 100 Mbps operation if applicable, but not between half-duplex and full-duplex mode.

The Tulip driver used autosense in those systems where the Alpha SRM Console did not support or communicate (to the driver) the setting of the EW*0_MODE environment variable. Autosense was also used as the default mode for the EISA DE425 adapter.

In both cases, the default is now Twisted-Pair (half-duplex, 10 Mbps). If this new default is acceptable, then you do not need to do anything. Otherwise, you need to take one or more of the following actions:

Refer to the tu(7), lan_config(8), and inet.local(8) reference pages for more information.

Note that the autosense feature is different from autonegotiation. The autosense feature uses a software algorithm to determine what media is currently present on the given device, and the autonegotiation feature uses specific hardware for determining the speed (10/100) and mode (full duplex/half duplex). The autonegotiation feature is still available in the Tulip driver and there are no plans to retire it.


4.4.8    Support for NetRAIN Network Interface

DIGITAL UNIX now provides support for detecting the physical loss of network connectivity, and subsequent automatic switchover to a working network interface. This feature is called Redundant Array of Independent Network adapters (NetRAIN).

NetRAIN uses two or more network interfaces to provide redundancy. Although only one interface at a time is actually used for communication, all interfaces are monitored to ensure that traffic is flowing on each. If the interface currently being used should suffer a loss of connectivity, NetRAIN will switch network traffic to the next working interface. All the context of the previous interface is maintained: hardware address, multicast addresses, and so on.

NetRAIN is configured through extensions to the ifconfig command. It also features a programming interface via ioctl() for manual program control.

NetRAIN supports the following network adapters:

DECsafe ASE users should consult the DECsafe ASE software product description (SPD) for a list of network interfaces supported by that product.

When using NetRAIN over LANE it is recommended that you use UNI Version 3.1. With some ATM switches it is necessary to use UNI Version 3.1 to obtain acceptable failover times. This includes the Gigaswitch. If you use UNI Version 3.0, the failure over time may be long because of the T309 timer is default set to 90 seconds in some switches. If the T309 timer is adjustable on the switch, you may try to set the T309 timer to 10 seconds like UNI Version 3.1 for acceptable failover times.

For more details about NetRAIN, see the nr(7) and ifconfig(8) reference pages.


4.4.8.1    LAT and NetRAIN Cannot Run Together

Local Area Transport (LAT) cannot be started on a system where a NetRAIN set has been configured.


4.4.8.2    NetRAIN and Layered Product Licensing

Licensing schemes that use a network adapter's Media Access Control (MAC) address to uniquely identify a machine can be affected by how NetRAIN changes the MAC address. All network drivers support the SIOCRPHYSADDR ioctl that fetches MAC addresses from the interface. This ioctl returns two addresses in an array:

Licensing schemes based on MAC addresses should use the default hardware address returned by the SIOCRPHYSADDR ioctl; do not use the current physical address as NetRAIN modifies this address for its own use. See the reference page for your network adapter (for example, ln(7) and tu(7) ) for a sample program that uses the SIOCRPHYSADDR ioctl.


4.4.9    Sender Address Problem When Using DECnet Mail

DIGITAL UNIX Version 4.0E includes a new version of the sendmail application, which includes as a feature the ability to specify an owner for a mail alias, which can cause the identity of the sender as passed on the mailer command line to be different from the identity of the sender as specified in the From: header line. The end result is that the recipient of the mail may see the wrong address identified as the sender of the message.

If this problem is seen, the corrective action is to create a file, /var/dna/defaults/Dnetrc.defaults containing the following two lines:

mail11.SenderFromHeader: on
mail11.FromLineToUse: From

The file Dnetrc.defaults is a configuration file read by the mail11 mailer. The above two options tell mail11 to take the sender id from the header lines, and specificaly to get it from the From: line.

Then obtain the latest version of mail11v3 and replace the current version in the /usr/sbin directory. The new mail11v3 will understand the above option lines and use the appropriate sender id.


4.5    Local Area Transport

The following notes apply to Local Area Transport (LAT).


4.5.1    Duplicate Minor Numbers and latsetup

The latsetup utility sometimes creates devices with duplicate minor numbers. If you manually create LAT BSD devices that do not match the valid BSD tty name space convention, latsetup can create devices with duplicate minor numbers. For example, creating device tty0 with a minor number 2 instead of 1 can cause this problem.


4.5.2    CTRL/A Causes LAT tty to Change the Case of Characters

When a CTRL/A character is typed during a LAT tty session, all lowercase characters are converted to uppercase. Another CTRL/A changes the mode back to normal.


4.5.3    Simultaneous llogin Connections

When doing a number of simultaneous llogin connections, you should use llogin with the -p option. To speed up an llogin connection, add the target host name as a reserved service.


4.5.4    LAT Kernel Module Is Dynamically Loadable

You no longer need to build LAT into the kernel. LAT is not made a mandatory kernel option upon selecting the LAT subset and does not appear in the kernel configuration file. As LAT requires the Data Link Bridge (DLB), you must still build DLB into the kernel when using LAT.

The default behavior upon booting to multiuser mode is for LAT to be dynamically loaded into the running kernel. If LAT is not started at boot-time via the /sbin/rc3.d/S58lat script, the recommended method for starting and stopping LAT is to verify that LATSETUP is enabled in /etc/rc.config and execute the /sbin/init.d/lat program, using the start or stop options.


4.6    File Systems

The notes in this section apply to file systems.


4.6.1    UNIX File System Restriction

When using the UNIX file system (UFS), there is a problem when setting properties. Setting a property on a FAST symbolic link, a block special file, or a character special file causes fsck to erroneously detect contradictory block counts and produce inconsistent file system activity. There is no solution for this problem and it will be fixed in a future release.


4.6.2    The newfs Command No Longer Searches disktab File

Starting with Version 4.0D, the newfs command no longer searches the /etc/disktab file for hard disk geometry information. It now performs an ioctl GETDEVGEOM call to determine the characteristics of a disk.


4.6.3    Using ACLs over NFS

For an NFS client to make direct use of ACLs or extended attributes (property lists) over NFS, you must be enable the proplistd daemon on an NFS server. You also must use the proplist mount option when mounting on the client. Access checks are enforced by the server in any case, although NFSv2 client caching could sometimes cause inappropriate read access to be granted. Correctly implemented NFSv3 clients make the necessary access checks.

Start the proplistd daemon by selecting the number of proplist daemons to run when you use the nfssetup utility. You can also use the proplistd command to start the daemon manually:

/usr/sbin/proplistd 4

On the client, the file system must be mounted with the proplist option by either of the following methods:

See the acl(4), fstab(4), proplist(4), mount(8), nfssetup(8), and proplistd(8) reference pages for more information. Note that the proplist option is not documented in mount(8).


4.6.4    ACL Size Limitations

On AdvFS file systems there is a hard limit of 1560 bytes for a property list entry. Since Access Control Lists (ACLs) are stored in property list entries, this equates to 62 ACL entries in addition to the three required ACL entries. The EINVAL error is returned if you attempt to exceed this limit.

To facilitate interoperation of the UFS and AdvFS ACLs, a configurable limit has been imposed on UFS ACLs. The default value of the UFS limit is 1548 bytes, equivalent to the 65-entry limit on AdvFS. The UFS configurable limit on ACLs has been added to the sec subsystem and has been given the attribute name ufs-sec-proplist-max-entry. You can use the sysconfig utility to dynamically configure the attribute or you can use sysconfigdb or dxkerneltuner to statically configure the attribute in the /etc/sysconfigtab file.

A configurable property list element size for UFS has also been added to the sec subsystem and has been given the attribute name ufs-proplist-max-entry. The value of ufs-proplist-max-entry must be larger than ufs-sec-proplist-max-entry by enough space to hold a property list element header. The sysconfig utility adjusts the ufs-proplist-max-entry attribute automatically. The default value of ufs-proplist-max-entry is 8192 bytes.

See the cfgmgr(8), seconfig(8), seconfigdb(8), sysconfig(8), and sysconfigdb(8) reference pages for more information.


4.6.5    Advanced File System (AdvFS)

The following notes discuss features, problems, and restrictions of the Advanced File System (AdvFS).

For information about recovering from AdvFS domain panics and correcting an overlapping frag data corruption problem, see Appendix F.


4.6.5.1    AdvFS and fsync()

You can use the fsync() system call to synchronously write dirty file data to disk. There are two ways a file can have dirty data in memory. One way is via the write() system call. The other is from a memory write reference after an mmap() system call. For AdvFS files, the fsync() system call writes out dirty data only from the write() system call. If dirty data from an mmap() also needs to be written then you must also use the msync() system call.


4.6.5.2    Reusing AdvFS Partitions

You can reuse a partition that was previously part of an AdvFS domain. However, before you reuse the partition, you must remove the domain on the partition you want to reuse. Use the rmfdmn command to remove the entire domain. After the unused domain is removed, you can create a new domain on the partition.


4.6.5.3    Disk Usage Information

Under certain conditions, the disk usage information on an AdvFS file system may become corrupted. To correct this, turn on quotas in the /etc/fstab file for the affected file system, and then run the quotacheck command on the file system. This should correct the disk usage information.


4.6.5.4    AdvFS Split Mirror Dual Mount May Not Function Correctly

AdvFS ordinarily does not allow a domain to be mounted if another domain is already mounted with the same domain ID. However, in some cases, such as a split mirror dual-mount, you may want to bypass this restiction. You can do this by using the -o dual option to the mount command. When this option is used, AdvFS assigns a new domain ID to the domain being mounted.


4.6.5.5    Disabling Flushing to Disk AdvFS File Read Access Times

When a read() system call is made to a fileset's files, the default behavior is for AdvFS to update both the in-memory file access time and the on-disk stat structure, which contains most of the file information that is returned by the stat() system call.

You can improve AdvFS performance for proxy servers by specifying at mount time that AdvFS update only the in-memory file access time when a read() system call is made to a file. AdvFS will update the on-disk stat structure only if the file is modified.

To enable this feature, use the mount command noatimes option. See the read(2) and mount(8) reference pages for more information.

Updating only the in-memory file access time for reads can improve proxy server response time by decreasing the number of disk I/O operations. However, this behavior jeopardizes the integrity of read access time updates and violates POSIX standards. Do not use this feature if it will affect utilities that use read access times to perform tasks, such as migrating files to different devices.


4.6.5.6    Improving AdvFS Performance on Systems that Reuse Many Files

If your system opens and then reuses many files (for example, if you have a proxy server), you may be able to improve AdvFS performance by increasing the number of AdvFS access structures that the system places on the access structure free list at startup time.

AdvFS access structures are in-memory data structures that AdvFS uses to cache low-level information about files that are currently open and files that were opened but are now closed. Increasing the number of access structures on the free list allows more open file information (metadata) to remain in the cache, which can improve AdvFS performance if the files are reused.

However, allocating more AdvFS access structures on the free list will decrease the memory that is available to processes and to the UBC.

Use the AdvfsPreallocAccess attribute to modify the number of AdvFS access structures that the system allocates at startup time. The default and minimum values are 128. The maximum value is either 65536 or the value of the AdvfsAccessMaxPercent attribute, whichever is the smallest value. The AdvfsAccessMaxPercent attribute specifies the maximum percentage of the malloc pool (pageable memory) that can be used for AdvFS access structures.


4.6.5.7    AdvFS Now Supports Atomic Write Data Logging

By using the /usr/sbin/chfile command, you can now activate atomic write data logging for individual files in an AdvFS domain. Atomic write data logging is a mode of performing writes to a file that differs from the normal, asynchronous mode that is typical of UNIX file systems, and from the forced synchronous write mode available through the -l switch to the /usr/sbin/chfile command.

When atomic write data logging is activated, writes to a file are done asynchronously. They are, however, also written to the AdvFS log file. This has the effect that if the system crashes any time during or after a write system call and the contents of the file are examined upon reboot, only entire write requests will be present in the file.

For example, if a write of a 8192-byte buffer were done to the file and either during the write system call or shortly thereafter the system crashed, upon reboot either the entire 8192 bytes of data would be found in the file or none of it would be found there. There is no possibility that only 1024, or 2048 bytes of the write, for example, would be in the file.

You can also activate and deactivate this feature using the fcntl() system call. In addition, both /usr/sbin/chfile and fcntl() can be used on an NFS client to activate or deactivate this feature on a file that resides on the NFS server.

Note that because atomic write data logging causes user data to be written to both the user's file and the AdvFS log file, writes to files with Atomic Write Data Logging enabled will be slower than normal, asynchronous writes.

Refer to the fcntl(2) and chfile(8) references pages for more information.


4.6.5.8    Preventing Partial AdvFS Data Writes

AdvFS writes data to disk in 8 KB chunks. By default and in accordance with POSIX standards, AdvFS does not guarantee that all or part of the data will actually be written to disk if a crash occurs during or immediately after the write. For example, if the system crashes during a write that consists of two 8 KB chunks of data, only a portion (anywhere from 0 to 16 KB) of the total write may have succeeded. This can result in partial data writes and inconsistent data.

To prevent partial writes if a system crash occurs, you can use the chfile -L on command to enable atomic write data logging for a specified file.

By default, each file domain has a transaction log file that tracks fileset activity and ensures that AdvFS can maintain a consistent view of the file system metadata if a crash occurs. If you enable atomic write data logging on a file, data from a write call will be written to the transaction log file before it is written to disk. If a system crash occurs during or immediately after the write call upon recovery, the data in the log file can be used to reconstruct the write. This guarantees that each 8 KB chunk of a write is either completely written to disk or is not written to disk.

For example, if atomic write data logging is enabled and a crash occurs during a write that consists of two 8 KB chunks of data, the write can have three possible states: none of the data is written, 8 KB of the data is written, or 16 KB of data is written.

Atomic write data logging may degrade AdvFS write performance because of the extra write to the transaction log file. In addition, a file that has atomic write data logging enabled cannot be memory mapped by using the mmap() system call.

A file cannot have both forced synchronous writes enabled and atomic write data logging enabled. However, you can enable atomic write data logging on a file and also open the file with an O_SYNC flag. This ensures that the write is synchronous, but also prevents partial writes if a crash occurs.

Use the chfile command with no flags in order to determine if forced synchronous writes or atomic write data logging is enabled. Use the chfile -L off command to disable atomic write data logging (the default).

To enable atomic write data logging on AdvFS files that are NFS mounted, the NFS property list daemon, proplistd , must be running on the NFS client and the fileset must be mounted on the client by using the mount command's proplist option.

If atomic write data logging is enabled and you are writing to a file that has been NFS mounted, the offset into the file must be on an 8 KB page boundary, because NFS performs I/O on 8 KB page boundaries.


4.6.5.9    Memory Mapping Will Fail on AdvFS Files Using Data Logging

Starting with DIGITAL UNIX Version 4.0E, attempts to memory map an AdvFS file using the mmap() system call will fail if the file has had atomic write data logging activated on it. Use the chfile command to determine if a file is using atomic write data logging. If the chfile command displays the following, attempts to memory-map the file using the mmap() system call will fail:

I/O mode = atomic write data logging

To deactivate the atomic write data logging, enter the following command:

chfile -L off  filename

For more information on atomic write data logging, see the chfile(8) references page.


4.6.5.10    Cleanly Unmount File Systems Before Changing Operating System Versions

If a system crashes or goes down unexpectedly due to a loss of power or other similar circumstances, AdvFS will perform recovery the next time that the filesets that were mounted at the time of the crash are remounted after rebooting. This recovery keeps the AdvFS metadata consistent and makes use of the AdvFS log file.

Different versions of DIGITAL UNIX use different AdvFS log record types. Therefore, it is important that AdvFS recovery be done on the same version of DIGITAL UNIX that was running at the time of the crash. For example, if your system is running DIGITAL UNIX Version 4.0E and the system crashes, do not reboot using DIGITAL UNIX Version 3.2G, because that version of AdvFS may not be able to work with the log records that the DIGITAL UNIX Version 4.0D system put into the log.

Therefore, if you want to reboot using a different version of DIGITAL UNIX, make sure that any mounted AdvFS filesets are unmounted cleanly before rebooting. In addition, if the system panicked or an AdvFS domain was domain panicked, it is best to reboot using the original version of DIGITAL UNIX and run the /sbin/advfs/verify command to make sure that the domain is not corrupted. If it is not, it is then safe to reboot using a different version of DIGITAL UNIX and remount the filesets.


4.6.5.11    AdvFS Verify Reports an Error on Some Domains

The AdvFS tool verify will report the following error when it is run on a Version 4.0 domain which was created with the mkfdmn command using the -p flag:

Checking mcell list ...
set_mcell_position: position field already set
disk: 1, mcell id (page.cell): 0.6
set tag: -2.0 (0xfffffffe.0x00000000)
tag: -6.0 (0xfffffffa.0x00000000)

This error message can be ignored.


4.6.6    Logical Storage Manager

The following notes describe problems and restrictions of the Logical Storage Manager (LSM).


4.6.6.1    LSM Sparse Plexes May Erroneously Mask an I/O Failure

Under certain hardware failure scenarios, an LSM volume configured with a sparse plex may erroneously return success to the file system or application when in fact the I/O failed. DIGITAL recommends that you do not configure volumes with sparse plexes.


4.6.6.2    Restrictions with LSM root and swap Volumes

Root, primary swap, and secondary swap volumes configured under LSM have the following restrictions:


4.6.6.3    Possible Problems Accessing Physical Block 0 with LSM

Physical block 0 on DIGITAL disks is typically write protected by default. If a disk is added to LSM by using the voldiskadd utility, physical block 0 is skipped. However, if a partition that includes physical block 0 is encapsulated into LSM by using the volencap, vollvmencap, or voladvdomencap utility, physical block 0 is not skipped. This is not a problem because the file system already skips block 0 and does not write to it.

A problem can occur when an LSM volume that contains a write-protected block 0 is dissolved and its disk space is reused for a new purpose. Neither the new application nor LSM know about the write-protected physical disk block 0 and a write failure can occur.

To fix this problem, use the following steps to remove the write-protected physical disk block 0 from the LSM disk before it can be assigned to the new volume:

  1. Use the voldg and voldisk commands to remove the disk from LSM.

  2. Use the voldiskadd command to add either a specific partition of the disk or the entire disk to LSM.


4.6.6.4    Using LSM with SWXCR-P(A/B) and SWXCR-E(A/B) RAID Controllers

When you create an LSM mirror using a disk that is configured as Just-a-Bunch-of-Disks (JBOD) with either the SWXCR-P or SWXCR-E RAID controllers, a disk failure requires that you reconfigure the disk on the controller. The disk is in an unusable state once it is set off line by the controller and cannot be used by LSM until it is reconfigured. Refer to the StorageWorks RAID Array 200 Subystem Family Installation and Configuration Guide.


4.6.6.5    Enabling LSM After Installation Requires Rebuilding the Kernel

If you use the setld utility to install LSM after you originally install DIGITAL UNIX, you must rebuild the system kernel to enable LSM.

To rebuild the kernel, run the doconfig utility with no command flags. Note that the doconfig menu display does not include LSM. However, the doconfig utility will build a kernel that includes LSM. Refer to the Logical Storage Manager guide for more information.


4.6.6.6    The volrootmir Script Supports Only LUN 0 on HSZ

Only LUN 0 is supported as a boot device by the console. Hence, you can only mirror the LSM rootvol and swapvol volumes to LUN 0 in an HSZ. Therefore, when you use the volrootmir script to mirror rootvol and swapvol, use only LUN 0 on an HSZ as an argument to the volrootmir script.


4.6.6.7    Using LSM rootvol Requires sysconfigtab Parameters

If you use the LSM rootvol volume for the root file system and the swapvol volume is in use as a primary swap volume, LSM adds the following entries to the /etc/sysconfigtab file to enable rootability:

lsm:
lsm_rootvol_is_dev=1
lsm_swapvol_is_dev=1

If these entries are deleted or if the /etc/sysconfigtab file is deleted, the system will not boot. If this happens, you can boot the system interactively as follows (the "\" character indicates line continuation):

>>>  boot -fl i

.........
.........
Enter  kernel_name option_1 ... option_n: vmunix \ lsm_rootdev_is_volume=1

Use the sysconfigdb utility to add the LSM entries as shown above to the /etc/sysconfigtab file after the system boots. Then, reboot the system for the changes to take effect.


4.6.7    Mounting Associated Products CD-ROMS on DIGITAL UNIX Versions Other Than 4.0E

The Associated Products CD-ROMs (APCDs) can be mounted with the usual mount command on DIGITAL UNIX systems running Version 4.0E, as follows:

mount -r /dev/rz4c /mnt

On releases prior to Version 4.0E, the APCDs must be mounted with additional options, as follows:

mount -r -t cdfs -o rrip /dev/rz4c /mnt

On versions of DIGITAL UNIX prior to 4.0D you may receive the following error indicating that CDFS support is not built into the current running kernel:

mount -r -t cdfs -o rrip /dev/rz4c /mnt
/dev/rz4c on /mnt: No valid filesystem exists on this partition

If you receive this error, you need to build your kernel with the following option:

ISO 9660 Compact Disc File System (CDFS)


4.6.8    Modifying the Maximum Number of Open File Descriptors

The proc subsystem's open-max-soft and open-max-hard attributes control the maximum number of open file descriptors for each process. When the open-max-soft limit is reached, a warning message is issued, and when the open-max-hard limit is reached, the process is stopped. These attributes prevent runaway allocations (for example, allocations within a loop that cannot be exited because of an error condition) from consuming all the available file descriptors.

The open-max-soft and open-max_hard attributes both have default values of 4096 file descriptors (open files) per process, which is the maximum, systemwide value.

If an application requires many open files, you can increase the open file descriptor limit for that application above the maximum that is supported by the proc subsystem (4096). Increasing the maximum limit up to 65,536 provides more file descriptors to the process, but it increases the possibility of runaway allocations. In addition, if you increase the number of open files for a process, make sure that the max_vnodes attribute is set to an adequate value. See Appendix E for information about increasing the open file descriptor limit for an application.

Decreasing the open file descriptor limit decreases the number of file descriptors available to each process and prevents a process from consuming all the file descriptors. However,decreasing the limit may adversely affect the performance of processes that require many file descriptors.


4.6.9    New Prestoserve Subsystem Attribute

The Prestoserve subsystem attribute presto-buffer-hash-size controls the size of the Prestoserve buffer cache. The minimum value is 0, and the maximum value is 64 KB. The default value is 256 bytes. Under certain circumstances, Netscape Navigator may crash upon invocation when the current locale is ja_JP.deckanji. If this happens, a workaround for the problem is to add the following four lines to the /usr/i18n/lib/X11/ja_JP.deckanji/app-defaults/Netscape file:

netscape.xnlLanguage:   ja_JP.eucJP
netscape.XnlLanguage:   ja_JP.eucJP
Netscape.xnlLanguage:   ja_JP.eucJP
Netscape.XnlLanguage:   ja_JP.eucJP

This will force Navigator to run in the ja_JP.eucJP locale to avoid the crash.