On Sat, 2015-11-21 at 13:31 +0100, Miroslav Lachman wrote:> I noticed some weird behavior of "su" command in shell scripts > running > from cron after upgrade from FreeBSD 8.4 to 10.2. > > If I have this in script > > su -m www -c 'ls -l' > > then I get "TERM: Undefined variable" on the stderr if this script is > run from cron. > It works fine on FreeBSD 8.4 > > Is it intentional behavior? > > Miroslav LachmanI cannot reproduce your problem. I used the following script: #!/bin/sh echo "BEGIN TEST" echo $TERM su -m www -c 'ls -l' echo $TERM echo "END TEST" crontab is: * * * * * /root/test.sh and the result is: BEGIN TEST total 520765 -rw-r--r--?? 1 root? wheel? 724002816 Aug 12 11:45 FreeBSD-10.2- RELEASE-amd64-disc1.iso -rwxr-xr-x?? 1 root? wheel???????? 90 Nov 21 15:33 test.sh END TEST # freebsd-version 10.2-RELEASE-p7 -------------- next part -------------- A non-text attachment was scrubbed... Name: smime.p7s Type: application/x-pkcs7-signature Size: 5729 bytes Desc: not available URL: <http://lists.freebsd.org/pipermail/freebsd-stable/attachments/20151121/b9c67571/attachment.bin>
Michael B. Eichorn wrote on 11/21/2015 21:42:> On Sat, 2015-11-21 at 13:31 +0100, Miroslav Lachman wrote: >> I noticed some weird behavior of "su" command in shell scripts >> running >> from cron after upgrade from FreeBSD 8.4 to 10.2. >> >> If I have this in script >> >> su -m www -c 'ls -l' >> >> then I get "TERM: Undefined variable" on the stderr if this script is >> run from cron. >> It works fine on FreeBSD 8.4 >> >> Is it intentional behavior? >> >> Miroslav Lachman > > I cannot reproduce your problem. I used the following script: > > #!/bin/sh > > echo "BEGIN TEST" > echo $TERM > > su -m www -c 'ls -l' > > echo $TERM > echo "END TEST" > > crontab is: > * * * * * /root/test.sh > > and the result is: > > BEGIN TEST > > total 520765 > -rw-r--r-- 1 root wheel 724002816 Aug 12 11:45 FreeBSD-10.2- > RELEASE-amd64-disc1.iso > -rwxr-xr-x 1 root wheel 90 Nov 21 15:33 test.sh > > END TEST > > # freebsd-version > 10.2-RELEASE-p7 >It's a strange. I tried it on another machine which was installed as 10.1 and upgraded to 10.2-p5 - and I got Undefined variable again: BEGIN TEST TERM: Undefined variable. total 8984 drwxr-xr-x 2 root wheel 1536 Aug 12 13:48 bin -rw------- 1 root wheel 9134080 Nov 22 00:06 dns-terror.core -rw-r--r-- 1 root wheel 836 Nov 5 10:39 extensions.ini drwxr-xr-x 3 root wheel 512 Jul 29 17:49 settings drwxr-xr-x 8 root wheel 512 Aug 9 04:59 settings_atago drwxr-xr-x 2 root wheel 512 Aug 9 03:12 skel_devel -rwxr--r-- 1 root wheel 90 Nov 22 11:52 term_test.sh END TEST Miroslav Lachman