次のコマンドを実行しようとしています。
root@minimanode:/# sudo wget -O minima_setup.sh https://raw.githubusercontent.com/minima-global/Minima/master/scripts/minima_setup.sh && chmod +x minima_setup.sh && sudo ./minima_setup.sh -r 9002 -p 9001
そして出力:useradd: group '9001' does not exist
何をすべきか?
Ubuntu 20.04.3 LTS (GNU/Linux 5.4.0-104-typ x86_64)
答え1
これは、そのgidを持つグループが見つからないためです。インストールスクリプトを実行する前にグループを作成してから、生成行を削除するのはどうですか?
userdel minima | groupdel minima
その後、以前groupadd -g 9001 minima
にこれを実行した場合、getent
グループから情報を読み取るためにifブロックは必要ありません(したがって削除しました)。
スクリプト:
#!/bin/sh
set -e
CLEAN_FLAG=''
PORT=''
HOST=''
HOME="/home/minima"
CONNECTION_HOST=''
CONNECTION_PORT=''
SLEEP=''
RPC=''
print_usage() {
printf "Usage: Setups a new minima service for the specified port"
}
while getopts ':xsc::p:r:d:h:' flag; do
case "${flag}" in
s) SLEEP='true';;
x) CLEAN_FLAG='true';;
r) RPC="${OPTARG}";;
c) CONNECTION_HOST=$(echo $OPTARG | cut -f1 -d:);
CONNECTION_PORT=$(echo $OPTARG | cut -f2 -d:);;
p) PORT="${OPTARG}";;
d) HOME="${OPTARG}";;
h) HOST="${OPTARG}";;
*) print_usage
exit 1 ;;
esac
done
apt update
apt install openjdk-11-jre-headless curl jq -y
if ! id -u 9001 > /dev/null 2>&1; then
echo "[+] Adding minima user"
useradd -r -u 9001 -g 9001 -d $HOME minima
mkdir $HOME
chown minima:minima $HOME
fi
wget -q -O $HOME"/minima_service.sh" "https://github.com/minima-global/Minima/raw/master/scripts/minima_service.sh"
chown minima:minima $HOME"/minima_service.sh"
chmod +x $HOME"/minima_service.sh"
CMD="$HOME/minima_service.sh -s $@"
CRONSTRING="#!/bin/sh
$CMD"
echo "$CRONSTRING" > /etc/cron.weekly/minima_$PORT
chmod a+x /etc/cron.weekly/minima_$PORT
CMD="$HOME/minima_service.sh $@"
/bin/sh -c "$CMD"
echo "Install complete - showing logs now - Ctrl-C to exit logs, minima will keep running"
journalctl -fn 10 -u minima_$PORT
PS:次回は、より多くの情報、コードなどを提供してください。編集中のコンテンツをインターネットで検索する必要があります。