2025-01-29 20:25:40 +01:00
|
|
|
#!/bin/bash
|
|
|
|
|
# ==========================================================
|
2026-04-06 13:39:07 +02:00
|
|
|
# ProxMenux - Storage Menu
|
2025-01-29 20:25:40 +01:00
|
|
|
# ==========================================================
|
|
|
|
|
# Author : MacRimi
|
|
|
|
|
# Copyright : (c) 2024 MacRimi
|
2026-04-06 13:39:07 +02:00
|
|
|
# License : GPL-3.0
|
|
|
|
|
# Version : 2.0
|
2026-04-12 20:32:34 +02:00
|
|
|
# Last Updated: 07/04/2026
|
2025-01-29 20:25:40 +01:00
|
|
|
# ==========================================================
|
|
|
|
|
|
2026-04-06 13:39:07 +02:00
|
|
|
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
|
|
|
|
LOCAL_SCRIPTS_LOCAL="$(cd "$SCRIPT_DIR/.." && pwd)"
|
|
|
|
|
LOCAL_SCRIPTS_DEFAULT="/usr/local/share/proxmenux/scripts"
|
|
|
|
|
LOCAL_SCRIPTS="$LOCAL_SCRIPTS_DEFAULT"
|
2025-01-29 20:25:40 +01:00
|
|
|
BASE_DIR="/usr/local/share/proxmenux"
|
2026-04-06 13:39:07 +02:00
|
|
|
UTILS_FILE="$LOCAL_SCRIPTS/utils.sh"
|
|
|
|
|
if [[ -f "$LOCAL_SCRIPTS_LOCAL/utils.sh" ]]; then
|
|
|
|
|
LOCAL_SCRIPTS="$LOCAL_SCRIPTS_LOCAL"
|
|
|
|
|
UTILS_FILE="$LOCAL_SCRIPTS/utils.sh"
|
|
|
|
|
elif [[ ! -f "$UTILS_FILE" ]]; then
|
|
|
|
|
UTILS_FILE="$BASE_DIR/utils.sh"
|
|
|
|
|
fi
|
2025-01-29 20:44:02 +01:00
|
|
|
|
2025-02-02 09:49:37 +01:00
|
|
|
if [[ -f "$UTILS_FILE" ]]; then
|
|
|
|
|
source "$UTILS_FILE"
|
2025-01-29 20:41:01 +01:00
|
|
|
fi
|
2025-02-02 09:49:37 +01:00
|
|
|
load_language
|
|
|
|
|
initialize_cache
|
2025-01-29 20:25:40 +01:00
|
|
|
|
2025-04-15 20:04:45 +02:00
|
|
|
while true; do
|
2026-04-06 13:39:07 +02:00
|
|
|
OPTION=$(dialog --colors --backtitle "ProxMenux" \
|
2026-04-12 20:32:34 +02:00
|
|
|
--title "$(translate "Disk Manager")" \
|
|
|
|
|
--menu "\n$(translate "Select an option:")" 24 78 16 \
|
2026-04-06 13:39:07 +02:00
|
|
|
"" "\Z4──────────────────────── VM ───────────────────────────\Zn" \
|
|
|
|
|
"1" "$(translate "Import Disk to VM")" \
|
|
|
|
|
"2" "$(translate "Import Disk Image to VM")" \
|
|
|
|
|
"3" "$(translate "Add Controller or NVMe PCIe to VM")" \
|
2026-04-12 20:32:34 +02:00
|
|
|
"" "" \
|
2026-04-06 13:39:07 +02:00
|
|
|
"" "\Z4──────────────────────── LXC ──────────────────────────\Zn" \
|
|
|
|
|
"4" "$(translate "Import Disk to LXC")" \
|
|
|
|
|
"" "" \
|
2026-04-12 20:32:34 +02:00
|
|
|
"" "\Z4────────────────────── Utilities ───────────────────────\Zn" \
|
|
|
|
|
"5" "$(translate "Format / Wipe Physical Disk (Safe)")" \
|
|
|
|
|
"6" "$(translate "SMART Disk Health & Test")" \
|
|
|
|
|
"7" "$(translate "Manual CLI Guide (Disk and Storage Manager)")" \
|
|
|
|
|
"" "" \
|
2026-04-06 13:39:07 +02:00
|
|
|
"0" "$(translate "Return to Main Menu")" \
|
|
|
|
|
2>&1 >/dev/tty
|
|
|
|
|
) || { exec bash "$LOCAL_SCRIPTS/menus/main_menu.sh"; }
|
2025-04-15 20:04:45 +02:00
|
|
|
|
2026-04-06 13:39:07 +02:00
|
|
|
case "$OPTION" in
|
|
|
|
|
1)
|
2025-11-03 01:17:21 +00:00
|
|
|
bash "$LOCAL_SCRIPTS/storage/disk-passthrough.sh"
|
2025-04-15 20:04:45 +02:00
|
|
|
;;
|
|
|
|
|
2)
|
2026-04-06 13:39:07 +02:00
|
|
|
bash "$LOCAL_SCRIPTS/storage/import-disk-image.sh"
|
2025-04-15 20:04:45 +02:00
|
|
|
;;
|
|
|
|
|
3)
|
2026-04-06 13:39:07 +02:00
|
|
|
bash "$LOCAL_SCRIPTS/storage/add_controller_nvme_vm.sh"
|
2025-04-15 20:04:45 +02:00
|
|
|
;;
|
|
|
|
|
4)
|
2026-04-06 13:39:07 +02:00
|
|
|
bash "$LOCAL_SCRIPTS/storage/disk-passthrough_ct.sh"
|
|
|
|
|
;;
|
2026-04-12 20:32:34 +02:00
|
|
|
5)
|
|
|
|
|
bash "$LOCAL_SCRIPTS/storage/format-disk.sh"
|
|
|
|
|
;;
|
|
|
|
|
6)
|
|
|
|
|
bash "$LOCAL_SCRIPTS/storage/smart-disk-test.sh"
|
|
|
|
|
;;
|
|
|
|
|
7)
|
|
|
|
|
bash "$LOCAL_SCRIPTS/storage/disk-storage-manual-guide.sh"
|
|
|
|
|
;;
|
2026-04-06 13:39:07 +02:00
|
|
|
0)
|
2025-11-03 01:17:21 +00:00
|
|
|
exec bash "$LOCAL_SCRIPTS/menus/main_menu.sh"
|
2025-04-15 20:04:45 +02:00
|
|
|
;;
|
|
|
|
|
*)
|
2025-11-03 01:17:21 +00:00
|
|
|
exec bash "$LOCAL_SCRIPTS/menus/main_menu.sh"
|
2025-04-15 20:04:45 +02:00
|
|
|
;;
|
|
|
|
|
esac
|
|
|
|
|
done
|