Package: nfs-kernel-server
Version: 1:2.8.3-1
Severity: normal

Dear Maintainer,

I'm using SysVrc and updated an NFS server from Deb12 to Deb13. This is a
machine which heavy load due to Veeam Backup & Replication repositories.

To keep up, I had changed /etc/default/nfs-kernel-server to increase
RPCNFSDCOUNT to a number high enough to stop syslog messages about
incomplete data transfers.

Since Deb13, RPCNFSDCOUNT is no longer used. Culprit is that in
/etc/init.d/nfs-kernel-server lines 99 to 101, /sbin/rpc.nfsd is
no longer given the $RPCNFSDCOUNT variable, as it was in the Debian 12
initscript.


-- Package-specific info:
-- rpcinfo --
   program vers proto   port  service
    100000    4   tcp    111  portmapper
    100000    3   tcp    111  portmapper
    100000    2   tcp    111  portmapper
    100000    4   udp    111  portmapper
    100000    3   udp    111  portmapper
    100000    2   udp    111  portmapper
    100024    1   udp  59890  status
    100024    1   tcp  47985  status
    100003    3   tcp   2049  nfs
    100003    4   tcp   2049  nfs
    100227    3   tcp   2049  nfs_acl
    100021    1   udp  36247  nlockmgr
    100021    3   udp  36247  nlockmgr
    100021    4   udp  36247  nlockmgr
    100021    1   tcp  45365  nlockmgr
    100021    3   tcp  45365  nlockmgr
    100021    4   tcp  45365  nlockmgr
    100005    1   udp  40951  mountd
    100005    1   tcp  53591  mountd
    100005    2   udp  56325  mountd
    100005    2   tcp  36969  mountd
    100005    3   udp  51628  mountd
    100005    3   tcp  50041  mountd
-- /etc/default/nfs-kernel-server --
RPCNFSDCOUNT=2000
RPCNFSDPRIORITY=0
RPCNFSDOPTS=""
RPCMOUNTDOPTS="--manage-gids"
NEED_SVCGSSD=""
RPCSVCGSSDOPTS=""

-- System Information:
Debian Release: 13.5
  APT prefers stable-updates
  APT policy: (500, 'stable-updates'), (500, 'stable-security'), (500, 'stable')
Architecture: amd64 (x86_64)

Kernel: Linux 6.12.90+deb13.1-amd64 (SMP w/12 CPU threads; PREEMPT)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), LANGUAGE not set
Shell: /bin/sh linked to /usr/bin/dash
Init: sysvinit (via /sbin/init)

Versions of packages nfs-kernel-server depends on:
ii  keyutils                1.6.3-6
ii  libblkid1               2.41-5
ii  libc6                   2.41-12+deb13u3
ii  libcap2                 1:2.75-10+deb13u1+b1
ii  libevent-core-2.1-7t64  2.1.12-stable-10+b1
ii  libnl-3-200             3.7.0-2
ii  libnl-genl-3-200        3.7.0-2
ii  libreadline8t64         8.2-6
ii  libsqlite3-0            3.46.1-7+deb13u1
ii  libtirpc3t64            1.3.6+ds-1
ii  libuuid1                2.41-5
ii  libwrap0                7.6.q-36
ii  libxml2                 2.12.7+dfsg+really2.9.14-2.1+deb13u2
ii  netbase                 6.5
ii  nfs-common              1:2.8.3-1
ii  ucf                     3.0052

Versions of packages nfs-kernel-server recommends:
ii  python3       3.13.5-1
pn  python3-yaml  <none>

Versions of packages nfs-kernel-server suggests:
ii  procps  2:4.0.4-9

-- Configuration Files:
/etc/init.d/nfs-kernel-server changed:
DESC="NFS kernel daemon"
PREFIX=/usr
[ -x $PREFIX/sbin/rpc.nfsd    ] || exit 0
[ -x $PREFIX/sbin/rpc.mountd  ] || exit 0
[ -x $PREFIX/sbin/exportfs    ] || exit 0
DEFAULTFILE=/etc/default/nfs-kernel-server
RPCNFSDPRIORITY=0
NEED_SVCGSSD=no
PROCNFSD_MOUNTPOINT=/proc/fs/nfsd
if [ -f $DEFAULTFILE ]; then
    . $DEFAULTFILE
fi
. /lib/lsb/init-functions
do_modprobe() {
    if [ -x /sbin/modprobe ] && [ -f /proc/modules ]
    then
        modprobe -q "$1" || true
    fi
}
do_mount() {
    if ! grep -E -qs "$1\$" /proc/filesystems
    then
        return 1
    fi
    if ! mountpoint -q "$2"
    then
        mount -t "$1" "$1" "$2"
        return
    fi
    return 0
}
case "$1" in
  start)
        export_files="/etc/exports"
        for file in /etc/exports.d/*.exports ; do
                if [ -f "$file" ]; then
                        export_files="$export_files $file"
                fi
        done
        # shellcheck disable=SC2086
        if [ -f /etc/exports ] && grep -q '^[[:space:]]*[^#]*/' $export_files
        then
                do_modprobe nfsd
                # See if our running kernel supports the NFS kernel server
                if ! grep -E -qs "[[:space:]]nfsd\$" /proc/filesystems; then
                        log_warning_msg "Not starting $DESC: no support in 
current kernel"
                        exit 0
                fi
                
                do_mount nfsd $PROCNFSD_MOUNTPOINT || NEED_SVCGSSD=no
                log_action_begin_msg "Exporting directories for $DESC"
                $PREFIX/sbin/exportfs -r
                RET=$?
                if [ $RET != 0 ]; then
                        log_action_end_msg $RET
                        exit $RET
                fi
                log_action_end_msg 0
                log_daemon_msg "Starting $DESC"
                log_progress_msg "nfsd"
                
                # See if rpcbind is running
                $PREFIX/sbin/rpcinfo -p >/dev/null 2>&1
                RET=$?
                if [ $RET != 0 ]; then
                    echo
                    log_warning_msg "Not starting: portmapper is not running"
                    exit 0
                fi
                start-stop-daemon --start --oknodo --quiet \
                    --nicelevel $RPCNFSDPRIORITY \
                    --exec $PREFIX/sbin/rpc.nfsd -- $RPCNFSDCOUNT
                RET=$?
                if [ $RET != 0 ]; then
                        log_end_msg $RET
                        exit $RET
                fi
                # make sure 127.0.0.1 is a valid source for requests
                ClearAddr=
                if [ -f /proc/net/rpc/auth.unix.ip/channel ]
                then
                    grep -Fqs 127.0.0.1 /proc/net/rpc/auth.unix.ip/content || {
                        echo "nfsd 127.0.0.1 2147483647 localhost" 
>/proc/net/rpc/auth.unix.ip/channel
                        ClearAddr=yes
                    }
                fi
                [ -z "$ClearAddr" ] || echo "nfsd 127.0.0.1 1" 
>/proc/net/rpc/auth.unix.ip/channel
        
                if [ "$NEED_SVCGSSD" = "yes" ]; then
                        do_modprobe rpcsec_gss_krb5
                        log_progress_msg "svcgssd"
                        start-stop-daemon --start --oknodo --quiet \
                            --exec $PREFIX/sbin/rpc.svcgssd
                        RET=$?
                        if [ $RET != 0 ]; then
                                log_end_msg $RET
                                exit $RET
                        fi
                fi
                log_progress_msg "mountd"
                start-stop-daemon --start --oknodo --quiet \
                    --exec $PREFIX/sbin/rpc.mountd
                RET=$?
                if [ $RET != 0 ]; then
                        log_end_msg $RET
                        exit $RET
                fi
                log_end_msg 0
        else
                log_warning_msg "Not starting $DESC: no exports"
        fi
        ;;
  stop)
        log_daemon_msg "Stopping $DESC"
        log_progress_msg "mountd"
        start-stop-daemon --stop --oknodo --quiet \
            --name rpc.mountd --user 0
        RET=$?
        if [ $RET != 0 ]; then
                log_end_msg $RET
                exit $RET
        fi
        if [ "$NEED_SVCGSSD" = "yes" ]; then
                log_progress_msg "svcgssd"
                start-stop-daemon --stop --oknodo --quiet \
                    --name rpc.svcgssd --user 0
                RET=$?
                if [ $RET != 0 ]; then
                        log_end_msg $RET
                        exit $RET
                fi
        fi
        log_progress_msg "nfsd"
        start-stop-daemon --stop --oknodo --quiet \
            --name nfsd --user 0 --signal 2
        RET=$?
        if [ $RET != 0 ]; then
                log_end_msg $RET
                exit $RET
        fi
        log_end_msg 0
        log_action_begin_msg "Unexporting directories for $DESC"
        $PREFIX/sbin/exportfs -au
        RET=$?
        if [ $RET != 0 ]; then
                log_action_end_msg $RET
                exit $RET
        fi
        log_action_end_msg 0
        if mountpoint -q $PROCNFSD_MOUNTPOINT
        then
            $PREFIX/sbin/exportfs -f
        fi
        ;;
  status)
        status_of_proc nfsd nfsd
        exit $?
        ;;
  reload | force-reload)
        log_begin_msg "Re-exporting directories for $DESC..."
        $PREFIX/sbin/exportfs -r
        RET=$?
        log_end_msg $RET
        exit $RET
        ;;
  restart)
        $0 stop
        sleep 1
        $0 start
        ;;
  *)
        log_success_msg "Usage: nfs-kernel-server 
{start|stop|status|reload|force-reload|restart}"
        exit 1
        ;;
esac
exit 0


-- no debconf information

Reply via email to