Annotation of /trunk/mage/usr/lib/mage/museradd
Parent Directory | Revision Log
Revision 78 -
(hide annotations)
(download)
Wed Jun 1 15:48:52 2005 UTC (19 years, 3 months ago) by niro
File size: 1034 byte(s)
Wed Jun 1 15:48:52 2005 UTC (19 years, 3 months ago) by niro
File size: 1034 byte(s)
changed version tagging only
1 | niro | 42 | #!/bin/bash |
2 | niro | 78 | # $Header: /home/cvsd/magellan-cvs/magellan-src/mage/usr/lib/mage/museradd,v 1.4 2005-06-01 15:48:43 niro Exp $ |
3 | niro | 42 | |
4 | print_usage() | ||
5 | { | ||
6 | echo "$(basename $0 .sh) adds users to /etc/passwd." | ||
7 | echo " USAGE: $(basename $0 .sh) -o OPTIONS USER_NAME .." | ||
8 | echo | ||
9 | echo " OPTIONS: -o \"OPTS\"all options from /usr/sbin/useradd can be used." | ||
10 | echo | ||
11 | echo " Examples:" | ||
12 | echo " $(basename $0 .sh) -o \"-u 22 -g sshd -d /var/empty -s /bin/false\" sshd" | ||
13 | echo | ||
14 | } | ||
15 | |||
16 | while getopts "o:-" opt ; do | ||
17 | case "${opt}" in | ||
18 | o) | ||
19 | USER_OPTS="${OPTARG}" | ||
20 | ;; | ||
21 | |||
22 | -) break | ||
23 | ;; | ||
24 | |||
25 | *) | ||
26 | print_usage | ||
27 | exit 1 | ||
28 | ;; | ||
29 | esac | ||
30 | done | ||
31 | shift $(($OPTIND - 1)) | ||
32 | |||
33 | #exit if $1 is zero | ||
34 | if [ -z "$1" ] | ||
35 | then | ||
36 | print_usage | ||
37 | exit 1 | ||
38 | fi | ||
39 | |||
40 | USER_TO_ADD="$1" | ||
41 | |||
42 | #start nscd to cache passwd | ||
43 | $(which nscd) -i passwd | ||
44 | # get the info | ||
45 | my_user="$(getent passwd ${USER_TO_ADD})" | ||
46 | |||
47 | if [ -z "${my_user}" ] | ||
48 | then | ||
49 | echo " Adding user '${USER_TO_ADD}' ..." | ||
50 | useradd ${USER_OPTS} "${USER_TO_ADD}" | ||
51 | else | ||
52 | echo " Modifing user '${USER_TO_ADD}' ..." | ||
53 | usermod ${USER_OPTS} "${USER_TO_ADD}" | ||
54 | fi |