Show target host in every step header
Each step now prints "--- [Label] on <host> ---". The host is threaded through the remote self-bootstrap as argv[2] so it shows the real server name when running over ssh. Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
+21
-8
@@ -49,6 +49,16 @@ print_banner() {
|
|||||||
echo ""
|
echo ""
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# -----------------------------
|
||||||
|
# Host đang chạy (đặt ở main; hiển thị lại trong mỗi header bước)
|
||||||
|
# -----------------------------
|
||||||
|
CURRENT_TARGET="local"
|
||||||
|
|
||||||
|
# In header bước kèm host: --- [Label] on <host> ---
|
||||||
|
step_header() {
|
||||||
|
echo "${C_TITLE}--- [$1] on ${CURRENT_TARGET} ---${C_RESET}"
|
||||||
|
}
|
||||||
|
|
||||||
# -----------------------------
|
# -----------------------------
|
||||||
# Phát hiện distro qua /etc/os-release → debian | arch | unknown
|
# Phát hiện distro qua /etc/os-release → debian | arch | unknown
|
||||||
# -----------------------------
|
# -----------------------------
|
||||||
@@ -129,7 +139,7 @@ select_target() {
|
|||||||
# Bước 1: Nâng cấp hệ thống theo distro
|
# Bước 1: Nâng cấp hệ thống theo distro
|
||||||
# -----------------------------
|
# -----------------------------
|
||||||
step_upgrade() {
|
step_upgrade() {
|
||||||
echo "${C_TITLE}--- [System Upgrade] ---${C_RESET}"
|
step_header "System Upgrade"
|
||||||
local distro
|
local distro
|
||||||
distro=$(detect_distro)
|
distro=$(detect_distro)
|
||||||
case "$distro" in
|
case "$distro" in
|
||||||
@@ -182,7 +192,7 @@ docker_cmd() {
|
|||||||
# Bước 2: Docker — df rồi prune từng loại
|
# Bước 2: Docker — df rồi prune từng loại
|
||||||
# -----------------------------
|
# -----------------------------
|
||||||
step_docker() {
|
step_docker() {
|
||||||
echo "${C_TITLE}--- [Docker] ---${C_RESET}"
|
step_header "Docker"
|
||||||
if ! command -v docker >/dev/null 2>&1; then
|
if ! command -v docker >/dev/null 2>&1; then
|
||||||
echo "${C_WARN} ⚠ docker command not found.${C_RESET}"
|
echo "${C_WARN} ⚠ docker command not found.${C_RESET}"
|
||||||
echo ""
|
echo ""
|
||||||
@@ -211,7 +221,7 @@ step_docker() {
|
|||||||
# Bước 3: Journal logs — vacuum log cũ hơn 7 ngày
|
# Bước 3: Journal logs — vacuum log cũ hơn 7 ngày
|
||||||
# -----------------------------
|
# -----------------------------
|
||||||
step_journal() {
|
step_journal() {
|
||||||
echo "${C_TITLE}--- [Journal Logs] ---${C_RESET}"
|
step_header "Journal Logs"
|
||||||
if ! command -v journalctl >/dev/null 2>&1; then
|
if ! command -v journalctl >/dev/null 2>&1; then
|
||||||
echo "${C_WARN} ⚠ journalctl not found.${C_RESET}"
|
echo "${C_WARN} ⚠ journalctl not found.${C_RESET}"
|
||||||
echo ""
|
echo ""
|
||||||
@@ -229,7 +239,7 @@ step_journal() {
|
|||||||
# Bước 4: Package cache — apt clean+autoremove hoặc paccache/pacman -Sc
|
# Bước 4: Package cache — apt clean+autoremove hoặc paccache/pacman -Sc
|
||||||
# -----------------------------
|
# -----------------------------
|
||||||
step_pkg_cache() {
|
step_pkg_cache() {
|
||||||
echo "${C_TITLE}--- [Package Cache] ---${C_RESET}"
|
step_header "Package Cache"
|
||||||
local distro
|
local distro
|
||||||
distro=$(detect_distro)
|
distro=$(detect_distro)
|
||||||
case "$distro" in
|
case "$distro" in
|
||||||
@@ -269,7 +279,7 @@ step_pkg_cache() {
|
|||||||
# Bước 5: Snap — forget từng snapshot
|
# Bước 5: Snap — forget từng snapshot
|
||||||
# -----------------------------
|
# -----------------------------
|
||||||
step_snap() {
|
step_snap() {
|
||||||
echo "${C_TITLE}--- [Snap] ---${C_RESET}"
|
step_header "Snap"
|
||||||
if ! command -v snap >/dev/null 2>&1; then
|
if ! command -v snap >/dev/null 2>&1; then
|
||||||
echo "${C_WARN} ⚠ snap not found.${C_RESET}"
|
echo "${C_WARN} ⚠ snap not found.${C_RESET}"
|
||||||
echo ""
|
echo ""
|
||||||
@@ -297,7 +307,7 @@ step_snap() {
|
|||||||
# Bước 6: /tmp & cache cũ — liệt kê file >7 ngày, xác nhận rồi xóa
|
# Bước 6: /tmp & cache cũ — liệt kê file >7 ngày, xác nhận rồi xóa
|
||||||
# -----------------------------
|
# -----------------------------
|
||||||
step_tmp_cache() {
|
step_tmp_cache() {
|
||||||
echo "${C_TITLE}--- [/tmp & Cache cũ] ---${C_RESET}"
|
step_header "/tmp & Cache cũ"
|
||||||
local days=7
|
local days=7
|
||||||
echo " Tìm file cũ hơn ${days} ngày trong /tmp /var/tmp:"
|
echo " Tìm file cũ hơn ${days} ngày trong /tmp /var/tmp:"
|
||||||
local old_files
|
local old_files
|
||||||
@@ -342,6 +352,7 @@ run_all_steps() {
|
|||||||
run_on_target() {
|
run_on_target() {
|
||||||
local target="$1"
|
local target="$1"
|
||||||
if [ "$target" = "local" ]; then
|
if [ "$target" = "local" ]; then
|
||||||
|
CURRENT_TARGET="local"
|
||||||
run_all_steps
|
run_all_steps
|
||||||
return $?
|
return $?
|
||||||
fi
|
fi
|
||||||
@@ -351,8 +362,9 @@ run_on_target() {
|
|||||||
return 1
|
return 1
|
||||||
}
|
}
|
||||||
# Giải mã ra file tạm trên remote rồi chạy; stdin không bị redirect → read OK.
|
# Giải mã ra file tạm trên remote rồi chạy; stdin không bị redirect → read OK.
|
||||||
|
# Truyền target làm argv[2] để remote biết host (hiển thị lại trong header).
|
||||||
ssh -t "$target" \
|
ssh -t "$target" \
|
||||||
"umask 077; t=\$(mktemp); printf '%s' '$b64' | base64 -d > \"\$t\" && bash \"\$t\" --run-steps; r=\$?; rm -f \"\$t\"; exit \$r" \
|
"umask 077; t=\$(mktemp); printf '%s' '$b64' | base64 -d > \"\$t\" && bash \"\$t\" --run-steps \"$target\"; r=\$?; rm -f \"\$t\"; exit \$r" \
|
||||||
|| { echo "${C_DEL} ✗ ssh tới $target thất bại.${C_RESET}"; return 1; }
|
|| { echo "${C_DEL} ✗ ssh tới $target thất bại.${C_RESET}"; return 1; }
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -361,7 +373,8 @@ run_on_target() {
|
|||||||
# -----------------------------
|
# -----------------------------
|
||||||
main() {
|
main() {
|
||||||
if [ "${1:-}" = "--run-steps" ]; then
|
if [ "${1:-}" = "--run-steps" ]; then
|
||||||
echo "${C_TITLE}===== 🧹 Cleanup-server (--run-steps) =====${C_RESET}"
|
CURRENT_TARGET="${2:-local}"
|
||||||
|
echo "${C_TITLE}===== 🧹 Cleanup-server on ${CURRENT_TARGET} =====${C_RESET}"
|
||||||
echo ""
|
echo ""
|
||||||
run_all_steps
|
run_all_steps
|
||||||
echo ""
|
echo ""
|
||||||
|
|||||||
Reference in New Issue
Block a user