Header Shadow Image


Corruption warning: Metadata has LSN ahead of current LSN . Please unmount and run xfs_repair (>= v4.3) to resolve.

If you get the above, do the following ( Substitute LV for a real disk such as /dev/sdb in case the device has no Logical Volumes ) :

  1. Mount the latest ISO with the latest xfsprogs package installed that matches the OS vendor you’ve used on the failed system.  We don’t want to fix a v4 XFS with a v3 xfs_repair tool.  That won’t work.  In fact, it can damage things further.  Use the ISO Troubleshooting / Recovery options.#xfs_repair -V
    xfs_repair version 4.5.0 
  2. Check if the LVM is visible with ls –altri /dev/mapper/<LV>
  3. Ensure the device you’re working with is a real XFS filesystem.  For example:blkid /dev/sdb
    /dev/sdb: UUID=”0dc8ade8-d1e0-41e3-a4ee-6a06ba8c0b0c” TYPE=”xfs”
     
  4. If LV is not available, issuevgscan -v –mknodes 
  5. Next issue the following to active the volumes:vgchangea y 
  6. (Optional) Try xfs_check <LVM> if it’s available.  Not to worry if it’s not, simply issue:xfs_repair -n <LVM> 
  7. Review the output.  Issue the repair if nothing worries you about the above output:xfs_repair <LVM> 
  8. While repairing, it may tell you to mount the LV to replay the latest journal.  Do that by creating a temporary folder in your current path and mounting the LV on it. (See below for the exact message)
  9. Reissue the xfs_repair.
  10. Attempt to reboot or remount if the partition is not a boot partition.
  11. If this still fails, issue log zeroing alongside the repair:xfs_repair -L <LV> 
  12. Attempt to remount the volume or reboot once more.
  13. With luck, your volume will return to normal.  Feel free to post below if not.

ISSUES

These are the messages in dmesg / messages log files pertaining to this resolution above:

[  249.827365] XFS (sdb): Mounting V5 Filesystem
[  250.338544] XFS (
sdb): Corruption warning: Metadata has LSN (6:49052) ahead of current LSN (6:49006). Please unmount and run xfs_repair (>= v4.3) to resolve.
[  250.338551] XFS (
sdb): log mount/recovery failed: error -22
[  250.338675] XFS (
sdb): log mount failed
[  270.797534] XFS (
sdb): Mounting V5 Filesystem
[  271.020270] XFS (
sdb): Corruption warning: Metadata has LSN (6:49052) ahead of current LSN (6:49006). Please unmount and run xfs_repair (>= v4.3) to resolve.
[  271.020277] XFS (
sdb): log mount/recovery failed: error -22
[  271.020398] XFS (
sdb): log mount failed
[root@nfs01 ~]# 

 

SAMPLE OUTPUT

[root@nfs01 ~]# xfs_repair -L /dev/sdb
Phase 1 – find and verify superblock…
Phase 2 – using internal log
– zero
log
ALERT: The filesystem has valuable metadata changes in a log which is being
destroyed because the -L option was used.
– scan filesystem
freespace and inode maps…
– found root inode chunk
Phase 3 – for each AG…
– scan and clear agi unlinked lists…
– process known inodes and perform inode discovery…
– agno = 0
– agno = 1
– agno = 2
– agno = 3
– process newly discovered inodes…
Phase 4 – check for duplicate blocks…
– setting up duplicate extent list…
– check for inodes claiming duplicate blocks…
– agno = 0
– agno = 1
– agno = 2
– agno = 3
Phase 5 – rebuild AG headers and trees…
– reset superblock…
Phase 6 – check inode connectivity…
– resetting contents of realtime bitmap and summary inodes
– traversing filesystem …
– traversal finished …
– moving disconnected inodes to lost+found …
Phase 7 – verify and correct link counts…
Maximum metadata LSN (6:49052) is ahead of log (1:2).
Format log to cycle 9.
done
[root@nfs01 ~]#

KERNEL PANIC ERRORS

NOTE: Below was interpreted from an image.  Misinterpretations may be possible.

[2.078627] scsi 2:0:0:0: CD-ROM  NECVMWar VMware IDE CDR10 1.00 PQ: 0 ANSI: 5

[2.114948] sr 2:0:0:0: [sr0] scsi3-mmc drive: lx/lx writer dvd-ram cd/rw xa/form2 cdda tray

[2.114955] cdrom: Uniform CD-ROM driver Revision: 3.20

[2.115173] sr 2:0:0:0: Attached scsi CD-ROM sr0

[2.675030] random: fast init done

[2.948289] SGI XFS with ACLs, security attributes, no debug enabled

[2.952011] XFS (dm-0): Mounting V4 Filesystem

[3.450106] random: crng init done

[3.648589] XFS (dm-0): Starting recovery (logdev: internal)

[3.904070] XFS (dm-0): Internal error XFS_WANT_CORRUPTED_GOTO at line 1635 of file fs/xfs/libxfs/xfs_alloc.c. Caller xfs_free_extent.0xfc/0x130 [xfs]

[3.904162] CPU: 2 PID: 412 Comm: mount Not tainted 3.10.0-693.21.1.e17.x86_64 #1

[3.904165] Hardware name: IUMware, Inc. VMWare Virtual Platform/440BX Desktop Reference Platform, BIOS 6.00 04/14/2014

[3.904167] Call Trace:

[3.904177] [<ffffffff816ae7c8>1 dump_stack+0x19/0x1b

[3.904203] [1 xfs_error_report+0x3b/0x40 [xfs]

[3.904220] [1 ? xfs_free_extent+Oxfc/0x130 [xfs]

[3.904239] [1 xfs_free_ag_extent+Ox20a/0x780 [xfs]

[3.904283] [1 xfs_free_extent+Oxfc/0x130 [xfs]

[3.904313] [1 xfs_trans_free_extent+0x26/0x60 [xfs]

[3.904344] [1 xlog_recover_process_efi+Oxl7e/Ox1c0 [xfs]

[3.904372] [1 xlog_recover_process_efis.isra.30+0x77/0xe0 [xfs]

[3.904401] [1 xlog_recover_finish+0x21/OxbO [xfs]

[3.904429] [1 xfs_log_mount_finish+0x34/0x50 [xfs]

[3.904457] [1 xfs_mountfs+0x5d1/0x8c0 [xfs]

[3.904482] [1 ? xfs_filestream_get_parent+0x80/0x80 [xfs]

[3.904510] [1 xfs_fs_fill_super+0x3b3/0x4d0 [xfs]

[3.904516] [<ffffffff812096a3A mount_bdev+0x1b3/0x1f0

[3.904543] [1 ? xfs_test_remount_options.isra.11+0x70/0x70 [xfs]

[3.904571] [

[3.904576] [<ffffffff81209fle>1 mount_fs+0x3e/0x1b0

[3.904580] [<ffffffff811aa685>1 ? alloc_percpu+0x15/0x20

[3.904585] [<ffffffff81226d57>1 vfs_kern_mount+0x67/0x110

[3.904589] [<ffffffff81229263>1 do_mount+0x233/0xaf0

[3.904594] [<ffffffff811a55bb>1 ? strndup_user+0x4b/Oxa0

[3.904597] Uffffffff81229ea6A SyS_mount+0x96/0xf0

[3.904603] Uffffffff816c0715>1 system_cal1_fastpath+Oxlc/0x21

[3.904607] Uffffffff816c0661>1 ? system_call_after_swapgs+Oxae/0x146

[3.904657] XFS (dm-0): Internal error xfs_trans_cancel at line 984 of file fs/xfs/xfs_trans.c. Caller xlog_recover_process_efi+0x18e/0x1c0 (xfs]

[3.904737] CPU: 2 PID: 412 Comm: mount Not tainted 3.10.0-693.21.1.e17.x86_64 #1

[3.904739] Hardware name: VMware, Inc. VMware Virtual Platform/440BX Desktop Reference Platform, BIOS 6.00 04/14/2014

[3.904741] Call Trace:

[3.904746] Uffffffff816ae7c8>1 dump_stack+0x19/0x1b

[3.904774] Uffffffffc024705b>1 xfs_error_report+Ox3b/0x40 [xfs]

[3.904802] Uffffffffc026d7ce>1 ? xlog_recover_process_efi+Oxl8e/Ox1c0 [xfs]

[3.904830] Uffffffffc026357d>1 xfs_trans_cancel+Oxbd/Oxe0 [xfs]

[3.904859] Uffffffffc026d7ce>1 xlog_recover_process_efi+0x18e/Oxlc0 [xfs]

[3.904888] Uffffffffc026fb47>1 xlog_recover_process_efis.isra.30+0x77/0xe0 [xfs]

 

sh-4.211 xfs_repair /dev/mapper/centos-root
Phase 1 – find and verify superblock…
Phase 2 – using internal log – zero log…
ERROR: The filesystem has valuable metadata changes in a log which needs to be 
replayed. Mount the filesystem to replay the log, and unmount it before re-running xfs_repair. If you are unable to mount the filesystem, then use the -L option to destroy the log and attempt a repair.
Note that destroying the log may cause corruption — please attempt 
a mount of the filesystem before doing this.

Thanks,
TK

REF: Interpreter used: https://www.onlineocr.net/

Unable to ping NLB Gateway from outside the NLB subnet or different subnets

Unable to ping NLB Gateway from outside the NLB subnet or different subnets.  Getting timeouts when attempting to do so?

# nc -vz 192.168.0.224
Ncat: Version 7.50 ( https://nmap.org/ncat )
Ncat: Connection timed out.

While host is on a subnet external to the NLB subnet?

# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
link/ether 00:50:56:86:15:d7 brd ff:ff:ff:ff:ff:ff
inet 10.0.0.148/24 brd 10.0.0.255 scope global eth0
valid_lft forever preferred_lft forever
inet 10.0.0.77/32 scope global eth0
valid_lft forever preferred_lft forever
inet 10.0.0.78/32 scope global eth0
valid_lft forever preferred_lft forever

This is because in IGMP Multicast and Multicast, the switch never learns the proper IP to MAC mapping:

mdscisco01#sh ip arp
Protocol Address Age (min) Hardware Addr Type Interface

Internet 192.168.0.224 0 Incomplete ARPA

mdscisco01#

A great reference on this is here on the Cisco Network Load Balancing page.  In essence:

  • Since the virtual IP address uses a multicast MAC address, it is unreachable outside of the local subnet. In order to address this, you must configure a static ARP entry on each device with a Layer 3 (L3) interface in the cluster VLAN. Complete this in the same fashion as with Multicast mode. For example, if the virtual IP address is 10.100.1.99 and the multicast MAC address is 0100.5e01.0101, use this command in order to populate the ARP table statically:
    arp 10.100.1.99 0100.5e01.0101

So in our case, this will be:

arp 192.168.0.224 0100.5e7f.00e0

At least according to the article.  Here is the full list of commands:

mdscisco01#sh ip arp | include Incomplete
Internet 192.168.0.224 0 Incomplete ARPA
mdscisco01#
mdscisco01#config t
mdscisco01(config)#arp 192.168.0.224 0100.5e7f.00e0 arpa
mdscisco01(config)#end
mdscisco01#sh ip arp | include Incomplete
…..
mdscisco01#sh ip arp | include 192.168.0.224
Internet 192.168.0.224 – 0100.5e7f.00e0 ARPA
mdscisco01#

Now ping it from the host where ping didn’t work before:

# ping 192.168.0.224
PING 192.168.0.224 (192.168.0.224) 56(84) bytes of data.
64 bytes from 192.168.0.224: icmp_seq=1 ttl=126 time=0.784 ms
64 bytes from 192.168.0.224: icmp_seq=2 ttl=126 time=0.787 ms
^C
— 192.168.0.224 ping statistics —
2 packets transmitted, 2 received, 0% packet loss, time 1000ms
rtt min/avg/max/mdev = 0.784/0.785/0.787/0.028 ms

Bingo!  Next test a port:

# nc -vz 192.168.0.224 389
Ncat: Version 7.50 ( https://nmap.org/ncat )
Ncat: Connected to 192.168.0.224:389.
Ncat: 0 bytes sent, 0 bytes received in 0.03 seconds.

Now let’s check with the affected application, Confluence if it can login instead of generating this message:

Sorry, an error occurred trying to log you in. Please try again.

Verify you can login now that the IP and PORT work and route traffic.  Next, don’t forget to add the setting to any other cisco switches you may have.  Same command, different switch.  Don’t forget to save the configuration:

mdscisco01#copy running-config startup-config
Destination filename [startup-config]?
Building configuration…
[OK]
mdscisco01#

mdscisco02#copy running-config startup-config
Destination filename [startup-config]?
Building configuration…
Compressed configuration from 6882 bytes to 2683 bytes[OK]
mdscisco02#

Enjoy!

HTH

Filter Duplicate or DUP traffic in ICMP Ping requests 64 bytes from 192.168.0.100: icmp_seq ttl time ms (DUP!) from NLB Network Load Balancing Clusters

Getting this?

-bash-4.2$ ping 192.168.0.224
PING 192.168.0.224 (192.168.0.224) 56(84) bytes of data.
64 bytes from 192.168.0.224: icmp_seq=1 ttl=127 time=0.860 ms
64 bytes from 192.168.0.224: icmp_seq=1 ttl=127 time=1.22 ms (DUP!)
64 bytes from 192.168.0.224: icmp_seq=2 ttl=127 time=0.622 ms
64 bytes from 192.168.0.224: icmp_seq=2 ttl=127 time=0.872 ms (DUP!)

Apparently this can cause issues on different subnets as well:

# ping 192.168.0.224
PING 192.168.0.224 (192.168.0.224) 56(84) bytes of data.
^C
— 192.168.0.224 ping statistics —
3 packets transmitted, 0 received, 100% packet loss, time 2000ms

It’s probably because of this:

PS C:\Users\Administrator.DC01.000> Get-NlbClusterNode dc01 | fl *

Cluster : ADDNS
Name : dc01
InterfaceName : NLB
Host : dc01.domain.abc
State : Converged(default)
HostPriority : 1
AdapterGuid : {61065CC2-4C37-419F-9A8C-B3ED9277427E}
InitialHostState : Started
PersistSuspendOnReboot : False
MaskSourceMac : True
FilterIcmp : 0
GreDescriptorTimeout : 10

PS C:\Users\Administrator.DC01.000>

To set this in the registry, go to:

HKEY_LOCAL_MACHINE\System\CurrentControlSet\services\WLBS\Parameters\Interface\{GUID}\FilterICMP

And set this to 1 instead of 0.  And restart.  Right now, there doesn’t appear to be any PowerShell commands for this.  Test it out:

-bash-4.2$ ping 192.168.0.224
PING 192.168.0.224 (192.168.0.224) 56(84) bytes of data.
64 bytes from 192.168.0.224: icmp_seq=1 ttl=127 time=1.54 ms
64 bytes from 192.168.0.224: icmp_seq=2 ttl=127 time=0.931 ms
64 bytes from 192.168.0.224: icmp_seq=3 ttl=127 time=0.815 ms

Great!  This solves the DUP problem, but not the ping problem to the NLB from other subnets.  This is a different problem with a different solution that can be seen here:

Unable to ping NLB Gateway from outside the NLB subnet or different subnets

Enjoy uninterrupted connectivity.

Cheers,

Stop and start WAN or LAN interfaces on DD-WRT without a reboot.

First, let’s get some given’s, like the WAN interface:

# echo $(get_wanface)
vlan2

Or this way:

# nvram show 2>&1|grep -Ei wan_ifname=
wan_ifname=vlan2

Stop WAN or LAN

ip link set $(get_wanface) down

To bring things back up:

ip link set $(get_wanface) up

Command for WAN in this case:

udhcpc -i vlan2 -p /var/run/udhcpc.pid -s /tmp/udhcpc -O routes -O msstaticroutes -O staticroutes -x hostname:DD-WRT-HEIMDALL

NOTE: Change the ‘hostname’ to the hostname that’s set in the UI.

Enjoy!

Converting a Integer to Binary

Let’s take a number:
78
and convert it to binary.  We know an 8 bit number is between 0 and 255, let’s draw this out and use 0’s initially, where the top row represents the integer equivalent:
POS 1 2 3 4 5 6 7 8
INT 128 64 32 16 8 4 2 1
———————————————————-
BIN 0 0 0 0 0 0 0 0
Let’s convert 78 to decimal now:
78 | 0100 0000 | 78 – “64” = 14
78 | 0100 1000 | 14 – “8”  = 6
78 | 0100 1100 | 6 – “4”   = 2
78 | 0100 1110 | 2 – “2”   = 0
So, binary representation of 78 is “0100 1110” .  Now, how do we put this into logic?  Let’s try % and see what happens with the number as we progressively convert it, because modulus  (%) returns either a 0 or 1 which is exactly what we want.  🙂
78 % 2 = 0  # Let’s try modulus, is either gives 0 or 1, ideal for this.  No remainder!  Let’s store this 0 in position 1 | 0000 0000
78 / 2 = 39 # Now devide by 2 to get the next number we need to work with. NOTE: / 2 results in a truncated value so we
use that to our advantage.
39 % 2 = 1 # Modulus again.  Now we get 1.  Store this in the next bit position. | 0100 0000
39 / 2 = 19 # Divide by 2 now.  Now we get 19  2 x 19 is 38 but we already captured the 1 above.  😉
19 % 2 = 1 # Modulus again.  Now we get 1.  Store it again | 0110 0000
19 / 2 = 9 # Divide by 2 again.
9 % 2  = 1 # Modulus again.  Now we get 1.  Store it again. | 0111 0000
9 / 2  = 4 # Divide by 2 again.
4 % 2  = 0 # Modulus again.  Now we get 0.  Store it again. | 0111 0000
4 / 2  = 2 # Divide by 2 again.
2 % 2  = 0 # Modulus again.  Now we get 0.  Store it again. | 0111 0000
2 / 2  = 1 # Divide by 2 again.
1 % 2  = 1 # … | 0111 0010
1 / 2  = 0 #
0 % 2  = 0 # … | 0111 0010
You can see above is like a for loop.
So our answer after the above is 0111 0010.  But 0111 0010 != 0100 1110.  So what’s going on!  It’s backwards.  Let’s rewrite 0111 0010 backwards:
0100 1110
and now it matches our earlier answer, which is correct.
—————————————————————————————————————————————————————-
Second way to do this is using the >> and & C operators.  The >> operator, will move all the bits representing 78 to the right.  For example, if 78 is 0100 1110, then:
[A] 0100 1110
>> # Shift to right.
[B] 0010 0111
>> # and again and so fourth….
Now let’s take [A] and & it with 1.  1 is represented as 0000 0001, so:
0100 1110 # = 78
&
0000 0001
———-
0000 0000 # Digit 1 is 0
>>
0010 0111 # 32 + 4 + 2 + 1 = 39
&
0000 0001
———-
0000 0001 # Digit 2 is 1
>>
0001 0011 # 16 + 2 + 1 = 19
&
0000 0001
———-
0000 0001 # Digit 3 is 1
>>
0000 1001 # * + 1 = 9
&
0000 0001
———-
0000 0001 # Digit 4 is 1
>>
0000 0100 # 4 = 4
&
0000 0001
———-
0000 0000 # Digit 5 is 0
>>
0000 0010 # 2 = 2
&
0000 0001
———-
0000 0000 # Digit 6 is 0
>>
0000 0001 # 1 = 1
&
0000 0001
———-
0000 0000 # Digit 7 is 1
>>
0000 0000 # 0 = 0
&
0000 0001
———-
0000 0001 # Digit 8 is 0
>>
0000 0000 # IF the binary representation = 0 in decimal, we stop the program here.
Great!  Now lets what we get when we combine all “Digit N is X” from above:
01110010
again, this is backwards, so rewriting it:
0100 1110
Gives us the answer.

[ERROR] waitforx: Unable to find any RandR outputs and FATAL: Module nvidia not found in directory

Recently ran into this lovely message:

root@g73sw01:~#
root@g73sw01:~# systemctl status gdm3 -l
? gdm.service – GNOME Display Manager
Loaded: loaded (/usr/lib/systemd/system/gdm.service; static)
Active: active (running) since Sat 2024-09-14 14:42:24 EDT; 1 day 21h ago
Main PID: 3254 (gdm3)
Tasks: 4 (limit: 19063)
Memory: 5.7M (peak: 50.2M)
CPU: 2.239s
CGroup: /system.slice/gdm.service
??3254 /usr/sbin/gdm3

Sep 16 11:52:32 g73sw01.nix.mds.xyz gdm-password][736096]: pam_unix(gdm-password:auth): authentication failure; logname= uid=0 euid=0 tty=/dev/tty1 ruser= rh>
Sep 16 11:52:32 g73sw01.nix.mds.xyz gdm-password][736096]: pam_sss(gdm-password:auth): authentication success; logname= uid=0 euid=0 tty=/dev/tty1 ruser= rho>
Sep 16 11:52:32 g73sw01.nix.mds.xyz gdm-password][736096]: gkr-pam: unable to locate daemon control file
Sep 16 11:52:32 g73sw01.nix.mds.xyz gdm-password][736096]: gkr-pam: stashed password to try later in open session
Sep 16 11:52:32 g73sw01.nix.mds.xyz gdm-password][736096]: pam_unix(gdm-password:session): session opened for user tom@mds.xyz(uid=155601104) by tom@mds.xyz(>
Sep 16 11:52:32 g73sw01.nix.mds.xyz gdm-password][736096]: gkr-pam: unlocked login keyring
Sep 16 11:52:37 g73sw01.nix.mds.xyz gdm3[736955]: modprobe: FATAL: Module nvidia not found in directory /lib/modules/6.8.0-44-generic
Sep 16 11:52:48 g73sw01.nix.mds.xyz gdm3[737640]: modprobe: FATAL: Module nvidia not found in directory /lib/modules/6.8.0-44-generic
Sep 16 11:52:58 g73sw01.nix.mds.xyz gdm3[3254]: Gdm: Child process -39565 was already dead.
Sep 16 11:52:58 g73sw01.nix.mds.xyz gdm3[737891]: modprobe: FATAL: Module nvidia not found in directory /lib/modules/6.8.0-44-generic
root@g73sw01:~#

and also this one on XRDP and RDP attempts:

xrdp-sesman.log:[2024-09-14T13:10:14.437-0400] [ERROR] waitforx: Unable to find any RandR outputs

as well as this one in one of the /var/log/ log files:

can’t open /sys/module/nvidia/version
can’t access /run/u-d-c-nvidia-drm-was-loaded file

To begin addressing these, issue the following:

apt install linux-modules-nvidia

followed by installing the latest version:

apt install linux-objects-nvidia-550-server-open-6.8.0-44-lowlatency

this installed something.  But the command:

ubuntu-drivers list

still showed nothing.  And I do have Proprietary drivers for devices(restricted) is also checked in Software & Updates under Ubuntu Software.  So let’s try to install the open kernel package:

apt install nvidia-driver-550-open

and check if that worked:

ubuntu-drivers list

but nothing shows up.  Time for a reboot.  Testing with nvidia-smi reveals we need to:

root@g73sw01:~# nvidia-smi
NVIDIA-SMI has failed because it couldn’t communicate with the NVIDIA driver. Make sure that the latest NVIDIA driver is installed and running.

root@g73sw01:~#

But this quickly turned into a struggle.  Even in single user mode, the following was printed and made it difficult to get a prompt:

NVRM: The NVIDIA GPU 0000:01:00.0 (PCI ID: 10de:0dd1)
NVRM: installed in this system is not spported by open nvidia.ko because it does not include the required GPU
NVRM: System Processor (GSP)
NVRM: Please see the ‘Open Linux Kernel Modules’ and ‘GSP Firmware’ sections in the driver README, available on
NVRM: the Linux graphics driver download page at www.nvidia.com.
nvidia: probe of 0000:01:00.0 failed with error -1
NVRM: The NVIDIA probe routine failed for 1 device(s)
NVRM: None of the NVIDIA devices were initialized.

Got X startup issues so neither NoMachine nor XRDP worked:

ERROR: apport (pid 24951) 2024-09-16 14:46:59,145: report /var/crash/_usr_bin_ibus-daemon.155601104.crash already exists and unseen, skipping to avoid disk usage DoS

Eventually, ended up in this state and with these packages:

libnvidia-cfg1-470/noble-updates,noble-security,now 470.256.02-0ubuntu0.24.04.1 amd64 [installed,auto-removable]
libnvidia-common-470/noble-updates,noble-updates,noble-security,noble-security,now 470.256.02-0ubuntu0.24.04.1 all [installed,auto-removable]
libnvidia-compute-470/noble-updates,noble-security,now 470.256.02-0ubuntu0.24.04.1 amd64 [installed,automatic]
libnvidia-compute-470/noble-updates,noble-security,now 470.256.02-0ubuntu0.24.04.1 i386 [installed,auto-removable]
libnvidia-decode-470/noble-updates,noble-security,now 470.256.02-0ubuntu0.24.04.1 amd64 [installed,auto-removable]
libnvidia-decode-470/noble-updates,noble-security,now 470.256.02-0ubuntu0.24.04.1 i386 [installed,auto-removable]
libnvidia-egl-wayland1/noble,now 1:1.1.13-1build1 amd64 [installed,auto-removable]
libnvidia-encode-470/noble-updates,noble-security,now 470.256.02-0ubuntu0.24.04.1 amd64 [installed,auto-removable]
libnvidia-encode-470/noble-updates,noble-security,now 470.256.02-0ubuntu0.24.04.1 i386 [installed,auto-removable]
libnvidia-extra-470/noble-updates,noble-security,now 470.256.02-0ubuntu0.24.04.1 amd64 [installed,auto-removable]
libnvidia-fbc1-470/noble-updates,noble-security,now 470.256.02-0ubuntu0.24.04.1 amd64 [installed,auto-removable]
libnvidia-fbc1-470/noble-updates,noble-security,now 470.256.02-0ubuntu0.24.04.1 i386 [installed,auto-removable]
libnvidia-gl-470/noble-updates,noble-security,now 470.256.02-0ubuntu0.24.04.1 amd64 [installed,auto-removable]
libnvidia-gl-470/noble-updates,noble-security,now 470.256.02-0ubuntu0.24.04.1 i386 [installed,auto-removable]
libnvidia-ifr1-470/noble-updates,noble-security,now 470.256.02-0ubuntu0.24.04.1 amd64 [installed,auto-removable]
libnvidia-ifr1-470/noble-updates,noble-security,now 470.256.02-0ubuntu0.24.04.1 i386 [installed,auto-removable]
linux-modules-nvidia-550-6.8.0-44-generic/noble-updates,noble-security,now 6.8.0-44.44+1 amd64 [installed]
linux-objects-nvidia-470-6.8.0-1005-oem/noble,now 6.8.0-1005.5 amd64 [installed,automatic]
linux-objects-nvidia-550-6.8.0-44-generic/noble-updates,noble-security,now 6.8.0-44.44+1 amd64 [installed,automatic]
linux-objects-nvidia-550-server-open-6.8.0-44-lowlatency/noble-updates,noble-security,now 6.8.0-44.44.1+1 amd64 [installed]
linux-signatures-nvidia-6.8.0-1005-oem/noble,now 6.8.0-1005.5 amd64 [installed,automatic]
linux-signatures-nvidia-6.8.0-44-generic/noble-updates,noble-security,now 6.8.0-44.44+1 amd64 [installed,automatic]
nvidia-compute-utils-470/noble-updates,noble-security,now 470.256.02-0ubuntu0.24.04.1 amd64 [installed,auto-removable]
nvidia-firmware-550-550.107.02/noble-updates,noble-security,now 550.107.02-0ubuntu0.24.04.1 amd64 [installed,automatic]
nvidia-kernel-common-550/noble-updates,noble-security,now 550.107.02-0ubuntu0.24.04.1 amd64 [installed,automatic]
nvidia-kernel-source-470/noble-updates,noble-security,now 470.256.02-0ubuntu0.24.04.1 amd64 [installed,auto-removable]
nvidia-prime/noble,noble,now 0.8.17.2 all [installed]
nvidia-settings/noble,now 510.47.03-0ubuntu4 amd64 [installed]
nvidia-utils-470/noble-updates,noble-security,now 470.256.02-0ubuntu0.24.04.1 amd64 [installed,auto-removable]
xserver-xorg-video-nvidia-470/noble-updates,noble-security,now 470.256.02-0ubuntu0.24.04.1 amd64 [installed,auto-removable]

via these commands:

apt install linux-modules-nvidia-550-$(uname -r)
apt install linux-modules-nvidia-470-6.8.0-1005-oem

and upon reboot, no boot specific issues, yet.  Naturally made use of:

https://ubuntu.com/server/docs/nvidia-drivers-installation

After a few combinations of xrdp and xorgxrdp, finally logged in with only these errors printed:

[20240916-16:22:26] [ERROR] SSL_read: I/O error
[20240916-16:22:26] [ERROR] libxrdp_force_read: header read error
[20240916-16:22:26] [ERROR] Processing [ITU-T T.125] Connect-Initial failed
[20240916-16:22:26] [ERROR] [MCS Connection Sequence] receive connection request failed
[20240916-16:22:26] [ERROR] xrdp_sec_incoming: xrdp_mcs_incoming failed
[20240916-16:22:26] [ERROR] xrdp_rdp_incoming: xrdp_sec_incoming failed
[20240916-16:22:26] [ERROR] xrdp_process_main_loop: libxrdp_process_incoming failed
[20240916-16:22:26] [ERROR] xrdp_iso_send: trans_write_copy_s failed
[20240916-16:22:26] [ERROR] Sending [ITU T.125] DisconnectProviderUltimatum failed

This is the combination that works for both Kerberos/LDAP authenticated users and locally authenticated users:

xorgxrdp/noble,now 1:0.9.19-1 amd64 [installed]
xrdp/noble,now 0.9.24-4 amd64 [installed]

But when using:

xrdp_0.10.1-2_amd64.deb

we get the original error.

xrdp-sesman.log:[2024-09-14T13:10:14.437-0400] [ERROR] waitforx: Unable to find any RandR outputs

Now let’s try compiling from source.  Both XRDP and XORGXRDP from their GitHub repos and off the main branch:

root@g73sw01:/etc/X11# cat /etc/xrdp/sesman.ini|grep param
; Session definitions – startup command-line parameters for each session type
; Fedora 26 or later : param=/usr/libexec/Xorg
; Debian 9 or later : param=/usr/lib/xorg/Xorg
; Ubuntu 16.04 or later : param=/usr/lib/xorg/Xorg
; Arch Linux : param=/usr/lib/Xorg
; CentOS 7 : param=/usr/bin/Xorg or param=Xorg
; CentOS 8 : param=/usr/libexec/Xorg
; FreeBSD (from 2022Q4) : param=/usr/local/libexec/Xorg
; param=Xorg
param=/usr/lib/xorg/Xorg

A parameter change that was needed is above, but otherwise worked for at least the local users.  A session example:

[tom@mds.xyz@g73sw01:~] :)[U]$ /usr/lib/xorg/Xorg :11 -auth .Xauthority -config xrdp/xorg.conf -noreset -nolisten tcp -logfile .xorgxrdp.%s.log

X.Org X Server 1.21.1.11
X Protocol Version 11, Revision 0
Current Operating System: Linux g73sw01.nix.mds.xyz 6.8.0-1005-oem #5-Ubuntu SMP PREEMPT_DYNAMIC Sat Apr 20 01:33:14 UTC 2024 x86_64
Kernel command line: BOOT_IMAGE=/BOOT/ubuntu_6ywjpk@/vmlinuz-6.8.0-1005-oem root=ZFS=rpool/ROOT/ubuntu_6ywjpk ro quiet splash vt.handoff=1
xorg-server 2:21.1.12-1ubuntu1 (For technical support please see http://www.ubuntu.com/support)
Current version of pixman: 0.42.2
Before reporting problems, check http://wiki.x.org
to make sure that you have the latest version.
Markers: (–) probed, (**) from config file, (==) default setting,
(++) from command line, (!!) notice, (II) informational,
(WW) warning, (EE) error, (NI) not implemented, (??) unknown.
(++) Log file: “.xorgxrdp.11.log”, Time: Tue Sep 17 00:52:18 2024
(++) Using config file: “/etc/X11/xrdp/xorg.conf”
(==) Using system config directory “/usr/share/X11/xorg.conf.d”
xorgxrdpSetup:
xrdpdevSetup:
rdpmousePlug:
rdpkeybPlug:
rdpIdentify:
rdpDriverFunc: op 10
rdpProbe:
rdpPreInit:
rdpScreenInit: virtualX 800 virtualY 600 rgbBits 8 depth 24
rdpScreenInit: pfbMemory bytes 1920000
rdpScreenInit: pfbMemory 0x7f6d00924010
rdpSimdInit: assigning yuv functions
rdpSimdInit: cpuid ax 1 cx 0 return ax 0x000206a7 bx 0x03100800 cx 0x1fbae3bf dx 0xbfebfbff
rdpSimdInit: sse2 amd64 yuv functions assigned
rdpClientConInit: disconnect idle session after [0] sec
rdpClientConInit: kill disconnected [0] timeout [0] sec
rdpXvInit: depth 24
rdpScreenInit: out
rdpCreateScreenResources:
rdpmousePreInit: drv 0x6351a97a2c90 info 0x6351a9a814f0, flags 0x0
rdpmouseControl: what 0
rdpmouseDeviceInit:
rdpmouseCtrl:
rdpRegisterInputCallback: type 1 proc 0x7f6d019c2610
rdpmouseControl: what 1
rdpmouseDeviceOn:
rdpkeybPreInit: drv 0x6351a97a2c40 info 0x6351a9a85040, flags 0x0
rdpkeybControl: what 0
rdpLoadLayout: rules=”evdev” model=”pc104″ variant=””layout=”us” options=””
The XKEYBOARD keymap compiler (xkbcomp) reports:
> Warning: Could not resolve keysym XF86CameraAccessEnable
> Warning: Could not resolve keysym XF86CameraAccessDisable
> Warning: Could not resolve keysym XF86CameraAccessToggle
> Warning: Could not resolve keysym XF86NextElement
> Warning: Could not resolve keysym XF86PreviousElement
> Warning: Could not resolve keysym XF86AutopilotEngageToggle
> Warning: Could not resolve keysym XF86MarkWaypoint
> Warning: Could not resolve keysym XF86Sos
> Warning: Could not resolve keysym XF86NavChart
> Warning: Could not resolve keysym XF86FishingChart
> Warning: Could not resolve keysym XF86SingleRangeRadar
> Warning: Could not resolve keysym XF86DualRangeRadar
> Warning: Could not resolve keysym XF86RadarOverlay
> Warning: Could not resolve keysym XF86TraditionalSonar
> Warning: Could not resolve keysym XF86ClearvuSonar
> Warning: Could not resolve keysym XF86SidevuSonar
> Warning: Could not resolve keysym XF86NavInfo
Errors from xkbcomp are not fatal to the X server
rdpkeybChangeKeyboardControl:
rdpkeybChangeKeyboardControl: autoRepeat on
rdpkeybChangeKeyboardControl:
rdpkeybChangeKeyboardControl: autoRepeat on
rdpRegisterInputCallback: type 0 proc 0x7f6d00e27940
rdpkeybControl: what 1
rdpkeybDeviceOn:
rdpkeybChangeKeyboardControl:
rdpkeybChangeKeyboardControl: autoRepeat on
rdpDeferredRandR:
rdpResizeSession: width 1024 height 768
calling RRScreenSizeSet
rdpRRScreenSetSize: width 1024 height 768 mmWidth 271 mmHeight 203
rdpRRGetInfo:
screen resized to 1024×768
RRScreenSizeSet ok 1
rdpRRSetRdpOutputs: numCrtcs 0 numOutputs 0 monitorCount 0
rdpRRSetRdpOutputs: update output 0 left 0 top 0 width 1024 height 768
rdpRRConnectOutput:
rdpInDeferredRepeatCallback:
rdpkeybChangeKeyboardControl:
rdpkeybChangeKeyboardControl: autoRepeat off
rdpInDeferredRepeatCallback:
rdpkeybChangeKeyboardControl:
rdpkeybChangeKeyboardControl: autoRepeat off
rdpInDeferredRepeatCallback:
rdpkeybChangeKeyboardControl:
rdpkeybChangeKeyboardControl: autoRepeat off

 

Cheers,
HTH

SSSD krb5_child Disk quota exceeded

Getting this?

Sep 14 14:04:08 g73sw01.nix.mds.xyz krb5_child[53814]: Disk quota exceeded

Digging further:

root@g73sw01:~# cat /proc/key-users
0: 163 162/162 131/1000000 2746/25000000
101: 1 1/1 1/200 9/64000
108: 1 1/1 1/200 9/64000
110: 4 4/4 4/200 44/64000
113: 2 2/2 2/200 18/64000
123: 1 1/1 1/200 9/64000
128: 4 4/4 4/200 44/64000
135: 1 1/1 1/200 9/64000
137: 1 1/1 1/200 9/64000
997: 1 1/1 1/200 9/64000
998: 1 1/1 1/200 9/64000
999: 1 1/1 1/200 9/64000
1000: 5 5/5 5/200 55/64000
155601104: 60 60/60 59/200 19963/64000
root@g73sw01:~#

quick solution (albeit temporary) is to set kernel/keys/maxbytes higher:

# sysctl -w kernel/keys/maxbytes=64000
kernel.keys.maxbytes = 64000

and that will get you in.  However, on reboot, the high value above of 19963 disappeared, meaning it was a bug or a one-off issue when cache wasn’t cleared, so never had to use the above maxbytes increase after a reboot.  YMMV!

Cheers,
HTH

Mount Samba Share on Ubuntu

Getting this?

root@g73sw01:~# mount -t cifs -o credentials=/home/unbeknownst/.smbcredentials,vers=3.0 //nfs-c01.nix.mds.xyz/nfs-bob ./test -vv
mount: /root/test: mount(2) system call failed: No route to host.
root@g73sw01:~#

Solve it with:

root@g73sw01:~# apt-get install keyutils cifs-utils

Next hurdle, was the following:

tom@g73sw01:~$ id
uid=1000(tom) gid=1000(tom) groups=1000(tom),4(adm),24(cdrom),27(sudo),30(dip),46(plugdev),122(lpadmin),135(lxd),136(sambashare)
tom@g73sw01:~$ mount -t cifs -o credentials=$(pwd)/.smbcredentials,vers=3.0,uid=1000,gid=1000 //nfs-c01.nix.mds.xyz/nfs-vincent ./samba
mount.cifs: permission denied: no match for /home/tom/samba found in /etc/fstab
tom@g73sw01:~$

Strangely enough, the solution for this one is NOT to use mount -t cifs , but mount.cifs:

tom@g73sw01:~$ sudo mount.cifs //nfs-c01.nix.mds.xyz/nfs-vincent /home/tom/samba -o credentials=$(pwd)/.smbcredentials,vers=3.0,uid=1000,gid=1000
[sudo] password for tom:
tom@g73sw01:~$

Testing this out a bit further, reveals the mount needs to be done via sudo:

tom@g73sw01:~$ mount -t cifs //nfs-c01.nix.mds.xyz/nfs-vincent ./samba -o credentials=$(pwd)/.smbcredentials,vers=3.0,uid=1000,gid=1000
mount.cifs: permission denied: no match for /home/tom/samba found in /etc/fstab
tom@g73sw01:~$ mount.cifs //nfs-c01.nix.mds.xyz/nfs-vincent ./samba -o credentials=$(pwd)/.smbcredentials,vers=3.0,uid=1000,gid=1000
mount.cifs: permission denied: no match for /home/tom/samba found in /etc/fstab
tom@g73sw01:~$ sudo mount -t cifs //nfs-c01.nix.mds.xyz/nfs-vincent ./samba -o credentials=$(pwd)/.smbcredentials,vers=3.0,uid=1000,gid=1000
tom@g73sw01:~$

Not the best error message to indicate the real reason for the mount failure.  Testing from another user, reveals access denied:

[tom@mds.xyz@g73sw01:~] :([U]$ pwd
/n/mds.xyz/tom
[tom@mds.xyz@g73sw01:~] :)[U]$ cd /home/tom/samba
bash: cd: /home/tom/samba: Permission denied
[tom@mds.xyz@g73sw01:~] :([U]$

Perfect!

Cheers,
HTH

Identifying Ubuntu NVMe Drives based on Bus Number

There are three NVMe’s in a laptop. Two of the NVMe’s are the exact same model, Intel, and the other is a Kingston NVMe. All NVMe’s are 512GB. All are running either Windows 11 on the two identical drives, or Windows 10 on the Kingston drive. I want to keep only the second NVMe drive with Windows 11, and overwrite the first NVMe one, with Ubuntu.

However, when Ubuntu installation starts up, the NVMe drives show up as nvme0n1, nvme1n1 and nvme2n1.

The drives are as follows and their Bus Numbers as per the BIOS, are as follows:

1 – Intel SSDPEKNW512G8, Bus:2, Dev: 0, Func: 0
2 – Kingston RBUSNS8154P3512GJ3, Bus: 3, Dev: 0, Func: 0
3 – SSDPEKNW512G8, Bus: 4, Dev: 0, Func: 0

How do I tell which one I can overwrite without destroying drive #3 above, which I need to ensure retains the Windows 11 installation?

It turns out we can tell from the Ubuntu Installation command line as follows:

  • Press Ctrl – Alt – T, to open the Ubuntu Installation Linux command line.
  • Issue

    sudo su –

    to become the root (superuser)

  • Issue the following command to list the drives:

    lsblk -o NAME,SIZE,VENDOR,MODEL

  • That should give you printout similar to:

    nvme0n1 476.9G Intel SSDPEKNW512G8
    nvme1n1 476.9G Kingston RBUSNS8154P3512GJ3
    nvme2n1 476.9G Intel SSDPEKNW512G8

  • Next issue the following to list the bus numbers for each of the NVMe drives:

    lspci|grep -Ei “nvme|ssd”

  • This will list the SSD’s with their Bus numbers as follows:

    02:00:00 Non-Volatile memory controller: Intel Corporation SSD 660P Series (rev 03)
    03:00:00 Non-Volatile memory controller: Kingston Technology Company, Inc.  A1000/U-SNS8154P3 x2 NVMe SSD (rev 01)
    04:00:00 Non-Volatile memory controller: Intel Corporation SSD 660P Series (rev 03)

  • Each number above corresponding to the Bus identified in BIOS earlier.

An additional check that can be ran is using

fdisk -l

in Linux and comparing that to the Windows 10/11 diskpart output.  Both commands will display a Disk ID or Disk Identifier, that is unique for the filesystem MBR when the partitions were first created and laid down.  This won’t change until the disk is repartitioned.

Steps on Linux

  • Start a Terminal.
  • Become root:

    sudo su –

  • Execute

    fdisk -l

On Windows 10/11:

  • Start command prompt as administrator.
  • Execute:

    diskpart

  • Within diskpart, execute the following:

    select disk 0                 # Change to the disk you wish to check other then 0.
    detail disk

The additional, or secondary check could also be the only check needed or possible, since the windows Bus Information as “Bus Number 0” appeared for all the drives.  This was confusing.

Regardless, Happy Installing!

Cheers,
HTH

Ubuntu Disable RST while Windows Partitions Exist

Windows 11 already has the AHCI drivers by default.  There’s a number of articles that explain how to modify regex settings.  Usually this is not for the average user, or even an experienced one since if it doesn’t work, those settings would need to be reverted.   And there may not be an easy way to do this once the system can’t boot up, esp since windows will take actions, modifying files,  to try and boot the system.  This can have unintended consequences.

Regardless, backups are highly advised to a USB drive, that include all files and settings, before proceeding.

Disable RST in Advanced\SATA Configuration in BIOS by pressing F2 or DEL to get into BIOS first.  Reboot and check if every OS can boot up.  If they don’t, revert the BIOS settings and look at installing AHCI in Windows 10/11 to allow to switch to AHCI (It’s a boot driver after all).  The driver will come from your motherboard or laptop manufacturer.

Cheers,
HTH


     
  Copyright © 2003 - 2025 Tom Kacperski (microdevsys.com). All rights reserved.

Creative Commons License
This work is licensed under a Creative Commons Attribution 3.0 Unported License

 

The IT Development and Technology Mini Vault | MicroDevSys.com
Privacy Overview

This website uses cookies so that we can provide you with the best user experience possible. Cookie information is stored in your browser and performs functions such as recognising you when you return to our website and helping our team to understand which sections of the website you find most interesting and useful.