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.
