| 9.5 โปรแกรมเพิ่มผู้ใช้ /usr/bin/_crt : โปรแกรมนี้เป็น shell script สำหรับเพิ่มผู้ใช้อย่างง่าย สร้างด้วย pico และกำหนดให้ประมวลผลด้วย chmod
 
 โปรแกรมนี้ชื่อ _crt ถูกเก็บไว้ในห้อง /usr/bin โดยกำหนดให้ chmod 700 เพื่อให้สั่งประมวลผล shell script ตัวนี้ได้
และการจะใช้โปรแกรมนี้ได้จะต้องกำหนด PATH ไว้ที่ห้อง /usr/bin และ /usr/sbin จึงต้องกำหนด PATH เพิ่มเติม
 จากเดิม  PATH=$PATH:$HOME/bin (ถ้า admin ไม่แก้ไขให้ก่อนนะครับ)
 เป็นใหม่ PATH=$PATH:$HOME/bin:/sbin:/usr/bin:/usr/sbin
 ตรวจสอบตัวแปร PATH ด้วยคำสั่ง echo $PATH
 ปัญหานี้จะไม่เกิดขึ้น ถ้ากำหนดไว้ในแฟ้ม .bash_profile ในห้อง /etc/skel เพราะเป็นห้องที่เก็บค่าเริ่มต้น
 Version 1: ตัวอย่างโปรแกรมที่ใช้งานอยู่
 
Version 2: โปรแกรมข้างล่างนี้ใช้กับเครื่องที่ใช้งาน ssi ได้
#!/bin/bash
echo Username
read un
echo Realname
read cm
finger $un
echo ===============================
read sure
RESULT="Error - Try other username again .. "
EXIST=0
id $un >/dev/null 2>/dev/null && EXIST=1
if [ $EXIST = 0 ]; then
useradd -g users -d /home/httpd/cgi-bin/$un -c "$cm" $un
chown $un:users /home/httpd/cgi-bin/$un
chmod 705 /home/httpd/cgi-bin/$un
usermod -d /home/httpd/cgi-bin/$un $un
ln -s /home/httpd/cgi-bin/$un /home/httpd/html/$un
passwd $un
RESULT="Complete"
fi
echo "Add new user : $RESULT"
 
Version 3: โปรแกรมข้างล่างนี้ใช้กับ isinthai.com ในช่วงปิด telnet เพื่อให้ upload ผ่านเว็บ
#!/bin/bash
clear
echo _CRT version 2.June42001
echo User name
read un
echo Real Name
read cm
finger $un
echo =============================== 
echo Are you ok?
RESULT="Error - Try other username again .. "
EXIST=0
id $un >/dev/null 2>/dev/null && EXIST=1
if [ $EXIST = 0 ]; then
read sure
useradd -g users -d /home/httpd/html/$un -c "$cm" $un
chmod 705 /home/httpd/html/$un
passwd $un
RESULT="Complete"
fi
echo "Add new user : $RESULT"
 เหตุที่ใช้แฟ้มชื่อ password.pl เพราะป้องกันการแอบเปิดดูรหัสผ่าน แล้วแฟ้มนี้ใช้สำหรับบริการ upload (ซึ่งไม่ได้เข้ารหัสไว้)
 
เจอปัญหาใช้ useradd ไม่ได้เพราะ lock
#!/bin/bash
echo Username
read un
echo Real name
read cm
echo Password
read password
finger $un
echo =============================== 
echo Are you ok?
RESULT="Error - Try other username again .. "
EXIST=0
id $un >/dev/null 2>/dev/null && EXIST=1
if [ $EXIST = 0 ]; then
read sure
useradd -g users -d /home/httpd/html/$un -c "$cm" $un
chmod 777 /home/httpd/html/$un
echo $password>/home/httpd/html/$un/password.pl
chown nobody:nobody /home/httpd/html/$un/password.pl
chmod 700 /home/httpd/html/$un/password.pl
passwd $un
RESULT="Complete"
fi
echo "Add new user : $RESULT"
 มีเรื่องแปลกเกิดขึ้นครับ ทำให้ไม่สามารถเพิ่ม user ได้
 useradd: error locking shadow group file หรืออะไรทำนองนี้
 ไม่แน่ใจว่าเกิดขึ้นเพราะเหตุใด แต่แก้ไขด้วยการลบแฟ้มที่ ls -al *.lock
 หรือที่มีนามสกุลเป็น .lock ในห้อง /etc เช่น passwd.lock group.lock เป็นต้น
 และทุกแฟ้มก็มีค่าเป็น 741 เหมือนกันหมด สันนิฐฐานว่าเป็นเลข ps ที่ทำการ lock ไว้
 
 |