Been using this excellent OS to run LMS on an Allo SParky SBC, feeding a network of Pis running Dietpi and PCP.
I noticed there was an update available (153 > 154), so initiated the update process. After stopping the running services, the update process stalls at ‘patching’. The Sparky is still accessible by ssh, but there is minimal CPU activity, and HTOP shows only HTOP consuming any CPU.
A reboot gets everything running again, but still at v153.
Any ideas how to resolve this, or investigate further?
Struggling with a screen grab, but below shows how we get to the point where the update process stalls. I’ve once left it in this state overnight, but that made no difference. If I open another ssh terminla winodw and run HTOP, it only shows HTOP consuming 0.9% CPU
[paul@Manjaro-Laptop ~]$ ssh root@192.168.1.222
root@192.168.1.222's password:
The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.
Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
───────────────────────────────────────
DietPi | Update available
───────────────────────────────────────
V153 | Sparky SBC (armv7l)
───────────────────────────────────────
IP Address | 192.168.1.222
───────────────────────────────────────
Created by : Daniel Knight
Web : http://DietPi.com
Twitter : http://twitter.com/dietpi_
Donate : http://goo.gl/pzISt9
DietPi's web hosting is powered by: MyVirtualServer.com
dietpi-launcher = All the DietPi programs in one place.
dietpi-config = Feature rich configuration tool for your device.
dietpi-software = Select optimized software for installation.
dietpi-update = Run now to update DietPi (from V153 to V154).
htop = Resource monitor.
cpu = Shows CPU information and stats.
root@Sparky:~# dietpi-update
[Info] Checking RootFS R/W access. Please wait...
[Ok] RootFS R/W access.
DietPi-Update
─────────────────────────────────────────────────────
Mode: Checking for DietPi updates
Please wait...
[Info] Checking Mirror : http://dietpi.com/downloads/dietpi-update_mirror/master/server_version
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 6 100 6 0 0 69 0 --:--:-- --:--:-- --:--:-- 70
[Ok] Using update server: http://dietpi.com/downloads/dietpi-update_mirror/master/server_version
[Ok] Update available
[Info] Current Version : 153
[Info] Server Version : 154
[Info] Detecting drives, please wait...
[Info] Detected /dev mount: /dev/mmcblk0p1 > /boot
[Info] Detected /dev mount: /dev/mmcblk0p2 > /
[Info] Detected UUID mount: /dev/sda1 > /mnt/8ae2b5d6-3f83-4e81-a670-f1d76feb8616
[Info] Processing drive information, please wait...
[Info] Checking available free space on RootFS, please wait...
[Ok] 26307 MB available, 500 MB required
DietPi-Services
─────────────────────────────────────────────────────
Mode: stop
Please wait...
[Ok] cron
[Ok] proftpd
[Ok] nfs-kernel-server
[Ok] SqueezeBoxr
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 351k 100 351k 0 0 1659k 0 --:--:-- --:--:-- --:--:-- 1664k
Archive: /tmp/dietpi-update/update.zip
e76ec216e532a1571bfc9c995f65e38517d9c051
creating: /tmp/dietpi-update/DietPi-master/
inflating: /tmp/dietpi-update/DietPi-master/.gitattributes
creating: /tmp/dietpi-update/DietPi-master/.github/
inflating: /tmp/dietpi-update/DietPi-master/.github/ISSUE_TEMPLATE.md
inflating: /tmp/dietpi-update/DietPi-master/.github/PULL_REQUEST_TEMPLATE.md
inflating: /tmp/dietpi-update/DietPi-master/.gitignore
inflating: /tmp/dietpi-update/DietPi-master/CHANGELOG.txt
inflating: /tmp/dietpi-update/DietPi-master/PREP_SYSTEM_FOR_DIETPI.sh
inflating: /tmp/dietpi-update/DietPi-master/README.md
inflating: /tmp/dietpi-update/DietPi-master/TESTING-BRANCH.md
inflating: /tmp/dietpi-update/DietPi-master/boot_c1.ini
inflating: /tmp/dietpi-update/DietPi-master/boot_c2.ini
inflating: /tmp/dietpi-update/DietPi-master/boot_xu4.ini
inflating: /tmp/dietpi-update/DietPi-master/config.txt
inflating: /tmp/dietpi-update/DietPi-master/dietpi.txt
creating: /tmp/dietpi-update/DietPi-master/dietpi/
extracting: /tmp/dietpi-update/DietPi-master/dietpi/.dietpi-autostart_index
extracting: /tmp/dietpi-update/DietPi-master/dietpi/.install_stage
extracting: /tmp/dietpi-update/DietPi-master/dietpi/.update_stage
extracting: /tmp/dietpi-update/DietPi-master/dietpi/.version
inflating: /tmp/dietpi-update/DietPi-master/dietpi/boot
creating: /tmp/dietpi-update/DietPi-master/dietpi/conf/
inflating: /tmp/dietpi-update/DietPi-master/dietpi/conf/apache2_jessie.conf
inflating: /tmp/dietpi-update/DietPi-master/dietpi/conf/brutefir.service
inflating: /tmp/dietpi-update/DietPi-master/dietpi/conf/brutefir_config
inflating: /tmp/dietpi-update/DietPi-master/dietpi/conf/cava.conf
inflating: /tmp/dietpi-update/DietPi-master/dietpi/conf/cron.daily_dietpi
inflating: /tmp/dietpi-update/DietPi-master/dietpi/conf/cron.hourly_dietpi
inflating: /tmp/dietpi-update/DietPi-master/dietpi/conf/deluge.conf
inflating: /tmp/dietpi-update/DietPi-master/dietpi/conf/deluge.service
inflating: /tmp/dietpi-update/DietPi-master/dietpi/conf/deluge_web.conf
inflating: /tmp/dietpi-update/DietPi-master/dietpi/conf/fail2ban_jail.conf
inflating: /tmp/dietpi-update/DietPi-master/dietpi/conf/fstab
inflating: /tmp/dietpi-update/DietPi-master/dietpi/conf/fstab_vm
inflating: /tmp/dietpi-update/DietPi-master/dietpi/conf/fstab_x86_64-native
inflating: /tmp/dietpi-update/DietPi-master/dietpi/conf/haproxy_init
inflating: /tmp/dietpi-update/DietPi-master/dietpi/conf/htoprc
inflating: /tmp/dietpi-update/DietPi-master/dietpi/conf/kodi_udev
inflating: /tmp/dietpi-update/DietPi-master/dietpi/conf/minidlna.conf
inflating: /tmp/dietpi-update/DietPi-master/dietpi/conf/mpd.conf
inflating: /tmp/dietpi-update/DietPi-master/dietpi/conf/network_interfaces
inflating: /tmp/dietpi-update/DietPi-master/dietpi/conf/nginx.conf
inflating: /tmp/dietpi-update/DietPi-master/dietpi/conf/nginx.site-available-default
inflating: /tmp/dietpi-update/DietPi-master/dietpi/conf/nginx.sites-dietpi.owncloud.config
inflating: /tmp/dietpi-update/DietPi-master/dietpi/conf/openbazaar-server.service
inflating: /tmp/dietpi-update/DietPi-master/dietpi/conf/opentyrian_run
inflating: /tmp/dietpi-update/DietPi-master/dietpi/conf/phpsysinfo.ini
inflating: /tmp/dietpi-update/DietPi-master/dietpi/conf/proftpd.conf
inflating: /tmp/dietpi-update/DietPi-master/dietpi/conf/raspimjpeg.service
inflating: /tmp/dietpi-update/DietPi-master/dietpi/conf/smb.conf
inflating: /tmp/dietpi-update/DietPi-master/dietpi/conf/squeezeboxserver.service
inflating: /tmp/dietpi-update/DietPi-master/dietpi/conf/vsftpd.conf
inflating: /tmp/dietpi-update/DietPi-master/dietpi/conf/xorg_c1.conf
inflating: /tmp/dietpi-update/DietPi-master/dietpi/conf/xorg_c2.conf
inflating: /tmp/dietpi-update/DietPi-master/dietpi/conf/xorg_xu4.conf
inflating: /tmp/dietpi-update/DietPi-master/dietpi/conf/ympd_init
inflating: /tmp/dietpi-update/DietPi-master/dietpi/dietpi-autostart
inflating: /tmp/dietpi-update/DietPi-master/dietpi/dietpi-backup
inflating: /tmp/dietpi-update/DietPi-master/dietpi/dietpi-banner
inflating: /tmp/dietpi-update/DietPi-master/dietpi/dietpi-bugreport
inflating: /tmp/dietpi-update/DietPi-master/dietpi/dietpi-cleaner
inflating: /tmp/dietpi-update/DietPi-master/dietpi/dietpi-cloudshell
inflating: /tmp/dietpi-update/DietPi-master/dietpi/dietpi-config
inflating: /tmp/dietpi-update/DietPi-master/dietpi/dietpi-cpu_set
inflating: /tmp/dietpi-update/DietPi-master/dietpi/dietpi-cpuinfo
inflating: /tmp/dietpi-update/DietPi-master/dietpi/dietpi-cron
inflating: /tmp/dietpi-update/DietPi-master/dietpi/dietpi-drive_manager
inflating: /tmp/dietpi-update/DietPi-master/dietpi/dietpi-funtime
inflating: /tmp/dietpi-update/DietPi-master/dietpi/dietpi-launcher
inflating: /tmp/dietpi-update/DietPi-master/dietpi/dietpi-letsencrypt
inflating: /tmp/dietpi-update/DietPi-master/dietpi/dietpi-logclear
inflating: /tmp/dietpi-update/DietPi-master/dietpi/dietpi-morsecode
inflating: /tmp/dietpi-update/DietPi-master/dietpi/dietpi-obtain_hw_model
inflating: /tmp/dietpi-update/DietPi-master/dietpi/dietpi-process_tool
inflating: /tmp/dietpi-update/DietPi-master/dietpi/dietpi-ramdisk
inflating: /tmp/dietpi-update/DietPi-master/dietpi/dietpi-ramlog
inflating: /tmp/dietpi-update/DietPi-master/dietpi/dietpi-services
inflating: /tmp/dietpi-update/DietPi-master/dietpi/dietpi-software
inflating: /tmp/dietpi-update/DietPi-master/dietpi/dietpi-survey
inflating: /tmp/dietpi-update/DietPi-master/dietpi/dietpi-sync
inflating: /tmp/dietpi-update/DietPi-master/dietpi/dietpi-update
inflating: /tmp/dietpi-update/DietPi-master/dietpi/finalise
creating: /tmp/dietpi-update/DietPi-master/dietpi/func/
inflating: /tmp/dietpi-update/DietPi-master/dietpi/func/change_hostname
inflating: /tmp/dietpi-update/DietPi-master/dietpi/func/check_connection
inflating: /tmp/dietpi-update/DietPi-master/dietpi/func/create_mysql_db
inflating: /tmp/dietpi-update/DietPi-master/dietpi/func/dietpi-led_control
inflating: /tmp/dietpi-update/DietPi-master/dietpi/func/dietpi-notify
inflating: /tmp/dietpi-update/DietPi-master/dietpi/func/dietpi-optimal_mtu
inflating: /tmp/dietpi-update/DietPi-master/dietpi/func/dietpi-set_curlftpfs
inflating: /tmp/dietpi-update/DietPi-master/dietpi/func/dietpi-set_dphys-swapfile
inflating: /tmp/dietpi-update/DietPi-master/dietpi/func/dietpi-set_hardware
inflating: /tmp/dietpi-update/DietPi-master/dietpi/func/dietpi-set_nfsclient
inflating: /tmp/dietpi-update/DietPi-master/dietpi/func/dietpi-set_smbclient
inflating: /tmp/dietpi-update/DietPi-master/dietpi/func/dietpi-set_software
inflating: /tmp/dietpi-update/DietPi-master/dietpi/func/dietpi-set_userdata
inflating: /tmp/dietpi-update/DietPi-master/dietpi/func/obtain_network_details
inflating: /tmp/dietpi-update/DietPi-master/dietpi/func/run_ntpd
inflating: /tmp/dietpi-update/DietPi-master/dietpi/login
creating: /tmp/dietpi-update/DietPi-master/dietpi/misc/
inflating: /tmp/dietpi-update/DietPi-master/dietpi/misc/dietpi-justboom
inflating: /tmp/dietpi-update/DietPi-master/dietpi/misc/start_kodi
inflating: /tmp/dietpi-update/DietPi-master/dietpi/patch_file
extracting: /tmp/dietpi-update/DietPi-master/dietpi/server_version
inflating: /tmp/dietpi-update/DietPi-master/uEnv.txt
DietPi-Update
─────────────────────────────────────────────────────
Mode: Updating DietPi
Please wait...
[Info] Current Version : 153
[Info] Server Version : 154
[Info] Patching 153 to 154
The Sparky is on it’s own, no Kali or other HAT, ethernet. connected to a 1TB HDD via a powered USB hub. Due to a mishap with the micro-usb power port, the Sparky itself is powered through the GPIO pins, by the standard Allo 5v wallwart. The system has run this way since day one without issue, and has been through previous update cycles without issue (installed at version 149, from memory)
The SD card is a Sandisk Ultra, 32Gb Class 10.
Looking at the changelog, I can see nothing in the update that I need, but I like to keep it current.
Thanks for your help, let me know if you need more info/detail.
root@Sparky:~# apt purge -y pciutils
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following package was automatically installed and is no longer required:
libpci3
Use 'apt-get autoremove' to remove it.
The following packages will be REMOVED:
pciutils*
0 upgraded, 0 newly installed, 1 to remove and 0 not upgraded.
After this operation, 1,119 kB disk space will be freed.
(Reading database ... 19505 files and directories currently installed.)
Removing pciutils (1:3.2.1-3) ...
Purging configuration files for pciutils (1:3.2.1-3) ...
root@Sparky:~#
Not sure if this is of any use at all, but since the last upgrade from 152 to 153, other than adding more music files, the only change made was to add a symbolic link to the Music directory on my Linux laptop:
[paul@Manjaro-Laptop ~]$ exa -l
drwxr-xr-x - paul 25 Jul 15:26 Desktop
drwxr-xr-x - paul 20 Jul 20:36 Documents
drwxr-xr-x - paul 6 Aug 9:10 Downloads
drwxr-xr-x - paul 6 Aug 9:15 Music
drwxr-xr-x - paul 20 Jul 12:47 Pi
drwxr-xr-x - paul 5 Aug 19:34 Pictures
drwxr-xr-x - paul 3 Jul 15:10 Public
drwxr-xr-x - paul 23 Jul 15:22 Recordings
lrwxrwxrwx 17 paul 3 Jul 19:10 Sparky -> /mnt/Music/Music
drwxr-xr-x - paul 3 Jul 15:10 Templates
drwxr-xr-x - paul 3 Jul 15:10 Videos
[paul@Manjaro-Laptop ~]$
As none of the other patches have been applied, I believe this would of been the command hanging the system, but appears functional now.
Ok, try running the update again, it should be working (in theory).
NFS can cause endless system/command hangs, its a little “flaky” at times. CIFS (samba) is recommended where possible. If problems persist with the update, try dismounting the NFS drive before running the update:
umount /mnt/nfs_client
dietpi-update
If it fails to unmount, you’ll need to disable the /etc/fstab entry, run systemctl daemon-reload and reboot. Then try the update again.
With an update to v155 now available, I still can’t upgrade from 153 to 154. I’m happy to sport flares and a permed mullet, but I like my software to be up to date
Apologies again, I have not had a chance to look into this further yet.
Due to a mishap with the micro-usb power port, the Sparky itself is powered through the GPIO pins
I believe this is the culprit, unstable power causing filesystem and stability issues. Although, we cant verify this yet.
To prevent wasting your time, and to provide a solution now:
Everything our end appears to be in order. We cant see any issues in your system setup/configuration that would cause this issue at the moment.
As we believe the issue is related to your current hardware and installation only (we cant replicate the issue, and, this is the sole case), we recommend writing a fresh DietPi image and reinstalling the software you require.
If problems persist after the fresh image write, we may need to look at:
replacing the SD card
verify the GPIO wires are 2A+ capable
verify the GPIO connections are stable
try the Micro USB power. Curious, what actually happened with the USB power port?
With SBC’s, any slight interruption in power stability can cause havoc on the filesystem. Opening a can of endless worms.