Hi, I recently had a few troubles with TinyLMS. After tracking it down, it was due to a corruption of the FAT filesystem. This confirm what I said about backups in section (6), you can not fully trust those hard drives.
1) Symptoms ------------- The first thing I noticed is that I was not able to copy new files to my Touch using rsync. After investigation on the Touch itself, I realised that the disk was mounted read-only : ----------------- # mount [...] /dev/sda1 on /media/sda1 type vfat (ro,fmask=0022,dmask=0022,allow_utime=177777,codepage=cp437,iocharset=iso8859-1) ------------------ I did not think about it much, I just remounted the disk read-write and copied my files. Later one, I noticed is that on other SqueezeBoxes I would not get all artwork. On the SqueezeBox Touch being the server the player would not connect to the server at all. Also, the menu line for "Logitech Media Server" was no longer available in the USB menu. And SqueezeControlXL on my tablet would not work. It started approximately just after I upgraded to 7.7.2, but that could be a coincidence... 2) Debugging ------------- The first thing was checking the kernel message logs on the Touch itself : ------------------------- # dmesg [...] CMD_RESP: cmd 0x801f error, result=0x1 FAT: Filesystem panic (dev sda1) fat_bmap_cluster: request beyond EOF (i_pos 7659214134) File system has been set read-only ------------------------- Linux clearly complain that the FAT filesystem is not consistent, and that was the reason the filesystem was read-only. I removed the USB hard drive from the Touch and connected it to my Linux PC for more extensive diagnostic. I know not many people use Linux as their desktop, but similar tools are available under Windows... My first concern was about the disk itself, if some sector became bad or the disk is failing. Standard SMART diagnostics can usually answer those questions. Under Windows, I tend to use the vendor SMART utility. I checked the error logs, look for reallocated sectors, and triggered a short selftest : -------------------------- smartctl -l error /dev/sdg -d sat smartctl -t short /dev/sdg -d sat smartctl -c /dev/sdg -d sat smartctl -l selftest /dev/sdg -d sat -------------------------- Fortunately, the disk was fine. Next level up is to check the filesystem. Under Windows, you can use scandisk. The automatic pass told me about a corrupted file, I removed it and I did a manual repair pass : -------------------------- dosfsck -a -v /dev/sdg1 rm /media/TOSHIBA\ EXT/.Squeezebox/cache/artwork.db dosfsck -r -v /dev/sdg1 -------------------------- As you can see, the artwork database was the file that was corrupted at the FAT filesystem level. Quick conclusion : the hard drive was fine. The FAT filesystem was corrupted, either a bug in the Linux driver (quite unlikely) or the hard drive was powered off or disconnected during a database update (more likely). 3) Reconnecting ---------------- I reconnected the USB hard drive to the Touch. The Touch did the usual scan for changes. The scanner did not find any new files so it did not rescan for artwork. I checked the system. The filesystem was mounted read-write properly and the kernel message log did not had those bad messages. On the other hand, I had lost all artwork and the server touch still could not connect to itself. I suspect that the scanner did not rebuild the artwork database and that was causing troubles. At this point, I'm fairly confident that deleting the full database would have brought me back to a fully functioning system. But I had other plans... Have fun... Jean ------------------------------------------------------------------------ jean2's Profile: http://forums.slimdevices.com/member.php?userid=33946 View this thread: http://forums.slimdevices.com/showthread.php?t=82070 _______________________________________________ Touch mailing list Touch@lists.slimdevices.com http://lists.slimdevices.com/mailman/listinfo/touch