One day I was adding a user to my customers system - I must have been tired - I had forgotten one of the steps and had wasted about an hour figuring it out. Frustrated, I muttered to myself 'There *must* be a better way!'.
Well, with unix hard stuff can often be easy: I wrote this simple shell script to add a user
#!/bin/sh echo Enter user login read loginID echo Enter user name read username gid_def=group share_root=/u/shared grep $loginID /etc/passwd if [ $? -ne 1 ] then echo 'already in system ' else echo "Adding user..." useradd -G$gid_def -c"$username" -d /usr/$loginID $loginID echo "Making user directory..." mkdir /usr/$loginID chown $loginID:$gid_def $loginID echo "Set unix users password..." passwd $loginID echo "Set Facetwin password..." fct_encrypt -b fct_encrypt $loginID mkdir /u/share/$loginID chmod 700 $share_root/$loginID fiIf you have any suggestions for improvement let me know.
If you just want to quickly add a Linux user with default home directory, etc, just do: (for example, to add "fred")
That will add the user, create the user's home directory automatically with proper permissions, and complain if they already exist.
Dirk has FacetWin and other reasons for a more complex script. SCO's useradd doesn't default.
If transferring SCO to Linux, see How can I transfer SCO accounts (passwd information) to Linux?.
Got something to add? Send me email.
More Articles by Dirk Hart © 2011-04-30 Dirk Hart
Show me your flowchart and conceal your tables, and I shall continue to be mystified. Show me your tables, and I won't usually need your flowchart; it'll be obvious. (Fred Brooks, The Mythical Man Month)