extremely headache


 
Thread Tools Search this Thread
Top Forums UNIX for Dummies Questions & Answers extremely headache
# 1  
Old 04-05-2001
I need to execute command at remote host from my program.
there is rs6000/aix standard command called rexec.
unfortunately rexec ask username and password which must supplied interactively, of course it is impossible runned by program.
So I have to change rexec command format to make user-name and password as parameter of command, so I need to write script.
Mib suggest to use expect as one of script statement.
unfortunately expect is not standard AiX command, so I have to download it and create it.
Ít's need CC (C compiler) to create expect, again there is no CC in my AIX. And Mib suggest to d/l and create gcc (gnu C compiler ?).
From GNU, C compiler source is packed by gnzip. again there is no gnzip in my AIX. oh poor me.
So I try to uncompress it in my PC (windows95) and after that I upload it using binary mode into my aix. This time After all gcc source in my AIX, ./configure can not be executed.
Is there any simpler way to change username and password in rexec command become his parameter ?.
:-)
thanks you very much for your kind help.
# 2  
Old 04-05-2001
try to setup .netrc. this file contains login and initialization information used by the rexec.

in your earlier post you mentioned you tried .netrc already. and it gives Error - .netrc file not correct mode. Remove password or correct mode.

the reason behind this error is .netrc file is readable, writable or executable by someone other than the owner. You should change its mode to 400 (chmod 400 .netrc).

a valid .netrc entry:
machine     hostnamehere     login     usernamehere     password     passwordhere

hope this will help you. Smilie


[Edited by mib on 04-05-2001 at 05:40 AM]
# 3  
Old 04-05-2001
if above is not successfull(a rare case) i can give you a Perl script that could execute commands on a remote system.
and don't tell me you don't have Perl in your system. Smilie

# 4  
Old 04-05-2001
i guess rexec works very similar to rlogin which also asks for password. so maybe you can avoid your problem by creating a file called .rhosts on both of your systems.
simply enter your hostname and the username to this file.

should look like this (example)

production root
production developer1

you also have to make sure that the hostname (in this case production) is included in /etc/hosts. the user (developer1) has to be defined on both systems.


maybe this hint will help you



# 5  
Old 04-05-2001
Tools

Thnaks mib, .netrc is work now.
You are the real ghuru.
yups, in my aix there is perl :-)
if you don't mind, can I have the source of your perl ?

# 6  
Old 04-05-2001
Glad to know your problem is over. Smilie here is the perl script.

#inetd listens for rexec requests via TCP connections on port 512.
# rexec format: The input stream consists of null separated values. port for standard error\0username\0password\0command and args\0

use Socket;

$port=512;
($host, $user, $passwd, $command)=@ARGV;

$sockaddr = 'S n a4 x8';
($name, $aliases, $proto) = getprotobyname('tcp');
($name, $aliases, $type, $len, $thisaddr) = gethostbyname($host);
$thisport = pack($sockaddr, &AF_INET, 0, $thisaddr);
$thatport = pack($sockaddr, &AF_INET, $port, $thisaddr);

socket(S, &PF_INET, &SOCK_STREAM, $proto) || die "cannot create socket. Reason: $!\n";
connect(S,$thatport) || die "cannot connect socket. Reason: $!\n";

select(S); $| = 1; select(STDOUT);     # Set socket to write after each print
printf S "0\0%s\0%s\0%s\0",$user,$passwd,$command;     # Send command

# Read responses from server
while ( $_ = <S> ) {
printf ("$_");
}
close(S);

exit;
#end of code

besides using Socket module,you can use object-oriented IO::Socket module.(http://search.cpan.org)

the most easiest way is to grab Net::Rexec module from cpan.org. then this two line code will do the rest. This module also supports .netrc file.(You need IO::Socket, Net::Netrc modules)
use Net::Rexec 'rexec';
($rc, @output) = rexec(host, command, userid, password);

Thanx,



[Edited by mib on 04-05-2001 at 09:39 AM]
 
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Beginner: script headache

Hi, I am new to shell scripting, but doing my best to learn things. Today doing courses there was exercise like this: #!/usr/bin/bash a=$1 b=$2 if ] then echo "Conditions are met" else echo "Conditions are not met" fi I improved it a little, beacuse of curiosity :D to this: ... (8 Replies)
Discussion started by: Rosentine
8 Replies

2. UNIX for Advanced & Expert Users

ssh command headache

Good day, I am trying to run a ssh command on a remote server, but when I run the command the server takes FOREVER... and ends up giving me an error.. then the script also kicks server load up by 100% while it is running.. But if I run the same command on the server it goes pretty quickly and... (3 Replies)
Discussion started by: msullivan
3 Replies

3. UNIX for Dummies Questions & Answers

Extremely New

I just loaded Cygwin on my XP deskop. I am TRYING to install a program that said it needs this program to run. How do I install or run a program? Keep in mind I just started with Unix yesterday:) (1 Reply)
Discussion started by: gss
1 Replies

4. UNIX for Dummies Questions & Answers

formatting a file headache

Hello does anyone know how to do the following using some simple unix if possible: I have a file with the following info as comma separated. It shows username, id number and all the subjects they are enrolled in on the one line. The subjects are separated by colons. UserName,ID,Subject... (13 Replies)
Discussion started by: ynneycat
13 Replies

5. Shell Programming and Scripting

Friday afternoon headache

Hi all, It's been a long week and my brain is clearly not functioning right so hopefully someone can help me out here. I've got a function in a script which just checks if a MySQL database directory exists or not. Code is as follows: dbCheck2() { if ; then { : # carry... (4 Replies)
Discussion started by: _Spare_Ribs_
4 Replies

6. Shell Programming and Scripting

scripting headache... loops & variables

Surely there's an easier way to do this, lets see if anyone knows! I am new to scripting so go easy on me! I have the following script and at the moment it doesn't work and I believe the problem is that I am using a while loop within a while loop. When I run the script using sh -x I can see... (6 Replies)
Discussion started by: StevePace
6 Replies

7. UNIX for Dummies Questions & Answers

sed headache

Hi all, I've got a thorny sed/regex problem and I thought somebody out there might be able to help. I'd like to use sed in a Makefile to parse a path string. The path might look like this: case 1: /mnt/users/bob/build/src or case 2: /mnt/users/bob/build/src/foo or case 3: ... (4 Replies)
Discussion started by: gnarl
4 Replies

8. Shell Programming and Scripting

sed make me headache... need help!

I've still a little problem with sed. So, the content of my file.txt is like: 101.10.20.2.1079 > 101.11.2.20.80: 101.10.20.2.1080 > 101.11.2.20.80: 101.10.20.2.1081 > 101.10.20.2..80: 101.05.15.143.1068 > tpo68-96-22-1.no.no.cox.net.4391: 101.05.15.143.1072 >... (5 Replies)
Discussion started by: nymus7
5 Replies

9. Solaris

A very headache problem

guys, need your help~~~~ I am setting up a Sun Enterprise 450 Ultra 4 server originally I was using Sun solaris 9 1202 version. but after an accident (i guess becoz i deleted something wrongly), the system cannot boot up. and now I wana install a FreeBSD(since it is free and it will... (3 Replies)
Discussion started by: MrDJay
3 Replies

10. IP Networking

DHCP client & ipchains headache

Hi all, I upgraded my SUSE 6.1 to SUSE 7.1 and at once the following things won't work anymore: 1) My DHCP client is not able anymore to retrieve my IP address from the @home server. It times out all the time. If I use a fixed IP I can get on the net, so there is no physical problem. 2) I... (3 Replies)
Discussion started by: Micky
3 Replies
Login or Register to Ask a Question