Arief Siswanto
2026-05-28 12:29:05Create a small bash script + systemd service + timer.
1. Create the check script
sudo nano /usr/local/bin/check-disk3.sh
Paste this:
#!/bin/bash
DEVICE="/dev/sdc1"
MOUNTPOINT="/mnt/disk3"
LOGFILE="/var/log/check-disk3.log"
echo "[$(date)] Checking $DEVICE" >> $LOGFILE
# Make sure mount directory exists
mkdir -p $MOUNTPOINT
# Check if mounted
if mountpoint -q $MOUNTPOINT; then
echo "[$(date)] $MOUNTPOINT already mounted" >> $LOGFILE
exit 0
fi
echo "[$(date)] $MOUNTPOINT is NOT mounted" >> $LOGFILE
# Try normal mount
mount $DEVICE $MOUNTPOINT
# Check again
if mountpoint -q $MOUNTPOINT; then
echo "[$(date)] Mount success" >> $LOGFILE
exit 0
fi
echo "[$(date)] Normal mount failed, attempting repair..." >> $LOGFILE
# Try filesystem repair
fsck -y $DEVICE >> $LOGFILE 2>&1
# Try mount again
mount $DEVICE $MOUNTPOINT
# Final verification
if mountpoint -q $MOUNTPOINT; then
echo "[$(date)] Mount success after fsck" >> $LOGFILE
else
echo "[$(date)] FAILED to mount $DEVICE" >> $LOGFILE
fi
Save and exit.
2. Make it executable
sudo chmod +x /usr/local/bin/check-disk3.sh
3. Create systemd service
sudo nano /etc/systemd/system/check-disk3.service
Paste:
[Unit] Description=Check and mount /dev/sdc1 [Service] Type=oneshot ExecStart=/usr/local/bin/check-disk3.sh
Save.
4. Create hourly timer
sudo nano /etc/systemd/system/check-disk3.timer
Paste:
[Unit] Description=Run disk check every hour [Timer] OnBootSec=2min OnUnitActiveSec=1h Unit=check-disk3.service [Install] WantedBy=timers.target
Save.
5. Reload systemd
sudo systemctl daemon-reload
6. Enable and start timer
sudo systemctl enable --now check-disk3.timer
7. Check timer status
systemctl list-timers
8. Manual test
Run manually first:
sudo systemctl start check-disk3.service
Check logs:
cat /var/log/check-disk3.log
Optional: Auto mount on boot via fstab
Get UUID:
sudo blkid /dev/sdc1
Example result:
UUID="abcd-1234"
Edit fstab:
sudo nano /etc/fstab
Add:
UUID=abcd-1234 /mnt/disk3 ext4 defaults,nofail 0 2
Replace ext4 with your actual filesystem type. This helps mount automatically during boot, while the service acts as a recovery checker if the mount disappears later.
No reply found.