Thursday, June 27, 2013

NFS enable root authorization for client



client

root@HPHost:/hroot# grep /NFSShare /etc/mnttab
SolHost:/NFSShare /NFSShare nfs rsize=32768,wsize=32768,NFSv3,dev=4 0 0 1374220408
root@HPHost:/hroot#
root@HPHost:/hroot#
root@HPHost:/hroot# ls -ld /NFSShare
drwxrwxrwx  16 100028       grplos          16 Jul 22 15:52 /NFSShare
root@HPHost:/hroot# 

root@HPHost:/NFSShare/CS4_SPM# touch test3


-rw-r-----   1 nobody     nogroup          0 Jul 22 16:07 test3



Server

(SolHost:/root)# dfshares
RESOURCE                                  SERVER ACCESS    TRANSPORT
  SolHost:/NFSShare               SolHost  -         -
(SolHost:/root)#


enable root access to all host

(SolHost:/root)# share -F nfs -o rw,anon=0 /NFSShare


(SolHost:/root)# exportfs -v
share -F nfs
-               /NFSShare   rw,anon=0   ""
(SolHost:/root)#
(SolHost:/root)#


client

root@HPHost:/NFSShare/CS4_SPM# touch test7
root@HPHost:/NFSShare/CS4_SPM# ls -ltr test7
-rw-r-----   1 root       sys              0 Jul 22 16:17 test7
root@HPHost:/NFSShare/CS4_SPM#

Thursday, May 16, 2013

VxVM - Fixing plex in DISABLED IOFAIL state


Filesystem is un-mountable because of plex in DISABLED IOFAIL state:


The filesystem fails to mount 


(HostSol10:/root)# mount -F vxfs /dev/vx/dsk/DGDB1/VOLFSARC /DGDB1
UX:vxfs mount: ERROR: V-3-20003: Cannot open /dev/vx/dsk/DGDB1/VOLFSARC: No such device or address
UX:vxfs mount: ERROR: V-3-24996: Unable to get disk layout version
(HostSol10:/root)#


The volume is shown as in disabled state

(HostSol10:/root)# vxprint -g DGDB1 -v
TY NAME         ASSOC        KSTATE   LENGTH   PLOFFS   STATE    TUTIL0  PUTIL0
v  VOLFSARC fsgen      DISABLED 9013559296 -      ACTIVE   -       -
(HostSol10:/root)#

Starting the volume also fails

(HostSol10:/root)# vxvol -g DGDB1 startall
VxVM vxvol ERROR V-5-1-1198 Volume VOLFSARC has no CLEAN or non-volatile ACTIVE plexes
(HostSol10:/root)#

Detailed status of the volume shows DISABLED IOFAIL state

(HostSol10:/root)# vxprint -htg DGDB1 -p | more
PL NAME         VOLUME       KSTATE   STATE    LENGTH   LAYOUT    NCOL/WID MODE
SD NAME         PLEX         DISK     DISKOFFS LENGTH   [COL/]OFF DEVICE   MODE
SV NAME         PLEX         VOLNAME  NVOLLAYR LENGTH   [COL/]OFF AM/NM    MODE
SC NAME         PLEX         CACHE    DISKOFFS LENGTH   [COL/]OFF DEVICE   MODE

pl VOLFSARC-01 VOLFSARC DISABLED IOFAIL 9013559296 CONCAT -    RW
sd DISK-222A-01 VOLFSARC-01 DISK-222A 0 209643136 0 emc0_222a ENA
sd DISK-222B-01 VOLFSARC-01 DISK-222B 0 209643136 209643136 emc0_222b ENA
sd DISK-222C-01 VOLFSARC-01 DISK-222C 0 209643136 419286272 emc0_222c ENA
sd DISK-222D-01 VOLFSARC-01 DISK-222D 0 209643136 628929408 emc0_222d ENA
sd DISK-222E-01 VOLFSARC-01 DISK-222E 0 209643136 838572544 emc0_222e ENA
sd DISK-222F-01 VOLFSARC-01 DISK-222F 0 209643136 1048215680 emc0_222f ENA
sd DISK-2228-01 VOLFSARC-01 DISK-2228 0 209643136 1257858816 emc0_2228 ENA
sd DISK-2229-01 VOLFSARC-01 DISK-2229 0 209643136 1467501952 emc0_2229 ENA
(HostSol10:/root)#

Once all is verified and no errors seen in disk or SAN, clean the plex

(HostSol10:/root)# vxmend fix clean VOLFSARC-01

(HostSol10:/root)# vxprint -htg DGDB1 -v | grep v
v  VOLFSARC -          DISABLED ACTIVE   9013559296 SELECT  -        fsgen
(HostSol10:/root)#
(HostSol10:/root)#

There seems to be some disk reporting failing status. failing status is differnt from failed status reported by vxvm. The disk showing failing status may be because of a transient error rather than a truly failing disk. In this case, you can simply clear the status. If the failing status continues to reappear for the same disk, it may be a sign that there is genuine, hardware problem with the disk, or with the SAN connectivity

(HostSol10:/root)# vxdisk list | grep -i fai
emc0_24ab    auto:cdsdisk    DISK-DB3-24AB  DGDB3   online thinrclm failing
emc0_24a3    auto:cdsdisk    DISK-DB3-24A3  DGDB3   online thinrclm failing
emc0_38c0    auto:cdsdisk    DISK-DB4-38c0  DGDB4   online thinrclm failing
emc0_39a0    auto:cdsdisk    DISK-DB6-39A0  DGDB6   online thinrclm failing
(HostSol10:/root)#


The volume can be forcefully started and the FS mounted.

(HostSol10:/root)#
(HostSol10:/root)# vxvol -g DGDB1 -f start VOLFSARC
(HostSol10:/root)#
(HostSol10:/root)# vxprint -g DGDB1 -v
TY NAME         ASSOC        KSTATE   LENGTH   PLOFFS   STATE    TUTIL0  PUTIL0
v  VOLFSARC fsgen      ENABLED  9013559296 -      ACTIVE   -       -
(HostSol10:/root)#

Saturday, May 4, 2013

VxVM - vxconfigd debug mode operation

VERITAS Volume Manager (tm) provides the option of logging console output to a file. The Volume Manager configuration daemon vxconfigdcontrols whether such logging is turned on or off, which by default, is disabled. If enabled, the default log file is vxconfigd.log, and its location varies by operating system:

SolHost10:/root#vxconfigd -x 6 -k -x log -x logfile=/tmp/vxconfigd.out
VxVM vxconfigd DEBUG V-5-1-24577

VOLD STARTUP pid=54427 debug-level=6 logfile=/tmp/vxconfigd.out

VxVM vxconfigd DEBUG V-5-1-681 IOCTL GET_VOLINFO: return 0(0x0)
VxVM vxconfigd DEBUG V-5-1-23909 Kernel version 5.1_SP1
VxVM vxconfigd DEBUG V-5-1-681 IOCTL KTRANS_ABORT: failed: errno=22 (Invalid argument)
VxVM vxconfigd DEBUG V-5-1-681 IOCTL GET_KMEM id=0 size=84: return 0(0x0)
        Results: got 84 bytes
VxVM vxconfigd DEBUG V-5-1-681 IOCTL GET_KMEM id=2 size=6384: return 0(0x0)
        Results: got 6384 bytes
VxVM vxconfigd DEBUG V-5-1-681 IOCTL GET_KMEM id=1 size=0: return 0(0x0)
        Results: got 0 bytes
VxVM vxconfigd DEBUG V-5-1-681 IOCTL SET_KMEM id=1 size=0: return 0(0x0)
VxVM vxconfigd DEBUG V-5-1-681 IOCTL SET_KMEM id=0 size=84: return 0(0x0)
VxVM vxconfigd DEBUG V-5-1-5657 mode_set: oldmode=none newmode=enabled
VxVM vxconfigd DEBUG V-5-1-5656 mode_set: locating system disk devices
VxVM vxconfigd DEBUG V-5-1-681 IOCTL GET_DISKS rids: 0.17: failed: errno=2 (No such file or directory)
VxVM vxconfigd DEBUG V-5-1-5477 find_devices_in_system: locating system disk devices
VxVM vxconfigd DEBUG V-5-1-16309 ddl_find_devices_in_system: Thread pool initialization succeed
VxVM vxconfigd DEBUG V-5-1-16366 devintf_find_soldevices: Using libdevinfo for scanning device tree
VxVM vxconfigd DEBUG V-5-1-14578 ctlr_list_insert: Creating entry for c-1, state=V
VxVM vxconfigd DEBUG V-5-1-5294 ctlr_list_insert: check for c-1
VxVM vxconfigd DEBUG V-5-1-14579 ctlr_list_insert: entry already present for c-1, state=V
VxVM vxconfigd DEBUG V-5-1-5294 ctlr_list_insert: check for c-1
VxVM vxconfigd DEBUG V-5-1-14579 ctlr_list_insert: entry already present for c-1, state=V
VxVM vxconfigd DEBUG V-5-1-21563 ddl_add_hba: Added hba c1
VxVM vxconfigd DEBUG V-5-1-21567 ddl_add_port: Added port c1_p0 under hba c1
VxVM vxconfigd DEBUG V-5-1-21569 ddl_add_target: Added target c1_p0_t0 under port c1_p0
.....
...
VxVM vxconfigd DEBUG V-5-1-14886 ddl_vendor_info: nvlist[3] is ANAME=PILLAR-AXIOM
VxVM vxconfigd DEBUG V-5-1-14885 ddl_vendor_info: name = ANAME values = 1
VxVM vxconfigd DEBUG V-5-1-14884 ddl_vendor_info: library: libvxpillaraxiom.so name: ANAME value[0]: PILLAR-AXIOM

VxVM vxconfigd DEBUG V-5-1-14886 ddl_vendor_info: nvlist[4] is ASL_VERSION=vm-5.1.100-rev-1
VxVM vxconfigd DEBUG V-5-1-14885 ddl_vendor_info: name = ASL_VERSION values = 1
VxVM vxconfigd DEBUG V-5-1-14884 ddl_vendor_info: library: libvxpillaraxiom.so name: ASL_VERSION value[0]: vm-5.1.100-rev-1

VxVM vxconfigd DEBUG V-5-1-14882 ddl_vendor_info exits with success for library = libvxpillaraxiom.so
VxVM vxconfigd DEBUG V-5-1-0 Check ASL - libvxpp.so
VxVM vxconfigd DEBUG V-5-1-14563 checkasl: ASL Key file - /etc/vx/aslkey.d/libvxpp.key
VxVM vxconfigd DEBUG V-5-1-14880 ddl_vendor_info entered for library = libvxpp.so
VxVM vxconfigd ERROR V-5-1-0 Segmentation violation - core dumped
SolHost10:/root#

The higher the debug level (0-9), the greater the output

Thursday, May 2, 2013

Solaris - Booting into a zfs root from ok prompt

If the root is in zfs, to boot into a specific Boot Environment, below process can be used

In our case we have 2 BE's but one is not visible 

{0} ok boot -L
Boot device: /pci@400/pci@0/pci@8/scsi@0/disk@0:a  File and args: -L
1 sol10u8
Select environment to boot: [ 1 - 1 ]: 1

To boot the selected entry, invoke:
boot [] -Z rpool/ROOT/sol10u8


Program terminated

However, we can still invoke it from ok prompt, if we know the zfs root fs name.


{0} ok boot -Z rpool/ROOT/sol10u9


T5240, No Keyboard
Copyright (c) 1998, 2012, Oracle and/or its affiliates. All rights reserved.
OpenBoot 4.33.6.b, 130848 MB memory available, Serial #94648388.
Ethernet address 0:21:28:a4:38:44, Host ID: 85a43844.



Boot device: /pci@400/pci@0/pci@8/scsi@0/disk@0:a  File and args: -Z rpool/ROOT/sol10-u9
SunOS Release 5.10 Version Generic_147440-11 64-bit
Copyright (c) 1983, 2012, Oracle and/or its affiliates. All rights reserved.
WARNING: /scsi_vhci/ssd@g60060e80153269000001326900002023 (ssd16):

        Corrupt label; wrong magic number

Thursday, March 28, 2013

Unix Move a process to background and bring it back to foreground

It is possible to be move a process to background so that we have the prompt back for other activities and bring the process that was send background to foreground.



Use CTRL+z to suspends a process (SIGTSTP)

(MySolaris10:/var/adm)#
(MySolaris10:/var/adm)# cp -rp lastlog lastlog.old
^Z
[1]+  Stopped                 cp -rp lastlog lastlog.old
(MySolaris10:/var/adm)#
(MySolaris10:/var/adm)#

Use bg command to send the command to background 

(MySolaris10:/var/adm)#
(MySolaris10:/var/adm)# bg
[1]+ cp -rp lastlog lastlog.old &
(MySolaris10:/var/adm)#

Once command completes, it returns the status of the pid

(MySolaris10:/var/adm)#
[1]+  Done                    cp -rp lastlog lastlog.old
(MySolaris10:/var/adm)#
(MySolaris10:/var/adm)#

Using fg will bring the process to foreground.

Tuesday, March 26, 2013

diff - /usr/sbin/ps vs /usr/ucb/ps

Difference between /usr/sbin/ps & /usr/ucb/ps command


The command that is equivalent to /usr/usb/ps -axu is "ps -aef"

/usr/ucb/ps is BSD 
/usr/sbin/ps is SVR4 


/usr/ucb/ps -www  ==as wide as possible, this over comes the 80 column restriction that is seen in normal ps -ef command.

To see which executable is being run by a process, '/usr/ucb/ps auxwww' can be used. it shows you the exact command that invoked all the processes you see via 'ps'.

Wednesday, February 20, 2013

modinfo


solaris1:/root# modinfo
 Id Loadaddr   Size Info Rev Module Name
  0  1000000 1f0bb8   -   0  unix ()
  1  10af380 23c6b0   -   0  genunix ()
  2  1294a90   1620   -   0  platmod ()
  3  1295f00   d5c8   -   0  FJSV,SPARC64-VII ()
  5  129e000   4be8   1   1  specfs (filesystem for specfs)
  6  12a29e8   38a8   3   1  fifofs (filesystem for fifo)
  7 7afa0000  18750 218   1  dtrace (Dynamic Tracing)
  8  12a60c8   4248  16   1  devfs (devices filesystem 1.16)
  9  12a9f78  1c0a8   5   1  procfs (filesystem for proc)
 12  12c7248   39f8   1   1  TS (time sharing sched class)
 13  12ca460    8dc   -   1  TS_DPTBL (Time sharing dispatch table)
 14  12ca4f0  384a0   2   1  ufs (filesystem for ufs)
 15  1300138    21c   -   1  fssnap_if (File System Snapshot Interface)
 16  13002b0   1d28   1   1  rootnex (sun4 root nexus 1.15)
 17  1301b20    1bc  57   1  options (options driver)
..............


solaris1:/root# modinfo -c
 Id    Loadcnt Module Name                            State
  0          1 unix                             LOADED/INSTALLED
  1          1 genunix                          LOADED/INSTALLED
  2          1 platmod                          LOADED/INSTALLED
  3          1 FJSV,SPARC64-VII                 LOADED/INSTALLED
  4          0 cl_bootstrap                     UNLOADED/UNINSTALLED
  5          1 specfs                           LOADED/INSTALLED
  6          1 fifofs                           LOADED/INSTALLED
  7          1 dtrace                           LOADED/INSTALLED
  8          1 devfs                            LOADED/INSTALLED
  9          1 procfs                           LOADED/INSTALLED
 10          1 swapgeneric                      UNLOADED/UNINSTALLED
 11          0 lbl_edition                      UNLOADED/UNINSTALLED
 12          1 TS                               LOADED/INSTALLED
..............


modload - load a kernel module (filename)
modunload - unload a module (using module_id)

Sunday, February 10, 2013

Solaris x86 - Console GUI and CLI



On Solaris x86 servers, Console can be launched from both GUI and the CLI.

start /SP/console

or

Web GUI -> Remote Control -> Launch Remote Console

Both the consoles can show the POSt and grub load process. 
But once the OS is loaded after the OS selection screen, one of the screen can go Black based on the eeprom setting.

eg)

MySolaris:/root# prtdiag -v | head -1
System Configuration: Sun Microsystems SUN FIRE X4250
MySolaris:/root#
MySolaris:/root# eeprom | grep console
console=text
MySolaris:/root#


If console = 'ttya' then the serial console (/SP/console) will be active
If console = 'text' then the VGA port (i.e., the redirected remote console) will be active.

If you change the eeprom console setting, an O/S reboot will be needed.

Tuesday, January 29, 2013

Resetting SC from the machine - v490


Sun-Fire-V490's rsc can be reset from the machine


(MySolaris:/root)# cd /usr/platform/`uname  -i`/
(MySolaris:/usr/platform/SUNW,Sun-Fire-V490)#


(MySolaris:/usr/platform/SUNW,Sun-Fire-V490)# cd rsc/
(MySolaris:/usr/platform/SUNW,Sun-Fire-V490/rsc)#


(MySolaris:/usr/platform/SUNW,Sun-Fire-V490/rsc)# ls
rsc-config      rsc-initscript  rscadm
(MySolaris:/usr/platform/SUNW,Sun-Fire-V490/rsc)#


(MySolaris:/usr/platform/SUNW,Sun-Fire-V490/rsc)# ./rscadm resetrsc
Are you sure you want to reboot RSC (y/n)?  y
(MySolaris:/usr/platform/SUNW,Sun-Fire-V490/rsc)#


(MySolaris:/usr/platform/SUNW,Sun-Fire-V490/rsc)# uname -a
SunOS MySolaris 5.10 Generic_147440-11 sun4u sparc SUNW,Sun-Fire-V490
(MySolaris:/usr/platform/SUNW,Sun-Fire-V490/rsc)#

Sunday, January 27, 2013

Login delays



su - < nis user> is taking a long time ( more than 20 sec )


Some introduction to the problem:

When is the slowness observed su only or even with telnet and ssh?

Answer: Even telnet and ssh is slow. Basically “su - ” is taking long time for all the user.

When slowness is observed,is it just before you get logged in or even after that with commands?

Answer: Only the login is very slow. Once login everything looks normal.


(MySolaris:/)# time su - schweitz -c "hostname"
Sun Microsystems Inc. SunOS 5.10 Generic January 2005

#############################################################
# This server is using NIS 
#############################################################
MySolaris

real 0m20.180s
user 0m0.040s
sys 0m0.070s
(MySolaris:/)#


First test:

Difference in time between "su schweitz" and "su - schweitz".

With "su - username" the HOME directory has to be mounted and the shell profiles (system and user specific) get executed. (sh,ksh: /etc/profile, $HOME/.profile; for C-shell ist equivalent). May be those profiles contain command wich run slow (like 'quota').

(MySolaris:/)# time su schweitz -c "hostname"
(MySolaris:/)# time su - schweitz -c "hostname"

su is working fine. su - is taking long time

Second Test:

All users have csh as its shell

rename /etc/.login (used by csh") :
# mv /etc/.login /etc/.login.not

Then test "su - xxx" :
# time su - schweitz -c "hostname"

after moving the /etc/.login, it is indeed fast

(MySolaris:/)# time su - schweitz -c "hostname"
MySolaris

real 0m0.055s
user 0m0.016s
sys 0m0.027s
(MySolaris:/)# 

The real problem:

In the resultant truss output, it was noted that quota command takes more than 20 sec. 
So issue seems to be with quota command. The "quota" command also checks NFS mounted file systems. One of the NFS servers seems not to respond. So removed an NFS mount and then the su was fast. 

The 20 sec delay is caused by checking quotas on NFS mounted file systems; it occurs when some NFS server does not respond.


Thursday, January 17, 2013

Clearing a minor fmadm faulty alert



(MySolaris:/)# fmadm faulty
--------------- ------------------------------------  -------------- ---------
TIME            EVENT-ID                              MSG-ID         SEVERITY
--------------- ------------------------------------  -------------- ---------
Dec 16 22:36:07 96c775c2-6764-6eae-ea5b-ea57f62cc2c0  FMD-8000-0W    Minor

Host        : MySolaris
Platform    : SUNW,Sun-SPARC Enterprise T5240        Chassis_id  :
Product_sn  :

Fault class : defect.sunos.fmd.nosub
FRU         : None
                  faulty

Description : The Solaris Fault Manager received an event from a component to
              which no automated diagnosis software is currently subscribed.
              Refer to http://sun.com/msg/FMD-8000-0W for more information.

Response    : Error reports from the component will be logged for examination
              by Sun.

Impact      : Automated diagnosis and response for these events will not occur.

Action      : Run pkgchk -n SUNWfmd to ensure that fault management software is
              installed properly.  Contact Sun for support.

(MySolaris:/)#



The FMADM fault currently logged on this system is caused by a logical inconsistency in the checkpointed data, causing the system do disable cpumem-diagnosis. As described in the attached document, this in turn, causes the FMD-8000-0W defect.sunos.fmd.nosub on the next transient memory error which should have been handled by the cpumem-diagnosis module. We can clear the FMD-8000-0W, but any little thing which cpumem-diagnosis would normally handle will trigger another FMD-8000-0W defect.sunos.fmd.nosub. Please see belowtThe resolution for this issue:

First roll the logs and restart the FMA daemon to keep the history.

logadm -p now -s 1b /var/fm/fmd/errlog
logadm -p now -s 1b /var/fm/fmd/fltlog

svcadm restart fmd


...wait two minutes...

Now scrub the checkpoint files


svcadm disable -st fmd
find /var/fm/fmd/ckpt -type f | xargs rm

svcadm enable fmd


...wait 2 minutes...

Now see if everything is clear

fmadm config - check that cpumem-diagnosis is active

fmadm faulty -a - shouldn't return anything

also check to see if we logged any new errors on fmd startup; if we did, we'll need to check further...

fmdump -e

should return nothing

Monday, October 22, 2012

NFS share issues with multiple ip on a host



NAS box has a share which is to be mounted on a client


NAS box: myNasBox
Client: SolZone1


NAS box has provided access to the ip/hostname of the host

(SolZone1:/)# nslookup SolZone1
Server:         10.10.134.3
Address:        10.10.134.3#53

Name:   SolZone1.bc
Address: 45.26.20.216

But the mounting failed with permission error

(SolZone1:/)# mount -F nfs -o rw,bg,soft,vers=3 myNasBox:/nasdump/nasdata /nasdata
nfs mount: myNasBox:/nasdump/nasdata: Permission denied


Issue identified as below

(SolZone1:/)# traceroute myNasBox
traceroute: Warning: Multiple interfaces found; using 10.12.12.12 @ aggr535001:3
traceroute to myNasBox (10.12.11.45), 30 hops max, 40 byte packets
 1  10.13.142.2 (10.13.142.2)  0.713 ms  0.710 ms  0.574 ms
 2  172.27.128.113 (172.27.128.113)  3.354 ms  3.056 ms  2.407 ms
 3  172.27.128.142 (172.27.128.142)  2.375 ms  8.416 ms  2.308 ms
 4  nas-box-14 (10.12.11.45)  1.406 ms  1.481 ms  1.427 ms
(SolZone1:/)#

The traffic comes through the ip 10.12.12.12

(SolZone1:/)# nslookup 10.12.12.12
Server:         10.10.134.3
Address:        10.10.134.3#53

12.142.120.10.in-addr.arpa      name = SolZone1-lb.bc.

Multiple ip's for the host

(SolZone1:/)# ifconfig -a
lo0:7: flags=2001000849 mtu 8232 index 1
        inet 127.0.0.1 netmask ff000000
aggr209001:1: flags=201000843 mtu 1500 index 4
        inet 45.16.20.26 netmask fffffe00 broadcast 45.216.205.255
aggr302001:3: flags=201000843 mtu 1500 index 5
        inet 45.29.1.8 netmask ffffff00 broadcast 45.219.1.255
aggr535001:3: flags=201000843 mtu 1500 index 6
        inet 10.12.12.12 netmask ffffff00 broadcast 10.13.142.255
nxge200006:1: flags=201000843 mtu 1500 index 7
        inet 10.28.18.165 netmask fffffe00 broadcast 10.48.129.255
(SolZone1:/)#


NAS is adapted to permit the ip 10.12.12.12.

Now the mount is successfull

(SolZone1:/)# mount -F nfs -o rw,bg,soft,vers=3 myNasBox:/nasdump/nasdata /nasdata

(SolZone1:/)# bdf /nasdata
Filesystem            kbytes    used   avail capacity  Mounted on
myNasBox:/nasdump/nasdata
                     4017992400 1317611268 2722172800    33%    /nasdata
(SolZone1:/)#

"kill -9" fails... why?


Kill -9 >> Process still alive !!!!


A signal is a message sent to a process to interrupt it and cause a response. If the process has been designed to respond to signals of the type sent it does so; otherwise, it terminates. There are 42 signals, as defined in the signal(5) man page. 


Why sometime process cannot be killed with kill -9?

If the process is hung waiting for I/O (or some other kernel resource) it will behave that way. The problem is the process is hung waiting for an I/O to return and is unable to service the signal. So it never gets killed. Usually reboot is the only solution for this condition.

Sometimes a process will be waiting for kernel to do some I/O and the kernel is waiting for a timeout because of a hardware error, etc. This can happen if you try to do a file copy for instance and a harddrive fails. The 'cp' command may not be killable until the kernel timeout has occurred (this may hang indefinately).

stale NFS mounts will cause the issue if hard mount is used. One way to avoid hung processes is to "soft" mount the NFS mounts. 


https://forums.oracle.com/thread/2398407

http://docs.oracle.com/cd/E19455-01/806-1360/processmanagerusing-62/index.html

Monday, October 15, 2012

HP-UX sw* operations


HP-UX Package install/uninstall/list operations


### Find the available depot on a host

in the local host :

**swlist -i -d @ /var/opt/pkgs/depots/Rel.11.31/apps

In a remote host :

root@MyHPHOST:/hroot# swlist -l depot -s MyHPHOST2 -d /var/opt/pkgs/depots/Rel.11.31/apps
# Initializing...
# Target "MyHPHOST2" has the following depot(s):
  /var/opt/pkgs/depots/Rel.11.23/core
  /var/opt/pkgs/depots/Rel.11.23/apps
  /var/opt/pkgs/depots/Rel.11.31/core
  /var/opt/pkgs/depots/Rel.11.31/apps
  /var/opt/pkgs/depots/Rel.11.11/core
  /var/opt/pkgs/depots/Rel.11.11/apps
  /var/spool/sw
root@MyHPHOST:/hroot#


### Find a specific Package in the depot

root@MyHPHOST:/hroot# swlist -d -l product NMSAP @ MyHPHOST2:/var/opt/pkgs/depots/Rel.11.31/apps
# Initializing...
# Contacting target "MyHPHOST2"...
#
# Target:  MyHPHOST2:/var/opt/pkgs/depots/Rel.11.31/apps
#

  NMSAP         4.0            NetWorker Module for SAP with Oracle
root@MyHPHOST:/hroot#


root@MyHPHOST:/hroot# swlist -d -l product @ MyHPHOST2:/var/opt/pkgs/depots/Rel.11.31/apps | grep NMSAP
  NMSAP                 4.0            NetWorker Module for SAP with Oracle
root@MyHPHOST:/hroot#



### Find the list of files in a specific package

root@MyHPHOST:/hroot# swlist -d -l file NMSAP @ MyHPHOST2:/var/opt/pkgs/depots/Rel.11.31/apps
# Initializing...
# Contacting target "MyHPHOST2"...
#
# Target:  MyHPHOST2:/var/opt/pkgs/depots/Rel.11.31/apps
#

# NMSAP                 4.0            NetWorker Module for SAP with Oracle
# NMSAP.lgto-nmsap      4.0            NetWorker Module for SAP with Oracle
  /etc/init.utl
  /etc/nsrsapsv.cfg
  /etc/nwsldreg.xml
  /opt/networker/bin/backint
  /opt/networker/bin/nsrsapadm
  /opt/networker/bin/nsrsapprobe
  /opt/networker/bin/nsrsapra
  /opt/networker/bin/nsrsaprachild
  /opt/networker/bin/nsrsapsv
  /opt/networker/bin/sapclone
  /opt/networker/bin/sapra.jar
  /opt/networker/bin/sapra_res.jar
  /opt/networker/lib/apps/nmsap/hpux64/libcommonssl.7.6.dev.139.so
  /opt/networker/man/man8/backint.8
  /opt/networker/man/man8/nsrsapadm.8
  /opt/networker/man/man8/nsrsapprobe.8
  /opt/networker/man/man8/nsrsapsv.8
  /opt/networker/man/man8/sapclone.8
  /usr/lib/libnworasap.so
root@MyHPHOST:/hroot#


### Remove a package

root@MyHPHOST:/hroot# swlist -l product | grep NMSAP
  NMSAP                 3.5            EMC NetWorker Module for SAP with Oracle
root@MyHPHOST:/hroot#
root@MyHPHOST:/hroot# swremove NMSAP

=======  08/21/13 14:26:51 METDST  BEGIN swremove SESSION
         (non-interactive) (jobid=MyHPHOST-0432)

       * Session started for user "root@MyHPHOST".

       * Beginning Selection
       * Target connection succeeded for "MyHPHOST:/".
       * Software selections:
             NMSAP.lgto-nmsap,l=/,r=3.5,a=HP-UX_11.XX_64
       * Selection succeeded.


       * Beginning Analysis
       * Session selections have been saved in the file
         "/hroot/.sw/sessions/swremove.last".
       * The analysis phase succeeded for "MyHPHOST:/".
       * Analysis succeeded.


       * Beginning Execution
       * The execution phase succeeded for "MyHPHOST:/".
       * Execution succeeded.


NOTE:    More information may be found in the agent logfile using the
         command "swjob -a log MyHPHOST-0432 @ MyHPHOST:/".

=======  08/21/13 14:27:11 METDST  END swremove SESSION
         (non-interactive) (jobid=MyHPHOST-0432)

root@MyHPHOST:/hroot# swlist -l product | grep NMSAP
root@MyHPHOST:/hroot#



### Install a package



root@MyHPHOST:/hroot# swinstall -s MyHPHOST2:/var/opt/pkgs/depots/Rel.11.31/apps NMSAP

=======  08/21/13 14:30:47 METDST  BEGIN swinstall SESSION
         (non-interactive) (jobid=MyHPHOST-0433)

       * Session started for user "root@MyHPHOST".

       * Beginning Selection
       * Target connection succeeded for "MyHPHOST:/".
       * Source connection succeeded for
         "MyHPHOST2:/var/opt/pkgs/depots/Rel.11.31/apps".
       * Source:
         MyHPHOST2:/var/opt/pkgs/depots/Rel.11.31/apps
       * Targets:                MyHPHOST:/
       * Software selections:
             NMSAP.lgto-nmsap,r=4.0,a=HP-UX_11.XX_64
           + NetWorker.nwr-cbin,r=7.6.3,a=HP-UX_11.XX_64
       * A "+" indicates an automatic selection due to dependency or
         the automatic selection of a patch or reference bundle.
       * Selection succeeded.


       * Beginning Analysis and Execution
       * Session selections have been saved in the file
         "/hroot/.sw/sessions/swinstall.last".
       * "MyHPHOST:/":  1 filesets have a version with a higher
         revision number already installed.
ERROR:   "MyHPHOST:/":  The software dependencies for 1 products or
         filesets cannot be resolved.
       * The analysis phase failed for "MyHPHOST:/".
       * Analysis and Execution had errors.


ERROR:   More information may be found in the agent logfile using the
         command "swjob -a log MyHPHOST-0433 @ MyHPHOST:/".

=======  08/21/13 14:31:03 METDST  END swinstall SESSION
         (non-interactive) (jobid=MyHPHOST-0433)

root@MyHPHOST:/hroot# 

*** Failed becasue of dependencies. To overcomes this, evaluate the dependency condition and exclude it if possible


root@MyHPHOST:/hroot# swinstall -s MyHPHOST2:/var/opt/pkgs/depots/Rel.11.31/apps -x enforce_dependencies=false NMSAP





root@MyHPHOST:/hroot# swlist -l product | grep NMSAP
  NMSAP                 4.0            NetWorker Module for SAP with Oracle
root@MyHPHOST:/hroot#



Wednesday, October 10, 2012

FTP site command



UMASK for ftp can be set globally by adding the proper value for umask in the file /etc/ftpd/ftpaccess


But how can umask be used from a client system to be executed on the remote server instead of the global setting?

To send some commands from client to server where it can be executed.

For eg) To set UMASK for a user on the remote server, use 


ftp> site UMASK



SITE command can be used for a number of other operations as well as seen in the ftp help menu



ftp> site help

214-The following SITE commands are recognized (* =>'s unimplemented).
   UMASK           GROUP           INDEX           GROUPS
   IDLE            GPASS           EXEC            CHECKMETHOD
   CHMOD           NEWER           ALIAS           CHECKSUM
   HELP            MINFO           CDPATH
214 Direct comments to ftp-bugs@solaris1.
ftp>


Friday, September 28, 2012

Pluggable Authentication Module (PAM)


PAM allows various authentication technologies such as Kerberos, RSA, smart cards and DCE into system entry services such as login, passwd, rlogin, telnet, ftp, and su without changing any of these services.

PAM configuration file pam.conf is used to manage how these services use PAM framework. 

How it works?

Application Services (rlogin, telnet, ssh etc...) => PAM API (Refers pam.conf) => PAM Modules to manage the access


The entries in /etc/pam.conf or in PAM policy files are in one of the following formats:

"service-name module-type control-flag module-path module-options"


eg) LDAP configuration in pam.conf.

more /etc/pam.conf | grep ldap

zone03:/root# more /etc/pam.conf | grep ldap
login   auth required           pam_ldap.so.1 use_first_pass
rlogin  auth required           pam_ldap.so.1 use_first_pass
rsh     auth required           pam_ldap.so.1 use_first_pass
ppp     auth required           pam_ldap.so.1 use_first_pass
other   auth required           pam_ldap.so.1 use_first_pass
passwd  auth required           pam_ldap.so.1 use_first_pass

User Creation issues and some checks


(zone01:/)# useradd -u 890 -g 52 -d /twsp/tws -c "Master user" -s /bin/ksh Master
UX: useradd: ERROR: group 582 does not exist.  Choose another.

(zone01:/)# groupadd -g 52 twspgr

(zone01:/)# useradd -u 890 -g 52 -d /twsp/tws -c "Master user" -s /bin/ksh Master
UX: useradd: ERROR: Inconsistent password files.  See pwconv(1M).
(zone01:/)#
(zone01:/)# pwconv
(zone01:/)#
(zone01:/)# useradd -u 890 -g 52 -d /twsp/tws -c "Master user" -s /bin/ksh Master
UX: useradd: ERROR: Inconsistent password files.  See pwconv(1M).

(zone01:/)# cat /etc/passwd |grep Master

(zone01:/)# useradd -u 890 -g 52 -d /twsp/tws -c "Master user" -s /bin/ksh Master
UX: useradd: ERROR: Inconsistent password files.  See pwconv(1M).

(zone01:/)#
(zone01:/)# wc -l /etc/passwd /etc/shadow
      27 /etc/passwd
      27 /etc/shadow
      54 total


(zone01:/)# pwck

uucp:x:5:5:uucp Admin:/usr/lib/uucp:
        Login directory not found

nuucp:x:9:9:uucp Admin:/var/spool/uucppublic:/usr/lib/uucp/uucico
        Login directory not found
        Optional shell file not found
(zone01:/)#
(zone01:/)#
(zone01:/)# ls -ld /usr/lib/uucp
/usr/lib/uucp: No such file or directory

(zone01:/)# grpck


utlitygr::360:cdpuck,cdpucka,cdpucks,cdpuckm
        Group name too long
(zone01:/)#
(zone01:/)#
(zone01:/)# ls /var/spool/uucppublic
/var/spool/uucppublic: No such file or directory
(zone01:/)# ls /usr/lib/uucp/uucico
/usr/lib/uucp/uucico: No such file or directory
(zone01:/)#