On some systems, rsh is a "remote" shell. On other systems, rsh is a "restricted" shell. On SunOS, I think you'll find that depending on how $path (if you are using a csh derivative shell) or $PATH (if you are using a Bourne shell (sh) derivative) is set in your environment, rsh may be a link to sh (and treated as a restricted shell) instead of being a link to ssh (and treated as a remote shell).
What shell are you using as your login shell for the account that is having problems on SunOS? What output do you get from the command:
This User Gave Thanks to Don Cragun For This Post:
The problem isn't on the Solaris (Whole Root Zone) server, all the other Unix servers can execute the command without issue.
This Redhat 7.4 server is the only one on the estate exibiting a problem, the rsh action fails only when a parameter like uname is passed. A simple rsh to the box works fine - I know that this uses rlogin and have been investigating further this morning.
I will spend more time on this today and will go through the earlier posts to check what people have suggested, here's your request;
It all hangs and you have to "ctrl C" to break out, but by doing;
So, if i get that right: rsh hangs until you press CTRL-C when called from a script (?) but works when issued manually, from the commandline.
First suspicion is that there is a difference in the environment of the script and your interactive enivronment, so how about dumping the respective environments (via an inserted set > /some/file) and cast a diff on them? Also - as this will not be shown by this method - check for eventual aliases and the like. This is basically the same idea as Don Cragun had, but generalised to other settings than PATH.
Or - you will have to test that - does it always not work for the first time and work for the second (and subsequent) time(s)? Such behavior usually results from something being loaded/configured "on demand" but not completely being able to fulfill the current sessions request - the current session will fail but any subsequent session will work. (Sorry for being so vague but i don't know your system well enough to come up with any more concrete ideas).
I said at the begining of this thread that it should have been posted in the Unix for Dummies section and as it transpired that was correct.
When we build servers like these there is a process, it is a bit convoluted - but it delivers the desired end result. But that would appear to be when one person works on it.
The problem turned out to be the firewall had been turned back on by one of our offshore people, I had already stopped the service as per the build standard and created all the support users, one of them had - whilst setting up his environment decided to have a look around the server and contrary to what he was supposed to do. He started the firewall because he assumed that the server would need it!
Turning off the firewall resolved the problem, but didn't get me back the missing day!
Many thanks for all the suggestions and assistance on this.
Regards
Gull04
These 3 Users Gave Thanks to gull04 For This Post:
The problem isn't on the Solaris (Whole Root Zone) server, all the other Unix servers can execute the command without issue.
This Redhat 7.4 server is the only one on the estate exibiting a problem, the rsh action fails only when a parameter like uname is passed. A simple rsh to the box works fine - I know that this uses rlogin and have been investigating further this morning.
I will spend more time on this today and will go through the earlier posts to check what people have suggested, here's your request;
Regards
Gull04
Hi Gull04,
I'm glad to hear that you found the problem and got it fixed.
However, note the part of your $PATH setting marked in red above...
First, you don't need /usr/bin in $PATH twice. Having it there twice will only serve to slow down starting up any utility that is not found in /usr/bin or whatever directory you shell assumes is specified by have two <colon>s together in $PATH.
And, maybe more importantly, the standards don't say what happens when you have two <colon>s together in $PATH. The unspecified directory denoted by the two adjacent <colon>s between the first two instances of /usr/bin in your path could be treated as an error (silently ignored but slowing down starting up any utility that is not found in /usr/bin), could be treated as a request to use the current working directory (effectively moving . from the end of your $PATH setting to instead be in second position), or as a request to use / at that position (with the effect varying greatly depending on what is being executed and what utility is being invoked). My (unsupported by any experimentation) guess would be that using / might be the most likely action a shell might take and the most likely to cause hard to track down intermittent anomalies at some point in your future. Any or all of the effects listed above could also vary from shell to shell.
I strongly suggest that you find out what is setting $PATH this way and fix it. I wish you good luck in finding the cause.
Cheers,
Don
These 2 Users Gave Thanks to Don Cragun For This Post:
The problem turned out to be the firewall had been turned back on by one of our offshore people, I had already stopped the service
In addition to what Don Cragun already said: how on earth can a user get the privileges necessary to turn on the firewall?? In a long (and rather depressing) life as a systems administrator i learned that admins should be like gods: i am your root - thou shalt have no others besides me!
In AIX there is a file /etc/nologin, which, when in place, prevents any login. (It is deleted automatically upon reboot, so it can't be forgotten.) Maybe there is something alike in RHEL, which you could incorporate to your deployment process to prevent these things? If not: how about killing getty instead? That would also prevent new logins until a final reboot, which should perhaps be the last step in a customisation process anyway.
I hope this helps.
bakunin
These 2 Users Gave Thanks to bakunin For This Post:
Hello.
System : opensuse leap 42.3
I have a bash script that build a text file.
I would like the last command doing :
print_cmd -o page-left=43 -o page-right=22 -o page-top=28 -o page-bottom=43 -o font=LatinModernMono12:regular:9 some_file.txt
where :
print_cmd ::= some printing... (1 Reply)
How to use "mailx" command to do e-mail reading the input file containing email address, where column 1 has name and column 2 containing “To” e-mail address
and column 3 contains “cc” e-mail address to include with same email.
Sample input file, email.txt
Below is an sample code where... (2 Replies)
Hi All,
I have just now started learning awk from the source - Awk - A Tutorial and Introduction - by Bruce Barnett
and the bad part is that I am stuck on the very first example for running the awk script.
The script is as -
#!/bin/sh
# Linux users have to change $8 to $9
awk '
BEGIN ... (6 Replies)
Hi,
I have line in input file as below:
3G_CENTRAL;INDONESIA_(M)_TELKOMSEL;SPECIAL_WORLD_GRP_7_FA_2_TELKOMSEL
My expected output for line in the file must be :
"1-Radon1-cMOC_deg"|"LDIndex"|"3G_CENTRAL|INDONESIA_(M)_TELKOMSEL"|LAST|"SPECIAL_WORLD_GRP_7_FA_2_TELKOMSEL"
Can someone... (7 Replies)
Dear experts,
I'm trying to write a script to calculate the usage of Log Archive in a directory, so if it gets to a point where the directory size is 60%, then send out an FYI.. email. So if then it reaches to 80%, move the logs from that directory.
I have written the script as follow but... (10 Replies)
When running a script on a distant server via rsh, what is the $PATH used ?
I had done a script in the /usr/local/bin but the rsh reported it did not find it. So I assume it is using a separate $PATH but how can I find out ? (1 Reply)
AIX 4.2
I am trying to do an rsh grep to search for date records inside server logs by doing this :
xx=`date +"%a %b %d"`
rsh xxx grep "^$XX" zzz
gives :
grep: 0652-033 Cannot open Jun.
grep: 0652-033 Cannot open 11.
But if I do :
xx=`date +"%a %b %d"`
grep "^$XX" zzz
it works... (2 Replies)
Hi Friends,
Can any of you explain me about the below line of code?
mn_code=`env|grep "..mn"|awk -F"=" '{print $2}'`
Im not able to understand, what exactly it is doing :confused:
Any help would be useful for me.
Lokesha (4 Replies)
Hi folks,
I wrote a ksh program which run scripts from remote server.
To check the status code I wrote the following function:
check_remote_status()
{
status_code=`tail -1 $installLog`
if ] ; then
echo $errMsg | tee -a $installLog
exit 1
else
echo $validMsg >> $installLog
fi... (9 Replies)