[colug-432] Okay, I've got to be doing something stupid... any thoughts on what?
Rick Troth
rmt at casita.net
Fri Jul 10 17:21:28 EDT 2015
Thanks for sharing a fun challenge.
Methinks it's an environment problem. SSHD and LOGIN set the environment
differently. So maybe something in (or lacking from) the TTY environment
is choking Perl.
There is /etc/environment which on my SUSE system is commented to be
handled by pam_env. SSHD may or may not drive PAM. Check
/etc/ssh/sshd_config for related settings.
Would be good to catch that error message before it vanishes.
I suggest wrapping the Perl script in a shell script with an explicit
/bin/sleep 5 (or whatever time you want) before the end.
On 07/10/2015 05:06 PM, William Yang wrote:
> I'm using a Centos 7 box -- noting that I'm usually an Ubuntu guy nowadays.
>
> To solve a specific problem, I've written a PERL script that I want to be
> the login shell of a user (the script manages several configuration
> functions and its expected use case is on one of the consoles). The script
> does all functions I expect it to. The first line of the script is '#!
> /usr/bin/perl' and it's chmod 0755.
>
> It works if I ssh onto the box as the user: ssh menu at host starts as
> expected. However, if I try to log in on tty1 or anything on the console,
> it displays stuff from login, then the console blanks and returns to a
> login prompt. There's some kind of error message that looks like it may
> say permission denied, but the screen refreshes and clears too quickly for
> me to really understand it. I tried for 90 minutes to get it to happen in
> a way I could capture it, without success.
>
> When I modified the script to 'printf("testing\n"); sleep(10);' at the
> beginning, I never saw the output, which makes me think the script isn't
> running.
>
> Setting rsyslog to log *.debug to a file doesn't show me anything that
> jumps out at me.
>
> I checked the pam configs and don't see anything that should restrict it.
>
> While I could address this by setting the shell to something like
> /bin/rbash and writing the perl invocation into .bash_profile, that's not
> what I really want to do. I'm confused as to why it's failing to invoke on
> the console, but not via ssh. I used to use scripts as login shells all
> the time.
>
> Anyone have any thoughts on what's going on?
>
> -Bill
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.colug.net/pipermail/colug-432/attachments/20150710/90010e2e/attachment.html
More information about the colug-432
mailing list