Content added Content deleted
imported>DrOwl (New page: Solaris 10 upto and including Sol10u3 (and possibly later) don't mount swap files at boot that are located outside of the / and /usr filesystems <i>if</i> nfs/client is disabled. It's not...) |
(No difference)
|
Latest revision as of 17:23, 30 April 2008
Solaris 10 upto and including Sol10u3 (and possibly later) don't mount swap files at boot that are located outside of the / and /usr filesystems if nfs/client is disabled.
It's not always desirable to start nfs/client so we use an additional SMF service.
Put this in /var/svc/manifest/system/filesystem/RKswap.xml
(chmod it 444):-
<?xml version="1.0"?> <!DOCTYPE service_bundle SYSTEM "/usr/share/lib/xml/dtd/service_bundle.dtd.1"> <!-- Service to add additional swap files located outside of / and /usr at boot --> <service_bundle type='manifest' name='RKswap'> <service name='system/filesystem/RKswap' type='service' version='1'> <create_default_instance enabled='true' /> <single_instance/> <dependency name='single-user' grouping='require_all' restart_on='none' type='service'> <service_fmri value='svc:/milestone/single-user' /> </dependency> <dependency name='root' grouping='require_all' restart_on='none' type='service'> <service_fmri value='svc:/system/filesystem/local' /> </dependency> <!-- Start method timeout is infinite to handle potentially unbounded fsck times. --> <exec_method type='method' name='start' exec='/lib/svc/method/RKswap' timeout_seconds='30' /> <exec_method type='method' name='stop' exec=':true' timeout_seconds='0' /> <property_group name='startd' type='framework'> <propval name='duration' type='astring' value='transient' /> </property_group> <stability value='Unstable' /> <template> <common_name> <loctext xml:lang='C'> Add additional swap outside of / and /usr filesystems </loctext> </common_name> </template> </service> </service_bundle>
Then put the following at /lib/svc/method/RKswap
(chmod it 555):-
#!/sbin/sh # # Add additional 'swap files' located on filesystems other than / and /usr # # Gordon Johnston - 16/07/2007 # . /lib/svc/share/smf_include.sh # swapadd -2 adds swap files that were not mounted by the call to swapadd in filesystem/fs-usr /sbin/swapadd -2 exit $SMF_EXIT_OK
Then import the service:-
svccfg -v import /var/svc/manifest/system/filesystem/RKswap.xml
Then you can enable and start the service with:-
svcadm enable RKswap
To remove the swap again use 'swap -d' using svcadm disable will not umount the swap, it will however prevent it from being used at the next boot.
Don't forget to exclude the swap file from NetBackup!