テストユーザーにホームディレクトリと必要な権限を提供するスクリプトを作成しようとしていますが、スクリプトを実行するたびに次のエラーが発生します。
/home/thomas/Scripts/CreateUser.sh: line 2: useradd: command not found
passwd: user 'password' does not exist
/home/thomas/Scripts/CreateUser.sh: line 4: mkhomedir_helper: command not found
chmod: cannot access ‘/home/Test/’: No such file or directory
スクリプト:
#!/bin/bash
useradd Test
passwd password
mkhomedir_helper Test
chmod 700 /home/Test/
私はLinuxを初めて使用するのになぜこれが起こるのかわかりません。解決策はありますか?
答え1
スクリプトは次のようにする必要があります。
#!/bin/bash
/usr/sbin/useradd -m -d /home/Test/ -s /bin/bash Test
echo -e "password\npassword" | passwd Test
chmod 700 /home/Test/
エラーが発生する理由は、/usr/sbin
スクリプトを実行しているアカウントの$ PATH変数にエラーがない可能性が高いためです。