Sponsored Content
Top Forums Shell Programming and Scripting Perl Script on Solaris and HP UX Post 302788403 by yadavricky on Monday 1st of April 2013 06:08:36 PM
Old 04-01-2013
RedHat Useradd cmd in solaris and HPUX

Dear All,
I am having a script which is using the useradd command to create a new user.

it was working fine in solaris but now in HP UX i am getting a prolem. though almost al the option which are available with command are same.

i am using below options
Code:
                [-c comment]
		[-m [-k skel_dir]]
		[-d dir] 
		[-g group] - Security Groupname
		[-G group [, group...]]
		[-s shell]
		[-k skel_dir]

when the script will run it will add the user in /etc/passwd and first the new created account will in locked status.

below is the code which is used to create a account.
Code:
		my $pUserID = shift(@_);
   		my $su;
		my $Cmd = $myConfig::Configuration{useradd};

		my @CmdArgs =  ('-c', 'my Account for ' . $myConfig::Configuration{InstanceName} . ' instance',
				'-m', '-d', $myConfig::Configuration{AccountHome}."/".lc($pUserID),
				'-g', $myConfig::Configuration{SecurityGroupName},
				'-G', 'myscr',
				'-s', '/bin/ksh',
				'-k', $myConfig::Configuration{AccountHome}."/".$myConfig::Configuration{StdAccountName},lc($pUserID));
		$su = Sudo->new(
				{
				 sudo         => $myConfig::Configuration{sudo}
				,sudo_args    => ''
		                ,username     => "root"
				,program      => $Cmd
				,program_args => \@CmdArgs
				}

when i run it in HP US i get below entry in Passwd file
Code:
ARRAY(0x6000000000aca598):x:117:20::/home/ARRAY(0x6000000000aca598):/sbin/sh		ARRAY(0x6000000000aca638):x:118:20::/home/ARRAY(0x6000000000aca638):/sbin/sh

can somebody guide me about error.

To unlock the account i have planned to use /usr/lbin/modprpw with -k which is silmilar to passwd -u but no idea what will be outcome.

Please suggest why strange entry in /ect/passwd file and suggestion

Last edited by Franklin52; 04-02-2013 at 08:49 AM.. Reason: Please use code tags
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

[Perl] Accessing array elements within a sed command in Perl script

I am trying to use a script to replace the header of each file, whose filename are stored within the array $test, using the sed command within a Perl script as follows: $count = 0; while ( $count < $#test ) { `sed -e 's/BIOGRF 321/BIOGRF 332/g' ${test} > 0`; `cat 0 >... (2 Replies)
Discussion started by: userix
2 Replies

2. Shell Programming and Scripting

Solaris+Perl script to get process start date

Hi all, after reading the post: * https://www.unix.com/solaris/101653-how-get-process-start-date-time-solaris.html I wrote my perl script and it worked like a charm. This script is called every 5 minutes by the monitoring server crontab and is executed on the remote network elements via ssh (the... (6 Replies)
Discussion started by: Evan
6 Replies

3. Shell Programming and Scripting

perl/unix: script in command line works but not in perl

so in unix this command works works and shows me a list of directories find . -name \*.xls -exec dirname {} \; | sort -u | > list.txt but when i try running a perl script to run this command my $query = 'find . -name \*.xls -exec dirname {} \; | sort -u | > list.txt';... (2 Replies)
Discussion started by: kpddong
2 Replies

4. Shell Programming and Scripting

Perl :How to print the o/p of a Perl script on console and redirecting same in log file @ same time.

How can i print the output of a perl script on a unix console and redirect the same in a log file under same directory simultaneously ? Like in Shell script, we use tee, is there anything in Perl or any other option ? (2 Replies)
Discussion started by: butterfly20
2 Replies

5. Shell Programming and Scripting

HELP on Perl array / sorting - trying to convert Korn Shell Script to Perl

Hi all, Not sure if this should be in the programming forum, but I believe it will get more response under the Shell Programming and Scripting FORUM. Am trying to write a customized df script in Perl and need some help with regards to using arrays and file handlers. At the moment am... (3 Replies)
Discussion started by: newbie_01
3 Replies

6. Shell Programming and Scripting

calling a perl script with arguments from a parent perl script

I am trying to run a perl script which needs input arguments from a parent perl script, but doesn't seem to work. Appreciate your help in this regard. From parent.pl $input1=123; $input2=abc; I tried calling it with system("/usr/bin/perl child.pl $input1 $input2"); and `perl... (1 Reply)
Discussion started by: grajp002
1 Replies

7. Shell Programming and Scripting

executing perl script from another perl script : NOT WORKING

Hi Folks, I have 2 perl scripts and I need to execute 2nd perl script from the 1st perl script in WINDOWS. In the 1st perl script that I had, I am calling the 2nd script main.pl =========== print "This is my main script\n"; `perl C:\\Users\\sripathg\\Desktop\\scripts\\hi.pl`; ... (3 Replies)
Discussion started by: giridhar276
3 Replies

8. Shell Programming and Scripting

Perl : embedding java script with cgi perl script

Hi All, I am aware that html tags can be embedded in cgi script as below.. In the same way is it possible to embed the below javascript in perl cgi script ?? print("<form action="action.htm" method="post" onSubmit="return submitForm(this.Submitbutton)">"); print("<input type = "text"... (1 Reply)
Discussion started by: scriptscript
1 Replies

9. Shell Programming and Scripting

Excuting perl script from within a perl script with variables.

Not sure what I am doing wrong here, but I can print the list with no issue. Just a blank screen with the 'do'. #!/usr/bin/perl open FILE, "upslist.txt"; while ($line=<FILE>){ if ($line=~/^(.*?),(.*?)$/){ #print "ups:$1 string:$2\n"; do 'check_snmp_mgeups-0.1.pl -H $1 -C $2'; } ... (1 Reply)
Discussion started by: mrlayance
1 Replies

10. Programming

PERL: In a perl-scripttTrying to execute another perl-script that SETS SOME VARIABLES !

I have reviewed many examples on-line about running another process (either PERL or shell command or a program), but do not find any usefull for my needs way. (Reviewed and not useful the system(), 'back ticks', exec() and open()) I would like to run another PERL-script from first one, not... (1 Reply)
Discussion started by: alex_5161
1 Replies
useradd(8)						      System Manager's Manual							useradd(8)

NAME
useradd - create a new user account SYNOPSIS
useradd [-D binddn] [-P path] [-c comment] [-d homedir] [-e expire] [-f inactive] [-G group,...] [-g gid] [-m [-k skeldir]] [-o] [-p password] [-u uid] [-U umask] [-r] [-s shell] [--service service] [--help] [--usage] [-v] [--preferred-uid uid] account useradd --show-defaults useradd --save-defaults [-d homedir] [-e expire] [-f inactive] [-g gid] [-G group,...] [-k skeldir] [-U umask] [-s shell] DESCRIPTION
useradd creates a new user account using the default values from /etc/default/useradd and the specified on the command line. Depending on the command line options the new account will be added to the system files or LDAP database, the home directory will be created and the initial default files and directories will be copied. The account name must begin with an alphabetic character and the rest of the string should be from the POSIX portable character class ([A- Za-z_][A-Za-z0-9_-.]*[A-Za-z0-9_-.$]). OPTIONS
-c, --comment comment This option specifies the users finger information. -d, --home homedir This option specifies the users home directory. If not specified, the default from /etc/default/useradd is used. -e, --expire expire With this option the date when the account will be expired can be changed. expiredate has to be specified as number of days since January 1st, 1970. The date may also be expressed in the format YYYY-MM-DD. If not specified, the default from /etc/default/useradd is used. -f, --inactive inactive This option is used to set the number of days of inactivity after a password has expired before the account is locked. A user whose account is locked must contact the system administrator before being able to use the account again. A value of -1 disables this feature. If not specified, the default from /etc/default/useradd is used. -G, --groups group,... With this option a list of supplementary groups can be specified, which the user should become a member of. Each group is separated from the next one only by a comma, without whitespace. If not specified, the default from /etc/default/useradd is used. -g, --gid gid The group name or number of the user's main group. The group name or number must refer to an already existing group. If not speci- fied, the default from /etc/default/useradd is used. -k, --skel skeldir Specify an alternative skel directory. This option is only valid, if the home directory for the new user should be created, too. If not specified, the default from /etc/default/useradd or /etc/skel is used. -m, --create-home Create home directory for new user account. -o, --non-unique Allow duplicate (non-unique) User IDs. -p, --password password Encrypted password as returned by crypt(3) for the new account. The default is to disable the account. -U, --umask umask The permission mask is initialized to this value. It is used by useradd for creating new home directories. The default is taken from /etc/default/useradd. -u, --uid uid Force the new userid to be the given number. This value must be positive and unique. The default is to use the first free ID after the greatest used one. The range from which the user ID is chosen can be specified in /etc/login.defs. --preferred-uid uid Set the new userid to the specified value if possible. If that value is already in use the first free ID will be chosen as described above. -r, --system Create a system account. A system account is an user with an UID between SYSTEM_UID_MIN and SYSTEM_UID_MAX as defined in /etc/login.defs, if no UID is specified. The GROUPS entry in /etc/default/useradd is ignored, too. -s, --shell shell Specify user's login shell. The default for normal user accounts is taken from /etc/default/useradd, the default for system accounts is /bin/false. --service service Add the account to a special directory. The default is files, but ldap is also valid. -D, --binddn binddn Use the Distinguished Name binddn to bind to the LDAP directory. The user will be prompted for a password for simple authentica- tion. -P, --path path The passwd and shadow files are located below the specified directory path. useradd will use this files, not /etc/passwd and /etc/shadow. --help Print a list of valid options with a short description. --usage Print a short list of valid options. -v, --version Print the version number and exit. FILES
/etc/passwd - user account information /etc/shadow - shadow user account information /etc/group - group information /etc/default/useradd - default values for account creation /etc/skel - directory containing default files SEE ALSO
passwd(1), login.defs(5), passwd(5), shadow(5), userdel(8), usermod(8) AUTHOR
Thorsten Kukuk <kukuk@suse.de> pwdutils May 2010 useradd(8)
All times are GMT -4. The time now is 05:39 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy