Synology Report

get all the details:

#!/bin/sh

OUT="synology-full-report.md"

echo "# Synology NAS Full System Report" > "$OUT"
echo "" >> "$OUT"
echo "_Generated on: $(date)_" >> "$OUT"
echo "" >> "$OUT"

section () {
  echo "" >> "$OUT"
  echo "## $1" >> "$OUT"
  echo "" >> "$OUT"
  echo '```' >> "$OUT"
}

endsection () {
  echo '```' >> "$OUT"
}

# --------------------------------------------------
# System / DSM info
# --------------------------------------------------
section "System & DSM Information"
uname -a >> "$OUT" 2>&1
echo "" >> "$OUT"
cat /etc/VERSION >> "$OUT" 2>&1
endsection

# --------------------------------------------------
# Hardware info
# --------------------------------------------------
section "Hardware Information"
cat /proc/sys/kernel/syno_hw_version 2>/dev/null >> "$OUT"
cat /proc/sys/kernel/syno_serial 2>/dev/null >> "$OUT"
endsection

# --------------------------------------------------
# CPU
# --------------------------------------------------
section "CPU Information"
cat /proc/cpuinfo >> "$OUT" 2>&1
endsection

# --------------------------------------------------
# Memory
# --------------------------------------------------
section "Memory Information"
free -h >> "$OUT" 2>&1
echo "" >> "$OUT"
cat /proc/meminfo >> "$OUT" 2>&1
endsection

# --------------------------------------------------
# Disk usage
# --------------------------------------------------
section "Filesystem Usage"
df -h >> "$OUT" 2>&1
endsection

# --------------------------------------------------
# Synology disk enumeration
# --------------------------------------------------
section "Synology Disk Enumeration"
synodisk --enum >> "$OUT" 2>&1
endsection

# --------------------------------------------------
# Block devices
# --------------------------------------------------
section "Block Devices"
lsblk >> "$OUT" 2>&1 || ls -l /dev/sd* >> "$OUT" 2>&1
endsection

# --------------------------------------------------
# RAID status
# --------------------------------------------------
section "RAID Status (mdadm)"
cat /proc/mdstat >> "$OUT" 2>&1
endsection

# --------------------------------------------------
# Detailed md info (best effort)
# --------------------------------------------------
section "Detailed RAID Arrays"
for md in /dev/md*; do
  if [ -b "$md" ]; then
    echo "" >> "$OUT"
    echo "### $md" >> "$OUT"
    mdadm --detail "$md" >> "$OUT" 2>&1
  fi
done
endsection

# --------------------------------------------------
# LVM info (if available)
# --------------------------------------------------
section "LVM Information"
vgdisplay >> "$OUT" 2>&1
lvdisplay >> "$OUT" 2>&1
endsection

# --------------------------------------------------
# Mount points
# --------------------------------------------------
section "Mount Points"
mount >> "$OUT" 2>&1
endsection

# --------------------------------------------------
# SMART info (best effort, no failure)
# --------------------------------------------------
section "SMART Disk Information"
for d in /dev/sd[a-z]; do
  if [ -b "$d" ]; then
    echo "" >> "$OUT"
    echo "### $d" >> "$OUT"
    smartctl -a "$d" >> "$OUT" 2>&1 || echo "SMART not available" >> "$OUT"
  fi
done
endsection

# --------------------------------------------------
# Network
# --------------------------------------------------
section "Network Interfaces"
ip addr >> "$OUT" 2>&1
echo "" >> "$OUT"
ethtool eth0 >> "$OUT" 2>&1 || true
endsection

echo "" >> "$OUT"
echo "---" >> "$OUT"
echo "_End of report_" >> "$OUT"

echo "Report written to $OUT"

chmod +x this-file.sh to make it runnable.