Roland Mainz wrote: > bugmail-sender at Sun.COM wrote: > > *Synopsis*: pkill fails on native and sn1 branded zones [snip] > > === *Public Comments* > > ======================================================== > > Appears to be due to ksh93 update: > > > > # ptree 101659 > > 100557 /usr/lib/ssh/sshd > > 100924 /usr/lib/ssh/sshd > > 100925 /usr/lib/ssh/sshd > > 100945 -ksh > > 100951 sh > > 101659 zlogin -l root nv /usr/bin/sleep 3600 > > 101660 sh -c /usr/bin/sleep 3600 > > 101663 /usr/bin/ksh93 /usr/bin/sleep 3600 > > > > sleep is a ksh93 script, so it's "-f" full process name is: > > > > /usr/bin/ksh93 /usr/bin/sleep 3600 > > > > This happens for the global zone as well: > > > > $ /usr/bin/sleep 3600& > > $ pkill sleep > > > > THe above does not kill the sleep, which appears as a process named > > > > /usr/bin/ksh93 /usr/bin/sleep 3600 > > > > Same goes for > > $ sleep 3600 & > > $ pkill sleep > > > > /usr/bin/sleep is a ksh93 script which calls it's own sleep builtin. > > function. > > > > For scripts which implement "sleep-for-syncronization" hackary, this could > > easily break them. > > > > *** (#1 of 1): 2009-01-14 00:47:44 GMT+00:00 stephen.lawrence at sun.com > > Stephen: Does the testcase work if you change $ pkill -z 2 -f > "^/usr/bin/sleep 128301" # to $ pkill -z 2 -f "/usr/bin/sleep 128301" # > (e.g. remove the leading '^' character from the process name pattern) ?
BTW: The "real" fix for this problem is to compile the shell scripts - in that case the compiled shell script /usr/bin/sleep will just appear as "just another binary application" in the $ ps -ef # output ... ... the trouble is that the matching kernel module ("shbinexec") was added to OS/Net in B106 and we need some builds before we're able to request a flag day and make the availablity of the kernel module a requirement... ;-/ How fast is a fix needed ? ---- Bye, Roland -- __ . . __ (o.\ \/ /.o) roland.mainz at nrubsig.org \__\/\/__/ MPEG specialist, C&&JAVA&&Sun&&Unix programmer /O /==\ O\ TEL +49 641 3992797 (;O/ \/ \O;)