diff --git a/192.168.0.143/crontab b/192.168.0.143/crontab index a881f84..a43c399 100644 --- a/192.168.0.143/crontab +++ b/192.168.0.143/crontab @@ -1,6 +1,10 @@ -0 0 * * * /root/sync-backups.sh -0 1 * * * /root/snapshot-backups.sh -0 2 * * 6 /root/scrub-roots.sh -0 5 * * 6 /root/scrub-roots-finished.sh -0 8 * * 2 /root/update_pkgs.sh -0 8 * * 5 /root/update_pkgs.sh +0 0 * * * /root/sync-backups.sh +0 1 * * * /root/snapshot-backups.sh +0 2 * * 6 /root/scrub-roots.sh +0 5 * * 6 /root/scrub-roots-finished.sh +0 6 * * 1 /root/go-update.sh +0 6 * * 4 /root/go-update.sh +0 6 * * 3 /root/zig-update.sh +0 6 * * 6 /root/zig-update.sh +0 8 * * 2 /root/update_pkgs.sh +0 8 * * 5 /root/update_pkgs.sh diff --git a/192.168.0.143/go-update.sh b/192.168.0.143/go-update.sh index a42c4d8..b533b07 100644 --- a/192.168.0.143/go-update.sh +++ b/192.168.0.143/go-update.sh @@ -1,19 +1,48 @@ #!/bin/sh -export SER="126" -export VER="1.26.3" -export ARC="amd64" -export OS="freebsd" +OS="$(uname -s)" +case "$OS" in + FreeBSD) OS="freebsd" ;; + OpenBSD) OS="openbsd" ;; + Linux) OS="linux" ;; + Darwin) OS="macos" ;; + *) exit 1;; +esac -wget https://go.dev/dl/go$VER.$OS-$ARC.tar.gz -tar zxfv go$VER.$OS-$ARC.tar.gz -rm -rf /usr/local/go$SER -mv go /usr/local/go$SER -ln -s /usr/local/go$SER/bin/go /usr/local/bin/go$SER -ln -s /usr/local/go$SER/bin/gofmt /usr/local/bin/gofmt$SER -rm -rf /usr/local/bin/go -rm -rf /usr/local/bin/gofmt -ln -s /usr/local/bin/go$SER /usr/local/bin/go -ln -s /usr/local/bin/gofmt$SER /usr/local/bin/gofmt -go version -rm -rf go$VER.$OS-$ARC.tar.gz +ARC="$(uname -m)" +case "$ARC" in + x86_64|amd64) ARC="amd64" ;; + aarch64|arm64) ARC="arm64" ;; + *) exit 1 ;; +esac + +IP=$(ifconfig re0 | awk '/inet / {print $2; exit}') +FVER=$(wget -qO- https://go.dev/VERSION?m=text | head -n1) +VER=${FVER#go} +SER=$(echo "$VER" | sed 's/\([0-9]*\)\.\([0-9]*\).*/\1\2/') +CURVER=$(go env GOVERSION | cut -c3-) +DATE=$(date +"%Y年%m月%d日") + +echo "${IP} サーバーGoバージョンが更新されました。(${DATE}) +--------------- +" > /root/go.txt + +if [ "$VER" = "$CURVER" ]; then + echo "最新Goバージョンが既にインストールされています。" >> /root/go.txt +else + wget https://go.dev/dl/go$VER.$OS-$ARC.tar.gz >> /root/go.txt + tar zxfv go$VER.$OS-$ARC.tar.gz >> /root/go.txt + rm -rfv /usr/local/go$SER >> /root/go.txt + mv -v go /usr/local/go$SER >> /root/go.txt + ln -s /usr/local/go$SER/bin/go /usr/local/bin/go$SER + ln -s /usr/local/go$SER/bin/gofmt /usr/local/bin/gofmt$SER + rm -rfv /usr/local/bin/go >> /root/go.txt + rm -rfv /usr/local/bin/gofmt >> /root/go.txt + ln -s /usr/local/bin/go$SER /usr/local/bin/go + ln -s /usr/local/bin/gofmt$SER /usr/local/bin/gofmt + go version >> /root/go.txt + rm -rfv go$VER.$OS-$ARC.tar.gz >> /root/go.txt +fi + +cat /root/go.txt | mail -s "${IP} Goバージョン更新 (${DATE})" reports@076.ne.jp +rm -rf /root/go.txt diff --git a/192.168.0.143/scrub-roots-status.sh b/192.168.0.143/scrub-roots-status.sh index a872bd8..109277a 100644 --- a/192.168.0.143/scrub-roots-status.sh +++ b/192.168.0.143/scrub-roots-status.sh @@ -1,8 +1,9 @@ #!/bin/sh DATE=$(date +"%Y年%m月%d日") +IP=$(ifconfig re0 | awk '/inet / {print $2; exit}') -echo "192.168.0.143 NASプールのスクラビングが完了しました。 (${DATE}) +echo "${IP} NASプールのスクラビングが完了しました。 (${DATE}) --------------- " > /root/scrub.txt @@ -10,5 +11,5 @@ echo "ディスク状況: " >> /root/snap.txt zpool status >> /root/scrub.txt -cat /root/scrub.txt | mail -s "192.168.0.143 プールスクラビング完了 (${DATE})" reports@076.ne.jp +cat /root/scrub.txt | mail -s "${IP} プールスクラビング完了 (${DATE})" reports@076.ne.jp rm -rf /root/scrub.txt diff --git a/192.168.0.143/scrub-roots.sh b/192.168.0.143/scrub-roots.sh index 9a63b47..1696240 100644 --- a/192.168.0.143/scrub-roots.sh +++ b/192.168.0.143/scrub-roots.sh @@ -1,8 +1,9 @@ #!/bin/sh DATE=$(date +"%Y年%m月%d日") +IP=$(ifconfig re0 | awk '/inet / {print $2; exit}') -echo "192.168.0.143 NASプールがスクラビングされました。 (${DATE}) +echo "${IP} NASプールがスクラビングされました。 (${DATE}) --------------- " > /root/scrub.txt @@ -14,5 +15,5 @@ echo "ディスク状況: " >> /root/snap.txt zpool status >> /root/scrub.txt -cat /root/scrub.txt | mail -s "192.168.0.143 プールスクラビング (${DATE})" reports@076.ne.jp +cat /root/scrub.txt | mail -s "${IP} プールスクラビング (${DATE})" reports@076.ne.jp rm -rf /root/scrub.txt diff --git a/192.168.0.143/snapshot-backups.sh b/192.168.0.143/snapshot-backups.sh index 2b17b62..ece12b5 100644 --- a/192.168.0.143/snapshot-backups.sh +++ b/192.168.0.143/snapshot-backups.sh @@ -1,8 +1,9 @@ #!/bin/sh DATE=$(date +"%Y年%m月%d日") +IP=$(ifconfig re0 | awk '/inet / {print $2; exit}') -echo "192.168.0.143 NASバックアップのスナップショットが作成されました。 (${DATE}) +echo "${IP} NASバックアップのスナップショットが作成されました。 (${DATE}) --------------- " > /root/snap.txt @@ -36,5 +37,5 @@ echo "スナップショット一覧: " >> /root/snap.txt zfs list -t snapshot >> /root/snap.txt -cat /root/snap.txt | mail -s "192.168.0.143 スナップショットバックアップ (${DATE})" reports@076.ne.jp +cat /root/snap.txt | mail -s "${IP} スナップショットバックアップ (${DATE})" reports@076.ne.jp rm -rf /root/snap.txt diff --git a/192.168.0.143/sync-backups.sh b/192.168.0.143/sync-backups.sh index dbbe628..43e44d0 100644 --- a/192.168.0.143/sync-backups.sh +++ b/192.168.0.143/sync-backups.sh @@ -1,8 +1,9 @@ #!/bin/sh DATE=$(date +"%Y年%m月%d日") +IP=$(ifconfig re0 | awk '/inet / {print $2; exit}') -echo "192.168.0.143 NASバックアップが同期されました。 (${DATE}) +echo "${IP} NASバックアップが同期されました。 (${DATE}) --------------- " > /root/sync.txt @@ -22,5 +23,5 @@ rsync -vaHzop --delete /yroot/repo /xroot >> /root/sync.txt rsync -vaHzop --delete /yroot/got /xroot >> /root/sync.txt rsync -vaHzop --delete /yroot/svn /xroot >> /root/sync.txt -cat /root/sync.txt | mail -s "192.168.0.143 バックアップ同期 (${DATE})" reports@076.ne.jp +cat /root/sync.txt | mail -s "${IP} バックアップ同期 (${DATE})" reports@076.ne.jp rm -rf /root/sync.txt diff --git a/192.168.0.143/update_pkgs.sh b/192.168.0.143/update_pkgs.sh index 9e744e7..890863f 100644 --- a/192.168.0.143/update_pkgs.sh +++ b/192.168.0.143/update_pkgs.sh @@ -1,8 +1,9 @@ #!/bin/sh DATE=$(date +"%Y年%m月%d日") +IP=$(ifconfig re0 | awk '/inet / {print $2; exit}') -echo "192.168.0.143 NASパッケージが更新されました。 (${DATE}) +echo "${IP}NASパッケージが更新されました。 (${DATE}) --------------- " > /root/pkg.txt @@ -10,5 +11,5 @@ echo "192.168.0.143 NASパッケージが更新されました。 (${DATE}) /usr/sbin/pkg upgrade -y >> /root/pkg.txt /usr/sbin/freebsd-update cron >> /root/pkg.txt -cat /root/pkg.txt | mail -s "192.168.0.143 パッケージ更新 (${DATE})" reports@076.ne.jp +cat /root/pkg.txt | mail -s "${IP} パッケージ更新 (${DATE})" reports@076.ne.jp rm -rf /root/pkg.txt diff --git a/192.168.0.143/zig-update.sh b/192.168.0.143/zig-update.sh index 3af265b..8007276 100644 --- a/192.168.0.143/zig-update.sh +++ b/192.168.0.143/zig-update.sh @@ -1,14 +1,45 @@ #!/bin/sh -export VER="0.16.0" -export ARC="x86_64" -export OS="freebsd" +OS="$(uname -s)" +case "$OS" in + FreeBSD) OS="freebsd" ;; + OpenBSD) OS="openbsd" ;; + Linux) OS="linux" ;; + Darwin) OS="macos" ;; + *) exit 1;; +esac -wget https://ziglang.org/download/$VER/zig-$ARC-$OS-$VER.tar.xz -tar xfv zig-$ARC-$OS-$VER.tar.xz -cd zig-$ARC-$OS-$VER -rm -rf /usr/local/lib/zig -mv lib /usr/local/lib/zig -mv zig /usr/local/bin -rm -rf zig-$ARC-$OS-$VER zig-$ARC-$OS-$VER.tar.xz -zig version +ARC="$(uname -m)" +case "$ARC" in + x86_64|amd64) ARC="x86_64" ;; + aarch64|arm64) ARC="aarch64" ;; + *) exit 1 ;; +esac + +IP=$(ifconfig re0 | awk '/inet / {print $2; exit}') +VER=$(wget -qO- https://ziglang.org/download/index.json | + sed 's/[",:]//g' | + awk '/^[[:space:]]*[0-9]+\.[0-9]+/ {print $1; exit}') +CURVER=$(zig version) +DATE=$(date +"%Y年%m月%d日") + +echo "${IP} サーバーZigバージョンが更新されました。(${DATE}) +--------------- +" > /root/zig.txt + +if [ "$VER" = "$CURVER" ]; then + echo "最新Zigバージョンが既にインストールされています。" >> /root/zig.txt +else + wget https://ziglang.org/download/$VER/zig-$ARC-$OS-$VER.tar.xz >> /root/zig.txt + xzcat zig-$ARC-$OS-$VER.tar.xz | tar xf - >> /root/zig.txt + cd zig-$ARC-$OS-$VER + rm -rfv /usr/local/lib/zig >> /root/zig.txt + mv -v lib /usr/local/lib/zig >> /root/zig.txt + mv -v zig /usr/local/bin >> /root/zig.txt + rm -rfv zig-$ARC-$OS-$VER zig-$ARC-$OS-$VER.tar.xz >> /root/zig.txt + zig version >> /root/zig.txt + echo "Zigバージョンを更新に成功です。" >> /root/zig.txt +fi + +cat /root/zig.txt | mail -s "${IP} Zigバージョン更新 (${DATE})" reports@076.ne.jp +rm -rf /root/zig.txt diff --git a/192.168.10.103/crontab b/192.168.10.103/crontab index a3afb71..009ae18 100644 --- a/192.168.10.103/crontab +++ b/192.168.10.103/crontab @@ -18,4 +18,8 @@ HOME=/var/log #~ * * * * -ns rpki-client -v && bgpctl reload 0 8 * * 2 /root/update_pkgs.sh +0 6 * * 1 /root/go-update.sh +0 6 * * 4 /root/go-update.sh +0 6 * * 3 /root/zig-update.sh +0 6 * * 6 /root/zig-update.sh 0 8 * * 5 /root/update_pkgs.sh diff --git a/192.168.10.103/go-update.sh b/192.168.10.103/go-update.sh index c3528c9..aa9fac7 100644 --- a/192.168.10.103/go-update.sh +++ b/192.168.10.103/go-update.sh @@ -1,19 +1,48 @@ #!/bin/sh -export SER="126" -export VER="1.26.3" -export ARC="amd64" -export OS="openbsd" +OS="$(uname -s)" +case "$OS" in + FreeBSD) OS="freebsd" ;; + OpenBSD) OS="openbsd" ;; + Linux) OS="linux" ;; + Darwin) OS="macos" ;; + *) exit 1;; +esac -wget https://go.dev/dl/go$VER.$OS-$ARC.tar.gz -tar zxfv go$VER.$OS-$ARC.tar.gz -rm -rf /usr/local/go$SER -mv go /usr/local/go$SER -ln -s /usr/local/go$SER/bin/go /usr/local/bin/go$SER -ln -s /usr/local/go$SER/bin/gofmt /usr/local/bin/gofmt$SER -rm -rf /usr/local/bin/go -rm -rf /usr/local/bin/gofmt -ln -s /usr/local/bin/go$SER /usr/local/bin/go -ln -s /usr/local/bin/gofmt$SER /usr/local/bin/gofmt -go version -rm -rf go$VER.$OS-$ARC.tar.gz +ARC="$(uname -m)" +case "$ARC" in + x86_64|amd64) ARC="amd64" ;; + aarch64|arm64) ARC="arm64" ;; + *) exit 1 ;; +esac + +IP=$(ifconfig wg0 | awk '/inet / {print $2; exit}') +FVER=$(wget -qO- https://go.dev/VERSION?m=text | head -n1) +VER=${FVER#go} +SER=$(echo "$VER" | sed 's/\([0-9]*\)\.\([0-9]*\).*/\1\2/') +CURVER=$(go env GOVERSION | cut -c3-) +DATE=$(date +"%Y年%m月%d日") + +echo "${IP} サーバーGoバージョンが更新されました。(${DATE}) +--------------- +" > /root/go.txt + +if [ "$VER" = "$CURVER" ]; then + echo "最新Goバージョンが既にインストールされています。" >> /root/go.txt +else + wget https://go.dev/dl/go$VER.$OS-$ARC.tar.gz >> /root/go.txt + tar zxfv go$VER.$OS-$ARC.tar.gz >> /root/go.txt + rm -rfv /usr/local/go$SER >> /root/go.txt + mv -v go /usr/local/go$SER >> /root/go.txt + ln -s /usr/local/go$SER/bin/go /usr/local/bin/go$SER + ln -s /usr/local/go$SER/bin/gofmt /usr/local/bin/gofmt$SER + rm -rfv /usr/local/bin/go >> /root/go.txt + rm -rfv /usr/local/bin/gofmt >> /root/go.txt + ln -s /usr/local/bin/go$SER /usr/local/bin/go + ln -s /usr/local/bin/gofmt$SER /usr/local/bin/gofmt + go version >> /root/go.txt + rm -rfv go$VER.$OS-$ARC.tar.gz >> /root/go.txt +fi + +cat /root/go.txt | mail -s "${IP} Goバージョン更新 (${DATE})" reports@076.ne.jp +rm -rf /root/go.txt diff --git a/192.168.10.103/update_pkgs.sh b/192.168.10.103/update_pkgs.sh index a46a067..a488087 100644 --- a/192.168.10.103/update_pkgs.sh +++ b/192.168.10.103/update_pkgs.sh @@ -1,13 +1,14 @@ #!/bin/sh DATE=$(date +"%Y年%m月%d日") +IP=$(ifconfig wg0 | awk '/inet / {print $2; exit}') -echo "192.168.10.103 サーバーパッケージが更新されました。 (${DATE}) +echo "${IP} サーバーパッケージが更新されました。 (${DATE}) --------------- " > /root/pkg.txt /usr/sbin/pkg_add -ui >> /root/pkg.txt /usr/sbin/syspatch >> /root/pkg.txt -cat /root/pkg.txt | mail -s "192.168.10.103 パッケージ更新 (${DATE})" reports@076.ne.jp +cat /root/pkg.txt | mail -s "${IP} パッケージ更新 (${DATE})" reports@076.ne.jp rm -rf /root/pkg.txt diff --git a/192.168.10.103/zig-update.sh b/192.168.10.103/zig-update.sh index 0ae5af8..6180b76 100644 --- a/192.168.10.103/zig-update.sh +++ b/192.168.10.103/zig-update.sh @@ -1,15 +1,45 @@ #!/bin/sh -export VER="0.16.0" -export ARC="x86_64" -export OS="openbsd" +OS="$(uname -s)" +case "$OS" in + FreeBSD) OS="freebsd" ;; + OpenBSD) OS="openbsd" ;; + Linux) OS="linux" ;; + Darwin) OS="macos" ;; + *) exit 1;; +esac -wget https://ziglang.org/download/$VER/zig-$ARC-$OS-$VER.tar.xz -xzcat zig-$ARC-$OS-$VER.tar.xz | tar xf - -cd zig-$ARC-$OS-$VER -rm -rf /usr/local/lib/zig -mv lib /usr/local/lib/zig -mv zig /usr/local/bin -cd .. -rm -rf zig-$ARC-$OS-$VER zig-$ARC-$OS-$VER* -zig version +ARC="$(uname -m)" +case "$ARC" in + x86_64|amd64) ARC="x86_64" ;; + aarch64|arm64) ARC="aarch64" ;; + *) exit 1 ;; +esac + +IP=$(ifconfig wg0 | awk '/inet / {print $2; exit}') +VER=$(wget -qO- https://ziglang.org/download/index.json | + sed 's/[",:]//g' | + awk '/^[[:space:]]*[0-9]+\.[0-9]+/ {print $1; exit}') +CURVER=$(zig version) +DATE=$(date +"%Y年%m月%d日") + +echo "${IP} サーバーZigバージョンが更新されました。(${DATE}) +--------------- +" > /root/zig.txt + +if [ "$VER" = "$CURVER" ]; then + echo "最新Zigバージョンが既にインストールされています。" >> /root/zig.txt +else + wget https://ziglang.org/download/$VER/zig-$ARC-$OS-$VER.tar.xz >> /root/zig.txt + xzcat zig-$ARC-$OS-$VER.tar.xz | tar xf - >> /root/zig.txt + cd zig-$ARC-$OS-$VER + rm -rfv /usr/local/lib/zig >> /root/zig.txt + mv -v lib /usr/local/lib/zig >> /root/zig.txt + mv -v zig /usr/local/bin >> /root/zig.txt + rm -rfv zig-$ARC-$OS-$VER zig-$ARC-$OS-$VER.tar.xz >> /root/zig.txt + zig version >> /root/zig.txt + echo "Zigバージョンを更新に成功です。" >> /root/zig.txt +fi + +cat /root/zig.txt | mail -s "${IP} Zigバージョン更新 (${DATE})" reports@076.ne.jp +rm -rf /root/zig.txt diff --git a/192.168.10.104/crontab b/192.168.10.104/crontab index 81f25e6..59b707e 100644 --- a/192.168.10.104/crontab +++ b/192.168.10.104/crontab @@ -1,3 +1,7 @@ -0 8 * * 2 /root/update_pkgs.sh -0 8 * * 5 /root/update_pkgs.sh -0 4 * * * /root/sync-vmail-backup.sh +0 6 * * 1 /root/go-update.sh +0 6 * * 4 /root/go-update.sh +0 6 * * 3 /root/zig-update.sh +0 6 * * 6 /root/zig-update.sh +0 8 * * 2 /root/update_pkgs.sh +0 8 * * 5 /root/update_pkgs.sh +0 4 * * * /root/sync-vmail-backup.sh diff --git a/192.168.10.104/go-update.sh b/192.168.10.104/go-update.sh index a42c4d8..aa9fac7 100644 --- a/192.168.10.104/go-update.sh +++ b/192.168.10.104/go-update.sh @@ -1,19 +1,48 @@ #!/bin/sh -export SER="126" -export VER="1.26.3" -export ARC="amd64" -export OS="freebsd" +OS="$(uname -s)" +case "$OS" in + FreeBSD) OS="freebsd" ;; + OpenBSD) OS="openbsd" ;; + Linux) OS="linux" ;; + Darwin) OS="macos" ;; + *) exit 1;; +esac -wget https://go.dev/dl/go$VER.$OS-$ARC.tar.gz -tar zxfv go$VER.$OS-$ARC.tar.gz -rm -rf /usr/local/go$SER -mv go /usr/local/go$SER -ln -s /usr/local/go$SER/bin/go /usr/local/bin/go$SER -ln -s /usr/local/go$SER/bin/gofmt /usr/local/bin/gofmt$SER -rm -rf /usr/local/bin/go -rm -rf /usr/local/bin/gofmt -ln -s /usr/local/bin/go$SER /usr/local/bin/go -ln -s /usr/local/bin/gofmt$SER /usr/local/bin/gofmt -go version -rm -rf go$VER.$OS-$ARC.tar.gz +ARC="$(uname -m)" +case "$ARC" in + x86_64|amd64) ARC="amd64" ;; + aarch64|arm64) ARC="arm64" ;; + *) exit 1 ;; +esac + +IP=$(ifconfig wg0 | awk '/inet / {print $2; exit}') +FVER=$(wget -qO- https://go.dev/VERSION?m=text | head -n1) +VER=${FVER#go} +SER=$(echo "$VER" | sed 's/\([0-9]*\)\.\([0-9]*\).*/\1\2/') +CURVER=$(go env GOVERSION | cut -c3-) +DATE=$(date +"%Y年%m月%d日") + +echo "${IP} サーバーGoバージョンが更新されました。(${DATE}) +--------------- +" > /root/go.txt + +if [ "$VER" = "$CURVER" ]; then + echo "最新Goバージョンが既にインストールされています。" >> /root/go.txt +else + wget https://go.dev/dl/go$VER.$OS-$ARC.tar.gz >> /root/go.txt + tar zxfv go$VER.$OS-$ARC.tar.gz >> /root/go.txt + rm -rfv /usr/local/go$SER >> /root/go.txt + mv -v go /usr/local/go$SER >> /root/go.txt + ln -s /usr/local/go$SER/bin/go /usr/local/bin/go$SER + ln -s /usr/local/go$SER/bin/gofmt /usr/local/bin/gofmt$SER + rm -rfv /usr/local/bin/go >> /root/go.txt + rm -rfv /usr/local/bin/gofmt >> /root/go.txt + ln -s /usr/local/bin/go$SER /usr/local/bin/go + ln -s /usr/local/bin/gofmt$SER /usr/local/bin/gofmt + go version >> /root/go.txt + rm -rfv go$VER.$OS-$ARC.tar.gz >> /root/go.txt +fi + +cat /root/go.txt | mail -s "${IP} Goバージョン更新 (${DATE})" reports@076.ne.jp +rm -rf /root/go.txt diff --git a/192.168.10.104/sync-vmail-backup.sh b/192.168.10.104/sync-vmail-backup.sh index d642807..4b46fdf 100644 --- a/192.168.10.104/sync-vmail-backup.sh +++ b/192.168.10.104/sync-vmail-backup.sh @@ -1,8 +1,9 @@ #!/bin/sh DATE=$(date +"%Y年%m月%d日") +IP=$(ifconfig wg0 | awk '/inet / {print $2; exit}') -echo "192.168.10.104から192.168.10.143へメールバックアップが正常にプッシュされました。 (${DATE}) +echo "${IP}から192.168.10.143へメールバックアップが正常にプッシュされました。 (${DATE}) --------------- " > /home/suwako/mailbckp.txt @@ -14,5 +15,5 @@ doas -u suwako rsync -vaHz --delete /home/suwako/vmail/mail.076.co.jp 192.168.0. echo "076スタジオ(ネットワーク)" >> /home/suwako/mailbckp.txt doas -u suwako rsync -vaHz --delete /home/suwako/vmail/mail.076.ne.jp 192.168.0.143:/zroot/vmail >> /home/suwako/mailbckp.txt -cat /home/suwako/mailbckp.txt | mail -s "192.168.10.104 メールバックアップをNASへプッシュ (${DATE})" reports@076.ne.jp +cat /home/suwako/mailbckp.txt | mail -s "${IP} メールバックアップをNASへプッシュ (${DATE})" reports@076.ne.jp rm -rf /home/suwako/mailbckp.txt diff --git a/192.168.10.104/update_pkgs.sh b/192.168.10.104/update_pkgs.sh index 2ff14c0..caa8835 100644 --- a/192.168.10.104/update_pkgs.sh +++ b/192.168.10.104/update_pkgs.sh @@ -1,8 +1,9 @@ #!/bin/sh DATE=$(date +"%Y年%m月%d日") +IP=$(ifconfig wg0 | awk '/inet / {print $2; exit}') -echo "192.168.10.104 サーバーパッケージが更新されました。 (${DATE}) +echo "${IP} サーバーパッケージが更新されました。 (${DATE}) --------------- " > /root/pkg.txt @@ -10,5 +11,5 @@ echo "192.168.10.104 サーバーパッケージが更新されました。 (${D /usr/sbin/pkg upgrade -y >> /root/pkg.txt /usr/sbin/freebsd-update cron >> /root/pkg.txt -cat /root/pkg.txt | mail -s "192.168.10.104 パッケージ更新 (${DATE})" reports@076.ne.jp +cat /root/pkg.txt | mail -s "${IP} パッケージ更新 (${DATE})" reports@076.ne.jp rm -rf /root/pkg.txt diff --git a/192.168.10.104/zig-update.sh b/192.168.10.104/zig-update.sh index 3af265b..6180b76 100644 --- a/192.168.10.104/zig-update.sh +++ b/192.168.10.104/zig-update.sh @@ -1,14 +1,45 @@ #!/bin/sh -export VER="0.16.0" -export ARC="x86_64" -export OS="freebsd" +OS="$(uname -s)" +case "$OS" in + FreeBSD) OS="freebsd" ;; + OpenBSD) OS="openbsd" ;; + Linux) OS="linux" ;; + Darwin) OS="macos" ;; + *) exit 1;; +esac -wget https://ziglang.org/download/$VER/zig-$ARC-$OS-$VER.tar.xz -tar xfv zig-$ARC-$OS-$VER.tar.xz -cd zig-$ARC-$OS-$VER -rm -rf /usr/local/lib/zig -mv lib /usr/local/lib/zig -mv zig /usr/local/bin -rm -rf zig-$ARC-$OS-$VER zig-$ARC-$OS-$VER.tar.xz -zig version +ARC="$(uname -m)" +case "$ARC" in + x86_64|amd64) ARC="x86_64" ;; + aarch64|arm64) ARC="aarch64" ;; + *) exit 1 ;; +esac + +IP=$(ifconfig wg0 | awk '/inet / {print $2; exit}') +VER=$(wget -qO- https://ziglang.org/download/index.json | + sed 's/[",:]//g' | + awk '/^[[:space:]]*[0-9]+\.[0-9]+/ {print $1; exit}') +CURVER=$(zig version) +DATE=$(date +"%Y年%m月%d日") + +echo "${IP} サーバーZigバージョンが更新されました。(${DATE}) +--------------- +" > /root/zig.txt + +if [ "$VER" = "$CURVER" ]; then + echo "最新Zigバージョンが既にインストールされています。" >> /root/zig.txt +else + wget https://ziglang.org/download/$VER/zig-$ARC-$OS-$VER.tar.xz >> /root/zig.txt + xzcat zig-$ARC-$OS-$VER.tar.xz | tar xf - >> /root/zig.txt + cd zig-$ARC-$OS-$VER + rm -rfv /usr/local/lib/zig >> /root/zig.txt + mv -v lib /usr/local/lib/zig >> /root/zig.txt + mv -v zig /usr/local/bin >> /root/zig.txt + rm -rfv zig-$ARC-$OS-$VER zig-$ARC-$OS-$VER.tar.xz >> /root/zig.txt + zig version >> /root/zig.txt + echo "Zigバージョンを更新に成功です。" >> /root/zig.txt +fi + +cat /root/zig.txt | mail -s "${IP} Zigバージョン更新 (${DATE})" reports@076.ne.jp +rm -rf /root/zig.txt diff --git a/192.168.10.106/check_relayd.sh b/192.168.10.106/check_relayd.sh index 9376d75..fe09acc 100644 --- a/192.168.10.106/check_relayd.sh +++ b/192.168.10.106/check_relayd.sh @@ -4,13 +4,14 @@ checker=$(rcctl check relayd) if [ "$checker" = 'relayd(failed)' ]; then DATE=$(date +"%Y年%m月%d日") +IP=$(ifconfig wg0 | awk '/inet / {print $2; exit}') - echo "192.168.10.106 relaydがクラッシュにより再起動されました。 (${DATE}) + echo "${IP} relaydがクラッシュにより再起動されました。 (${DATE}) --------------- " > /root/relayd.txt /etc/rc.d/relayd restart >> /root/relayd.txt - cat /root/relayd.txt | mail -s "192.168.10.106 relayd再起動 (${DATE})" reports@076.ne.jp + cat /root/relayd.txt | mail -s "${IP} relayd再起動 (${DATE})" reports@076.ne.jp rm -rf /root/relayd.txt fi diff --git a/192.168.10.106/crontab b/192.168.10.106/crontab index 440e595..123a7c6 100644 --- a/192.168.10.106/crontab +++ b/192.168.10.106/crontab @@ -18,6 +18,10 @@ HOME=/var/log #~ * * * * -ns rpki-client -v && bgpctl reload 0 2 * * 0 /root/update_certs.sh +0 6 * * 1 /root/go-update.sh +0 6 * * 4 /root/go-update.sh +0 6 * * 3 /root/zig-update.sh +0 6 * * 6 /root/zig-update.sh 0 8 * * 2 /root/update_pkgs.sh 0 8 * * 5 /root/update_pkgs.sh */5 * * * * /root/check_relayd.sh diff --git a/192.168.10.106/go-update.sh b/192.168.10.106/go-update.sh index c3528c9..aa9fac7 100644 --- a/192.168.10.106/go-update.sh +++ b/192.168.10.106/go-update.sh @@ -1,19 +1,48 @@ #!/bin/sh -export SER="126" -export VER="1.26.3" -export ARC="amd64" -export OS="openbsd" +OS="$(uname -s)" +case "$OS" in + FreeBSD) OS="freebsd" ;; + OpenBSD) OS="openbsd" ;; + Linux) OS="linux" ;; + Darwin) OS="macos" ;; + *) exit 1;; +esac -wget https://go.dev/dl/go$VER.$OS-$ARC.tar.gz -tar zxfv go$VER.$OS-$ARC.tar.gz -rm -rf /usr/local/go$SER -mv go /usr/local/go$SER -ln -s /usr/local/go$SER/bin/go /usr/local/bin/go$SER -ln -s /usr/local/go$SER/bin/gofmt /usr/local/bin/gofmt$SER -rm -rf /usr/local/bin/go -rm -rf /usr/local/bin/gofmt -ln -s /usr/local/bin/go$SER /usr/local/bin/go -ln -s /usr/local/bin/gofmt$SER /usr/local/bin/gofmt -go version -rm -rf go$VER.$OS-$ARC.tar.gz +ARC="$(uname -m)" +case "$ARC" in + x86_64|amd64) ARC="amd64" ;; + aarch64|arm64) ARC="arm64" ;; + *) exit 1 ;; +esac + +IP=$(ifconfig wg0 | awk '/inet / {print $2; exit}') +FVER=$(wget -qO- https://go.dev/VERSION?m=text | head -n1) +VER=${FVER#go} +SER=$(echo "$VER" | sed 's/\([0-9]*\)\.\([0-9]*\).*/\1\2/') +CURVER=$(go env GOVERSION | cut -c3-) +DATE=$(date +"%Y年%m月%d日") + +echo "${IP} サーバーGoバージョンが更新されました。(${DATE}) +--------------- +" > /root/go.txt + +if [ "$VER" = "$CURVER" ]; then + echo "最新Goバージョンが既にインストールされています。" >> /root/go.txt +else + wget https://go.dev/dl/go$VER.$OS-$ARC.tar.gz >> /root/go.txt + tar zxfv go$VER.$OS-$ARC.tar.gz >> /root/go.txt + rm -rfv /usr/local/go$SER >> /root/go.txt + mv -v go /usr/local/go$SER >> /root/go.txt + ln -s /usr/local/go$SER/bin/go /usr/local/bin/go$SER + ln -s /usr/local/go$SER/bin/gofmt /usr/local/bin/gofmt$SER + rm -rfv /usr/local/bin/go >> /root/go.txt + rm -rfv /usr/local/bin/gofmt >> /root/go.txt + ln -s /usr/local/bin/go$SER /usr/local/bin/go + ln -s /usr/local/bin/gofmt$SER /usr/local/bin/gofmt + go version >> /root/go.txt + rm -rfv go$VER.$OS-$ARC.tar.gz >> /root/go.txt +fi + +cat /root/go.txt | mail -s "${IP} Goバージョン更新 (${DATE})" reports@076.ne.jp +rm -rf /root/go.txt diff --git a/192.168.10.106/update_certs.sh b/192.168.10.106/update_certs.sh index 9c71e0d..bab4791 100644 --- a/192.168.10.106/update_certs.sh +++ b/192.168.10.106/update_certs.sh @@ -1,8 +1,9 @@ #!/bin/sh DATE=$(date +"%Y年%m月%d日") +IP=$(ifconfig wg0 | awk '/inet / {print $2; exit}') -echo "192.168.10.106 SSL証明書が更新されました。 (${DATE}) +echo "${IP} SSL証明書が更新されました。 (${DATE}) --------------- " > /root/cert.txt @@ -26,5 +27,5 @@ cp -v /etc/ssl/private/076.moe.key /etc/prosody/certs/ >> /root/cert.txt /etc/rc.d/httpd start >> /root/cert.txt /etc/rc.d/prosody restart >> /root/cert.txt -cat /root/cert.txt | mail -s "192.168.10.106 SSL証明書更新 (${DATE})" reports@076.ne.jp +cat /root/cert.txt | mail -s "${IP} SSL証明書更新 (${DATE})" reports@076.ne.jp rm -rf /root/cert.txt diff --git a/192.168.10.106/update_pkgs.sh b/192.168.10.106/update_pkgs.sh index 4ca3572..a488087 100644 --- a/192.168.10.106/update_pkgs.sh +++ b/192.168.10.106/update_pkgs.sh @@ -1,13 +1,14 @@ #!/bin/sh DATE=$(date +"%Y年%m月%d日") +IP=$(ifconfig wg0 | awk '/inet / {print $2; exit}') -echo "192.168.10.106 サーバーパッケージが更新されました。 (${DATE}) +echo "${IP} サーバーパッケージが更新されました。 (${DATE}) --------------- " > /root/pkg.txt /usr/sbin/pkg_add -ui >> /root/pkg.txt /usr/sbin/syspatch >> /root/pkg.txt -cat /root/pkg.txt | mail -s "192.168.10.106 パッケージ更新 (${DATE})" reports@076.ne.jp +cat /root/pkg.txt | mail -s "${IP} パッケージ更新 (${DATE})" reports@076.ne.jp rm -rf /root/pkg.txt diff --git a/192.168.10.106/zig-update.sh b/192.168.10.106/zig-update.sh index 0ae5af8..6180b76 100644 --- a/192.168.10.106/zig-update.sh +++ b/192.168.10.106/zig-update.sh @@ -1,15 +1,45 @@ #!/bin/sh -export VER="0.16.0" -export ARC="x86_64" -export OS="openbsd" +OS="$(uname -s)" +case "$OS" in + FreeBSD) OS="freebsd" ;; + OpenBSD) OS="openbsd" ;; + Linux) OS="linux" ;; + Darwin) OS="macos" ;; + *) exit 1;; +esac -wget https://ziglang.org/download/$VER/zig-$ARC-$OS-$VER.tar.xz -xzcat zig-$ARC-$OS-$VER.tar.xz | tar xf - -cd zig-$ARC-$OS-$VER -rm -rf /usr/local/lib/zig -mv lib /usr/local/lib/zig -mv zig /usr/local/bin -cd .. -rm -rf zig-$ARC-$OS-$VER zig-$ARC-$OS-$VER* -zig version +ARC="$(uname -m)" +case "$ARC" in + x86_64|amd64) ARC="x86_64" ;; + aarch64|arm64) ARC="aarch64" ;; + *) exit 1 ;; +esac + +IP=$(ifconfig wg0 | awk '/inet / {print $2; exit}') +VER=$(wget -qO- https://ziglang.org/download/index.json | + sed 's/[",:]//g' | + awk '/^[[:space:]]*[0-9]+\.[0-9]+/ {print $1; exit}') +CURVER=$(zig version) +DATE=$(date +"%Y年%m月%d日") + +echo "${IP} サーバーZigバージョンが更新されました。(${DATE}) +--------------- +" > /root/zig.txt + +if [ "$VER" = "$CURVER" ]; then + echo "最新Zigバージョンが既にインストールされています。" >> /root/zig.txt +else + wget https://ziglang.org/download/$VER/zig-$ARC-$OS-$VER.tar.xz >> /root/zig.txt + xzcat zig-$ARC-$OS-$VER.tar.xz | tar xf - >> /root/zig.txt + cd zig-$ARC-$OS-$VER + rm -rfv /usr/local/lib/zig >> /root/zig.txt + mv -v lib /usr/local/lib/zig >> /root/zig.txt + mv -v zig /usr/local/bin >> /root/zig.txt + rm -rfv zig-$ARC-$OS-$VER zig-$ARC-$OS-$VER.tar.xz >> /root/zig.txt + zig version >> /root/zig.txt + echo "Zigバージョンを更新に成功です。" >> /root/zig.txt +fi + +cat /root/zig.txt | mail -s "${IP} Zigバージョン更新 (${DATE})" reports@076.ne.jp +rm -rf /root/zig.txt