Инструменты пользователя

Инструменты сайта


projects:linux:manual_backup_scripts:diskspace_image

Diskspace Image

Входит в набор rPi Seal

diskspace_image.sh
#!/bin/bash
export LANG=en_US.UTF-8
export LC_ALL=en_US.UTF-8
# ==DIS/AUTOEXEC==
# === ⚙️Diskspace ===
# 09_diskspace_image.sh — Меню утилит для анализа свободного места
#
 
set -e
 
check_or_install() {
  CMD="$1"
  PKG="$2"
  if ! command -v "$CMD" &>/dev/null; then
    echo "[*] Утилита '$CMD' не найдена. Установить '$PKG'? [Y/n]"
    read -r REPLY
    if [[ "$REPLY" =~ ^[Yy]$ || -z "$REPLY" ]]; then
      sudo apt update && sudo apt install -y "$PKG"
    else
      echo "⏩ Пропускаю '$CMD'"
      return 1
    fi
  fi
  return 0
}
 
while true; do
  clear
  echo "\n📦 Меню анализа дискового пространства"
  echo "─────────────────────────────────────────"
  echo "  1. 📊 df -h              — размеры файловых систем"
  echo "  2. 🧱 lsblk -f          — структура блочных устройств"
  echo "  3. 📁 ncdu /            — интерактивный просмотр папок"
  echo "  4. 🔍 du -sh *          — размер каталогов в текущем пути"
  echo "  5. 🔬 findmnt /         — точка монтирования root"
  echo "  0. ❌ Выход"
  echo ""
  read -rp "🔀 Введите номер: " choice
  echo ""
 
  case "$choice" in
    0)
      echo "🚪 Выход."
      exit 0
      ;;
    1)
      df -h
      ;;
    2)
      lsblk -f
      ;;
    3)
      if check_or_install ncdu ncdu; then
        ncdu /
      fi
      ;;
    4)
      du -sh ./* 2>/dev/null || echo "⚠️ Нет доступа к некоторым каталогам"
      ;;
    5)
      findmnt /
      ;;
    *)
      echo "❗ Неверный выбор"
      ;;
  esac
 
  echo ""
  read -rp "⏎ Нажмите Enter для возврата в меню..."
done

*******

projects/linux/manual_backup_scripts/diskspace_image.txt · Последнее изменение: 2025/04/11 17:44 —

Если не указано иное, содержимое этой вики предоставляется на условиях следующей лицензии: CC Attribution 4.0 International
CC Attribution 4.0 International Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki