The officially official Devuan Forum!

You are not logged in.

#1 Re: Other Issues » Shutdown fails due to NFS mounts failing to unmount (partial solution) » Today 04:42:35

@fsmithred that sounds like a likely fix.

Would you mind posting an example of one of your fstab mounts - just to make sure the autofs option is the only one needed!

Thanks

#2 Re: Other Issues » Shutdown fails due to NFS mounts failing to unmount (partial solution) » 2024-04-17 07:51:28

thanks @Andre4freedom, good to know I'm not the only one experiencing this issue.

I guess the reason you may be seeing this with WLAN only may be that your ethernet connection is set in /etc/network/interfaces.  Interfaces defined there will no longer be managed by Network Manager.

Unmounting NFS shares manually certainly works, but I have a bad habit of forgetting this, and I'm sure it will be possible to solve with the right sysvinit script tweaks...

#3 Other Issues » Shutdown fails due to NFS mounts failing to unmount (partial solution) » 2024-04-17 04:59:32

greenant
Replies: 5

When I have NFS shares mounted, shutdown hangs (last message from rsyslog).

This is with Devuan Daedalus on Lenovo Thinkpad P14s (AMD edition).

I believe this is related to the order of events at shutdown (using sysvinit).

See ls /etc/rc6.d

K01alsa-utils	   K01lightdm			   K01vboxballoonctrl-service  K06umountnfs.sh
K01bluetooth	   K01openvpn			   K01vboxweb-service	       K07nfs-common
K01brightness	   K01pcscd			   K02avahi-daemon	       K07rpcbind
K01cups-browsed    K01pulseaudio-enable-autospawn  K02libvirtd		       K08hwclock.sh
K01docker	   K01saned			   K02network-manager	       K08networking
K01elogind	   K01speech-dispatcher		   K02vboxdrv		       K09umountfs
K01eudev	   K01tlp			   K03virtlogd		       K10umountroot
K01glances	   K01urandom			   K04sendsigs		       K11reboot
K01libvirt-guests  K01vboxautostart-service	   K05rsyslog		       README

I tried moving network manager to later in the shutdown sequence as I think the NFS umount is failing due to having network stopped first.

mv K02network-manager K07network-manager

That helps, now shutdown does complete, but there is a long delay if an NFS share is mounted.

I have tried changing the timeo property in the mount (from /etc/fstab):

nfserver:/data/media/video                        /mnt/media/video        nfs     defaults,soft,timeo=5,rw,_netdev        0       0

but the timeout doesn't seem to change the shutdown delay.

So 2 questions:

1. should the Devuan nfs-client package be updated to make sure nfsumount happens before network manager shutdown?
2. is there a way to control the NFS umount wait time so that the shutdown delay is not so long

p.s. just reporting back here too, Devuan runs very well on this laptop with a few little tweaks, thanks for all the great work maintainers!

#4 Re: DIY » missing sysvinit config for power-profiles-daemon » 2023-12-01 02:14:06

Thanks GlennW, a useful script!

There are a few things to consider as far as the best power management solution...

Here are some useful references:
- https://www.reddit.com/r/thinkpad/comme … ittle_fan/
- https://wiki.archlinux.org/title/Lenovo … -State_EPP
- https://www.phoronix.com/review/linux-65-thinkpad
- https://www.phoronix.com/news/Linux-6.6 … Management

Currently, I am using the 6.5.0.0. kernel from daedalus-backports.

aluma, if you are having sleep issues, you may want to try that kernel, no sleep issues for me.
However, the wifi driver doesn't wake from hibernate (known issue for that kernel driver)
- https://wiki.archlinux.org/title/Lenovo … ibernation

Note that I have tried the suggestion from the reddit post above and getting good power utilisation rate now (around 5.5 - 7W which should give close to 10hr battery life).

echo 'power' | tee /sys/devices/system/cpu/cpu*/cpufreq/energy_performance_preference

I will write up an install guide for Devuan for the laptop soon, but looks really good and should improve even further with new kernel releases.

#5 DIY » missing sysvinit config for power-profiles-daemon » 2023-11-30 10:51:42

greenant
Replies: 3

I am trying to access power profiles for AMD laptop (thinkpad 14s Gen4 AMD).

Devuan daedalus works well in general on this laptop but trying to set power profiles fails.

install:

apt install power-profiles-daemon

try to access power-profiles:

# powerprofilesctl get
Failed to communicate with power-profiles-daemon: g-dbus-error-quark: Error calling StartServiceByName for net.hadess.PowerProfiles: Launch helper exited with unknown return code 1 (25)

looks like the service is not running.

There is no sysvinit definition but there is a systemd unit file:

[Unit]
Description=Power Profiles daemon
Conflicts=tuned.service auto-cpufreq.service system76-power.service
Before=multi-user.target display-manager.target

[Service]
Type=dbus
BusName=net.hadess.PowerProfiles
ExecStart=/usr/libexec/power-profiles-daemon
Restart=on-failure
# This always corresponds to /var/lib/power-profiles-daemon
StateDirectory=power-profiles-daemon
#Uncomment this to enable debug
#Environment="G_MESSAGES_DEBUG=all"

# Lockdown
ProtectSystem=strict
ProtectControlGroups=true
ProtectHome=true
ProtectKernelModules=true
PrivateTmp=true
RestrictAddressFamilies=AF_UNIX AF_LOCAL AF_NETLINK
MemoryDenyWriteExecute=true
RestrictRealtime=true

[Install]
WantedBy=graphical.target

running the command directly does allow access to power profile:

/usr/libexec/power-profiles-daemon

I am looking to create a sysvinit file for this daemon.  I think I can do that with just the daemon command, but not sure if it should be connected to Dbus more explicitly?

#6 Re: Freedom Hacks » ZFS with openrc - conflict with "Breaks: openrc" » 2023-04-07 05:57:46

On further testing, I have tried removing openrc from the "Breaks" list in /var/lib/dpkg/status.

openrc then installs without complaint with ZFS installed.

On boot, it looks like the startup scripts for ZFS have started apart from zfs-import

running rc-status:

Runlevel: default
 rsyslog                                                                                              [  started  ]
 cron                                                                                                 [  started  ]
 fail2ban                                                                                             [  started  ]
 acpid                                                                                                [  started  ]
 ntp                                                                                                  [  started  ]
 sudo                                                                                                 [  started  ]
 qemu-guest-agent                                                                                     [  started  ]
 console-setup.sh                                                                                     [  started  ]
 ssh                                                                                                  [  started  ]
 dbus                                                                                                 [  started  ]
 bootlogs                                                                                             [  started  ]
 elogind                                                                                              [  started  ]
 rmnologin                                                                                            [  started  ]
 zfs-mount                                                                                            [  started  ]
 zfs-zed                                                                                              [  started  ]
 zfs-share                                                                                            [  started  ]
 stop-bootlogd                                                                                        [  started  ]
 rc.local                                                                                             [  started  ]
Dynamic Runlevel: hotplugged
Dynamic Runlevel: needed/wanted
 umountroot                                                                                           [  started  ]
 umountfs                                                                                             [  started  ]
 umountnfs.sh                                                                                         [  started  ]

rc-status zfs-import shows:

* runlevel `zfs-import' does not exist

I also had to run /sbin/modprobe zfs manually after start or else the zfs module is not loaded.

The module loading on boot can be fixed by editing /etc/modules and adding the line:

zfs

Interestingly, when installing openrc, it finds a dependency loop which it cleans up, I guess this is causing the zfs module not to be loaded on boot:

 
 * Found a solvable dependency loop: mountall-bootclean.sh p> mountall-bootclean u> zfs-import a> checkfs n> mounta
ll.sh p> mountall n> mountall-bootclean.sh.
 * Solving the loop by breaking mountall-bootclean u> zfs-import.
 * Found a solvable dependency loop: mountall.sh p> mountall u> zfs-import a> checkfs n> mountall.sh.
 * Solving the loop by breaking mountall u> zfs-import. 

I have also added an issue in the zfsonlinux packaging project: https://github.com/zfsonlinux/pkg-zfs/issues/238

#7 Re: Freedom Hacks » ZFS with openrc - conflict with "Breaks: openrc" » 2023-04-06 10:03:52

p.s. I checked if the dependency on init-system-helpers was an issue, but that doesn't seem to be the case, openrc does not remove that package

#8 Freedom Hacks » ZFS with openrc - conflict with "Breaks: openrc" » 2023-04-06 10:01:09

greenant
Replies: 2

I am trying to migrate some Devuan (Chimaera) systems from sysvinit to openrc.  The main reason is to make installing k3s easier (as it depends on openrc or systemd).

I have tested the basic process of switching to openrc on a KVM machine and it went well with just:

apt install openrc

However, on my systems that have ZFS installed, there is a conflict with zfsutils-linux breaks: openrc.

So apt/aptitude refuses to install without removing ZFS.

Since Devuan is using a backwards-compatible version of openrc, I believe it should be fine to install while preserving ZFS.

I'm not sure how to proceed.  I guess a quick and dirty fix would be to edit the entry in /var/lib/dpkg/status and remove the Breaks: openrc
Probably a better method is to recompile zfsutils-linux with checkinstall.

Would be keen to hear suggestions of the best approach and if anyone knows why the conflict is present in the package description?

More info is provided with aptitude show zfsutils-linux:

Package: zfsutils-linux                  
Version: 2.0.3-9
State: installed
Automatically installed: no
Priority: optional
Section: contrib/admin
Maintainer: Debian ZFS on Linux maintainers <pkg-zfsonlinux-devel@alioth-lists.debian.net>
Architecture: amd64
Uncompressed Size: 1,533 k
Depends: libnvpair3linux (= 2.0.3-9), libuutil3linux (= 2.0.3-9), libzfs4linux (= 2.0.3-9), libzpool4linux (=
         2.0.3-9), python3, libblkid1 (>= 2.16), libc6 (>= 2.17), libuuid1 (>= 2.16)
PreDepends: init-system-helpers (>= 1.54~)
Recommends: lsb-base, zfs-modules | zfs-dkms, zfs-zed
Suggests: nfs-kernel-server, samba-common-bin (>= 3.0.23), zfs-initramfs | zfs-dracut
Conflicts: zfs, zfs-fuse
Breaks: openrc, spl (< 0.7.9-2), spl-dkms (< 0.8.0~rc1), zfs-dkms (> 2.0.3-9...), zfs-dkms (< 2.0.3-9)
Replaces: spl (< 0.7.9-2), spl-dkms
Provides: zfsutils
Description: command-line tools to manage OpenZFS filesystems
 OpenZFS is a storage platform that encompasses the functionality of traditional filesystems and volume managers.
 It supports data checksums, compression, encryption, snapshots, and more. 
 
 This package provides the zfs and zpool commands to create and administer OpenZFS filesystems.
Homepage: https://zfsonlinux.org/
Tags: admin::configuring, admin::filesystem, interface::commandline, role::program, scope::utility,
      use::configuring

#9 Re: Other Issues » [SOLVED] Invalid Signatures » 2022-09-07 04:44:44

p.s. this worked for me on beowulf:

id=BB23C00C61FC752C
gpg --keyserver keyserver.ubuntu.com --recv-keys ${id} 
gpg --export ${id} | apt-key add -
apt update

#10 Documentation » SysVinit file for MySQL » 2022-06-23 01:32:16

greenant
Replies: 4

Trying to get MySQL to start in Devuan Chimaera, noticed that the MYSQL distributed for bullseye no longer includes a SysVinit file.

This is a workaround using an older init file:

Add to

/etc/apt/sources.list.d/mysql.list

:

### THIS FILE IS AUTOMATICALLY CONFIGURED ###
# You may comment out entries below, but any other modifications may be lost.
# Use command 'dpkg-reconfigure mysql-apt-config' as root for modifications.
deb http://repo.mysql.com/apt/debian/ bullseye mysql-apt-config
deb http://repo.mysql.com/apt/debian/ bullseye mysql-8.0
deb http://repo.mysql.com/apt/debian/ bullseye mysql-tools
##deb http://repo.mysql.com/apt/debian/ bullseye mysql-tools-preview
deb-src http://repo.mysql.com/apt/debian/ bullseye mysql-8.0

Install with apt as usual

Add to

/etc/init.d/mysql

:

!/bin/bash
#
### BEGIN INIT INFO
# Provides:          mysql
# Required-Start:    $remote_fs $syslog
# Required-Stop:     $remote_fs $syslog
# Should-Start:      $network $time
# Should-Stop:       $network $time
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: Start/ Stop MySQL Community Server daemon
# Description:       This service script facilitates startup and shutdown of
#                    mysqld daemon throught its wrapper script mysqld_safe
### END INIT INFO
#

# Copyright (c) 2015, 2018, Oracle and/or its affiliates. All rights reserved.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License, version 2.0,
# as published by the Free Software Foundation.
#
# This program is also distributed with certain software (including
# but not limited to OpenSSL) that is licensed under separate terms,
# as designated in a particular file or component or in included license
# documentation.  The authors of MySQL hereby grant you an additional
# permission to link the program and your derivative works with the
# separately licensed software that they have included with MySQL.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License, version 2.0, for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA

. /lib/lsb/init-functions
. /usr/share/mysql-8.0/mysql-helpers
cd /
umask 077

# In case server is taking more to start or stop increase the timeout here
STARTTIMEOUT=180
STOPTIMEOUT=60

# We need to check that the binaries exist; When upgrading from community to commercial this
# script will be run after community is removed but before commercial is installed
VERSION="unknown"
if pathfind mysqld; then
        VERSION=$(mysqld --version | grep mysqld | cut -d' ' -f4)
fi

MYSQLRUN=/var/run/mysqld
MYSQLDATA=$(get_mysql_option mysqld datadir "/var/lib/mysql")
MYSQLFILES=/var/lib/mysql-files
MYSQLKEYRING=/var/lib/mysql-keyring
MYSQLLOG=/var/log/mysql

# Do a quick check that the user is allowed to access the pid file
MYSQLDATA=$(get_mysql_option mysqld datadir "/var/lib/mysql")
if [ -d "$MYSQLDATA" ] && [ ! -r "$MYSQLDATA" ];
then
        echo "Permission denied. Please run as root."
        exit 1
fi

case "$1" in
  'start')
        if [ "$(get_running)" -eq 1 ];
        then
                log_action_msg "A MySQL Server is already started"
        else
                verify_ready
                verify_database

                su - mysql -s /bin/bash -c "mysqld_safe > /dev/null &"
                verify_server start
                if [ "$?" -eq 0 ];
                then
                        log_action_msg "MySQL Community Server ${VERSION} is started"
                else
                        log_action_msg "MySQL Community Server ${VERSION} did not start. Please check logs for more details."
                fi
        fi
        ;;

  'stop')
        if [ "$(get_running)" -eq 1 ];
        then
               killall -u mysql
                verify_server stop
                if [ "$?" -eq 0 ];
                then
                        log_action_msg "MySQL Community Server ${VERSION} is stopped"
                else
                        log_action_msg "Attempt to shutdown MySQL Community Server ${VERSION} timed out"
                fi
        else
                log_action_msg "MySQL Community Server ${VERSION} is already stopped"
        fi
        ;;

  'restart'|'reload'|'force-reload')
        log_action_msg "Stopping MySQL Community Server ${VERSION}"
        $0 stop
        log_action_msg "Re-starting MySQL Community Server ${VERSION}"
        $0 start
        ;;

  'status')
        if [ "$(get_running)" -eq 1 ];
        then
                log_action_msg "MySQL Community Server ${VERSION} is running"
        else
                log_action_msg "MySQL Community Server ${VERSION} is not running"
                exit 3
        fi
        ;;

  *)
        echo "Usage: $SELF start|stop|restart|reload|force-reload|status"
        exit 1
        ;;
esac

exit 0

chmod +x the file and

update-rc.d mysql defaults

Basic tests OK, starts and status reported properly

#11 Re: Installation » Chimaera install as KVM guest with virsh-install - kernel mismatch » 2022-05-04 04:59:30

We have found a workaround using the netist CD image:

Download the netinst image and mount

cd /zpool1/kvm/ISO
wget -N https://mirror.leaseweb.com/devuan/devuan_chimaera/installer-iso/devuan_chimaera_4.0.0_amd64_netinstall.iso
mount -t iso9660 -o loop ./devuan_chimaera_4.0.0_amd64_netinstall.iso ./mount/

use an alternative location and specify the cdrom disk

--location='/zpool1/kvm/ISO/mount/,kernel=boot/isolinux/linux,initrd=boot/isolinux/initrd.gz' \
--disk path=/dev/loop0,device=cdrom,readonly=on

#12 Installation » Chimaera install as KVM guest with virsh-install - kernel mismatch » 2022-05-04 04:44:23

greenant
Replies: 1

We have been installing KVM machines with Devuan Beowulf successfully but similar settings for Chimaera fail with a kernel mismatch.

The installer throws the error in the log:

no packages matching running kernel 5.10.0-9-amd64 in archive

and the following error in the installer

   ┌────────────────┤ [!!] Download installer components ├─────────────────┐    
   │                                                                       │    
   │                        No kernel modules found                        │    
   │ No kernel modules were found. This probably is due to a mismatch      │    
   │ between the kernel used by this version of the installer and the      │    
   │ kernel version available in the archive.                              │    
   │                                                                       │    
   │ You should make sure that your installation image is up-to-date, or - │    
   │ if that's the case - try a different mirror, preferably               │    
   │ deb.devuan.org.                                                       │    
   │                                                                       │    
   │     <Go Back>                                          <Continue> 

We have tried with the following:

virt-install \
  --virt-type kvm \
  --name=guest \
  --description=desc \
  --vcpus=2,maxvcpus=8 \
  --ram=2048 \
  --disk path=/dev/zvol/zpool1/images/guest,size=40G,format=zfs,io=threads,cache=writeback \
  --memorybacking source.type=memfd,access.mode=shared \
  --location='https://pkgmaster.devuan.org/devuan/dists/chimaera/main/installer-amd64/' \
  --initrd-inject=/zpool1/kvm/preseed/cfg_devuan_chimaera/preseed.cfg \
  --network network=$net_in,mac=$mac_in \
  --os-type=linux \
  --os-variant=debiantesting \
  --graphics=none \
  --extra-args 'console=ttyS0'

We also tried updating the osinfo database:

apt install libosinfo-bin
apt install osinfo-db-tool
wget -O "/tmp/osinfo-db.tar.xz" "https://releases.pagure.org/libosinfo/osinfo-db-20220214.tar.xz"
osinfo-db-import --local "/tmp/osinfo-db.tar.xz"

and using `--os-variant=debian11` but got the same kernel mismatch issue

Any suggestions as to how we can get a Chimaera installation automated with virt-install?

Board footer

Forum Software