RealTechTalk (RTT) - Linux/Server Administration/Related

We have years of knowledge with technology, especially in the IT (Information Technology) industry. 

realtechtalk.com will always have fresh and useful information on a variety of subjects from Graphic Design, Server Administration, Web  Hosting Industry and much more.

This site will specialize in unique topics and problems faced by web hosts, Unix/Linux administrators, web developers, computer technicians, hardware, networking, scripting, web design and much more. The aim of this site is to explain common problems and solutions in a simple way. Forums are ineffective because they have a lot of talk, but it's hard to find the answer you're looking for, and as we know, the answer is usually not there. No one has time to scour the net for forums and read pages of irrelevant information on different forums/threads. RTT just gives you what you're looking for.

Latest Articles

  • How to resize a pdf without losing much quality in Linux Mint Ubuntu Debian Redhat Solution


    Use gs or ghostscript as below, specify the output file and also the input file.

    In the example below the output file is "outputfile-resized.pdf" and the input file is "original-pdf.pdf".  Change the input file to the name of your pdf

    gs -sDEVICE=pdfwrite -dCompatibilityLevel=1.4 -dPDFSETTINGS=/prepress -dNOPAUSE -dQUIET -dBATCH -sOutputFile=outputfile-resized.pdf original-pdf.pdf

    For example the above method took a pdf from 12MB to about 500KB with no noticeable quality loss.


  • qemu: could not load PC BIOS 'bios-256k.bin' solution


    qemu: could not load PC BIOS 'bios-256k.bin'

    The file exists here:

    /usr/share/qemu/bios-256k.bin

    It is symlinked to here:

    /usr/share/seabios/bios.bin
     

    A quick fix is manually specifying the BIOS:

     -bios /usr/share/qemu/bios-256k.bin


  • Proxmox How To Custom Partition During Install


    If you just have 1 disk per node/testing/POC then you can reduce the overall disk usage during install as below:

     

    1.) Click on "Options" on the HDD that you want to install to.

     

    2.) Under "hdsize" Set the Maximum Size smaller than the disk size.

    In this example the disk is 60G and I set max size as 20G.  This then leaves 40G remaining of unpartitioned space that you could later use for other things like Ceph, DRBD etc...

     


  • Hyper-V Linux VM Boots to Black Screen, Storage, NIC Not Found Issues


    Hyper-V uses obscure virtual hardware, you can enable the FB device for Hyper-V but if you just need text/console to work just compile this option:

    Device Drivers --->
      Graphics support --->
        <*> Framebuffer Devices --->
            <*> Simple framebuffer support

     

     


  • Ubuntu Mint How to Fix Missing/Broken /dev and /dev/pts which causes terminal to immediately close exit and not work


    If you have ever seen a system where terminal in the GUI closes instantly and/or you cannot SSH to the server/machine.

    mount -t devtmpfs none /dev
    mount -t devpts none /dev/pts


  • How high can a Xeon CPU get?


    As a fun test in an old/unloved dual CPU Xeon system, I removed the fan for the heatsink and after 1.5 hours, the system was completely stable and had surprisingly not crashed, despite exceeding or hitting the critical thermal levels


  • bash fix PATH environment variable "command not found" solution


    If you are sure the binary/program exists, it could be that your PATH variable is broken or not set.

    Just do this to set most of the common paths:

    export PATH=$PATH:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

    There's no risk to the above, because it just takes your current PATH variable and adds more to what is already existing.

    To make this permanent you can add this to your ~/.bashrc file


  • Ubuntu Linux Mint Debian Redhat Youtube Cannot Play HD or 4K videos, dropped frames or high CPU usage with Nvidia or AMD Driver


    In a lot of distros, vdpau which accelerates video through the GPU is often not installed even in recent distros.  This will result in Firefox with Youtube dropping frames when you check the "Stats for Nerds" and to the eye as jerky or slower video playback due to the dropped frames.

    Some sites will say that because you are watching VP09 that there is no GPU support, but with vdpau installed and enabled, many GPUs will still be able to use hardware decoding for 4K Youtube videos.  Information on this is spotty but you can clearly see the GPU utilization going up when watching Youtube GPUs, so the GPU is doing something to decode the video.

    This will make you think that your GPU is not capable of playing even 1080P sometimes or 4K even though it is, as in many cases it is your CPU doing the video decoding and a lot of times some CPUs cannot reliably or consistently support 4K decoding in Youtube.

    The easiest solution is to install vdpau and restart your browser:

    sudo apt install vdpau-driver-all

    I was surprised that this helped even on even much older cards including older Nvidia GPUs.

    After doing the above and restarting Firefox, the stats for nerds showed 0 dropped frames when watching 4K, compared to some dropped frames at 1080P and many dropped at 4K before enabling vdpau.

    One caveat that it may be that your video card is still too slow and may not be able to support decoding Youtube in fullscreen at certain resolutions.  You may see the above but then on a weaker GPU, may find that it does drop frames when running fullscreen.

    Sometimes frames will only drop when having the Stats for nerds on top, or the progress bar open.

    In general VP09 full support and decoding is not guaranteed to work well or at all, and unfortunately Youtube has not stuck to normal standards that most GPUs support like H265 or H264, XVID, DIVX etc...

     

    Related Links:

    https://support.mozilla.org/en-US/kb/firefox-4k-ultra-high-definition-youtube-videos

    https://www.nvidia.com/en-us/geforce/forums/geforce-graphics-cards/5/285268/no-hardware-decoding-on-youtube-with-vp9-hdr/

    https://www.reddit.com/r/linuxquestions/comments/ugp19e/help_playing_back_4k60fps_youtube_on_linux/


  • hostapd example configuration for high speed AC on 5GHz using WPA2


    This example is using RTL8821AU chipset from a TP-Link T2U Plus USB adapter and other similar ones should work the same.

    Here's how to get this chipset RTL8821AU working in Linux.

    Here's how to get RTL8812 and RTL8822 working in Linux.

    With these settings I can get very good speeds of 300+ mbit per second and for some reason the upload speed is faster than download.

    Change wlan0 if your adapter has a different device name and make sure you set your WPA passphrase or change it.

    interface=wlan0
    # "a" simply means 5GHz
    #driver=cfg80211
    hw_mode=a
    # the channel to use, 0 means the AP will search for the channel with the least interferences (ACS)
    channel=36
    #ieee80211d=1
    country_code=US
    ieee80211n=1
    ht_capab=[HT40+][HT40-][SHORT-GI-20][SHORT-GI-40][MAX-AMSDU-7935]
    #the below doesn't work hostapd wouldn't start
    #ht_capab=[HT40+][HT40-][SHORT-GI-20][SHORT-GI-40][RX-STBC1][MAX-AMSDU-7935]
    # 802.11ac support
    ieee80211ac=1         
    wmm_enabled=1
    #vht_capab=[MAX-MPDU-11454][SHORT-GI-80][HTC-VHT]
    vht_capab=[MAX-MPDU-11454][SHORT-GI-80][RX-STBC-1][HTC-VHT][MAX-A-MPDU-LEN-EXP7]

    #optimize?
    beacon_int=100
    dtim_period=2
    max_num_sta=32
    macaddr_acl=0
    rts_threshold=2347
    fragm_threshold=2346

    #end optimize
    ssid=rttWirelessInternet
    auth_algs=1
    wpa=2
    wpa_key_mgmt=WPA-PSK
    rsn_pairwise=CCMP
    wpa_passphrase=YOURWirelessInSecurePasswordHere

     


  • hostapd how to enable and use WPS to connect wireless devices like printers


    Edit your /etc/hostapd/hostapd.conf file like below and restart hostapd.

    #WPS stuff
    # Enable control interface for PBC/PIN entry


    wpa_psk_file=/etc/hostapd/hostapd.psk
    ctrl_interface=/var/run/hostapd
    eap_server=1
    wps_state=2
    ap_setup_locked=1
    wps_pin_requests=/var/run/hostapd.pin-req
    config_methods=label display push_button keypad

    #WPS model info stuff change to suit your needs
    device_name=Your Device Name
    manufacturer=Company
    model_name=Model
    model_number=ModelNum

    Create the .psk file from above

    touch /etc/hostapd/hostapd.psk

    Restart hostapd

    systemctl restart hostapd
     

    Here's how to push the non-existent button on your router for WPS

    hostapd_cli wps_pbc

    Then you should get this and your device should be able to connect now.

    Once you see the below, the device has 2 minutes to connect.


    Selected interface 'wlan0'
    OK

     

     
     

     

     


  • Dell Server Workstation iDRAC Dead after Firmware Update Solution R720, R320, R730


    This is certainly a poor design, as you can read many seasoned admins who have updated their iDRAC only to have it killed.  One possible cause is not by doing all the incremental updates, doing updates from an old iDRAC to one many revisions newer is a sure way to kill things, but even then there is no guarantee based on the amount of failures.

     

    List of threads of people's dead iDRAC's:

    https://www.reddit.com/r/homelab/comments/a49b4y/r720_idrac_help/?rdt=40792

    https://www.reddit.com/r/homelab/comments/960wx8/dell_r720_idrac_recovery/

    https://www.dell.com/community/en/conversations/rack-servers/idrac-7-not-responding-on-dell-poweredge-r720xd/

    https://www.dell.com/community/en/conversations/poweredge-hardware-general/iidrac-initialization-error-r720/647f86a0f4ccf8a8de5b28ca

    https://www.dell.com/community/en/conversations/poweredge-hardware-general/alert-idrac-not-responding-rebooting/

    https://community.spiceworks.com/t/alert-idrac-not-responding-rebooting/776991

    https://www.dell.com/community/en/conversations/systems-management-general/dead-idrac-after-update/647f932df4ccf8a8de53107b

    The first solution is don't mass update, as we've seen entire datacenters or racks full of Dell machines with dead iDRAC due to mass update attempts.  It is likely not practical to do this fix on a wide scale unless you can migrate the applications to another facility or rack as this requires the servers to be pulled off the rack or at least pulled by the rails and to open the case of course.

    Try This First (only if you have lights on the iDRAC):

    https://www.dell.com/support/kbdoc/en-us/000120131/poweredge-idrac-recovery-procedure-with-firmimg-d7

    This solution is for if your iDRAC is totally dead, no flashing lights, dead NIC etc...

    You will first need a USB to TTL adapter like this Amazon affil link.

    Story of successful recovery.

    Another successful recovery: http://blog.ignoranthack.me/?p=86

    More discussion of the issue.

    You will see Dell themselves advising to replace the motherboard, but in many cases by connecting to the UART below with a USB to TTL cable, you can tell the iDRAC to reflash from the SDCARD image.

     

    Based off this example of a Dell R720, we can see the UART pins which are labelled by this github user.

    This area is at the back right of the server (if looking from the server from the front) and will require you to remove the riser cage to access this area.

    Step 1.) Connect to USB to TTL adapter.

    Be sure to use the correct pins below (remember the TX side of the TTL goes to the RX side of the UART and the the RX side of the TTL goes to the TX side of the UART).  If in doubt, use a multimeter to make sure you aren't connecting to the wrong pins/getting voltage where you shouldn't be.

     

     

    Step 2.) Recover

    Sometimes you may need to go through 2 rounds of bootup procedure by hitting all the annoying keys to get the server booted normally for this to work.

    Connect using minicom or screen and run these commands:

    Make sure you have the file firmimg.d7 or whatever the name one is from the iDRAC firmware on the SD card that inserts at the front of the server.

    util recover -emmc -from_sd -f firmimg.d7 -noreset -clear

    Then once the above completes do this:

    util reset

     


  • Cloned VM/Server/Computer in Linux won't boot and goes to initramfs busybox Solution


    This is mainly for if you've done something silly like trying to clone a Live, running VM image.  In this example, the VM initially finds grub and tries to boot but is kicked straight into initramfs rescue mode/busybox right after this.

    If you've done this "silly" thing, you could have dataloss but a lot of times just using fsck will fix it as you are guaranteed at best to have some corruption and inconsistencies in the filesystem.  My theory is that some files were corrupt or not in their right places (eg. inode issues, unclaimed blocks etc..).

    In many of these cases, just run an fsck and you may find that you can successfully boot, but how much data you lose is dependent on your application and how much the filesystem changed before you started the copy/vs when it ended.

    The correct way is to take a snapshot or at least make sure the VM is off.  Another alternative if you can't shutdown is to do rsync or some other similar remote filecopy that constantly updates.


  • How To Add Windows 7 8 10 11 to GRUB Boot List Dual Booting


    Many times just doing an update-grub may find Windows and add it to grub, but a lot of times it won't.

     

    Create Windows in a custom grub entry like below:

    sudo vi /etc/grub.d/40_custom

    menuentry "Windows 10" {
       set root='(hd0,0)'
       chainloader + 1
    }

    Change Windows 10 to whatever you want to call it.  For example if it was for Windows 11 you'd probably want to call it "Windows 11" to avoid confusion.

    The set root= part wil also vary.  If the drive that contains windows is known to hd0 as grub then keep it the same, but if you have other drives, it could be hd1,hd2 etc... and depending on your partition table setup the second part after the "," 0 means partition 1 but sometimes it may be msdos1.

    Here's an example of booting Windows from the second hd on msdos3 partiton AKA partition #3

    menuentry "Windows 10" {
       set root='(hd0,msdos3)'
       chainloader + 1
    }

    Now update grub otherwise the added menu entry won't show or be available when you boot grub:

    sudo update-grub


  • How to configure OpenDKIM on Linux with Postfix and setup bind zonefile


    This guide assumes you have a working Postfix server and want it to sign with DKIM.

    There are a few things we  have to understand to make all of this work though, which require you to be familiar with DNS as well.

     

    1.) Install OpenDKIM

    apt install opendkim

    systemctl enable opendkim

    2.) Edit /etc/opendkim.conf

    Syslog   yes
    SyslogSuccess yes
    Mode     sv
    OmitHeaders .
    Socket   inet:8891@localhost
    Domain   yourdomain.com
    KeyTable        /etc/opendkim/KeyTable
    SigningTable   refile:/etc/opendkim/SigningTable
    ExternalIgnoreList      refile:/etc/opendkim/TrustedHosts
    InternalHosts   refile:/etc/opendkim/TrustedHosts
    UserID  opendkim:opendkim

    3.) Create your first OpenDKIM Key for your domain

    yourdomain=yourdomain.com

    mkdir -p /etc/opendkim/keys/$yourdomain
    cd /etc/opendkim/keys/$yourdomain
    opendkim-genkey -r -d $yourdomain

    4.) Configure KeyTable and SigningTable

     

    #Add this line to /etc/opendkim/KeyTable

    The "default" is what is called the selector, it could be nearly anything but we're calling it default here.  Be sure to change "yourdomain.com" to the actual domain you want DKIM signing for.

    default._domainkey.yourdomain.com yourdomain.com:default:/etc/opendkim/keys/yourdomain.com/default.private

    #Add this to line to /etc/opendkim/SigningTable

    *@yourdomain.com default._domainkey.yourdomain.com

    The * allows all e-mails from the domain to be signed, change it if this should not be the case.

    Again, be sure you change yourdomain.com to your actual domain that you setup in the KeyTable in the previous step.

    5.) Edit your Your DNS zonefile for yourname.com
     

    Here's an example using bind/named:

    #edit bind/named DNS entry for domain/zone

    cat /etc/opendkim/keys/yourdomain.com/default.txt

    Take the output of the above and then add it to your zonefile like below:

    default._domainkey    IN    TXT    ( "v=DKIM1; k=rsa; s=email; "
          "p=blablabla" )  ; ----- DKIM key default for yourdomain.com


    Be sure to change the blablabla to the output of /etc/opendkim/keys/yourdomain.com/default.txt

    _dmarc.yourdomain.com.      IN     TXT    "v=DMARC1; p=quarantine; rua=mailto:someaddress@yourdomain.com"
     

    Be sure to change someaddress@yourdomain.com to a real address for your domain, you will receive DMARC reports to this address.

     

    Set permissions to be sure:

    chown -R opendkim.opendkim /etc/opendkim

    5.) Enable OpenDKIM milter in Postfix

    # edit /etc/postfix/main.cf
    cp -a /etc/postfix/main.cf /etc/postfix/main.cf-`date +%Y%m%d-%s`
     

    #edit /etc/postfix/main.cf

    #enable dkim
    smtpd_milters           = inet:127.0.0.1:8891
    non_smtpd_milters       = $smtpd_milters
    milter_default_action   = accept

    systemctl restart postfix

     


  • Debian Ubuntu 10/11/12 Linux how to get tftpd-hpa server setup tutorial


    apt install tftpd-hpa

    #change TFTP_ADDRESS to by setting address to 192.168.1.1:69 or the IP you need, otherwise it will listen on all IPs and interfaces which could be a security risk.

    # edit /etc/default/tftpd-hpa

    TFTP_USERNAME="tftp"
    TFTP_DIRECTORY="/srv/tftp"
    TFTP_ADDRESS="192.168.1.1:69"
    TFTP_OPTIONS="--secure"


    systemctl restart tftpd-hpa


    #now edit our isc dhcp server /etc/dhcp/dhcpd.conf



    #under the subnet declaration:

    subnet 192.168.1.0 netmask 255.255.255.0 {
      range 192.168.1.2 192.168.1.200;
      #deny unknown-clients;
      option routers 192.168.1.1;
      option domain-name-servers 192.168.1.1;
      next-server 192.168.1.1;
      filename "pxelinux.0";
    }


    #how to exclude hosts from receiving a DHCP
    # add this in the subnet declaration
      host whatevernameyouwant {
       hardware ethernet 00:10:28:e2:49:2e;
       ignore booting;
      }

    #comment out the ignore booting and restart dhcpd if you want to re-enable it
     


    ###
    apt install syslinux pxelinux
    #for MBR copy this

    cp /usr/lib/PXELINUX/pxelinux.0 /srv/tftp/
    cp /usr/lib/syslinux/modules/bios/ldlinux.c32 /srv/tftp/
    cp /usr/lib/syslinux//modules/bios/menu.c32 /srv/tftp/
    cp /usr/lib/syslinux//modules/bios/memdisk /srv/tftp/
    cp /usr/lib/syslinux//modules/bios/mboot.c32 /srv/tftp/
    cp /usr/lib/syslinux//modules/bios/chain.c32 /srv/tftp/
    cp /usr/lib/syslinux//modules/bios/libutil.c32 /srv/tftp/


    mkdir /srv/tftp/images
    mkdir /srv/tftp/pxelinux.cfg


    vi /srv/tftp/pxelinux.cfg/default

    default menu.c32
    prompt 5
    timeout 300

    MENU TITLE Menu
    LABEL rtt-Diagnostic
    MENU rtt-Diagnostic
    kernel ../images/kernelfs




    service isc-dhcp-server restart
     


  • efibootmgr: option requires an argument -- 'd' efibootmgr version 15 grub-install.real: error: efibootmgr failed to register the boot entry: Operation not permitted.


    This sometimes happens when trying to install the EFI version of grub to a device when you are booted into Legacy/MBR mode.  It doesn't seem to occur on all machines, but some and seems somewhat BIOS dependent.

    grub-install --target=x86_64-efi /dev/sda
    Installing for x86_64-efi platform.
    grub-install.real: warning: Couldn't find physical volume `(null)'. Some modules may be missing from core image..
    grub-install.real: warning: Couldn't find physical volume `(null)'. Some modules may be missing from core image..
    EFI variables are not supported on this system.
    efibootmgr: option requires an argument -- 'd'
    efibootmgr version 15
    usage: efibootmgr [options]
        -a | --active         sets bootnum active
        -A | --inactive       sets bootnum inactive
        -b | --bootnum XXXX   modify BootXXXX (hex)
        -B | --delete-bootnum delete bootnum
        -c | --create         create new variable bootnum and add to bootorder
        -C | --create-only    create new variable bootnum and do not add to bootorder
        -D | --remove-dups    remove duplicate values from BootOrder
        -d | --disk disk       (defaults to /dev/sda) containing loader
        -r | --driver         Operate on Driver variables, not Boot Variables.
        -e | --edd [1|3|-1]   force EDD 1.0 or 3.0 creation variables, or guess
        -E | --device num      EDD 1.0 device number (defaults to 0x80)
        -g | --gpt            force disk with invalid PMBR to be treated as GPT
        -i | --iface name     create a netboot entry for the named interface
        -l | --loader name     (defaults to "EFIubuntugrub.efi")
        -L | --label label     Boot manager display label (defaults to "Linux")
        -m | --mirror-below-4G t|f mirror memory below 4GB
        -M | --mirror-above-4G X percentage memory to mirror above 4GB
        -n | --bootnext XXXX   set BootNext to XXXX (hex)
        -N | --delete-bootnext delete BootNext
        -o | --bootorder XXXX,YYYY,ZZZZ,...     explicitly set BootOrder (hex)
        -O | --delete-bootorder delete BootOrder
        -p | --part part        (defaults to 1) containing loader
        -q | --quiet            be quiet
        -t | --timeout seconds  set boot manager timeout waiting for user input.
        -T | --delete-timeout   delete Timeout.
        -u | --unicode | --UCS-2  handle extra args as UCS-2 (default is ASCII)
        -v | --verbose          print additional information
        -V | --version          return version and exit
        -w | --write-signature  write unique sig to MBR if needed
        -y | --sysprep          Operate on SysPrep variables, not Boot Variables.
        -@ | --append-binary-args file  append extra args from file (use "-" for stdin)
        -h | --help             show help/usage
    grub-install.real: error: efibootmgr failed to register the boot entry: Operation not permitted.


  • Apache Error Won't start SSL Cert Issue Solution Unable to configure verify locations for client authentication SSL Library Error: 151441510 error:0906D066:PEM routines:PEM_read_bio:bad end line SSL Library Error: 185090057 error:0B084009:x509 certif


    [Wed Nov 01 18:47:08 2023] [error] Unable to configure verify locations for client authentication
    [Wed Nov 01 18:47:08 2023] [error] SSL Library Error: 151441510 error:0906D066:PEM routines:PEM_read_bio:bad end line
    [Wed Nov 01 18:47:08 2023] [error] SSL Library Error: 185090057 error:0B084009:x509 certificate routines:X509_load_cert_crl_file:PEM lib

    It actually gives us a good clue that at last one component of our cert is invalid/improperly formatted.  So check your CA Bundle, Cert and Key to make sure they are all correct.  After that, restart apache2 and everything should be good


  • Linux Debian Mint Ubuntu Bridge br0 gets random IP


    This can break things easily in remove environments where it was normally easy to convert a normal eth0 to a bridge under br0, and that bridge would normally have the same MAC address by default, which is desirable for most situations.

    In Debian 11 this is different for some reason now.

    https://unix.stackexchange.com/questions/681013/bridge-gets-random-mac-instead-of-port-address

    One simple solution is to set the hwaddress in /etc/network/interfaces:

    iface br0 inet static
    bridge_ports eth0
        address 172.16.1.3
        netmask 255.255.255.0
        gateway 172.16.1.1
        hwaddress 00:1d:e0:00:13:58

     

    Set the hwaddress to the mac address of eth0 to solve this problem.  What happens is that if you don't do this, the server will become inaccessible after some random amount of time, at least initially until a reboot or network restart.

    This may be a result of poor cloning without regenerating the machine-id:

    #possibly related, we need to delete the machine-id and generate a new one
    rm /var/lib/dbus/machine-id
    rm /etc/machine-id

    Regenerate new machine-id:

    The file lives in /etc and /var/lib/dbus and both must match.

    dbus-uuidgen --ensure=/etc/machine-id

    cp /etc/machine-id /var/lib/dbus/


  • redis requirements


    sysctl vm.overcommit_memory=1

    echo never > /sys/kernel/mm/transparent_hugepage/enabled
    echo 511 > /proc/sys/net/core/somaxconn

    1:M 26 Nov 2023 21:34:33.840 # WARNING: The TCP backlog setting of 511 cannot be enforced because /proc/sys/net/core/somaxconn is set to the lower value of 128.
    1:M 26 Nov 2023 21:34:33.840 # Server initialized
    1:M 26 Nov 2023 21:34:33.840 # WARNING overcommit_memory is set to 0! Background save may fail under low memory condition. To fix this issue add 'vm.overcommit_memory = 1' to /etc/sysctl.conf and then reboot or run the command 'sysctl vm.overcommit_memory=1' for this to take effect.
    1:M 26 Nov 2023 21:34:33.840 # WARNING you have Transparent Huge Pages (THP) support enabled in your kernel. This will create latency and memory usage issues with Redis. To fix this issue run the command 'echo never > /sys/kernel/mm/transparent_hugepage/enabled' as root, and add it to your /etc/rc.local in order to retain the setting after a reboot. Redis must be restarted after THP is disabled.
    1:M 26 Nov 2023 21:34:33.840 * Ready to accept connections


  • How to kill a docker swarm


    Assign way more replicas than you have of memory on all nodes and watch the Swarm crash which can easily reproduce in a small VM for testing.

    root@Deb11Docker01:~# docker ps
    CONTAINER ID   IMAGE     COMMAND                  CREATED        STATUS        PORTS      NAMES
    1336c9b0275e   redis:5   "docker-entrypoint.s…"   13 hours ago   Up 13 hours   6379/tcp   clever_bouman.7.ue8ff3g3ef2pv4ezu4cy5qc23
    f5496728a590   redis:5   "docker-entrypoint.s…"   13 hours ago   Up 13 hours   6379/tcp   clever_bouman.11.kk3ij52i7dq0p4xqe3r05apzc
    b0b2a47dc6b6   redis:5   "docker-entrypoint.s…"   13 hours ago   Up 13 hours   6379/tcp   clever_bouman.8.p5woskaqpyc6kod0njfmdq5m9
    6dc2c2a0f8f2   redis:5   "docker-entrypoint.s…"   13 hours ago   Up 13 hours   6379/tcp   clever_bouman.23.x27zfpun3mf8j40qofers8mqs
    91e264dc4ec9   redis:5   "docker-entrypoint.s…"   13 hours ago   Up 13 hours   6379/tcp   clever_bouman.17.lma6im540lw77uk6nolxg7rej
    47830106e26d   redis:5   "docker-entrypoint.s…"   13 hours ago   Up 13 hours   6379/tcp   clever_bouman.18.8y6rm833sgxvbtnj1np4e8q0i
    a4246ca036e9   redis:5   "docker-entrypoint.s…"   13 hours ago   Up 13 hours   6379/tcp   clever_bouman.19.z7jj4hiz6sjyux2hmgy6d9449
    965754f35798   redis:5   "docker-entrypoint.s…"   13 hours ago   Up 13 hours   6379/tcp   clever_bouman.13.ue6b58bkx4w44n8gkht0bu0r8
    d4a9572cae71   redis:5   "docker-entrypoint.s…"   13 hours ago   Up 13 hours   6379/tcp   clever_bouman.6.4sa0179qxpoy4m522d5mc2shy
    1ea0cd1e493c   redis:5   "docker-entrypoint.s…"   13 hours ago   Up 13 hours   6379/tcp   clever_bouman.28.nmzn1jd77lybe211thm1f9q8n
    root@Deb11Docker01:~# docker service update --replicas=60 clever_bouman
    clever_bouman
    overall progress: 51 out of 60 tasks
    Error response from daemon: rpc error: code = DeadlineExceeded desc = context deadline exceeded
    root@Deb11Docker01:~# docker service update --replicas=40 clever_bouman
    Error response from daemon: rpc error: code = Unknown desc = The swarm does not have a leader. It's possible that too few managers are online. Make sure more than half of the managers are online.

    [137927.550974] oom-kill:constraint=CONSTRAINT_NONE,nodemask=(null),cpuset=docker.service,mems_allowed=0,global_oom,task_memcg=/system.slice/docker.service,task=dockerd,pid=55994,uid=0
    [137927.551065] Out of memory: Killed process 55994 (dockerd) total-vm:1859264kB, anon-rss:80588kB, file-rss:0kB, shmem-rss:0kB, UID:0 pgtables:664kB oom_score_adj:0



    root@Deb11Docker02:~# ps aux|grep container
    root        1404  0.0  3.5 1370844 35244 ?       Ssl  Nov30   1:44 /usr/bin/containerd
    root       48601  1.3  0.3 1328876 3528 ?        Sl   02:34   0:08 /usr/bin/containerd-shim-runc-v2 -namespace moby -id 8be1aac07725843e36d47934209ee280ec2705df3bd098a9320eb0abd659eaaa -address /run/containerd/containerd.sock
    root       49954  0.9  0.4 1329132 4456 ?        Sl   02:35   0:05 /usr/bin/containerd-shim-runc-v2 -namespace moby -id 3445ae9397be1d9cbb80dcf9679c7765c2e6f5093672543b4c16d5b0e7935c71 -address /run/containerd/containerd.sock
    root       50004  0.9  1.4 1322088 14560 ?       Sl   02:35   0:05 /usr/bin/containerd-shim-runc-v2 -namespace moby -id 72301e658829c8fc3679b0744a110100cd31423c6f510bf330e8b90842c308cb -address /run/containerd/containerd.sock
    root       50037  0.7  0.6 1314148 6360 ?        Sl   02:35   0:04 /usr/bin/containerd-shim-runc-v2 -namespace moby -id 13f22679e833befe833f14073d800d6fa6a04e44bb30e317dc01a282b19a3e1b -address /run/containerd/containerd.sock
    root       50045  0.7  0.4 1322088 4560 ?        Sl   02:35   0:04 /usr/bin/containerd-shim-runc-v2 -namespace moby -id 1c0e7f3e65032590ac3078afc2b227c1003680c7b8c48c755193a27b17027aec -address /run/containerd/containerd.sock
    root       50061  0.7  0.6 1328940 6472 ?        Sl   02:35   0:04 /usr/bin/containerd-shim-runc-v2 -namespace moby -id b258bac1daebc0eebc75195802f22631991b99effda0c8dd32d916dda53b3ecd -address /run/containerd/containerd.sock
    root       50109  0.7  0.4 1322088 4672 ?        Sl   02:35   0:04 /usr/bin/containerd-shim-runc-v2 -namespace moby -id 5d9b13fc6a53e71a9b0efcf9524b4b410843a6351b273020cb38bd49fdeda8d1 -address /run/containerd/containerd.sock
    root       50150  1.0  0.6 1320680 6564 ?        Sl   02:35   0:05 /usr/bin/containerd-shim-runc-v2 -namespace moby -id cb18a243b3cc30d4d62d9fec8995c14da81e8c2a3ed6de670a880a4e174c4e55 -address /run/containerd/containerd.sock
    root       51985  0.0  0.0   6180   716 pts/0    S+   02:44   0:00 grep container
    root@Deb11Docker02:~# killall -9 containerd-shim-runc-v2
    root@Deb11Docker02:~# ps aux|grep container
    root        1404  0.0  3.5 1379040 35244 ?       Ssl  Nov30   1:44 /usr/bin/containerd
    root       52092  0.0  0.0   6180   716 pts/0    S+   02:45   0:00 grep container
    root@Deb11Docker02:~#


     docker swarm init --force-new-cluster


  • docker swarm silly issues


    The error below can be caused by a gateway that is unpingable:

    docker swarm join --token SWMTKN-1-1kogg8da68gtb1j7ezaddowyy9s0an5s9tue758o20k18liskw-5h3f61hrrmv3u6agshvbtcklf 172.16.1.80:2377
    Error response from daemon: manager stopped: can't initialize raft node: rpc error: code = Unknown desc = could not connect to prospective new cluster member using its advertised address: rpc error: code = DeadlineExceeded desc = context deadline exceeded

    Nov 28 02:01:52 dockertest01 dockerd[14612]: time="2023-11-28T02:01:52.189193519-05:00" level=warning msg="Failed to dial 172.16.1.1:2377: grpc: the connection is closing; please retry." module=grpc


    The error below doesn't make sense at first, you join a certain IP but the error comes back as trying to connect to a different IP. 

    This can be caused my forwarding and / or proxies which should be disabled to fix the problem.

    Even with pingable gateway it now wants to somehow connect on port 2377 through the gateway instead of the .80 manager node IP?

     docker swarm join --token SWMTKN-1-1kogg8da68gtb1j7ezaddowyy9s0an5s9tue758o20k18liskw-5h3f61hrrmv3u6agshvbtcklf 172.16.1.80:2377
    Error response from daemon: manager stopped: can't initialize raft node: rpc error: code = Unknown desc = could not connect to prospective new cluster member using its advertised address: rpc error: code = Unavailable desc = all SubConns are in TransientFailure, latest connection error: connection error: desc = "transport: Error while dialing dial tcp 172.16.1.1:2377: connect: connection refused"


  • isc-dhcp-server dhcpd how to get longer lease


    You can do a static lease that is tied to the MAC address but what a lot of users prefer is that they come into the office or lab the next day and that their device gets assigned the same IP address (if possible).

    As we can see in the dhcpd logs that there is threshold that is defaulted as we'll show later.  Whatever the threshold is set at, if the lease is younger than the threshold, it will keep the same lease.  In other words, if the device goes to sleep or is powered off for too long, it would be more likely to get a new IP.

    dhcpd[2408362]: reuse_lease: lease age 138 (secs) under 25% threshold, reply with unaltered, existing lease for 172.17.1.7
     

    This is all controlled in dhcpd.conf

    The default lease time is 10 minutes and maximum 120 minutes.  This is clearly not sufficient for user's who may be offline for several hours or a few days.

    #default-lease-time 600;
    #max-lease-time 7200;

    Some suggest putting a -1 which is infinite, as the number which is not recommended but MAY be OK in smaller settings.  In larger settings you would want some sort of finite time even if it's x amount of days.

    default-lease-time -1;
    max-lease-time -1;

     


  • nvidia cannot resume from sleep Comm: nvidia-sleep.sh Tainted: Linux Ubuntu Mint Debian


    This seems to happen in many different drivers but it happened more often in newer versions such as 530 vs 525.

    Then nvidia-modeset goes to 100%

    There are many reports of this appearing since driver 4.70 and I can confirm I've seen this in various machines.

    https://forums.developer.nvidia.com/t/black-screen-when-resuming-systemctl-suspend-using-nvidia-driver-470-57-02-with-kernel-5-8-0-63-generic-on-gtx-970-xubuntu-20-04-lts/184644/57

    https://forums.developer.nvidia.com/t/not-coming-back-from-suspend/176446
    https://forums.developer.nvidia.com/t/systemds-suspend-then-hibernate-not-working-in-nvidia-optimus-laptop/213690
    https://forums.developer.nvidia.com/t/black-screen-when-resuming-systemctl-suspend-using-nvidia-driver-470-57-02-with-kernel-5-8-0-63-generic-on-gtx-970-xubuntu-20-04-lts/184644
     

    This report proposes a fix that work for some people:

    https://forums.developer.nvidia.com/t/fixed-suspend-resume-issues-with-the-driver-version-470/187150

    Basically the idea is to disable all nvidia related systemd services:

    systemctl stop nvidia-suspend
    systemctl stop nvidia-hibernate
    systemctl stop nvidia-resume

    systemctl disable nvidia-suspend
    systemctl disable nvidia-hibernate
    systemctl disable nvidia-resume

    #let's just copy it and save it to ~ just in case
    mv /lib/systemd/system-sleep/nvidia ~

    Here is the dmesg output when this happens, the system wakes up but the GPU hangs:

    [245728.273127] WARNING: CPU: 12 PID: 25855 at /var/lib/dkms/nvidia/525.105.17/build/nvidia/nv.c:3913 nv_restore_user_channels+0x12f/0x1e0 [nvidia]
    [245728.273128] Modules linked in: bluetooth ecdh_generic ecc uas usb_storage ufs qnx4 hfsplus hfs minix ntfs msdos jfs xfs cpuid snd_seq_dummy xt_conntrack nf_conntrack_netlink nfnetlink xfrm_user xfrm_algo xt_addrtype br_netfilter aufs xt_CHECKSUM iptable_mangle xt_MASQUERADE iptable_nat nf_nat nf_conntrack nf_defrag_ipv6 nf_defrag_ipv4 xt_tcpudp bridge stp llc iptable_filter bpfilter overlay nls_iso8859_1 binfmt_misc nvidia_uvm(OE) nvidia_drm(POE) nvidia_modeset(POE) nvidia(POE) intel_rapl_msr intel_rapl_common input_leds sb_edac x86_pkg_temp_thermal intel_powerclamp kvm_intel snd_hda_codec_hdmi kvm snd_hda_codec_realtek snd_hda_codec_generic crct10dif_pclmul crc32_pclmul ledtrig_audio ghash_clmulni_intel aesni_intel snd_hda_intel snd_intel_dspcfg crypto_simd drm_kms_helper snd_hda_codec cryptd snd_hda_core drm glue_helper snd_hwdep fb_sys_fops snd_pcm syscopyarea snd_seq_midi snd_seq_midi_event sysfillrect snd_rawmidi rapl sysimgblt snd_seq intel_cstate mei_me dell_smbios snd_seq_device
    [245728.273154]  dcdbas snd_timer dell_smm_hwmon snd wmi_bmof intel_wmi_thunderbolt dell_wmi_descriptor mei soundcore lpc_ich mac_hid mxm_wmi sch_fq_codel hwmon_vid coretemp parport_pc ppdev lp parport ip_tables x_tables autofs4 hid_generic usbhid hid btrfs zstd_compress raid10 raid456 async_raid6_recov async_memcpy async_pq async_xor async_tx xor raid6_pq libcrc32c raid0 multipath linear dm_mirror dm_region_hash dm_log raid1 igb e1000e dca i2c_algo_bit ahci libahci wmi
    [245728.273172] CPU: 12 PID: 25855 Comm: nvidia-sleep.sh Tainted: P           OE     5.4.0-149-generic #166~18.04.1-Ubuntu
    [245728.273172] Hardware name: rtt
    [245728.273293] RIP: 0010:nv_restore_user_channels+0x12f/0x1e0 [nvidia]
    [245728.273294] Code: 44 89 f8 5b 41 5c 41 5d 41 5e 41 5f 5d c3 4c 89 ef 45 31 ff e8 42 8d 89 d5 44 89 f8 5b 41 5c 41 5d 41 5e 41 5f 5d c3 45 31 f6 <0f> 0b 4c 89 e7 e8 d7 8c 89 d5 be 01 00 00 00 48 89 df e8 0a a3 00
    [245728.273295] RSP: 0018:ffffac3d849d7dc8 EFLAGS: 00010206
    [245728.273296] RAX: 0000000000000003 RBX: ffff91f0c026d000 RCX: ffffac3d849d7d48
    [245728.273296] RDX: ffffac3d80b93e50 RSI: 0000000000000246 RDI: ffffac3d849d7cf8
    [245728.273297] RBP: ffffac3d849d7df0 R08: 0000000000000000 R09: 0000000000000001
    [245728.273297] R10: ffffac3d849d7aa0 R11: 00000000000084ca R12: ffff91f0c026d678
    [245728.273298] R13: ffff91f0c026d550 R14: ffff91eefdd13000 R15: 0000000000000003
    [245728.273299] FS:  00007f6323bf9740(0000) GS:ffff91f0cf900000(0000) knlGS:0000000000000000
    [245728.273299] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
    [245728.273300] CR2: 0000557b4901f008 CR3: 000000041d754004 CR4: 00000000003606e0
    [245728.273300] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
    [245728.273301] DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
    [245728.273301] Call Trace:
    [245728.273378]  nv_set_system_power_state+0x2d7/0x480 [nvidia]
    [245728.273455]  nv_procfs_write_suspend+0xe3/0x160 [nvidia]
    [245728.273458]  proc_reg_write+0x3e/0x60
    [245728.273460]  __vfs_write+0x1b/0x40
    [245728.273461]  vfs_write+0xb1/0x1a0
    [245728.273462]  ksys_write+0xa7/0xe0
    [245728.273463]  __x64_sys_write+0x1a/0x20
    [245728.273465]  do_syscall_64+0x57/0x190
    [245728.273468]  entry_SYSCALL_64_after_hwframe+0x5c/0xc1
    [245728.273469] RIP: 0033:0x7f63232f7104
    [245728.273470] Code: 89 02 48 c7 c0 ff ff ff ff c3 66 2e 0f 1f 84 00 00 00 00 00 66 90 48 8d 05 e1 08 2e 00 8b 00 85 c0 75 13 b8 01 00 00 00 0f 05 <48> 3d 00 f0 ff ff 77 54 f3 c3 66 90 41 54 55 49 89 d4 53 48 89 f5
    [245728.273471] RSP: 002b:00007ffc609a56c8 EFLAGS: 00000246 ORIG_RAX: 0000000000000001
    [245728.273472] RAX: ffffffffffffffda RBX: 0000000000000007 RCX: 00007f63232f7104
    [245728.273472] RDX: 0000000000000007 RSI: 0000557b4901f700 RDI: 0000000000000001
    [245728.273473] RBP: 0000557b4901f700 R08: 000000000000000a R09: 0000000000000006
    [245728.273473] R10: 000000000000000a R11: 0000000000000246 R12: 00007f63235d3760
    [245728.273474] R13: 0000000000000007 R14: 00007f63235cf2a0 R15: 00007f63235ce760
    [245728.273475] ---[ end trace 2ff2aa81ae8de839 ]---
    [245728.273484] ------------[ cut here ]------------
    [245728.273559] WARNING: CPU: 12 PID: 25855 at /var/lib/dkms/nvidia/525.105.17/build/nvidia/nv.c:4143 nv_set_system_power_state+0x31f/0x480 [nvidia]
    [245728.273560] Modules linked in: bluetooth ecdh_generic ecc uas usb_storage ufs qnx4 hfsplus hfs minix ntfs msdos jfs xfs cpuid snd_seq_dummy xt_conntrack nf_conntrack_netlink nfnetlink xfrm_user xfrm_algo xt_addrtype br_netfilter aufs xt_CHECKSUM iptable_mangle xt_MASQUERADE iptable_nat nf_nat nf_conntrack nf_defrag_ipv6 nf_defrag_ipv4 xt_tcpudp bridge stp llc iptable_filter bpfilter overlay nls_iso8859_1 binfmt_misc nvidia_uvm(OE) nvidia_drm(POE) nvidia_modeset(POE) nvidia(POE) intel_rapl_msr intel_rapl_common input_leds sb_edac x86_pkg_temp_thermal intel_powerclamp kvm_intel snd_hda_codec_hdmi kvm snd_hda_codec_realtek snd_hda_codec_generic crct10dif_pclmul crc32_pclmul ledtrig_audio ghash_clmulni_intel aesni_intel snd_hda_intel snd_intel_dspcfg crypto_simd drm_kms_helper snd_hda_codec cryptd snd_hda_core drm glue_helper snd_hwdep fb_sys_fops snd_pcm syscopyarea snd_seq_midi snd_seq_midi_event sysfillrect snd_rawmidi rapl sysimgblt snd_seq intel_cstate mei_me dell_smbios snd_seq_device
    [245728.273574]  dcdbas snd_timer dell_smm_hwmon snd wmi_bmof intel_wmi_thunderbolt dell_wmi_descriptor mei soundcore lpc_ich mac_hid mxm_wmi sch_fq_codel hwmon_vid coretemp parport_pc ppdev lp parport ip_tables x_tables autofs4 hid_generic usbhid hid btrfs zstd_compress raid10 raid456 async_raid6_recov async_memcpy async_pq async_xor async_tx xor raid6_pq libcrc32c raid0 multipath linear dm_mirror dm_region_hash dm_log raid1 igb e1000e dca i2c_algo_bit ahci libahci wmi
    [245728.273583] CPU: 12 PID: 25855 Comm: nvidia-sleep.sh Tainted: P        W  OE     5.4.0-149-generic #166~18.04.1-Ubuntu
    [245728.273583] Hardware name: rtt
    [245728.273664] RIP: 0010:nv_set_system_power_state+0x31f/0x480 [nvidia]
    [245728.273665] Code: ff e8 f5 e8 00 00 48 c7 c7 20 73 df c3 e8 e9 5e 89 d5 89 1d e7 9c 38 03 e9 4a fd ff ff 4c 89 f7 e8 96 59 89 d5 e9 49 fe ff ff <0f> 0b eb b8 45 31 ff 48 c7 c7 d0 72 df c3 45 31 e4 e8 7b 59 89 d5
    [245728.273666] RSP: 0018:ffffac3d849d7e00 EFLAGS: 00010206
    [245728.273667] RAX: 0000000000000003 RBX: 0000000000000002 RCX: 000000000001d4c0
    [245728.273667] RDX: 000000000001d4bf RSI: 9380d93cdab66952 RDI: 00003a4cb021fac0
    [245728.273668] RBP: ffffac3d849d7e30 R08: 0000000000000000 R09: 0000000000000001
    [245728.273668] R10: ffffac3d849d7aa0 R11: 00000000000084ca R12: ffff91f0c026d000
    [245728.273669] R13: 0000000000000000 R14: 0000557b4901f700 R15: ffff91ede71f6800
    [245728.273669] FS:  00007f6323bf9740(0000) GS:ffff91f0cf900000(0000) knlGS:0000000000000000
    [245728.273670] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
    [245728.273670] CR2: 0000557b4901f008 CR3: 000000041d754004 CR4: 00000000003606e0
    [245728.273671] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
    [245728.273671] DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
    [245728.273672] Call Trace:
    [245728.273748]  nv_procfs_write_suspend+0xe3/0x160 [nvidia]
    [245728.273750]  proc_reg_write+0x3e/0x60
    [245728.273752]  __vfs_write+0x1b/0x40
    [245728.273753]  vfs_write+0xb1/0x1a0
    [245728.273754]  ksys_write+0xa7/0xe0
    [245728.273755]  __x64_sys_write+0x1a/0x20
    [245728.273756]  do_syscall_64+0x57/0x190
    [245728.273758]  entry_SYSCALL_64_after_hwframe+0x5c/0xc1
    [245728.273758] RIP: 0033:0x7f63232f7104
    [245728.273759] Code: 89 02 48 c7 c0 ff ff ff ff c3 66 2e 0f 1f 84 00 00 00 00 00 66 90 48 8d 05 e1 08 2e 00 8b 00 85 c0 75 13 b8 01 00 00 00 0f 05 <48> 3d 00 f0 ff ff 77 54 f3 c3 66 90 41 54 55 49 89 d4 53 48 89 f5
    [245728.273760] RSP: 002b:00007ffc609a56c8 EFLAGS: 00000246 ORIG_RAX: 0000000000000001
    [245728.273760] RAX: ffffffffffffffda RBX: 0000000000000007 RCX: 00007f63232f7104
    [245728.273761] RDX: 0000000000000007 RSI: 0000557b4901f700 RDI: 0000000000000001
    [245728.273761] RBP: 0000557b4901f700 R08: 000000000000000a R09: 0000000000000006
    [245728.273762] R10: 000000000000000a R11: 0000000000000246 R12: 00007f63235d3760
    [245728.273762] R13: 0000000000000007 R14: 00007f63235cf2a0 R15: 00007f63235ce760
    [245728.273763] ---[ end trace 2ff2aa81ae8de83a ]---
    [245731.275215] nvidia-modeset: WARNING: GPU:0: Lost display notification (0:0x00000000); continuing.
    [245733.531067] nvidia-modeset: ERROR: GPU:0: Idling display engine timed out: 0x0000947d:0:0:407

     


  • zfs and LUKS how to recover in Linux


    Sometimes users take their removal drives and unplug and replug them to test what happens during the failure of a disk.  However, this breaks things quite badly due to the /dev/mapper in LUKS not coming back online due to it not being closed.

    In other words, generally with non-encrypted drives the process is smooth but when encrypted you may want to follow a strategy like this:

    We can see below that both disks are unavailable as they were physically removed from the server.

    zpool status

      pool: rttpool
     state: UNAVAIL
    status: One or more devices are faulted in response to IO failures.
    action: Make sure the affected devices are connected, then run 'zpool clear'.
       see: http://zfsonlinux.org/msg/ZFS-8000-HC
      scan: none requested
    config:

        NAME            STATE     READ WRITE CKSUM
        rttpool         UNAVAIL      0     0     0  insufficient replicas
          mirror-0      UNAVAIL      0     0     0  insufficient replicas
            zpool-sdj1  FAULTED      0     0     0  corrupted data
            zpool-sdk1  FAULTED      0     0     0  corrupted data
    errors: List of errors unavailable: pool I/O is currently suspended


    Conventional wisdom says to clear the error after replugging the disks but does this work with LUKS?


    root@rttbox:/home/rtt# zpool clear rttpool zpool-sdj1
    cannot clear errors for zpool-sdj1: I/O error
    root@rttbox:/home/rtt# zpool clear rttpool zpool-sdj
    cannot clear errors for zpool-sdj: no such device in pool
    root@rttbox:/home/rtt# zpool clear rttpool zpool-sdj1
    cannot clear errors for zpool-sdj1: I/O error
    root@rttbox:/home/rtt# zpool clear rttpool zpool-sdk1
    cannot clear errors for zpool-sdk1: I/O error


    As we can see, no it doesn't work.

    Sometimes we may need to remove zpool.cache

    #at your own risk do not try in production or not as a first resort just in case

    rm /etc/zfs/zpool.cache

    Now let's force clear the pool


     zpool clear -nF rttpool
    root@rttbox:/home/rtt# zpool status
      pool: rttpool
     state: UNAVAIL
    status: One or more devices are faulted in response to IO failures.
    action: Make sure the affected devices are connected, then run 'zpool clear'.
       see: http://zfsonlinux.org/msg/ZFS-8000-HC
      scan: none requested
    config:

        NAME            STATE     READ WRITE CKSUM
        rttpool         UNAVAIL      0     0     0  insufficient replicas
          mirror-0      UNAVAIL      0     0     0  insufficient replicas
            zpool-sdj1  FAULTED      0     0     0  too many errors
            zpool-sdk1  FAULTED      0     0     0  too many errors
    errors: List of errors unavailable: pool I/O is currently suspended

    It still doesn't work as we can see.

    How about clearing the device in the pool itself?


    root@rttbox:/home/rtt# zpool clear -nF rttpool zpool-sdj1
    root@rttbox:/home/rtt# zpool clear -nF rttpool zpool-sdk1


    root@rttbox:/home/rtt# zpool online rttpool zpool-sdk1
    cannot online zpool-sdk1: pool I/O is currently suspended
    root@rttbox:/home/rtt# zpool online rttpool zpool-sdj1
    cannot online zpool-sdj1: pool I/O is currently suspended

    We can see that it still doesn't fix it.

    The Actual Solution

    Properly use cryptsetup to close and remove the zpool devices.

    cryptsetup close zpool-sdj1
    cryptsetup close zpool-sdk1

    Now reopen the devices:

    cryptsetup open /dev/sdj1 zpool-sdj1
    cryptsetup open /dev/sdk1 zpool-sdk1


    #then do cryptsetup open
    zpool clear -nFX rttpool


    now it works!


     zpool status
      pool: rttpool
     state: ONLINE
      scan: resilvered 160K in 0h0m with 0 errors on Thu Feb  1 23:01:59 2024
    config:

        NAME            STATE     READ WRITE CKSUM
        rttpool         ONLINE       0     0     0
          mirror-0      ONLINE       0     0     0
            zpool-sdj1  ONLINE       0     0     0
            zpool-sdk1  ONLINE       0     0     0

    errors: No known data errors

     

    How To Recover After Moving ZFS Disks to new computer/server

    If your disks are ready to go, zpool import will scan all disks looking for ZFS.

    zpool import
       pool: rttpool
         id: 125324434212034535323
      state: ONLINE
     action: The pool can be imported using its name or numeric identifier.
     config:

        rttpool         ONLINE
          mirror-0      ONLINE
            zpool-sdc1  ONLINE
            zpool-sdd1  ONLINE

     

    Now just import it by the numeric ID 125324434212034535323 or the pool name rttpool

    zpool import 125324434212034535323

     


  • [error] (28)No space left on device: Cannot create SSLMutex Apache Solution Linux CentOS Ubuntu Debian Mint


    Have you got this error from Apache?

    [notice] suEXEC mechanism enabled (wrapper: /usr/sbin/suexec)
    [error] (28)No space left on device: Cannot create SSLMutex

    At first glance it appears that you may be out of disk space but the issue is ipc or interprocess communication.

    This will clear out the ipcs processes so things can work, this often happens during high traffic and may be a sign of DDOS.

    The command below will fix it, it will list all of the ipcs processes that belong to your apache user (change the part in bold to whatever apache runs as) and then

    ipcs -s | grep YOURAPACHEuser | awk '{ print $2 }' | xargs -n 1 ipcrm -s

    The above should fix it, but if you're curious here is the raw output of ipcs -s on a random VM.

    ------ Semaphore Arrays --------
    key        semid      owner      perms      nsems     
    0x00000000 0          root       600        1         
    0x00000000 65537      root       600        1         
    0x00000000 1081346    apache     600        1         
    0x00000000 1114115    apache     600        1  

    That's why we do awk on the second column to get the semid, and then we pipe to xargs which then uses the ipcrm -s command to remove all of the semid's that we found.


  • Save money on bandwidth by disabling reflective rpc queries in Linux CentOS RHEL Ubuntu Debian


    Even today we see a lot of servers that have different services and ports open for rpc and this creates not only potential inward vulnerabilities but perhaps more common, the abuse of your network resources in reflective rpc queries.

    To stop this problem, you should disable and remove all services relating to rpc or at least block all relevant ports for the service.

    Surprisingly, there are still some providers and OS installs in Linux that install these services and leave them open.  I've seen it cost companies up to thousands per month or more based on RPC being open and available which is then used in reflective DDOS.

    Disable these services relating to RPC to stop the abuse:

    rpcbind
    rpcgssd

    One common thing is that you may find servers with unexpectedly higher traffic than normal that cannot be attributed to the main applications running.  It may be less obvious if it's a slight bump in traffic on already busy nodes, so look carefully and ensure your base images/containers are locked down.


  • How to access a disk with bad superblock Linux Ubuntu Debian Redhat CentOS ext3 ext4


    Have you ever tried mounting a partition that you exists but you get this error?

    mount: /mnt: can't read superblock on /dev/sda1.

    The superblock in this example was bad because the physical disk had corruption and bad blocks/sectors.  However, the data was generally accessible and you can always try this trick below (with caution and no warranty).

    This is specifically for filesystems that place superblocks in multiple locations, which makes the drive accessible.

    Run the mkfs for your filesystem, in this case it was ext4 and pass the "-n" option. 

    mkfs.ext3 -n /dev/sda1

    *Do not forget the -n above or you will destroy the partition.

    Then you'll see the prompt below, once again make sure you used -n

           -n     Causes  mke2fs  to not actually create a filesystem, but display
                  what it would do if it were to create a filesystem.  This can be
                  used  to  determine the location of the backup superblocks for a
                  particular filesystem, so long as  the  mke2fs  parameters  that
                  were  passed when the filesystem was originally created are used
                  again.  (With the -n option added, of course!)
     

    Hit y to proceed as long as you're sure that you used the -n flag.


    mke2fs 1.44.1 (24-Mar-2018)
    /dev/sda1 contains a ext4 file system
        last mounted on / on Wed Jun  8 11:40:24 2022
    Proceed anyway? (y,N) y

    Then you'll hopefully see a list of superblocks as below:


    ext2fs_check_if_mount: Can't check if filesystem is mounted due to missing mtab file while determining whether /dev/sda1 is mounted.
    Creating filesystem with 120038912 4k blocks and 30015488 inodes
    Filesystem UUID: 91fcf16a-7f97-47cf-82b3-654d7dca6d70
    Superblock backups stored on blocks:
        32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
        4096000, 7962624, 11239424, 20480000, 23887872, 71663616, 78675968,
        102400000



    You can try any of those locations, if the disk is badly damaged you may need to try a few different superblocks.

    Here is how you would mount with one of the superblocks above.

    mount -o sb=4096000 /dev/sda1 /mnt
     

    The -o sb= is where we plugin one of the superblocks we located earlier, and I used one of them from 4096000. 

    Hopefully you can access and recover most of your data if this happens to you.


  • ImageMagick error convert solution - convert-im6.q16: cache resources exhausted


    convert-im6.q16: DistributedPixelCache '127.0.0.1' @ error/distribute-cache.c/ConnectPixelCacheServer/244.
    convert-im6.q16: cache resources exhausted `/tmp/magick-27777Al6FGY7dhyKt10' @ error/cache.c/OpenPixelCache/3984.
    convert-im6.q16: DistributedPixelCache '127.0.0.1' @ error/distribute-cache.c/ConnectPixelCacheServer/244.
    convert-im6.q16: cache resources exhausted `/tmp/magick-277772Y_-pJnMdT2r1' @ error/cache.c/OpenPixelCache/3984.
    convert-im6.q16: DistributedPixelCache '127.0.0.1' @ error/distribute-cache.c/ConnectPixelCacheServer/244.
    convert-im6.q16: cache resources exhausted `/tmp/magick-27777m6KQRhWOtkWp1' @ error/cache.c/OpenPixelCache/3984.
    convert-im6.q16: DistributedPixelCache '127.0.0.1' @ error/distribute-cache.c/ConnectPixelCacheServer/244.
    convert-im6.q16: cache resources exhausted `/tmp/magick-27777ERzzOPUYQMc11' @ error/cache.c/OpenPixelCache/3984.


     

    You just have to increase the limits in policy.xml to solve the issue:

    vi /etc/ImageMagick-6/policy.xml

    Set values like this (increase as necessary):


    <policy domain="resource" name="area" value="6GiB"/>
    <policy domain="resource" name="disk" value="6GiB"/>
    <policy domain="resource" name="memory" value="4GiB"/>
    <policy domain="resource" name="map" value="4GiB"/>

    Be sure not to set levels that are bigger than your disk size and available RAM.


  • PTY allocation request failed on channel 0 solution


    PTY allocation request failed on channel 0


    You may have messed up your environment and specifically under /dev you may have remounted a wrong source point or otherwise killed /dev/pts

    The solution is to recreate /dev/pts or fix whatever caused it to be wiped out or broken.

    In verbose mode the client may show this:

    #verbose client
    Authenticated to 172.16.17.2 ([172.16.17.2]:22).
    debug1: channel 0: new [client-session]
    debug1: Requesting no-more-sessions@openssh.com
    debug1: Entering interactive session.
    debug1: pledge: network


  • docker error not supported as upperdir failed to start daemon: error initializing graphdriver: driver not supported


    Nov 15 17:00:49 rttbox kernel: overlayfs: filesystem on '/var/lib/docker/overlay2/check-overlayfs-support450709549/upper' not supported as upperdir
    Nov 15 17:00:49 rttbox dockerd[93755]: failed to start daemon: error initializing graphdriver: driver not supported

    The above error is often/normally caused because you are trying to run docker out of an unsuitable directory/filesystem.  For example if you try to place docker's data inside an existing overlayfs2 location, then you will get this error.  You cannot put another overlayfs2 layer from docker over top of an already existing overlayfs2.


  • Migrated Linux Ubuntu Mint not starting services due to broken /var/run and dbus - Failed to connect to bus: No such file or directory solution


    This is a weird issue as sometimes when upgrading or even migrating, this could happen and the reason is simple but maybe not 100% obvious at first. 

    You will find that your GUI doesn't load and most services fail to start, even logind

    Here are some errors you may see:

    Mar 13 22:22:23 rttbox systemd-logind[2892]: Failed to connect to system bus: No such file or directory
    Mar 13 22:22:23 rttbox systemd-logind[2892]: Failed to fully start up daemon: No such file or directory
    Mar 13 22:22:24 rttbox systemd-logind[3795]: Failed to connect to system bus: No such file or directory

    Mar 13 22:22:47 rttbox dbus-daemon[2282]: [system] Failed to activate service 'org.freedesktop.ColorManager': timed out (service_start_timeout=25000ms)
    Mar 13 22:22:47 rttbox dbus-daemon[2282]: [system] Failed to activate service 'org.freedesktop.systemd1': timed out (service_start_timeout=25000ms)
    Mar 13 22:22:47 rttbox dbus-daemon[2282]: [system] Failed to activate service 'org.freedesktop.PolicyKit1': timed out (service_start_timeout=25000ms)
    Mar 13 22:22:48 rttbox dbus-daemon[2282]: [system] Failed to activate service

     

    The easiest way to know if this is your cause is to check /var/run:

    ls -al /var/run
    lrwxrwxrwx 1 root root 4 Jul  2  2019 /var/run -> /run

    /var/run should be a symlink to /run, if it's not then you'll need to fix it like this:

    First we copy any relevant contents of /var/run into /run, then we delete /var/run and resymlink it to /run as it should be.

    cp -a /var/run/* /run/
    rm -rf /var/run
    ln -s /run /var/run

    Now make /run/dbus in case it's not there and restart the dbus service:

    mkdir /run/dbus
    systemctl restart dbus

    After this everything should be OK, you may need to reboot if it's still not.


  • qemu-system-x86_64: Initialization of device ide-hd failed: Failed to get


    You start a qemu like this and another VM already started with the same .iso

    qemu-system-x86_64 -enable-kvm -m 4096 -cdrom some.iso

    But you get this error:

    qemu-system-x86_64: Initialization of device ide-hd failed: Failed to get "write" lock
    Is another process using the image [some.iso]?

    It's odd because the -cdrom by default is read-only and qemu should not want or care about getting write lock on the .iso.

    What causes this lock issue with an iso?

    qemu-system-x86_64 -enable-kvm -m 4096 some.iso

    Note that the .iso above was used, it will work and boot but it was passed to QEMU the same way as a normal disk image, so therefore it puts a write lock on it, even though it doesn't need to be.

    Solution Use The ISO as a -cdrom

    Make sure that you use -cdrom and then you can start unlimited amounts of VMs using that image.

    qemu-system-x86_64 -enable-kvm -m 4096 -cdrom some.iso


  • File "/usr/local/lib/python3.5/dist-packages/pip/_internal/utils/entrypoints.py", line 12 f"pip{sys.version_info.major}", ^ SyntaxError: invalid syntax python pip3 error solution


    Is python3-pip pip3 not working anymore?


    Traceback (most recent call last):
      File "/usr/bin/pip3", line 11, in <module>
        sys.exit(main())
      File "/usr/local/lib/python3.5/dist-packages/pip/__init__.py", line 11, in main
        from pip._internal.utils.entrypoints import _wrapper
      File "/usr/local/lib/python3.5/dist-packages/pip/_internal/utils/entrypoints.py", line 12
        f"pip{sys.version_info.major}",
                                     ^
    SyntaxError: invalid syntax

    Sometimes this is caused by a mismatch in versions, perhaps your python3-pip came from a different PPA/source so it no longer matches your installed version.

    Make sure that all tools come from the same source or if you need a new python version, that the entirety including all helper tools are compiled from the same source.


  • Linux custom kernel is huge solution


    You may have been expecting a normal sized kernel but if you don't disable these .config options you may have a kernel that is several gigabytes.

    CONFIG_SLUB_DEBUG=no

    CONFIG_DEBUG_INFO=no

    CONFIG_DEBUG_MISC=no

    Rebuild and you should find that the kernel is the normal and as expected size.


  • TSC_DEADLINE disabled due to Errata; please update microcode to version: 0x3a (or later) - Linux how to upgrade CPU microcode


    [    0.206301] [Firmware Bug]: TSC_DEADLINE disabled due to Errata; please update microcode to version: 0x3a (or later)
    [    0.430409] MDS: Vulnerable: Clear CPU buffers attempted, no microcode
    [    0.430411] MMIO Stale Data: Vulnerable: Clear CPU buffers attempted, no microcode
    [    2.980359] microcode: sig=0x306f2, pf=0x1, revision=0x36
    [    2.981621] microcode: Microcode Update Driver: v2.2.


     

    If you get an error like this just install the microcode package for your architecture:

    For Intel CPUs do this:
    apt install intel-microcode

    For AMD CPUs do this:

    apt install amd64-microcode


  • REFUSED unexpected RCODE resolving bind/named error


    Are you getting this error when trying to connect to a site/domain/service and then you checked your router/nameserver's logs to see what's wrong?

    You may see something like this:

    named[3025898]: REFUSED unexpected RCODE resolving

    This is not usually an error with named or bind, at least not on your end but NORMALLY this is an issue with the remote nameserver.

    A lot of times this is a misconfigured remote nameserver.  A classic case may be that the remote nameserver is up but the zonefile is non-existent or misconfigured or even hacked.

    You should contact the domain admin e-mail of the remote side to see what is happening.


  • How To Stop DNSMasq from listening on all IPs/Interfaces and allow only localhost


    Some people find it less than intuitive to do on DNSMasq and by default DNSMasq is available on 0.0.0.0 which could even be your LAN or Public IP.

    Active Internet connections (servers and established)
    Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    
    tcp        0      0 0.0.0.0:53              0.0.0.0:*               LISTEN      2139/dnsmasq   

    How do we fix it so DNSMasq listens on localhost only?

    The default that most will do is edit /etc/dnsmasq.conf and then set this

    listen-address=127.0.0.1

    But all that is needed is actuallly the "bind-interfaces" option and in fact if you don't have that option, it will still listen on 0.0.0.0 which may not be what you want.

    Note that even interface= will not help, especially if you don't have the bind-interfaces option as we show below.

    So just add this to /etc/dnsmasq.conf

    bind-interfaces

    Then restart dnsmasq and check:

    ctive Internet connections (servers and established)
    Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    
    tcp        0      0 127.0.0.1:53            0.0.0.0:*               LISTEN      2230/dnsmasq        


  • du - VAS Billing Subscriptions Hack/Scam MLPremiumSub Invascom Astromart Issues Complaint


    If you have du, you may want to check your bill, as you can read about a longstanding issue with fraudulent charges showing up and many users claiming they did not subscribe or solicit those offers. 

    These don't normally show up on new accounts, but they seem to target established users and maybe even users they suspect are not watching their phone or bills, while they are on vacation.

    These charges can frighteningly happen with 0 interaction from the user despite what du will say.

    https://www.reddit.com/r/dubai/comments/6o7y0t/hey_du_read_this/

    https://www.reddit.com/r/dubai/comments/w57njs/du_subscribed_me_to_3rd_party_subscriptions/

     

    Have you noticed strange charges to your bill even though you didn't have your phone on at the time of the supposed charges and subscriptions?

     

     

    To du's credit, they normally reverse the charges if you complain, especially if you offer proof that you didn't click any links or send an SMS to authorize the billing.

     

    Login to du and then check your plan and "VAS" and make sure you are not subscribed to any services that you didn't authorize:

     

    check du for fraudulent VAS subscriptions

     

    Be warned that even though VAS may show no subscriptions, you can and will still be impossibly charged for subscriptions that you haven't subscribed to.

     

    Conclusion

    Be vigilant, even if du tells you that everything has been canceled and refunded, I have found that this is normally NOT the case and will require followups, so be sure to take screenshots and then complain to the TDRA.


  • Docker Swarm vs Kubernetes Comparison Guide


    Kubernetes vs Docker Swarm Comparison

     

    A lot of companies are unsure which solution to choose and many may not be aware of Docker Swarm as an alternative to Kubernetes.  One thing that many Sysadmins find is that Docker Swarm is simply easier, quicker to setup and maintain by far than Kubernetes. 

    See for yourself with this Docker Tutorial which includes Docker Swarm.

    See the difference with one of our favorite and most efficient Kubernetes implementations.

    One striking feature is that if we compare deploying the same container by setting up a 3 node Docker Swarm or Kubernetes, it is MUCH quicker to get the same application going in Kubernetes.

    Administration and Expertise

    • Docker Swarm: Given its simplicity and integration with Docker, the administration overhead for Docker Swarm is significantly lower than Kubernetes. It requires less specialized knowledge, making it easier for teams already familiar with Docker to manage a Swarm environment. This translates into lower costs related to training and hiring specialized personnel. Smaller teams can effectively manage Swarm clusters without the need for dedicated DevOps roles focused solely on cluster management.

    • Kubernetes: Kubernetes' complexity and rich feature set necessitate a higher level of expertise and more administration time. Managing a Kubernetes cluster involves understanding various components like pods, services, deployments, and more, which has a steeper learning curve. Organizations often need to invest in specialized training for their teams or hire experienced Kubernetes administrators. This can significantly increase the manpower cost. Additionally, the ongoing management and optimization of Kubernetes clusters require more dedicated resources, potentially leading to higher costs in terms of both manpower and administration time.

    Operational Costs

    • Docker Swarm: The operational costs of running Docker Swarm are generally lower, not just in terms of the computing resources required but also considering the manpower needed for its administration. Its lightweight nature means that it can run on less powerful hardware or cloud instances, further reducing costs.

    • Kubernetes: Kubernetes can be more resource-intensive, requiring more robust hardware or higher-tier cloud services to accommodate its operational demands. Additionally, the cost of employing skilled Kubernetes operators or DevOps engineers can be substantial. While Kubernetes can optimize resource utilization and cost through features like auto-scaling, the initial setup, ongoing management, and optimization require continuous effort and expertise.

    Total Cost of Ownership (TCO)

    The Total Cost of Ownership for Kubernetes vs. Docker Swarm extends beyond just the immediate resource and manpower costs. It includes training, the complexity of operations, the scale of deployment, and the potential need for additional tools or services to manage and monitor the environment.

    • Docker Swarm: Offers a lower TCO for smaller to medium-sized deployments or for teams with limited DevOps resources. Its ease of use and lower resource requirements make it a cost-effective solution for many scenarios, especially when operational simplicity and lower manpower costs are prioritized.

    • Kubernetes: While the TCO can be higher, especially with larger deployments requiring skilled personnel, Kubernetes' scalability and efficiency can, in the long run, offer cost savings for complex, large-scale applications and environments that benefit from its advanced features. The investment in Kubernetes can lead to better resource utilization, higher availability, and more dynamic scaling, potentially offsetting the higher initial costs over time.

     

    Ease of Setup and Use

    • Docker Swarm: It is significantly easier to set up and configure Docker Swarm compared to Kubernetes. This is because Docker Swarm is tightly integrated into the Docker ecosystem. Setting up a Swarm cluster can be as simple as initiating a few Docker commands. This simplicity extends to its management and operation, making it more accessible for beginners or teams with smaller-scale deployments.

    • Kubernetes: Setting up a Kubernetes cluster is more complex and involves a steeper learning curve. Kubernetes offers more features and flexibility, which comes at the cost of increased complexity in setup and management. However, tools like Minikube or managed Kubernetes services (e.g., EKS, AKS, GKE) can help alleviate some of the setup difficulties.

    Scalability

    • Docker Swarm: Offers fast and straightforward scalability. Swarm is designed to be efficient in scaling up and down in response to demand. However, it might not handle extremely large clusters as efficiently as Kubernetes.

    • Kubernetes: Known for its robust scalability features. It can manage much larger clusters efficiently and provides more options for high availability and load balancing. Kubernetes is the go-to for enterprises needing to scale their applications massively.

    Features and Flexibility

    • Docker Swarm: Provides a simpler model for deploying applications, with a focus on ease of use and integration with Docker containers. It lacks some of the advanced features found in Kubernetes but covers the basic needs of container orchestration well.

    • Kubernetes: Offers a rich set of features including but not limited to auto-scaling, self-healing, service discovery, and load balancing. Its extensibility and flexibility make it suitable for complex applications and workflows.

    Resource Requirements

    • Docker Swarm: Requires fewer resources compared to Kubernetes, making it a more economical option for smaller operations or where resources are limited. Its lightweight nature means it can run effectively on smaller setups.

    • Kubernetes: Due to its extensive feature set and the complexity of managing large clusters, Kubernetes generally requires more resources (CPU, memory) to run effectively. This can be a consideration for organizations with limited resources.

    Community and Ecosystem

    • Docker Swarm: While Docker Swarm enjoys support from the Docker community, its ecosystem is not as vast or active as Kubernetes'. This can affect the availability of third-party tools and integrations.

    • Kubernetes: Boasts a large and active community. The ecosystem around Kubernetes is rich with third-party tools, services, and integrations, making it easier to find support and resources for extending Kubernetes capabilities.

    Use Cases

    • Docker Swarm: Ideal for small to medium-sized deployments, startups, or for those who prefer simplicity and are already invested in the Docker ecosystem. It's also well-suited for applications that do not require the complex orchestration features offered by Kubernetes.

    • Kubernetes: Suited for larger, more complex applications and enterprises requiring high scalability, extensive automation, and advanced deployment strategies. It's the choice for multi-cloud and hybrid-cloud environments due to its flexibility and wide industry support.

    Disaster Recovery Implications

    1. Faster Initial Recovery: Given that Docker Swarm allows for quicker deployment, in the event of a disaster, restoring services to operational status can be achieved more rapidly. This speed is beneficial for minimizing downtime and reducing the impact on business operations.

    2. Ease of Management: Docker Swarm's simplicity also means it's easier to manage in stressful situations, such as during disaster recovery. Fewer complexities reduce the risk of errors during the recovery process, making it more straightforward to execute recovery plans.

    3. Scalability Concerns: While Docker Swarm offers speed and simplicity, it's important to note that Kubernetes provides more advanced features for handling large-scale, complex applications. In disaster recovery, this might mean Kubernetes can offer better long-term scalability and resilience options, despite its slower initial setup time. However, for many applications, Docker Swarm's capabilities are more than adequate, especially when rapid recovery is a priority.

    4. Automation and Orchestration: Kubernetes excels in automation and orchestration, which can be advantageous in automatically managing application deployment and recovery across a large number of nodes. Docker Swarm, while simpler, may require more manual intervention in complex scenarios. However, for many scenarios, the speed and ease of use of Docker Swarm can outweigh these benefits, especially in environments where the application architecture aligns well with Swarm's model.

     

    Can Docker Swarm Be Used at Scale?

    Large Deployments Using Docker Swarm

    Companies have chosen Docker Swarm for its lightweight nature and ease of use, especially when their infrastructure does not demand the extensive scalability and complex orchestration features provided by Kubernetes. Companies in sectors like technology, finance, and e-commerce have utilized Docker Swarm for hosting web applications, microservices, and internal tools, appreciating its straightforward scaling and deployment mechanisms.

    Limitations and Scalability

     

     

    Conclusion

    Choosing between Docker Swarm and Kubernetes depends on your project's size, complexity, and specific requirements. Docker Swarm is a great choice for those valuing simplicity, ease of setup, and lower resource requirements. Kubernetes, on the other hand, is suited for those needing a highly scalable, feature-rich platform capable of managing complex applications and workflows. Each tool has its strengths, and the decision should align with your technical needs, team's expertise, and long-term strategy.  The easiest answer to the question is that if you don't need the extra features that Kubernetes provides, then you cannot go wrong with Docker Swarm.


  • When is it time to leave your VPS/VDS Cloud Hosting Provider?


    When Is It Time to Leave Your VPS, VDS, and Dedicated Server Provider?

    Choosing the right hosting solution—be it Virtual Private Server (VPS), Virtual Dedicated Server (VDS), or dedicated server—is pivotal for the performance, security, and reliability of your online presence. However, the landscape of hosting providers is ever-changing, especially with frequent acquisitions and shifts in service quality. Recognizing when it's time to transition to a new provider can safeguard your digital assets and ensure your hosting aligns with your needs. Here’s an updated guide on identifying the signs that it might be time to reconsider your VPS, VDS, or dedicated server hosting provider.

    Considerations for Switching Providers

    Environmental Vulnerability and Infrastructure Resilience

    Recurring Climate-Related Issues

    • Signs: If your provider’s data center is frequently affected by climate-related disasters (e.g., flooding, hurricanes) and fails to maintain operational continuity, it's a clear sign of inadequate disaster preparedness.
    • Impact: Such recurring issues can lead to significant downtime, data loss, or performance degradation, directly affecting your online business operations.

    Power Stability Concerns

    • Signs: Frequent power outages or failures that result in downtime indicate a lack of robust power backup solutions (UPS systems, generators) essential for any data center.
    • Impact: Power stability is critical for uninterrupted server operation. Frequent outages suggest a vulnerability in the provider's infrastructure, risking your data and service availability.

    Network Performance Issues

    Consistent Bandwidth Problems

    • Signs: If you're experiencing persistent slow bandwidth or network congestion, it could indicate that the provider is overselling their resources without adequately investing in network capacity.
    • Impact: Bandwidth and network performance directly affect your website’s load times and the overall user experience, which can influence customer satisfaction and SEO rankings.

    Ethical and Security Concerns

    Involvement in Scandals or Unethical Practices

    • Signs: Discovering that your hosting provider is involved in scandals, such as unauthorized tapping of client communications or other unethical data practices, is a serious red flag.
    • Impact: Beyond the immediate security implications, association with a provider embroiled in unethical practices can damage your business’s reputation and trustworthiness.

     

    Understanding the Impact of Acquisitions

    Shift in Service and Expertise

    The acquisition of your hosting provider by a larger company often heralds significant changes. The intimate understanding and specialized support you’ve come to expect can dilute as the core staff transitions out, replaced by a team with potentially different priorities and expertise. For specialized hosting solutions like VPS, VDS, or dedicated servers, this can mean a drop in the technical support quality and responsiveness you rely on.

    Decreased Personalization and Increased Standardization

    Post-acquisition, the personalized approach that smaller providers offer might give way to a one-size-fits-all service model. This change can be particularly challenging for VPS, VDS, and dedicated server clients who require tailored configurations and hands-on support to optimize their server performance and security.

    Signs It’s Time to Switch Providers

    1. Deterioration in Support Quality

    When the quality of support declines, with slower response times or less knowledgeable assistance, it’s a clear indication that the provider’s service level is no longer up to par. For complex hosting setups, effective and timely support is crucial.

    2. Increased Technical Problems

    An uptick in technical issues, such as server downtime, performance inconsistencies, or security vulnerabilities, suggests that the provider’s infrastructure and service quality are waning. VPS, VDS, and dedicated server clients need reliable performance and robust security measures, given the critical nature of the hosted applications and data.

    3. Changes in Service Terms or Pricing

    Unanticipated changes in billing, service terms, or sudden price hikes without corresponding improvements in service can indicate that it’s time to reassess your hosting arrangements. For businesses relying on VPS, VDS, or dedicated servers, stability in service terms and predictable pricing are essential for long-term planning.

    4. Lack of Customization or Flexibility

    If your provider becomes less willing or able to accommodate custom configurations or specific requirements, it’s a sign that their new business model may not align with your needs. VPS, VDS, and dedicated server hosting often require flexibility to optimize server setups based on unique performance, security, and software requirements.

    Making the Switch Thoughtfully

    Guide on picking a new VPS/VDS/Cloud Server Provider.

    Transitioning to a new VPS, VDS, or dedicated server provider requires careful planning to minimize downtime and data loss. Here are steps to ensure a smooth migration:

    • Research and Select Carefully: Evaluate potential providers based on their reputation for handling VPS, VDS, and dedicated server solutions, focusing on technical support, security, and customization options.
    • Plan the Migration: Develop a detailed migration plan that considers data backup, application dependencies, and timing to reduce impact on operations.
    • Communicate with Stakeholders: Keep your team and users informed about the migration timeline and what to expect during the transition.

    Navigating the decision to leave your current hosting provider is complex, especially when dealing with specialized solutions like VPS, VDS, or dedicated servers. By staying attuned to changes in service quality, support, and flexibility, you can make informed decisions that align with your technical requirements and business goals, ensuring your digital infrastructure remains robust and responsive to your needs.


  • 2024 Buyer's Guide: How to Choose and Buy the Best VPS/VDS for Your Needs - Tips and Strategies


    rtt Ultimate Cloud VPS Buyer's Guide for 2024

    In today’s digital landscape, finding a reliable and secure Virtual Private Server (VPS) or Virtual Dedicated Server (VDS) goes beyond just comparing specs and prices. With increasing concerns over data privacy, security breaches, and government surveillance, the wisdom of choosing your VPS/VDS provider based on jurisdiction, security features, and operational transparency has never been more critical.

    Our guide on when to switch to a different provider is here.

    Why is our VPS guide different?

    Many of the blogs and guides out there are not made by professionals with decades of experience, and in fact, are often created by full time digital marketing gurus and firms.

    realtechtalk.com is a source of technical information and solutions, many of the other guides out there and comparisons are created by "Tech blogs" that don't actually run mission critical operations or real world problems and solutions.

    The sheer amount of available guides can be overwhelming. However, it's crucial to approach these resources with a discerning eye, especially considering that many guides are driven by underlying motives such as affiliate marketing, prioritizing recommendations that may not align with your best interests. Our guide stands apart in this cluttered space, and here's why it's an invaluable resource for businesses prioritizing security and reliability.

    Assessing Technical Depth and Utility

    1. Detailed How-To Guides and Tutorials: Genuine technical blogs often provide comprehensive how-to guides, tutorials, and step-by-step instructions that help readers solve specific problems or achieve tasks. The presence of detailed, actionable content can indicate a blog's commitment to offering real value to its audience.

    2. Problem-Solving Content: Authentic tech blogs usually address common and niche technical issues, offering solutions based on experience and expertise. They might discuss troubleshooting steps, optimization tips, and best practices for using VPS and cloud services effectively.

    3. Technical Discussion Depth: Blogs that delve into the technical nuances, underlying principles, and architectural considerations of VPS and cloud solutions demonstrate a deeper understanding of the subject matter. A focus on surface-level features or benefits without discussing the technical how and why may suggest a lack of genuine expertise.

     

    Unbiased and Comprehensive Analysis

    1. No Affiliate Links: Unlike many guides that rely on affiliate marketing for revenue, our recommendations are untainted by financial incentives. This means we have no hidden agenda; our sole focus is to provide you with the best options based on merit, not commission rates.

    2. Security-Centric Recommendations: We understand that for businesses, security isn't just another checkbox—it's a foundation. Our guide is crafted with a deep understanding of cybersecurity threats and countermeasures, ensuring that our recommendations prioritize the safety of your data above all else.

    3. Reliability as a Priority: In the digital age, downtime is synonymous with lost revenue and damaged reputation. We highlight solutions known for their uptime, robust infrastructure, and excellent customer support, ensuring your operations run smoothly around the clock.

    Prioritize Long-Standing Providers

    • Established Track Record: Opt for a provider that has been in business for a significant period. Longevity in the hosting industry often indicates a consistent track record of reliability and customer satisfaction. Companies that have weathered the ups and downs of the market are more likely to understand the nuances of maintaining high uptime, offering scalable solutions, and providing responsive customer support.

    Assess Ownership and Management Experience

    • Reputable Ownership: Consider providers that are either independently reputable or are part of a well-regarded parent company known for its stability and financial health. The backing of a reputable company often means access to better resources, infrastructure, and a more significant safety net in terms of business continuity and disaster recovery capabilities.

    • Experienced Management: Look into the experience and background of the management team. Providers led by individuals with a proven track record in the IT, datacenter, or networking industries can offer more reliable and innovative services. Experienced leadership is adept at navigating technical challenges and market fluctuations, ensuring the provider remains on solid footing.

    Verify the Provider's Financial Health

    • Stable Financial Background: A financially stable provider is less likely to experience service disruptions due to budget constraints or go out of business suddenly, jeopardizing your data and online presence. While financial details may not always be publicly available, signs of stability include consistent service improvements, infrastructure investments, and positive customer testimonials over the years.

    Look for Consistent Innovation and Improvement

    • Ongoing Investment in Technology: A provider that continually invests in its infrastructure, software, and services is likely in a stable financial position and committed to offering the best possible service. Regular updates to services, hardware, and security protocols indicate a provider's dedication to maintaining high performance and customer satisfaction.

     

    Choose Lesser-Known, Specialized Providers

    • Avoid Household Names: Opt for providers that may not be household names but have a solid reputation in specialized forums and industry circles. These companies are less likely to be the target of mass-scale cyber attacks and may offer more personalized service, which can be a boon for SMEs requiring attentive support.

    Evaluate the Provider's Infrastructure and Expertise

    • Assess Scale and Reliability: While large providers may offer attractive pricing due to their scale, their service can sometimes be impersonal, and they may experience significant outages. A smaller, more specialized provider could offer more reliable uptime and personalized attention, critical for businesses where every minute of downtime counts.

    • Verify In-House Expertise: Ensure the provider has in-house experts in datacenter management, servers, and networking. Providers that openly share information about their team's expertise and infrastructure are generally more trustworthy and capable of delivering higher service quality. Those that don't may lack direct control over their services, potentially compromising reliability and performance.

    Look for Comprehensive Services and Support

    • Full-Scale System and Network Support: Choose a provider that offers a range of support and consulting services, from system administration to network security. This indicates a higher level of expertise and a commitment to supporting your business's specific needs. Providers that control their own hardware and network infrastructure are preferable, as they can offer more customized solutions and faster response times.

    Importance of Control and Transparency

    • Control Over Hardware and Network: A provider that owns and controls its hardware and network infrastructure can offer better security, performance, and reliability. This control also means they can be more responsive to issues and offer more customized solutions, essential for businesses with specific or changing needs.

     

    Why Security and Jurisdiction Matter

    Recent years have shown that even the most reputable providers are not immune to outages, security breaches, and other vulnerabilities. High-profile incidents involving major companies like Amazon, Vultr, and DigitalOcean have highlighted the risks of hosting with providers that become prime targets for cyberattacks. The allure of free or cheap services often comes with a hidden cost: your data’s security and privacy. Many of these low-cost providers have been identified as sources of hacking traffic, making them not just insecure but complicit in the broader ecosystem of cyber threats.

    Moreover, the revelations from Edward Snowden about NSA surveillance activities have cast a long shadow over providers in PRISM countries. Providers under the jurisdiction of these nations are subject to laws that compel them to hand over user data to government agencies, often without the user's knowledge or consent. This reality poses a significant risk for businesses and individuals concerned about the confidentiality of their communications and the integrity of their data.

    Signs of Expertise, Does Your Provider Offer Dedicated Servers, Fiber and IP Space?

    Comprehensive Infrastructure Solutions

    • Private Server Capabilities: Look for providers that offer the option to transition from VPS to dedicated or even private server environments. This capability is crucial for businesses with growing or fluctuating demands, ensuring that they can scale their resources up or down as needed without compromising performance or security.

    Dedicated Network Options

    • Custom Network Solutions: Providers that can offer dedicated network solutions, including private VLANs or MPLS, indicate a high level of network management expertise. This is essential for businesses that prioritize data security and require isolated networking environments to protect sensitive information.

    Private Fiber Optic Connections

    • Direct Fiber Access: A provider capable of offering direct fiber optic connections for your business' exclusive use, demonstrates a significant investment in infrastructure. This level of service ensures the highest possible speed and reliability, and security, crucial for businesses that rely on real-time data access and high-bandwidth applications.

    Dedicated IP Space

    • Allocated IP Ranges: Providers that can offer dedicated IP space give businesses the flexibility and control needed for various operations, including running their own web servers, email servers, and other services while ensuring improved security and reputation management.

    Expertise and Customization

    • Security and Scalability: The ability to provide these high-level services is a testament to a provider's expertise in secure and scalable IT services. It indicates a depth of knowledge not only in hardware and infrastructure but also in understanding the unique needs of businesses that require these advanced services.

     

    Avoid Free Trials and Money Back Guarantee VPS/VDS/Cloud Offers

    In addition to the concerns surrounding large VPS providers, it's also wise to exercise caution with providers that offer free trials or 30-day money-back guarantees. While these offers are attractive for legitimate users testing the services before committing financially, they present vulnerabilities that can be exploited by malicious actors. Below, we explore why such promotional offers can exacerbate the risks of shared hosting environments.

    Increased Susceptibility to Abuse by Hackers

    1. Low Barriers to Entry: Free trials and money-back guarantees lower the barriers to entry, making it easier for hackers to sign up for services with minimal upfront investment. This accessibility allows malicious users to exploit these platforms for launching attacks, hosting malicious content, or conducting other nefarious activities without significant financial risk.

    2. Temporary Nature of Services: The temporary nature of free or trial accounts makes them particularly appealing to hackers. Malicious actors can use these services to perform their activities and then abandon the account before any serious action can be taken against them. This transient usage pattern complicates efforts to track and mitigate abusive behavior.

    3. Reputation Damage and Blacklisting: As hackers frequently utilize these trial accounts, the IP ranges and resources allocated to these promotional offers can become associated with malicious activities. This association can lead to IPs being blacklisted, affecting not only the hackers but also legitimate users who are later assigned those IPs or subnets. The consequences can include email delivery issues, decreased network reputation, and potential blocking by security systems.

    4. Resource Strain and Security Risks: Providers offering extensive free trials or guarantees might attract a disproportionate number of abusers, straining resources and potentially compromising the security of the network. This strain can impact service quality for legitimate users and increase the provider's susceptibility to breaches if resources are diverted to manage abuse instead of enhancing security measures.

    Mitigation Strategies for Users

    To mitigate these risks, users should consider providers that have robust verification processes for new accounts, even if they offer trials or money-back guarantees. Additionally, researching a provider's reputation, security practices, and how they handle abuse can provide insights into their suitability. Opting for providers that balance promotional offers with strict anti-abuse measures can help minimize the risk of being inadvertently associated with malicious activities.

     

    Avoid Large Providers

    The choice of a Virtual Private Server (VPS) provider is crucial for businesses and individuals who prioritize privacy, security, and reliability in their online operations. Opting for large VPS providers, while seemingly advantageous due to their established reputations and extensive resources, comes with a set of risks that warrant careful consideration. Below are key reasons why one might avoid large VPS providers, focusing on concerns related to mass surveillance, government interest, hacker targeting, and the implications of sharing IP space with malicious actors.

    Increased Risk of Mass Surveillance and Government Interest

    1. Scale and Visibility: Large VPS providers, due to their size and the volume of data they handle, are more likely to be under surveillance by governments and intelligence agencies. The extensive customer base and significant amount of traffic make these providers prime targets for mass data collection efforts.

    2. Legal and Regulatory Compliance: Big providers are often subject to stringent legal and regulatory requirements, which may compel them to comply with government requests for data access. In jurisdictions with laws that infringe on privacy rights, this compliance can lead to the monitoring of user activities without explicit consent or knowledge.

    3. Data Center Locations: The global presence of large providers means that some of their data centers may be located in countries with aggressive surveillance laws. This geographic diversity, while beneficial for performance and redundancy, can expose users to varied legal regimes, some of which may be more intrusive.

    Vulnerability to Hacking and Malicious Activities

    1. Attractive Targets for Hackers: The prominence and scale of large VPS providers make them attractive targets for cybercriminals and hackers. Breaching the defenses of a major provider can grant attackers access to a vast amount of resources and data, offering a high return on their efforts.

    2. Shared IP Space Concerns: When you use a large VPS provider, you share IP space with numerous other customers, including potentially malicious users. This shared environment can lead to your IP addresses being blacklisted or marked on Real-time Blackhole Lists (RBLs) due to the activities of other users, affecting your email deliverability and reputation.

    3. Proximity to Malicious Actors: Sharing network infrastructure with hackers increases the risk of collateral damage from targeted attacks against other users on the same network. Moreover, if hackers manage to exploit vulnerabilities within the provider's network, there's a theoretical risk they could gain unauthorized access to your resources, especially if network segmentation or isolation measures are inadequate.

     

    The Jurisdictional Mistake

    One location that works well for many companies is Hong Kong VPS/Cloud as it is safe and secure from data seizure and has excellent infrastructure and connectivity to Asia and the world as we argue here.

    A critical oversight some companies make when selecting a hosting location for their data is failing to consider the jurisdictional implications tied to their service provider's legal domicile, especially in the context of privacy and data protection. For example, a company might choose Hong Kong for its data hosting due to its perceived strong privacy laws and distance from Western legal jurisdictions. However, if the chosen hosting provider is registered in a PRISM-affiliated country, such as the United States or the United Kingdom, the benefits of hosting in a "safer" jurisdiction may be nullified.

    Understanding PRISM and Jurisdictional Reach

    PRISM is a surveillance program under the United States National Security Agency (NSA) that collects internet communications from various U.S. internet companies. Companies that are based in or have substantial ties to PRISM-affiliated countries (primarily the US and UK) are subject to the laws and regulations of those countries, including laws that compel the disclosure of data to government authorities.

     

    1. Misplaced Trust in Geographic Safety: Companies may mistakenly believe that by hosting data in jurisdictions perceived as safe or privacy-friendly, such as Hong Kong, they can protect their data from foreign surveillance and intervention. This overlooks the fact that the legal entity controlling the data—i.e., the hosting provider—is subject to the laws of its home country.

    2. Compulsion Under Home Country Laws: If the hosting provider is a company registered in a PRISM country, it can be compelled by its government to provide access to data, regardless of where that data is physically stored. This means that data hosted in Hong Kong by a U.S. or UK company can be accessed under U.S. or UK law, effectively bypassing the local privacy protections of the hosting location.

    3. Legal and Compliance Conflicts: Hosting with a provider subject to foreign surveillance laws can create conflicts between the need to comply with those laws and the hosting company's obligations under local privacy regulations. This can lead to complex legal situations where companies find themselves caught between conflicting legal demands.

    Strategies for Mitigating Risk

    To mitigate these risks, companies should consider the following strategies when selecting a data hosting location and provider:

    1. Evaluate the Provider's Jurisdiction: Choose a hosting provider whose jurisdiction aligns with your privacy and data protection goals. Consider providers based in countries with strong privacy laws and minimal exposure to foreign surveillance laws.

    2. Understand Data Protection Laws: Be aware of the data protection laws in both the hosting location and the provider's home country. This understanding can help assess the risk of government intervention.

    3. Seek Legal Advice: Consult with legal experts who specialize in international data protection law to navigate the complex landscape of jurisdiction, privacy, and data security.

    4. Consider Data Encryption: Encrypt data at rest and in transit to add a layer of protection against unauthorized access, regardless of the legal jurisdiction.

    By carefully selecting a hosting provider and location with a thorough understanding of jurisdictional impacts, companies can better protect their data from unwanted surveillance and ensure compliance with their data protection standards.

    Choosing a VPS/VDS Provider: Features to Look For

    When searching for a VPS/VDS provider, prioritize those registered and operating outside of PRISM countries. Look for jurisdictions with strong data protection laws and a history of resisting extraterritorial demands for user data.

    Security Features

    • Data Encryption: Ensure that the provider offers robust encryption for data at rest and in transit.
    • DDoS Protection: Look for built-in protection against Distributed Denial of Service (DDoS) attacks.
    • Regular Security Audits: Choose providers that conduct regular security audits and make those reports available to their customers.
    • Access Controls: Comprehensive access control options, including two-factor authentication (2FA) and role-based access, are essential.

    Jurisdictional Considerations

    • Non-PRISM Countries: Opt for providers based in countries not part of the PRISM surveillance program, enhancing privacy protection.
    • Data Sovereignty: Understand where your data is physically stored and the legal implications of that jurisdiction.

    Things to Avoid

    • Free or Extremely Cheap Offers: These can be indicative of compromised security measures and a lack of investment in infrastructure.
    • Providers with a History of Outages and Breaches: Research your provider's track record for reliability and security incidents.
    • PRISM owned providers: Avoid providers that are incorporated and registered in PRISM based countries.

     

    Billing Considerations

    When comparing the cost implications of using usage-based services like Amazon Web Services (AWS) to flat-rate VPS hosting options, it's important to consider how these billing models can impact your budget and operational costs.

    AWS operates on a usage-based pricing model, offering flexibility and scalability but potentially leading to unpredictable and higher costs depending on usage patterns. This model can be beneficial for businesses with fluctuating needs, allowing them to scale resources up or down based on demand. However, for users with stable or predictable resource requirements, this flexibility comes at the cost of complexity in budgeting due to potential overages and the intricate pricing structures associated with different services and resources within AWS.

    In contrast, flat-rate VPS hosting services offer a predictable monthly fee, simplifying budget management and financial planning. These services typically provide a fixed amount of resources (CPU, RAM, storage, bandwidth) for a set price, making it easier for users to predict their hosting expenses without worrying about variable costs based on resource consumption. This pricing model is particularly appealing for small to medium-sized projects, personal websites, or businesses with consistent resource needs, where budget predictability is a priority.

    The choice between usage-based and flat-rate billing models should be based on your specific hosting needs, resource usage patterns, and budgetary constraints. For projects with dynamic resource demands, a usage-based model like AWS might offer the necessary flexibility, albeit with more complex budgeting requirements. For those with more predictable resource needs, a flat-rate VPS hosting service could provide cost savings and simpler financial planning.

     

    Pay-As-You-Go

    The "pay-as-you-go" billing model, while offering flexibility and scalability, carries inherent risks that can lead to unexpectedly high charges, particularly in scenarios of hacking, abuse, or misconfiguration.

    Hacking and Security Breaches

    In a pay-as-you-go model, if an account is compromised, hackers can quickly spin up resources for their own purposes, such as cryptocurrency mining or launching attacks, leading to significant financial liabilities for the account owner. Since billing is based on usage, the costs can escalate rapidly without immediate detection of the unauthorized activity.

    Abuse and Misconfiguration

    Similarly, abuse or misconfiguration can lead to spiraling costs. For instance, leaving unused resources running, improperly configured services, or deploying resources more extensive than necessary can all contribute to higher than anticipated charges. An application or service experiencing a sudden increase in usage, whether through legitimate traffic spikes or DDoS attacks, can also result in significant expenses.

    Comparing with Flat-Rate Billing

    On the other hand, flat-rate VPS hosting offers a predictable monthly or annual fee, providing a capped cost that can safeguard against the unpredictable expenses associated with the pay-as-you-go model. This predictability is particularly valuable for small to medium-sized projects or businesses with fixed budgets. However, it's important to note that while flat-rate plans offer cost predictability, they may lack the flexibility to scale resources dynamically in response to changing needs.

    Mitigation Strategies

    To mitigate the risks associated with the pay-as-you-go model:

    • Monitoring and Alerts: Utilize cloud service monitoring tools to track resource usage and set up alerts for unusual activity.
    • Security Best Practices: Implement robust security measures, including multi-factor authentication, regular audits, and strict access controls.
    • Budget Management Tools: Use budget management features offered by cloud providers to set spending limits and avoid unexpected charges.

     

    Examples of Providers Tapping Their Clients

    The owner of a popular chat service found that their large providers Hetzner and Linode tapped their servers which was documented on Reddit and by other security researchers.

    In this case there was no evidence of the servers being hacked, but a device that acted as a man in the middle was placed in order to decrypt the encrypted traffic in and out of the server.  This was done to servers at 2 different locations in Germany and by two different providers (Linode and Hetzner).

    By choosing large providers and choosing countries that co-operate with the US based PRISM program in the EU and most parts of the world, you are putting your data and security at risk.

    https://therecord.media/jabber-ru-alleged-government-wiretap-expired-tls-certificate

    Note a similar occurrence happened in France as well:

    https://www.wired.com/story/encrochat-phone-police-hacking-encryption-drugs/

    In all cases the clients were not notified and it's unclear what, if any legal process was used and it also appears that providers simply comply with requests for data and access, even if it may be illegal or unwarranted.


  • Postfix / sendmail config for DKIM, SPF and DMARC Tutorial Guide E-mail Delivery for Hotmail.com Gmail.com and More HowTo


    This will be the goto to help solve e-mail delivery issues and talk about many practical issues that happen between developers, admins and scripts that send e-mail and do things that may not be acceptable or cause deliverability problems.

    Sendmail Stuff

    Edit /etc/mail/sendmail.mc

    The problem is that if you send directly out from the server using the mail function, the Return-path of the e-mails will be username@thehostnameoftheserver.com.  Let's say the From Address is "hellothere@cooldomain.com", this is a problem becasue presumably you've signed the e-mail for "cooldomain.com" but some e-mail providers will also check the Return-path domain of "thehostnameoftheserver.com" and find it does not match and there is no signature for the hostname and this will cause e-mails to be rejected or sent to spam.

    So if your server's hostname is abc123.com, then the return path is the user@abc123.com, and this obviously breaks more strict DKIM checks because e-mail servers like gmail.com will also expect a DKIM signature for the hostname of the server.

    To make things worse, a lot of times the people/devs that generate these e-mails may not have access to the server or may not be allowed to change the hostname.

    Fix it Using Sendmail's MASQUERADE

    Below we can fix this by using MASUERADE_AS with realtechtalk.com, this will be the domain set in the Return-path and the MASQUERADE_DOMAIN is abc123.com, you can add more lines with extra domains you want to rewrite.

    dnl MASQUERADE_AS(`realtechtalk.com')dnl
    dnl FEATURE(masquerade_entire_domain)dnl
    dnl MASQUERADE_DOMAIN(abc123)dnl

     

    To apply the changes update sendmail.cf like this:

    We have to generate the new config file

    m4 sendmail.mc

    Restart the sendmail service.

    systemctl restart sendmail

    OpenDKIM Settings

    Be sure to set this option for /etc/opendkim.conf as this will sign for multiple domains/hosts in the e-mail:

    MultipleSignatures Yes

    Eg. if your return-path is abc123.com and your from address is hello.com, both need to be signed or they will fail DMARC and possibly be blocked or sent to spam.  This also assumes that you should correctly have the keys and configuration to sign all domains that may be a part of the e-mail (eg. our example should mean that you have keys for abc123.com and hello.com on your server that sends out). 

     


  • Install Grafana on Linux Debian Ubuntu Tutorial Guide


    First we need a few extra packages:

    apt update

    apt install -y adduser libfontconfig1 musl sudo
    wget https://dl.grafana.com/enterprise/release/grafana-enterprise_10.3.1_amd64.deb

    Install / Enable Grafana

    dpkg -i grafana-enterprise_10.3.1_amd64.deb

    dpkg -i grafana-enterprise_10.3.1_amd64.deb
    (Reading database ... 44309 files and directories currently installed.)
    Preparing to unpack grafana-enterprise_10.3.1_amd64.deb ...
    Unpacking grafana-enterprise (10.3.1) over (10.3.1) ...
    Setting up grafana-enterprise (10.3.1) ...
    Restarting grafana-server service... OK
    root@Grafana-realtechtalk:~# apt purge grafana-enterprise
    Reading package lists... Done
    Building dependency tree... Done
    Reading state information... Done
    The following packages will be REMOVED:
      grafana-enterprise*
    0 upgraded, 0 newly installed, 1 to remove and 94 not upgraded.
    After this operation, 408 MB disk space will be freed.
    Do you want to continue? [Y/n] y
    (Reading database ... 44309 files and directories currently installed.)
    Removing grafana-enterprise (10.3.1) ...
    Stopping and disabling grafana-server service...
    Synchronizing state of grafana-server.service with SysV service script with /lib/systemd/systemd-sysv-install.
    Executing: /lib/systemd/systemd-sysv-install disable grafana-server
    Removed /etc/systemd/system/multi-user.target.wants/grafana-server.service.
    (Reading database ... 34213 files and directories currently installed.)
    Purging configuration files for grafana-enterprise (10.3.1) ...
    dpkg: warning: while removing grafana-enterprise, directory '/etc/grafana' not empty so not removed
    dpkg: warning: while removing grafana-enterprise, directory '/usr/lib/systemd/system' not empty so not removed
    root@Grafana-realtechtalk:~# dpkg -i grafana-enterprise_10.3.1_amd64.deb
    Selecting previously unselected package grafana-enterprise.
    (Reading database ... 34208 files and directories currently installed.)
    Preparing to unpack grafana-enterprise_10.3.1_amd64.deb ...
    Unpacking grafana-enterprise (10.3.1) ...
    Setting up grafana-enterprise (10.3.1) ...
    ### NOT starting on installation, please execute the following statements to configure grafana to start automatically using systemd
     sudo /bin/systemctl daemon-reload
     sudo /bin/systemctl enable grafana-server
    ### You can start grafana-server by executing
     sudo /bin/systemctl start grafana-server

    Enable Grafana

    systemctl daemon-reload
    systemctl enable grafana-server


    ### You can start grafana-server by executing
     sudo /bin/systemctl start grafana-server
    Synchronizing state of grafana-server.service with SysV service script with /lib/systemd/systemd-sysv-install.
    Executing: /lib/systemd/systemd-sysv-install enable grafana-server

    Created symlink /etc/systemd/system/multi-user.target.wants/grafana-server.service → /lib/systemd/system/grafana-server.service.

     

    Start Grafana

    systemctl start grafana-server

    Access Grafana

    Browse to https://YourIP:3000 and login as admin/admin

    Update Your Password

    Welcome to the Grafana Dashboard!

    References

    https://grafana.com/grafana/download?pg=oss-graf&plcmt=hero-btn-1

     


  • How To Completely Disable ufw in Linux Ubuntu Mint Debian


    This is for the situation that you're doing other things that may conflict or have your own custom rules and ufw keeps overriding iptables.

    A lot of guides don't work, and even ufw reset does not work, because it still leaves the old ufw chains.

    Here is what works to disable ufw completely

    systemctl stop ufw

    systemctl disable ufw

    ufw disable

    rm -f /etc/ufw/*

    iptables -F

    Now run this script to finish the job

    This script will delete all of the old ufw chains.

    for chain in `iptables -L|grep ufw|awk '{print $2}'`; do
    iptables -X $chain
    done

    Do this in case:

    Sometimes the default iptables policy for FORWARD, OUTPUT, INPUT will be drop

    iptables --policy FORWARD ACCEPT

    iptables --policy INPUT ACCEPT

    iptables --policy OUTPUT ACCEPT

    We can see all the old chains below before running the script and then after the script they are all deleted.


  • System has not been booted with systemd as init system (PID 1). Can't operate. Failed to talk to init daemon. Ubuntu Debian Linux Solution Cannot reboot


    You are probably using some custom image or maybe this is some sort of container that didn't boot with systemd.

     

    The solution is to use "reboot -f"

    reboot -f

    This will force the system/OS/VM/container to reboot.

    Reference To Related Issue.


  • Mint Ubuntu Linux Gnome Showing Home Directory on Desktop instead of Desktop Directory


    During a migration or other custom setup, it's possible you don't have a $HOME/Desktop and as a result the config file that controls this is set to just use your $HOME directory.


    This is controlled in the file: $HOME/.config/user-dirs.dirs

    As we can see below, Desktop, Downloads, Music and Pictures are set to $HOME.  We can edit any of these as we like.

    # This file is written by xdg-user-dirs-update
    # If you want to change or add directories, just edit the line you're
    # interested in. All local changes will be retained on the next run.
    # Format is XDG_xxx_DIR="$HOME/yyy", where yyy is a shell-escaped
    # homedir-relative path, or XDG_xxx_DIR="/yyy", where /yyy is an
    # absolute path. No other format is supported.
    #
    XDG_DESKTOP_DIR="$HOME/"
    XDG_DOWNLOAD_DIR="$HOME/"

    XDG_TEMPLATES_DIR="$HOME/Templates"
    XDG_PUBLICSHARE_DIR="$HOME/Public"
    XDG_DOCUMENTS_DIR="$HOME/Documents"
    XDG_MUSIC_DIR="$HOME/"
    XDG_PICTURES_DIR="$HOME/"

    XDG_VIDEOS_DIR="$HOME/Videos"

    Fixed:

    # This file is written by xdg-user-dirs-update
    # If you want to change or add directories, just edit the line you're
    # interested in. All local changes will be retained on the next run.
    # Format is XDG_xxx_DIR="$HOME/yyy", where yyy is a shell-escaped
    # homedir-relative path, or XDG_xxx_DIR="/yyy", where /yyy is an
    # absolute path. No other format is supported.
    #
    XDG_DESKTOP_DIR="$HOME/Desktop"
    XDG_DOWNLOAD_DIR="$HOME/Downloads"

    XDG_TEMPLATES_DIR="$HOME/Templates"
    XDG_PUBLICSHARE_DIR="$HOME/Public"
    XDG_DOCUMENTS_DIR="$HOME/Documents"
    XDG_MUSIC_DIR="$HOME/Music"
    XDG_PICTURES_DIR="$HOME/Pictures"

    XDG_VIDEOS_DIR="$HOME/Videos"


  • vi vim not doing code highlighting E319: Sorry, the command is not available in this version solution


    Normally syntax highlighting is the default behavior. 

    You can enable it manually by hitting :syntax on

    But normally you'll have this error because of the missing package.

    E319: Sorry, the command is not available in this version

    Solution install the vim-gui-common package:

    apt install vim-gui-common
     

    After that you should find that the code is highlighted by default.

    Happy coding!


  • Proxmox How To Rename Node Hostname Fix Solution


    Proxmox's documentation shows the following here.

    Which mainly just says change /etc/hosts and /etc/hostname with your new hostname.

    Here's what happens if you only do that:

    If you just do the above, you will find you have an inaccessible original hostname that contains those VMs and you cannot move or stop them.

    You need to go into /etc/pve/nodes

    You'll see the following inside:

    oldhostname

    newhostname

    1.) Move both of those somewhere else.

    2.) Create a dir called "newhostname"

    3.) Copy the contents of "oldhostname" to "newhostname"

    It's Fixed!

     


  • Linux how to get list of all timezones on system Ubuntu


    find  /usr/share/zoneinfo/|sed s#"/usr/share/zoneinfo/"##g|grep "/"|grep -v posix|grep -v ^"Etc/"|grep -v ^right|grep -v ^"SystemV"

     

    Africa/Addis_Ababa
    Africa/Abidjan
    Africa/Blantyre
    Africa/Lusaka
    Africa/Casablanca
    Africa/Libreville
    Africa/Asmara
    Africa/Bujumbura
    Africa/Dakar
    Africa/Lagos
    Africa/Malabo
    Africa/Harare
    Africa/Kigali
    Africa/Mogadishu
    Africa/Maseru
    Africa/Tunis
    Africa/Ouagadougou
    Africa/Sao_Tome
    Africa/Kinshasa
    Africa/Asmera
    Africa/Tripoli
    Africa/Khartoum
    Africa/Conakry
    Africa/Nouakchott
    Africa/Djibouti
    Africa/Niamey
    Africa/Bangui
    Africa/Ndjamena
    Africa/Kampala
    Africa/Johannesburg
    Africa/Algiers
    Africa/Banjul
    Africa/Lubumbashi
    Africa/Monrovia
    Africa/Timbuktu
    Africa/Juba
    Africa/Windhoek
    Africa/Cairo
    Africa/Porto-Novo
    Africa/Lome
    Africa/Douala
    Africa/Bissau
    Africa/Brazzaville
    Africa/Nairobi
    Africa/Bamako
    Africa/Dar_es_Salaam
    Africa/Ceuta
    Africa/Freetown
    Africa/El_Aaiun
    Africa/Maputo
    Africa/Mbabane
    Africa/Accra
    Africa/Luanda
    Africa/Gaborone
    Chile/Continental
    Chile/EasterIsland
    Brazil/DeNoronha
    Brazil/West
    Brazil/East
    Brazil/Acre
    Antarctica/Davis
    Antarctica/Macquarie
    Antarctica/Vostok
    Antarctica/Casey
    Antarctica/Syowa
    Antarctica/South_Pole
    Antarctica/Rothera
    Antarctica/Palmer
    Antarctica/McMurdo
    Antarctica/Troll
    Antarctica/Mawson
    Antarctica/DumontDUrville
    Canada/Eastern
    Canada/Newfoundland
    Canada/Saskatchewan
    Canada/Central
    Canada/Yukon
    Canada/Atlantic
    Canada/Pacific
    Canada/Mountain
    US/Arizona
    US/Eastern
    US/Central
    US/Indiana-Starke
    US/Hawaii
    US/Alaska
    US/Aleutian
    US/Samoa
    US/Pacific
    US/Mountain
    US/Michigan
    US/East-Indiana
    Mexico/BajaNorte
    Mexico/General
    Mexico/BajaSur
    Indian/Mayotte
    Indian/Mauritius
    Indian/Reunion
    Indian/Kerguelen
    Indian/Cocos
    Indian/Christmas
    Indian/Antananarivo
    Indian/Comoro
    Indian/Mahe
    Indian/Chagos
    Indian/Maldives
    Europe/Brussels
    Europe/Tallinn
    Europe/San_Marino
    Europe/Isle_of_Man
    Europe/Bucharest
    Europe/Zagreb
    Europe/Oslo
    Europe/Astrakhan
    Europe/Mariehamn
    Europe/Gibraltar
    Europe/Zaporozhye
    Europe/Ulyanovsk
    Europe/Volgograd
    Europe/Vaduz
    Europe/Vienna
    Europe/Bratislava
    Europe/Chisinau
    Europe/Berlin
    Europe/Guernsey
    Europe/Kirov
    Europe/Tirane
    Europe/Sarajevo
    Europe/Budapest
    Europe/Warsaw
    Europe/Dublin
    Europe/Jersey
    Europe/Minsk
    Europe/Moscow
    Europe/Monaco
    Europe/Kiev
    Europe/Ljubljana
    Europe/Kyiv
    Europe/Istanbul
    Europe/Prague
    Europe/Sofia
    Europe/Rome
    Europe/Zurich
    Europe/Madrid
    Europe/Uzhgorod
    Europe/Malta
    Europe/Luxembourg
    Europe/Kaliningrad
    Europe/Paris
    Europe/Vilnius
    Europe/Vatican
    Europe/Copenhagen
    Europe/Belgrade
    Europe/Stockholm
    Europe/Helsinki
    Europe/Lisbon
    Europe/Podgorica
    Europe/Simferopol
    Europe/Andorra
    Europe/Samara
    Europe/Athens
    Europe/London
    Europe/Amsterdam
    Europe/Skopje
    Europe/Saratov
    Europe/Busingen
    Europe/Belfast
    Europe/Nicosia
    Europe/Riga
    Europe/Tiraspol
    Atlantic/Reykjavik
    Atlantic/Jan_Mayen
    Atlantic/St_Helena
    Atlantic/South_Georgia
    Atlantic/Canary
    Atlantic/Stanley
    Atlantic/Cape_Verde
    Atlantic/Bermuda
    Atlantic/Faeroe
    Atlantic/Madeira
    Atlantic/Azores
    Atlantic/Faroe
    America/Merida
    America/Maceio
    America/Monterrey
    America/Jujuy
    America/Costa_Rica
    America/Santiago
    America/Panama
    America/Dawson_Creek
    America/Bahia
    America/Los_Angeles
    America/Danmarkshavn
    America/La_Paz
    America/Iqaluit
    America/Cancun
    America/Rankin_Inlet
    America/Rosario
    America/Grand_Turk
    America/Bahia_Banderas
    America/Kralendijk
    America/Punta_Arenas
    America/Menominee
    America/Moncton
    America/Cordoba
    America/Port-au-Prince
    America/Inuvik
    America/Noronha
    America/Argentina
    America/Argentina/Ushuaia
    America/Argentina/Jujuy
    America/Argentina/Cordoba
    America/Argentina/Tucuman
    America/Argentina/Mendoza
    America/Argentina/Rio_Gallegos
    America/Argentina/San_Juan
    America/Argentina/Buenos_Aires
    America/Argentina/Salta
    America/Argentina/La_Rioja
    America/Argentina/Catamarca
    America/Argentina/San_Luis
    America/Argentina/ComodRivadavia
    America/Miquelon
    America/Coral_Harbour
    America/Curacao
    America/Mendoza
    America/Metlakatla
    America/Sitka
    America/Eirunepe
    America/Fortaleza
    America/Tegucigalpa
    America/Recife
    America/Dominica
    America/Rainy_River
    America/Ciudad_Juarez
    America/St_Barthelemy
    America/Boa_Vista
    America/Thunder_Bay
    America/Buenos_Aires
    America/Resolute
    America/Campo_Grande
    America/Atikokan
    America/St_Vincent
    America/Chihuahua
    America/Godthab
    America/Dawson
    America/Aruba
    America/Winnipeg
    America/El_Salvador
    America/Porto_Velho
    America/Caracas
    America/Managua
    America/Havana
    America/Montevideo
    America/Jamaica
    America/Blanc-Sablon
    America/Guayaquil
    America/Port_of_Spain
    America/Regina
    America/Fort_Nelson
    America/Denver
    America/St_Thomas
    America/Cayenne
    America/Araguaina
    America/Swift_Current
    America/Anchorage
    America/Antigua
    America/Fort_Wayne
    America/Barbados
    America/Belize
    America/Matamoros
    America/Creston
    America/Santarem
    America/Nipigon
    America/Louisville
    America/Santo_Domingo
    America/Halifax
    America/Martinique
    America/Chicago
    America/Hermosillo
    America/Rio_Branco
    America/Lower_Princes
    America/Manaus
    America/Knox_IN
    America/Phoenix
    America/North_Dakota
    America/North_Dakota/New_Salem
    America/North_Dakota/Center
    America/North_Dakota/Beulah
    America/Tijuana
    America/Boise
    America/Bogota
    America/Lima
    America/Montreal
    America/Indianapolis
    America/Yellowknife
    America/Toronto
    America/Catamarca
    America/Goose_Bay
    America/Nuuk
    America/Thule
    America/Asuncion
    America/Kentucky
    America/Kentucky/Monticello
    America/Kentucky/Louisville
    America/Guatemala
    America/Porto_Acre
    America/Edmonton
    America/Nassau
    America/Cayman
    America/Glace_Bay
    America/Indiana
    America/Indiana/Winamac
    America/Indiana/Vevay
    America/Indiana/Vincennes
    America/Indiana/Marengo
    America/Indiana/Petersburg
    America/Indiana/Indianapolis
    America/Indiana/Knox
    America/Indiana/Tell_City
    America/Vancouver
    America/Tortola
    America/Grenada
    America/Mazatlan
    America/Cambridge_Bay
    America/Mexico_City
    America/Paramaribo
    America/Guyana
    America/St_Kitts
    America/Pangnirtung
    America/Montserrat
    America/Atka
    America/Ensenada
    America/Detroit
    America/Shiprock
    America/Whitehorse
    America/Nome
    America/Ojinaga
    America/Juneau
    America/Belem
    America/St_Johns
    America/Anguilla
    America/St_Lucia
    America/Puerto_Rico
    America/New_York
    America/Marigot
    America/Guadeloupe
    America/Sao_Paulo
    America/Adak
    America/Scoresbysund
    America/Virgin
    America/Cuiaba
    America/Yakutat
    America/Santa_Isabel
    Arctic/Longyearbyen
    Pacific/Tarawa
    Pacific/Guam
    Pacific/Gambier
    Pacific/Easter
    Pacific/Galapagos
    Pacific/Chatham
    Pacific/Fakaofo
    Pacific/Majuro
    Pacific/Pitcairn
    Pacific/Pohnpei
    Pacific/Noumea
    Pacific/Bougainville
    Pacific/Tahiti
    Pacific/Wake
    Pacific/Kosrae
    Pacific/Ponape
    Pacific/Niue
    Pacific/Enderbury
    Pacific/Rarotonga
    Pacific/Honolulu
    Pacific/Kiritimati
    Pacific/Nauru
    Pacific/Funafuti
    Pacific/Tongatapu
    Pacific/Guadalcanal
    Pacific/Samoa
    Pacific/Kanton
    Pacific/Palau
    Pacific/Pago_Pago
    Pacific/Kwajalein
    Pacific/Apia
    Pacific/Johnston
    Pacific/Saipan
    Pacific/Efate
    Pacific/Truk
    Pacific/Norfolk
    Pacific/Marquesas
    Pacific/Port_Moresby
    Pacific/Fiji
    Pacific/Wallis
    Pacific/Midway
    Pacific/Auckland
    Pacific/Yap
    Pacific/Chuuk
    Asia/Ashkhabad
    Asia/Manila
    Asia/Amman
    Asia/Thimbu
    Asia/Vientiane
    Asia/Barnaul
    Asia/Sakhalin
    Asia/Irkutsk
    Asia/Baku
    Asia/Ashgabat
    Asia/Saigon
    Asia/Kabul
    Asia/Aqtobe
    Asia/Kuala_Lumpur
    Asia/Khandyga
    Asia/Yekaterinburg
    Asia/Kuching
    Asia/Beirut
    Asia/Tel_Aviv
    Asia/Macao
    Asia/Taipei
    Asia/Riyadh
    Asia/Karachi
    Asia/Pontianak
    Asia/Ust-Nera
    Asia/Jerusalem
    Asia/Chita
    Asia/Rangoon
    Asia/Kuwait
    Asia/Tehran
    Asia/Brunei
    Asia/Harbin
    Asia/Srednekolymsk
    Asia/Ujung_Pandang
    Asia/Thimphu
    Asia/Bangkok
    Asia/Makassar
    Asia/Phnom_Penh
    Asia/Chongqing
    Asia/Jayapura
    Asia/Atyrau
    Asia/Dacca
    Asia/Anadyr
    Asia/Dubai
    Asia/Jakarta
    Asia/Istanbul
    Asia/Aden
    Asia/Choibalsan
    Asia/Macau
    Asia/Almaty
    Asia/Samarkand
    Asia/Kamchatka
    Asia/Yangon
    Asia/Seoul
    Asia/Gaza
    Asia/Dhaka
    Asia/Magadan
    Asia/Kathmandu
    Asia/Calcutta
    Asia/Pyongyang
    Asia/Tokyo
    Asia/Chungking
    Asia/Muscat
    Asia/Vladivostok
    Asia/Ho_Chi_Minh
    Asia/Shanghai
    Asia/Tashkent
    Asia/Omsk
    Asia/Katmandu
    Asia/Ulan_Bator
    Asia/Colombo
    Asia/Hovd
    Asia/Hong_Kong
    Asia/Kolkata
    Asia/Baghdad
    Asia/Dili
    Asia/Qatar
    Asia/Kashgar
    Asia/Hebron
    Asia/Yerevan
    Asia/Tbilisi
    Asia/Aqtau
    Asia/Urumqi
    Asia/Yakutsk
    Asia/Bishkek
    Asia/Qostanay
    Asia/Ulaanbaatar
    Asia/Dushanbe
    Asia/Novosibirsk
    Asia/Novokuznetsk
    Asia/Oral
    Asia/Krasnoyarsk
    Asia/Singapore
    Asia/Nicosia
    Asia/Qyzylorda
    Asia/Bahrain
    Asia/Tomsk
    Asia/Famagusta
    Asia/Damascus
    Australia/Canberra
    Australia/Darwin
    Australia/Lord_Howe
    Australia/West
    Australia/Perth
    Australia/NSW
    Australia/Broken_Hill
    Australia/Melbourne
    Australia/LHI
    Australia/Hobart
    Australia/Lindeman
    Australia/Yancowinna
    Australia/Adelaide
    Australia/Tasmania
    Australia/North
    Australia/Victoria
    Australia/Eucla
    Australia/South
    Australia/Brisbane
    Australia/Currie
    Australia/Sydney
    Australia/ACT
    Australia/Queensland


  • Proxmox install issue cannot see the buttons or install wrong / bad resolution cannot see the entire screen problem solution


    If you are using a hypervisor to test Proxmox (eg. Vbox) then changing the video card/display adapter can fix it.

    For example VboxSVGA causes the issue but switching to VMSVGA fixes it.

     

    For example VboxSVGA causes the issue but switching to VMSVGA fixes it.

     

     

     

     

    If the above is not an option/real server here is how you navigate the installer blindly:

     

    EULA Screen:

    "Tab" * 2

    Hit "Enter"

    Target Hard Disk Screen:

    Hit "Enter"

    *If you need to change the target HDD hit tab twice and then enter to select the disk and then Tab 3 times and enter

    Location and Timezone Screen:

    Hit "Tab" 5 times and then hit "Enter"

    Admin Password and E-mail Address:

    Enter password and then hit "Tab"

    Enter password again and then hit "Tab"

    Enter e-mail and then hit "Tab" twice and "Enter"

    Management and Network Config:

    Enter hostname and hit "Enter"

    Enter IP and hit "Tab"

    Enter CIDR (eg. /24) and hit "Tab"

    Enter Gateway and hit "Enter"

    Enter DNS server and hit "Enter"

    "Tab" Twice

    Hit "Enter"

    Summary Screen

    Hit "Enter" to install

     

    Alternative Way

    Each line applies to the respective screen.

    1. alt + g
    2. alt + n
    3. alt + n
    4. alt + n
    5. alt + n
    6. enter

  • configure.ac:75: error: possibly undefined macro: AC_PROG_LIBTOOL If this token and others are legitimate, please use m4_pattern_allow. See the Autoconf documentation. solution


    configure.ac:75: error: possibly undefined macro: AC_PROG_LIBTOOL
          If this token and others are legitimate, please use m4_pattern_allow.
          See the Autoconf documentation.
    autoreconf: /usr/bin/autoconf failed with exit status: 1
    make: *** [/software/pixman/configure] Error 1
    make: *** Deleting file `/software/pixman/configure'


    yum install libtool

    or on Debian

    apt install libtool


  • Can't exec "aclocal": No such file or directory at /usr/share/autoconf/Autom4te/FileUtils.pm line 326. autoreconf: failed to run aclocal: No such file or directory solution


    autoreconf: Entering directory `.'
    autoreconf: configure.ac: not using Gettext
    autoreconf: running: aclocal  --output=aclocal.m4t
    Can't exec "aclocal": No such file or directory at /usr/share/autoconf/Autom4te/FileUtils.pm line 326.
    autoreconf: failed to run aclocal: No such file or directory
    make: *** [/software/pixman/configure] Error 1

     

    Just install automake:


    yum install automake

    or on Debian

    apt install automake


  • /bin/sh: autoreconf: command not found solution


    This means the autoconf package is not installed, so we'll install it:

    /bin/sh: autoreconf: command not found
     

    yum install autoconf

    On Debian

    apt install autoconf


  • glib-2.0 required to compile QEMU solution


    ./configure
    glib-2.0 required to compile QEMU


    yum install glib2 glib2-devel

    or on Debian/Ubuntu based:

    apt install libglib2 libglib2-dev


  • How To Upgrade Debian 8,9,10 to Debian 12 Bookworm


    Step 1.) Upgrade to Debian 11 first

    The process to go to Debian 12 is not as smooth as 11, when trying to upgrade from Debian 10.  In fact, it doesn't work directly, so you'll first need to follow this guide to update to Debian 11, reboot and come back here if successful.

    Step 2.) Update sources.list

    Update your /etc/apt/sources.list like this:

    deb http://deb.debian.org/debian bookworm main
    deb-src http://deb.debian.org/debian bookworm main

    deb http://deb.debian.org/debian-security/ bookworm-security main
    deb-src http://deb.debian.org/debian-security/ bookworm-security main

    deb http://deb.debian.org/debian bookworm-updates main
    deb-src http://deb.debian.org/debian bookworm-updates main

    Step 3.) Add The GPG Keys

     

    How To Get the Bookworm GPG Keys:

    A list for all Debian keys is here: https://ftp-master.debian.org/keys.html

    wget https://ftp-master.debian.org/keys/archive-key-12.asc -P /etc/apt/trusted.gpg.d

    wget https://ftp-master.debian.org/keys/archive-key-12-security.asc -P /etc/apt/trusted.gpg.d

    Step 4.) Update apt & Upgrade

    apt update

    apt dist-upgrade

    After you are successful, you should reboot and confirm it looks good like this:

    root@Debian10UpgradeTestAgain1111:/etc/apt# apt dist-upgrade
    Reading package lists... Done
    Building dependency tree... Done
    Reading state information... Done
    Calculating upgrade... Done
    The following packages were automatically installed and are no longer required:
      bsdmainutils libbpf0 libcbor0 libdns-export1110 libffi7 libisc-export1105 libldap-2.4-2 libmpdec2 libmpdec3 libperl5.32 libprocps8 libpython3.7-minimal libpython3.7-stdlib libpython3.9-minimal
      libpython3.9-stdlib libreadline7 libusb-0.1-4 perl-modules-5.32 python3.7 python3.7-minimal python3.9 python3.9-minimal usb.ids
    Use 'apt autoremove' to remove them.
    The following packages will be REMOVED:
      libsemanage1
    The following NEW packages will be installed:
      cron-daemon-common dbus-bin dbus-daemon dbus-session-bus-common dbus-system-bus-common dbus-user-session gcc-12-base libbpf1 libcbor0.8 libffi8 libfile-find-rule-perl libldap-2.5-0 libnumber-compare-perl
      libperl5.36 libproc2-0 libpython3.11-minimal libpython3.11-stdlib libsemanage2 libsepol2 libssl3 libsystemd-shared libtext-glob-perl linux-image-6.1.0-13-amd64 perl-modules-5.36 python3-charset-normalizer
      python3-pyparsing python3.11 python3.11-minimal usrmerge util-linux-extra zstd
    The following packages will be upgraded:
      adduser apparmor apt apt-utils base-files base-passwd bash bash-completion bsdextrautils bsdmainutils bsdutils busybox bzip2 ca-certificates console-setup console-setup-linux coreutils cpio cron dash dbus
      debconf debconf-i18n debian-archive-keyring debianutils diffutils discover discover-data distro-info-data dmidecode dmsetup dpkg e2fsprogs eject fdisk file findutils gdbm-l10n gettext-base gpgv grep
      grub-common grub-pc grub-pc-bin grub2-common gzip hostname ifupdown init init-system-helpers initramfs-tools initramfs-tools-core installation-report iproute2 iptables iputils-ping isc-dhcp-client
      isc-dhcp-common kbd keyboard-configuration klibc-utils kmod less libacl1 libapparmor1 libapt-pkg6.0 libargon2-1 libattr1 libaudit-common libaudit1 libblkid1 libbrotli1 libbsd0 libbz2-1.0 libc-bin
      libc-l10n libc6 libcap-ng0 libcap2 libcap2-bin libcom-err2 libcrypt1 libcryptsetup12 libcurl3-gnutls libdb5.3 libdbus-1-3 libdebconfclient0 libdevmapper1.02.1 libdiscover2 libedit2 libelf1 libestr0
      libexpat1 libext2fs2 libfastjson4 libfdisk1 libfido2-1 libfreetype6 libfuse2 libgcc-s1 libgcrypt20 libgdbm-compat4 libgdbm6 libgmp10 libgnutls30 libgpg-error0 libgssapi-krb5-2 libhogweed6 libidn2-0
      libip4tc2 libip6tc2 libiptc0 libjson-c5 libk5crypto3 libkeyutils1 libklibc libkmod2 libkrb5-3 libkrb5support0 libldap-common liblocale-gettext-perl liblognorm5 liblz4-1 liblzma5 libmagic-mgc libmagic1
      libmd0 libmount1 libncurses6 libncursesw6 libnetfilter-conntrack3 libnettle8 libnewt0.52 libnfnetlink0 libnftnl11 libnghttp2-14 libnss-systemd libp11-kit0 libpam-modules libpam-modules-bin libpam-runtime
      libpam-systemd libpam0g libpci3 libpcre2-8-0 libpcre3 libpng16-16 libpopt0 libpsl5 libpython3-stdlib libreadline8 libsasl2-2 libsasl2-modules-db libseccomp2 libselinux1 libsemanage-common libslang2
      libsmartcols1 libsqlite3-0 libss2 libssh2-1 libstdc++6 libsystemd0 libtasn1-6 libtext-charwidth-perl libtext-iconv-perl libtext-wrapi18n-perl libtinfo6 libtirpc-common libtirpc3 libudev1 libunistring2
      libusb-1.0-0 libuuid1 libwrap0 libx11-6 libx11-data libxcb1 libxext6 libxmuu1 libxtables12 libxxhash0 libzstd1 linux-base linux-image-amd64 locales login logrotate logsave lsb-base mailcap manpages mawk
      media-types mount nano ncal ncurses-base ncurses-bin ncurses-term netbase openssh-client openssh-server openssh-sftp-server openssl os-prober passwd pci.ids pciutils perl perl-base procps
      python-apt-common python3 python3-apt python3-certifi python3-chardet python3-debian python3-debianbts python3-httplib2 python3-idna python3-minimal python3-pkg-resources python3-pycurl
      python3-pysimplesoap python3-reportbug python3-requests python3-six python3-urllib3 readline-common reportbug rsyslog runit-helper sed sensible-utils systemd systemd-sysv systemd-timesyncd sysvinit-utils
      tar tasksel tasksel-data tzdata ucf udev usb.ids usbutils util-linux vim-common vim-tiny wget whiptail xauth xkb-data xxd xz-utils zlib1g
    257 upgraded, 31 newly installed, 1 to remove and 0 not upgraded.
    Need to get 164 MB of archives.
    After this operation, 500 MB of additional disk space will be used.
    Do you want to continue? [Y/n] y
    Get:1 http://deb.debian.org/debian bookworm/main amd64 base-files amd64 12.4+deb12u2 [70.7 kB]
    Get:2 http://deb.debian.org/debian-security bookworm-security/main amd64 libc-l10n all 2.36-9+deb12u3 [674 kB]
    Get:3 http://deb.debian.org/debian-security bookworm-security/main amd64 locales all 2.36-9+deb12u3 [3,904 kB]
    Get:4 http://deb.debian.org/debian-security bookworm-security/main amd64 libc6 amd64 2.36-9+deb12u3 [2,755 kB]
    Get:5 http://deb.debian.org/debian-security bookworm-security/main amd64 libc-bin amd64 2.36-9+deb12u3 [606 kB]
    Get:6 http://deb.debian.org/debian bookworm/main amd64 perl-modules-5.36 all 5.36.0-7 [2,815 kB]
    Get:7 http://deb.debian.org/debian bookworm/main amd64 libgdbm6 amd64 1.23-3 [72.2 kB]
    Get:8 http://deb.debian.org/debian bookworm/main amd64 libperl5.36 amd64 5.36.0-7 [4,218 kB]
    Get:9 http://deb.debian.org/debian bookworm/main amd64 perl amd64 5.36.0-7 [239 kB]
    Get:10 http://deb.debian.org/debian bookworm/main amd64 perl-base amd64 5.36.0-7 [1,608 kB]
    Get:11 http://deb.debian.org/debian bookworm/main amd64 liblocale-gettext-perl amd64 1.07-5 [15.4 kB]
    Get:12 http://deb.debian.org/debian bookworm/main amd64 libtext-iconv-perl amd64 1.7-8 [14.5 kB]
    Get:13 http://deb.debian.org/debian bookworm/main amd64 libtext-charwidth-perl amd64 0.04-11 [9,496 B]
    Get:14 http://deb.debian.org/debian bookworm/main amd64 bzip2 amd64 1.0.8-5+b1 [49.8 kB]
    Get:15 http://deb.debian.org/debian bookworm/main amd64 libbz2-1.0 amd64 1.0.8-5+b1 [47.3 kB]
    Get:16 http://deb.debian.org/debian bookworm/main amd64 libaudit-common all 1:3.0.9-1 [10.4 kB]
    Get:17 http://deb.debian.org/debian bookworm/main amd64 libcap-ng0 amd64 0.8.3-1+b3 [17.1 kB]
    Get:18 http://deb.debian.org/debian bookworm/main amd64 libaudit1 amd64 1:3.0.9-1 [46.8 kB]
    Get:19 http://deb.debian.org/debian bookworm/main amd64 libpam0g amd64 1.5.2-6+deb12u1 [92.0 kB]
    Get:20 http://deb.debian.org/debian bookworm/main amd64 libcrypt1 amd64 1:4.4.33-2 [89.5 kB]
    Get:21 http://deb.debian.org/debian bookworm/main amd64 libdb5.3 amd64 5.3.28+dfsg2-1 [697 kB]
    Get:22 http://deb.debian.org/debian bookworm/main amd64 libgdbm-compat4 amd64 1.23-3 [48.2 kB]
    Get:23 http://deb.debian.org/debian bookworm/main amd64 zlib1g amd64 1:1.2.13.dfsg-1 [86.7 kB]
    Get:24 http://deb.debian.org/debian bookworm/main amd64 libtext-wrapi18n-perl all 0.06-10 [8,808 B]
    Get:25 http://deb.debian.org/debian bookworm/main amd64 debconf-i18n all 1.5.82 [208 kB]
    Get:26 http://deb.debian.org/debian bookworm/main amd64 debconf all 1.5.82 [121 kB]
    Get:27 http://deb.debian.org/debian bookworm/main amd64 gcc-12-base amd64 12.2.0-14 [37.5 kB]
    Get:28 http://deb.debian.org/debian bookworm/main amd64 libgcc-s1 amd64 12.2.0-14 [49.9 kB]
    Get:29 http://deb.debian.org/debian bookworm/main amd64 libsemanage-common all 3.4-1 [21.6 kB]
    Get:30 http://deb.debian.org/debian bookworm/main amd64 libselinux1 amd64 3.4-1+b6 [73.7 kB]
    Get:31 http://deb.debian.org/debian bookworm/main amd64 libsepol2 amd64 3.4-2.1 [276 kB]
    Get:32 http://deb.debian.org/debian bookworm/main amd64 libsemanage2 amd64 3.4-1+b5 [89.9 kB]
    Get:33 http://deb.debian.org/debian bookworm/main amd64 passwd amd64 1:4.13+dfsg1-1+b1 [972 kB]
    Get:34 http://deb.debian.org/debian bookworm/main amd64 libpcre2-8-0 amd64 10.42-1 [261 kB]
    Get:35 http://deb.debian.org/debian bookworm/main amd64 libpam-modules-bin amd64 1.5.2-6+deb12u1 [75.6 kB]
    Get:36 http://deb.debian.org/debian bookworm/main amd64 libpam-modules amd64 1.5.2-6+deb12u1 [291 kB]
    Get:37 http://deb.debian.org/debian bookworm/main amd64 adduser all 3.134 [183 kB]
    Get:38 http://deb.debian.org/debian bookworm/main amd64 libelf1 amd64 0.188-2.1 [174 kB]
    Get:39 http://deb.debian.org/debian bookworm/main amd64 libbpf1 amd64 1:1.1.0-1 [145 kB]
    Get:40 http://deb.debian.org/debian bookworm/main amd64 libmd0 amd64 1.0.4-2 [29.5 kB]
    Get:41 http://deb.debian.org/debian bookworm/main amd64 libbsd0 amd64 0.11.7-2 [117 kB]
    Get:42 http://deb.debian.org/debian bookworm/main amd64 libcap2 amd64 1:2.66-4 [27.0 kB]
    Get:43 http://deb.debian.org/debian bookworm/main amd64 libtirpc-common all 1.3.3+ds-1 [14.0 kB]
    Get:44 http://deb.debian.org/debian-security bookworm-security/main amd64 libssl3 amd64 3.0.11-1~deb12u2 [2,019 kB]
    Get:45 http://deb.debian.org/debian bookworm/main amd64 libcom-err2 amd64 1.47.0-2 [19.8 kB]
    Get:46 http://deb.debian.org/debian bookworm/main amd64 libkeyutils1 amd64 1.6.3-2 [8,808 B]
    Get:47 http://deb.debian.org/debian bookworm/main amd64 libk5crypto3 amd64 1.20.1-2+deb12u1 [78.9 kB]
    Get:48 http://deb.debian.org/debian bookworm/main amd64 libgssapi-krb5-2 amd64 1.20.1-2+deb12u1 [134 kB]
    Get:49 http://deb.debian.org/debian bookworm/main amd64 libkrb5support0 amd64 1.20.1-2+deb12u1 [32.4 kB]
    Get:50 http://deb.debian.org/debian bookworm/main amd64 libkrb5-3 amd64 1.20.1-2+deb12u1 [332 kB]
    Get:51 http://deb.debian.org/debian bookworm/main amd64 libtirpc3 amd64 1.3.3+ds-1 [85.2 kB]
    Get:52 http://deb.debian.org/debian bookworm/main amd64 libiptc0 amd64 1.8.9-2 [7,032 B]
    Get:53 http://deb.debian.org/debian bookworm/main amd64 libxtables12 amd64 1.8.9-2 [30.8 kB]
    Get:54 http://deb.debian.org/debian bookworm/main amd64 iptables amd64 1.8.9-2 [360 kB]
    Get:55 http://deb.debian.org/debian bookworm/main amd64 libip4tc2 amd64 1.8.9-2 [19.0 kB]
    Get:56 http://deb.debian.org/debian bookworm/main amd64 libip6tc2 amd64 1.8.9-2 [19.4 kB]
    Get:57 http://deb.debian.org/debian bookworm/main amd64 libnfnetlink0 amd64 1.0.2-2 [15.1 kB]
    Get:58 http://deb.debian.org/debian bookworm/main amd64 netbase all 6.4 [12.8 kB]
    Get:59 http://deb.debian.org/debian bookworm/main amd64 libnetfilter-conntrack3 amd64 1.0.9-3 [40.7 kB]
    Get:60 http://deb.debian.org/debian bookworm/main amd64 libnftnl11 amd64 1.2.4-2 [61.6 kB]
    Get:61 http://deb.debian.org/debian bookworm/main amd64 libcap2-bin amd64 1:2.66-4 [34.7 kB]
    Get:62 http://deb.debian.org/debian bookworm/main amd64 iproute2 amd64 6.1.0-3 [1,046 kB]
    Get:63 http://deb.debian.org/debian bookworm/main amd64 ifupdown amd64 0.8.41 [62.1 kB]
    Get:64 http://deb.debian.org/debian bookworm/main amd64 debianutils amd64 5.7-0.5~deb12u1 [103 kB]
    Get:65 http://deb.debian.org/debian bookworm/main amd64 bash amd64 5.2.15-2+b2 [1,491 kB]
    Get:66 http://deb.debian.org/debian bookworm/main amd64 bsdutils amd64 1:2.38.1-5+b1 [94.4 kB]
    Get:67 http://deb.debian.org/debian bookworm/main amd64 libgmp10 amd64 2:6.2.1+dfsg1-1.1 [563 kB]
    Get:68 http://deb.debian.org/debian bookworm/main amd64 coreutils amd64 9.1-1 [2,897 kB]
    Get:69 http://deb.debian.org/debian bookworm/main amd64 liblzma5 amd64 5.4.1-0.2 [205 kB]
    Get:70 http://deb.debian.org/debian bookworm/main amd64 libzstd1 amd64 1.5.4+dfsg2-5 [290 kB]
    Get:71 http://deb.debian.org/debian bookworm/main amd64 tar amd64 1.34+dfsg-1.2 [836 kB]
    Get:72 http://deb.debian.org/debian bookworm/main amd64 dpkg amd64 1.21.22 [1,567 kB]
    Get:73 http://deb.debian.org/debian bookworm/main amd64 dash amd64 0.5.12-2 [91.8 kB]
    Get:74 http://deb.debian.org/debian bookworm/main amd64 diffutils amd64 1:3.8-4 [352 kB]
    Get:75 http://deb.debian.org/debian bookworm/main amd64 findutils amd64 4.9.0-4 [636 kB]
    Get:76 http://deb.debian.org/debian bookworm/main amd64 grep amd64 3.8-5 [421 kB]
    Get:77 http://deb.debian.org/debian bookworm/main amd64 gzip amd64 1.12-1 [140 kB]
    Get:78 http://deb.debian.org/debian bookworm/main amd64 hostname amd64 3.23+nmu1 [10.5 kB]
    Get:79 http://deb.debian.org/debian bookworm/main amd64 login amd64 1:4.13+dfsg1-1+b1 [616 kB]
    Get:80 http://deb.debian.org/debian bookworm/main amd64 libncurses6 amd64 6.4-4 [103 kB]
    Get:81 http://deb.debian.org/debian bookworm/main amd64 libncursesw6 amd64 6.4-4 [134 kB]
    Get:82 http://deb.debian.org/debian bookworm/main amd64 libtinfo6 amd64 6.4-4 [331 kB]
    Get:83 http://deb.debian.org/debian bookworm/main amd64 ncurses-bin amd64 6.4-4 [421 kB]
    Get:84 http://deb.debian.org/debian bookworm/main amd64 sed amd64 4.9-1 [329 kB]
    Get:85 http://deb.debian.org/debian bookworm/main amd64 libblkid1 amd64 2.38.1-5+b1 [147 kB]
    Get:86 http://deb.debian.org/debian bookworm/main amd64 libmount1 amd64 2.38.1-5+b1 [166 kB]
    Get:87 http://deb.debian.org/debian bookworm/main amd64 libsmartcols1 amd64 2.38.1-5+b1 [107 kB]
    Get:88 http://deb.debian.org/debian bookworm/main amd64 libfdisk1 amd64 2.38.1-5+b1 [194 kB]
    Get:89 http://deb.debian.org/debian bookworm/main amd64 fdisk amd64 2.38.1-5+b1 [142 kB]
    Get:90 http://deb.debian.org/debian bookworm/main amd64 util-linux-extra amd64 2.38.1-5+b1 [111 kB]
    Get:91 http://deb.debian.org/debian bookworm/main amd64 util-linux amd64 2.38.1-5+b1 [1,177 kB]
    Get:92 http://deb.debian.org/debian bookworm/main amd64 libuuid1 amd64 2.38.1-5+b1 [28.8 kB]
    Get:93 http://deb.debian.org/debian bookworm/main amd64 readline-common all 8.2-1.3 [69.0 kB]
    Get:94 http://deb.debian.org/debian bookworm/main amd64 libreadline8 amd64 8.2-1.3 [166 kB]
    Get:95 http://deb.debian.org/debian bookworm/main amd64 libgpg-error0 amd64 1.46-1 [76.9 kB]
    Get:96 http://deb.debian.org/debian bookworm/main amd64 libgcrypt20 amd64 1.10.1-3 [696 kB]
    Get:97 http://deb.debian.org/debian bookworm/main amd64 libstdc++6 amd64 12.2.0-14 [614 kB]
    Get:98 http://deb.debian.org/debian bookworm/main amd64 liblz4-1 amd64 1.9.4-1 [62.9 kB]
    Get:99 http://deb.debian.org/debian bookworm/main amd64 libargon2-1 amd64 0~20171227-0.3+deb12u1 [19.4 kB]
    Get:100 http://deb.debian.org/debian bookworm/main amd64 dmsetup amd64 2:1.02.185-2 [82.0 kB]
    Get:101 http://deb.debian.org/debian bookworm/main amd64 libacl1 amd64 2.3.1-3 [31.5 kB]
    Get:102 http://deb.debian.org/debian bookworm/main amd64 kmod amd64 30+20221128-1 [95.2 kB]
    Get:103 http://deb.debian.org/debian bookworm/main amd64 libkmod2 amd64 30+20221128-1 [57.9 kB]
    Get:104 http://deb.debian.org/debian bookworm/main amd64 less amd64 590-2 [131 kB]
    Get:105 http://deb.debian.org/debian bookworm/main amd64 libnss-systemd amd64 252.17-1~deb12u1 [163 kB]
    Get:106 http://deb.debian.org/debian bookworm/main amd64 systemd-timesyncd amd64 252.17-1~deb12u1 [62.9 kB]
    Get:107 http://deb.debian.org/debian bookworm/main amd64 libpam-systemd amd64 252.17-1~deb12u1 [224 kB]
    Get:108 http://deb.debian.org/debian bookworm/main amd64 systemd amd64 252.17-1~deb12u1 [3,029 kB]
    Get:109 http://deb.debian.org/debian bookworm/main amd64 udev amd64 252.17-1~deb12u1 [1,643 kB]
    Get:110 http://deb.debian.org/debian bookworm/main amd64 libudev1 amd64 252.17-1~deb12u1 [108 kB]
    Get:111 http://deb.debian.org/debian bookworm/main amd64 libdevmapper1.02.1 amd64 2:1.02.185-2 [133 kB]
    Get:112 http://deb.debian.org/debian bookworm/main amd64 libjson-c5 amd64 0.16-2 [44.1 kB]
    Get:113 http://deb.debian.org/debian bookworm/main amd64 libcryptsetup12 amd64 2:2.6.1-4~deb12u1 [223 kB]
    Get:114 http://deb.debian.org/debian bookworm/main amd64 libapparmor1 amd64 3.0.8-3 [41.2 kB]
    Get:115 http://deb.debian.org/debian bookworm/main amd64 libseccomp2 amd64 2.5.4-1+b3 [46.6 kB]
    Get:116 http://deb.debian.org/debian bookworm/main amd64 libsystemd-shared amd64 252.17-1~deb12u1 [1,691 kB]
    Get:117 http://deb.debian.org/debian bookworm/main amd64 libpam-runtime all 1.5.2-6+deb12u1 [161 kB]
    Get:118 http://deb.debian.org/debian bookworm/main amd64 dbus amd64 1.14.10-1~deb12u1 [97.4 kB]
    Get:119 http://deb.debian.org/debian bookworm/main amd64 libdbus-1-3 amd64 1.14.10-1~deb12u1 [201 kB]
    Get:120 http://deb.debian.org/debian bookworm/main amd64 dbus-bin amd64 1.14.10-1~deb12u1 [105 kB]
    Get:121 http://deb.debian.org/debian bookworm/main amd64 dbus-session-bus-common all 1.14.10-1~deb12u1 [78.2 kB]
    Get:122 http://deb.debian.org/debian bookworm/main amd64 libexpat1 amd64 2.5.0-1 [99.3 kB]
    Get:123 http://deb.debian.org/debian bookworm/main amd64 dbus-daemon amd64 1.14.10-1~deb12u1 [184 kB]
    Get:124 http://deb.debian.org/debian bookworm/main amd64 dbus-system-bus-common all 1.14.10-1~deb12u1 [79.3 kB]
    Get:125 http://deb.debian.org/debian bookworm/main amd64 systemd-sysv amd64 252.17-1~deb12u1 [41.8 kB]
    Get:126 http://deb.debian.org/debian bookworm/main amd64 libffi8 amd64 3.4.4-1 [22.9 kB]
    Get:127 http://deb.debian.org/debian bookworm/main amd64 libp11-kit0 amd64 0.24.1-2 [345 kB]
    Get:128 http://deb.debian.org/debian bookworm/main amd64 mount amd64 2.38.1-5+b1 [134 kB]
    Get:129 http://deb.debian.org/debian bookworm/main amd64 libsystemd0 amd64 252.17-1~deb12u1 [331 kB]
    Get:130 http://deb.debian.org/debian bookworm/main amd64 libxxhash0 amd64 0.8.1-1 [27.6 kB]
    Get:131 http://deb.debian.org/debian bookworm/main amd64 libapt-pkg6.0 amd64 2.6.1 [907 kB]
    Get:132 http://deb.debian.org/debian bookworm/main amd64 libnettle8 amd64 3.8.1-2 [288 kB]
    Get:133 http://deb.debian.org/debian bookworm/main amd64 libhogweed6 amd64 3.8.1-2 [328 kB]
    Get:134 http://deb.debian.org/debian bookworm/main amd64 libunistring2 amd64 1.0-2 [437 kB]
    Get:135 http://deb.debian.org/debian bookworm/main amd64 libidn2-0 amd64 2.3.3-1+b1 [124 kB]
    Get:136 http://deb.debian.org/debian bookworm/main amd64 libtasn1-6 amd64 4.19.0-2 [56.6 kB]
    Get:137 http://deb.debian.org/debian bookworm/main amd64 libgnutls30 amd64 3.7.9-2 [1,403 kB]
    Get:138 http://deb.debian.org/debian bookworm/main amd64 apt amd64 2.6.1 [1,373 kB]
    Get:139 http://deb.debian.org/debian bookworm/main amd64 apt-utils amd64 2.6.1 [309 kB]
    Get:140 http://deb.debian.org/debian bookworm/main amd64 gpgv amd64 2.2.40-1.1 [648 kB]
    Get:141 http://deb.debian.org/debian bookworm/main amd64 debian-archive-keyring all 2023.3+deb12u1 [161 kB]
    Get:142 http://deb.debian.org/debian bookworm/main amd64 libdebconfclient0 amd64 0.270 [9,900 B]
    Get:143 http://deb.debian.org/debian bookworm/main amd64 base-passwd amd64 3.6.1 [60.0 kB]
    Get:144 http://deb.debian.org/debian bookworm/main amd64 libnumber-compare-perl all 0.03-3 [6,332 B]
    Get:145 http://deb.debian.org/debian bookworm/main amd64 libtext-glob-perl all 0.11-3 [7,676 B]
    Get:146 http://deb.debian.org/debian bookworm/main amd64 libfile-find-rule-perl all 0.34-3 [26.6 kB]
    Get:147 http://deb.debian.org/debian bookworm/main amd64 usrmerge all 35 [12.5 kB]
    Get:148 http://deb.debian.org/debian bookworm/main amd64 init-system-helpers all 1.65.2 [49.8 kB]
    Get:149 http://deb.debian.org/debian bookworm/main amd64 vim-tiny amd64 2:9.0.1378-2 [720 kB]
    Get:150 http://deb.debian.org/debian bookworm/main amd64 xxd amd64 2:9.0.1378-2 [83.7 kB]
    Get:151 http://deb.debian.org/debian bookworm/main amd64 vim-common all 2:9.0.1378-2 [124 kB]
    Get:152 http://deb.debian.org/debian bookworm/main amd64 ncurses-base all 6.4-4 [261 kB]
    Get:153 http://deb.debian.org/debian bookworm/main amd64 xkb-data all 2.35.1-1 [764 kB]
    Get:154 http://deb.debian.org/debian bookworm/main amd64 kbd amd64 2.5.1-1+b1 [335 kB]
    Get:155 http://deb.debian.org/debian bookworm/main amd64 console-setup-linux all 1.221 [1,882 kB]
    Get:156 http://deb.debian.org/debian bookworm/main amd64 console-setup all 1.221 [102 kB]
    Get:157 http://deb.debian.org/debian bookworm/main amd64 keyboard-configuration all 1.221 [416 kB]
    Get:158 http://deb.debian.org/debian bookworm/main amd64 sysvinit-utils amd64 3.06-4 [31.0 kB]
    Get:159 http://deb.debian.org/debian bookworm/main amd64 lsb-base all 11.6 [4,584 B]
    Get:160 http://deb.debian.org/debian bookworm/main amd64 logsave amd64 1.47.0-2 [19.6 kB]
    Get:161 http://deb.debian.org/debian bookworm/main amd64 klibc-utils amd64 2.0.12-1 [94.9 kB]
    Get:162 http://deb.debian.org/debian bookworm/main amd64 busybox amd64 1:1.35.0-4+b3 [452 kB]
    Get:163 http://deb.debian.org/debian bookworm/main amd64 initramfs-tools all 0.142 [72.9 kB]
    Get:164 http://deb.debian.org/debian bookworm/main amd64 initramfs-tools-core all 0.142 [105 kB]
    Get:165 http://deb.debian.org/debian bookworm/main amd64 libext2fs2 amd64 1.47.0-2 [205 kB]
    Get:166 http://deb.debian.org/debian bookworm/main amd64 e2fsprogs amd64 1.47.0-2 [571 kB]
    Get:167 http://deb.debian.org/debian bookworm/main amd64 libklibc amd64 2.0.12-1 [44.2 kB]
    Get:168 http://deb.debian.org/debian bookworm/main amd64 linux-base all 4.9 [31.8 kB]
    Get:169 http://deb.debian.org/debian bookworm/main amd64 cpio amd64 2.13+dfsg-7.1 [245 kB]
    Get:170 http://deb.debian.org/debian bookworm/main amd64 cron-daemon-common all 3.0pl1-162 [12.7 kB]
    Get:171 http://deb.debian.org/debian bookworm/main amd64 cron amd64 3.0pl1-162 [73.1 kB]
    Get:172 http://deb.debian.org/debian bookworm/main amd64 sensible-utils all 0.0.17+nmu1 [19.0 kB]
    Get:173 http://deb.debian.org/debian bookworm/main amd64 init amd64 1.65.2 [16.8 kB]
    Get:174 http://deb.debian.org/debian bookworm/main amd64 libedit2 amd64 3.1-20221030-2 [93.0 kB]
    Get:175 http://deb.debian.org/debian bookworm/main amd64 libcbor0.8 amd64 0.8.0-2+b1 [27.4 kB]
    Get:176 http://deb.debian.org/debian bookworm/main amd64 libfido2-1 amd64 1.12.0-2+b1 [77.2 kB]
    Get:177 http://deb.debian.org/debian bookworm/main amd64 openssh-sftp-server amd64 1:9.2p1-2+deb12u1 [65.8 kB]
    Get:178 http://deb.debian.org/debian bookworm/main amd64 openssh-server amd64 1:9.2p1-2+deb12u1 [455 kB]
    Get:179 http://deb.debian.org/debian bookworm/main amd64 openssh-client amd64 1:9.2p1-2+deb12u1 [989 kB]
    Get:180 http://deb.debian.org/debian bookworm/main amd64 libproc2-0 amd64 2:4.0.2-3 [62.8 kB]
    Get:181 http://deb.debian.org/debian bookworm/main amd64 procps amd64 2:4.0.2-3 [709 kB]
    Get:182 http://deb.debian.org/debian bookworm/main amd64 ucf all 3.0043+nmu1 [55.2 kB]
    Get:183 http://deb.debian.org/debian bookworm/main amd64 runit-helper all 2.15.2 [6,520 B]
    Get:184 http://deb.debian.org/debian bookworm/main amd64 libwrap0 amd64 7.6.q-32 [54.9 kB]
    Get:185 http://deb.debian.org/debian bookworm/main amd64 libpython3.11-minimal amd64 3.11.2-6 [813 kB]
    Get:186 http://deb.debian.org/debian bookworm/main amd64 python3.11-minimal amd64 3.11.2-6 [2,064 kB]
    Get:187 http://deb.debian.org/debian bookworm/main amd64 python3-pycurl amd64 7.45.2-3 [67.7 kB]
    Get:188 http://deb.debian.org/debian bookworm/main amd64 python3-apt amd64 2.6.0 [159 kB]
    Get:189 http://deb.debian.org/debian bookworm/main amd64 python3-minimal amd64 3.11.2-1+b1 [26.3 kB]
    Get:190 http://deb.debian.org/debian bookworm/main amd64 python3 amd64 3.11.2-1+b1 [26.3 kB]
    Get:191 http://deb.debian.org/debian bookworm/main amd64 libbrotli1 amd64 1.0.9-2+b6 [275 kB]
    Get:192 http://deb.debian.org/debian bookworm/main amd64 libsasl2-modules-db amd64 2.1.28+dfsg-10 [20.3 kB]
    Get:193 http://deb.debian.org/debian bookworm/main amd64 libsasl2-2 amd64 2.1.28+dfsg-10 [59.7 kB]
    Get:194 http://deb.debian.org/debian bookworm/main amd64 libldap-2.5-0 amd64 2.5.13+dfsg-5 [183 kB]
    Get:195 http://deb.debian.org/debian-security bookworm-security/main amd64 libnghttp2-14 amd64 1.52.0-1+deb12u1 [72.4 kB]
    Get:196 http://deb.debian.org/debian bookworm/main amd64 libpsl5 amd64 0.21.2-1 [58.7 kB]
    Get:197 http://deb.debian.org/debian bookworm/main amd64 libssh2-1 amd64 1.10.0-3+b1 [179 kB]
    Get:198 http://deb.debian.org/debian-security bookworm-security/main amd64 libcurl3-gnutls amd64 7.88.1-10+deb12u4 [385 kB]
    Get:199 http://deb.debian.org/debian bookworm/main amd64 python-apt-common all 2.6.0 [64.3 kB]
    Get:200 http://deb.debian.org/debian bookworm/main amd64 distro-info-data all 0.58 [5,848 B]
    Get:201 http://deb.debian.org/debian bookworm/main amd64 media-types all 10.0.0 [26.1 kB]
    Get:202 http://deb.debian.org/debian bookworm/main amd64 libsqlite3-0 amd64 3.40.1-2 [837 kB]
    Get:203 http://deb.debian.org/debian bookworm/main amd64 libpython3.11-stdlib amd64 3.11.2-6 [1,796 kB]
    Get:204 http://deb.debian.org/debian bookworm/main amd64 python3.11 amd64 3.11.2-6 [572 kB]
    Get:205 http://deb.debian.org/debian bookworm/main amd64 libpython3-stdlib amd64 3.11.2-1+b1 [9,312 B]
    Get:206 http://deb.debian.org/debian bookworm/main amd64 tasksel-data all 3.73 [18.0 kB]
    Get:207 http://deb.debian.org/debian bookworm/main amd64 tasksel all 3.73 [51.2 kB]
    Get:208 http://deb.debian.org/debian bookworm/main amd64 libattr1 amd64 1:2.5.1-4 [22.2 kB]
    Get:209 http://deb.debian.org/debian bookworm/main amd64 libpcre3 amd64 2:8.39-15 [341 kB]
    Get:210 http://deb.debian.org/debian bookworm/main amd64 mawk amd64 1.3.4.20200120-3.1 [119 kB]
    Get:211 http://deb.debian.org/debian bookworm/main amd64 tzdata all 2023c-5 [296 kB]
    Get:212 http://deb.debian.org/debian bookworm/main amd64 dmidecode amd64 3.4-1 [68.8 kB]
    Get:213 http://deb.debian.org/debian bookworm/main amd64 iputils-ping amd64 3:20221126-1 [47.1 kB]
    Get:214 http://deb.debian.org/debian bookworm/main amd64 isc-dhcp-client amd64 4.4.3-P1-2 [1,096 kB]
    Get:215 http://deb.debian.org/debian bookworm/main amd64 isc-dhcp-common amd64 4.4.3-P1-2 [117 kB]
    Get:216 http://deb.debian.org/debian bookworm/main amd64 libpopt0 amd64 1.19+dfsg-1 [43.3 kB]
    Get:217 http://deb.debian.org/debian bookworm/main amd64 logrotate amd64 3.21.0-1 [62.1 kB]
    Get:218 http://deb.debian.org/debian bookworm/main amd64 nano amd64 7.2-1 [689 kB]
    Get:219 http://deb.debian.org/debian bookworm/main amd64 ncurses-term all 6.4-4 [501 kB]
    Get:220 http://deb.debian.org/debian bookworm/main amd64 libslang2 amd64 2.3.3-3 [554 kB]
    Get:221 http://deb.debian.org/debian bookworm/main amd64 libnewt0.52 amd64 0.52.23-1+b1 [59.2 kB]
    Get:222 http://deb.debian.org/debian bookworm/main amd64 whiptail amd64 0.52.23-1+b1 [24.2 kB]
    Get:223 http://deb.debian.org/debian bookworm/main amd64 bash-completion all 1:2.11-6 [234 kB]
    Get:224 http://deb.debian.org/debian-security bookworm-security/main amd64 openssl amd64 3.0.11-1~deb12u2 [1,419 kB]
    Get:225 http://deb.debian.org/debian bookworm/main amd64 ca-certificates all 20230311 [153 kB]
    Get:226 http://deb.debian.org/debian bookworm/main amd64 file amd64 1:5.44-3 [42.5 kB]
    Get:227 http://deb.debian.org/debian bookworm/main amd64 libmagic1 amd64 1:5.44-3 [104 kB]
    Get:228 http://deb.debian.org/debian bookworm/main amd64 libmagic-mgc amd64 1:5.44-3 [305 kB]
    Get:229 http://deb.debian.org/debian bookworm/main amd64 gettext-base amd64 0.21-12 [160 kB]
    Get:230 http://deb.debian.org/debian bookworm/main amd64 manpages all 6.03-2 [1,332 kB]
    Get:231 http://deb.debian.org/debian bookworm/main amd64 pci.ids all 0.0~2023.04.11-1 [243 kB]
    Get:232 http://deb.debian.org/debian bookworm/main amd64 pciutils amd64 1:3.9.0-4 [104 kB]
    Get:233 http://deb.debian.org/debian bookworm/main amd64 libpci3 amd64 1:3.9.0-4 [67.4 kB]
    Get:234 http://deb.debian.org/debian bookworm/main amd64 reportbug all 12.0.0 [64.5 kB]
    Get:235 http://deb.debian.org/debian bookworm/main amd64 python3-pkg-resources all 66.1.1-1 [296 kB]
    Get:236 http://deb.debian.org/debian bookworm/main amd64 python3-chardet all 5.1.0+dfsg-2 [110 kB]
    Get:237 http://deb.debian.org/debian bookworm/main amd64 python3-debian all 0.1.49 [115 kB]
    Get:238 http://deb.debian.org/debian bookworm/main amd64 python3-pyparsing all 3.0.9-1 [138 kB]
    Get:239 http://deb.debian.org/debian bookworm/main amd64 python3-httplib2 all 0.20.4-3 [36.0 kB]
    Get:240 http://deb.debian.org/debian bookworm/main amd64 python3-pysimplesoap all 1.16.2-5 [43.1 kB]
    Get:241 http://deb.debian.org/debian bookworm/main amd64 python3-debianbts all 4.0.1 [12.2 kB]
    Get:242 http://deb.debian.org/debian bookworm/main amd64 python3-certifi all 2022.9.24-1 [153 kB]
    Get:243 http://deb.debian.org/debian bookworm/main amd64 python3-charset-normalizer all 3.0.1-2 [49.3 kB]
    Get:244 http://deb.debian.org/debian bookworm/main amd64 python3-idna all 3.3-1 [39.4 kB]
    Get:245 http://deb.debian.org/debian bookworm/main amd64 python3-six all 1.16.0-4 [17.5 kB]
    Get:246 http://deb.debian.org/debian bookworm/main amd64 python3-urllib3 all 1.26.12-1 [117 kB]
    Get:247 http://deb.debian.org/debian bookworm/main amd64 python3-requests all 2.28.1+dfsg-1 [67.9 kB]
    Get:248 http://deb.debian.org/debian bookworm/main amd64 python3-reportbug all 12.0.0 [78.9 kB]
    Get:249 http://deb.debian.org/debian bookworm/main amd64 wget amd64 1.21.3-1+b2 [984 kB]
    Get:250 http://deb.debian.org/debian bookworm/main amd64 xz-utils amd64 5.4.1-0.2 [471 kB]
    Get:251 http://deb.debian.org/debian bookworm/main amd64 apparmor amd64 3.0.8-3 [616 kB]
    Get:252 http://deb.debian.org/debian bookworm/main amd64 bsdextrautils amd64 2.38.1-5+b1 [86.6 kB]
    Get:253 http://deb.debian.org/debian bookworm/main amd64 ncal amd64 12.1.8 [19.7 kB]
    Get:254 http://deb.debian.org/debian bookworm/main amd64 bsdmainutils all 12.1.8 [5,952 B]
    Get:255 http://deb.debian.org/debian bookworm/main amd64 dbus-user-session amd64 1.14.10-1~deb12u1 [78.1 kB]
    Get:256 http://deb.debian.org/debian bookworm/main amd64 libusb-1.0-0 amd64 2:1.0.26-1 [62.6 kB]
    Get:257 http://deb.debian.org/debian bookworm/main amd64 discover-data all 2.2013.01.13 [389 kB]
    Get:258 http://deb.debian.org/debian bookworm/main amd64 discover amd64 2.1.2-10 [43.2 kB]
    Get:259 http://deb.debian.org/debian bookworm/main amd64 libdiscover2 amd64 2.1.2-10 [92.3 kB]
    Get:260 http://deb.debian.org/debian bookworm/main amd64 eject amd64 2.38.1-5+b1 [48.0 kB]
    Get:261 http://deb.debian.org/debian bookworm/main amd64 gdbm-l10n all 1.23-3 [89.0 kB]
    Get:262 http://deb.debian.org/debian-security bookworm-security/main amd64 grub-pc amd64 2.06-13+deb12u1 [137 kB]
    Get:263 http://deb.debian.org/debian-security bookworm-security/main amd64 grub2-common amd64 2.06-13+deb12u1 [614 kB]
    Get:264 http://deb.debian.org/debian-security bookworm-security/main amd64 grub-pc-bin amd64 2.06-13+deb12u1 [997 kB]
    Get:265 http://deb.debian.org/debian bookworm/main amd64 libpng16-16 amd64 1.6.39-2 [276 kB]
    Get:266 http://deb.debian.org/debian bookworm/main amd64 libfreetype6 amd64 2.12.1+dfsg-5 [399 kB]
    Get:267 http://deb.debian.org/debian bookworm/main amd64 libfuse2 amd64 2.9.9-6+b1 [119 kB]
    Get:268 http://deb.debian.org/debian-security bookworm-security/main amd64 grub-common amd64 2.06-13+deb12u1 [2,709 kB]
    Get:269 http://deb.debian.org/debian bookworm/main amd64 installation-report all 2.89 [8,324 B]
    Get:270 http://deb.debian.org/debian bookworm/main amd64 libestr0 amd64 0.1.11-1 [9,204 B]
    Get:271 http://deb.debian.org/debian bookworm/main amd64 libfastjson4 amd64 1.2304.0-1 [28.9 kB]
    Get:272 http://deb.debian.org/debian bookworm/main amd64 libldap-common all 2.5.13+dfsg-5 [29.3 kB]
    Get:273 http://deb.debian.org/debian bookworm/main amd64 liblognorm5 amd64 2.0.6-4 [67.2 kB]
    Get:274 http://deb.debian.org/debian bookworm/main amd64 libss2 amd64 1.47.0-2 [24.5 kB]
    Get:275 http://deb.debian.org/debian-security bookworm-security/main amd64 libx11-data all 2:1.8.4-2+deb12u2 [292 kB]
    Get:276 http://deb.debian.org/debian bookworm/main amd64 libxcb1 amd64 1.15-1 [144 kB]
    Get:277 http://deb.debian.org/debian-security bookworm-security/main amd64 libx11-6 amd64 2:1.8.4-2+deb12u2 [760 kB]
    Get:278 http://deb.debian.org/debian bookworm/main amd64 libxext6 amd64 2:1.3.4-1+b1 [52.9 kB]
    Get:279 http://deb.debian.org/debian bookworm/main amd64 libxmuu1 amd64 2:1.1.3-3 [23.9 kB]
    Get:280 http://deb.debian.org/debian bookworm/main amd64 linux-image-6.1.0-13-amd64 amd64 6.1.55-1 [68.7 MB]
    Get:281 http://deb.debian.org/debian bookworm/main amd64 linux-image-amd64 amd64 6.1.55-1 [1,480 B]
    Get:282 http://deb.debian.org/debian bookworm/main amd64 mailcap all 3.70+nmu1 [32.0 kB]
    Get:283 http://deb.debian.org/debian bookworm/main amd64 os-prober amd64 1.81 [30.9 kB]
    Get:284 http://deb.debian.org/debian bookworm/main amd64 rsyslog amd64 8.2302.0-1 [723 kB]
    Get:285 http://deb.debian.org/debian bookworm/main amd64 usb.ids all 2023.05.17-0+deb12u1 [207 kB]
    Get:286 http://deb.debian.org/debian bookworm/main amd64 usbutils amd64 1:014-1 [79.7 kB]
    Get:287 http://deb.debian.org/debian bookworm/main amd64 xauth amd64 1:1.1.2-1 [36.0 kB]
    Get:288 http://deb.debian.org/debian bookworm/main amd64 zstd amd64 1.5.4+dfsg2-5 [701 kB]
    Fetched 164 MB in 3s (64.7 MB/s)
    Extracting templates from packages: 100%
    Preconfiguring packages ...
    (Reading database ... 30636 files and directories currently installed.)
    Preparing to unpack .../base-files_12.4+deb12u2_amd64.deb ...
    Unpacking base-files (12.4+deb12u2) over (11.1+deb11u8) ...
    Setting up base-files (12.4+deb12u2) ...
    Installing new version of config file /etc/debian_version ...
    Installing new version of config file /etc/issue ...
    Installing new version of config file /etc/issue.net ...
    (Reading database ... 30636 files and directories currently installed.)
    Preparing to unpack .../libc-l10n_2.36-9+deb12u3_all.deb ...
    Unpacking libc-l10n (2.36-9+deb12u3) over (2.31-13+deb11u7) ...
    Preparing to unpack .../locales_2.36-9+deb12u3_all.deb ...
    Unpacking locales (2.36-9+deb12u3) over (2.31-13+deb11u7) ...
    Preparing to unpack .../libc6_2.36-9+deb12u3_amd64.deb ...
    Checking for services that may need to be restarted...
    Checking init scripts...
    Unpacking libc6:amd64 (2.36-9+deb12u3) over (2.31-13+deb11u7) ...
    Setting up libc6:amd64 (2.36-9+deb12u3) ...
    Checking for services that may need to be restarted...
    Checking init scripts...

    Restarting services possibly affected by the upgrade:
      ssh: restarting...done.
      cron: restarting...done.

    Services restarted successfully.
    (Reading database ... 30624 files and directories currently installed.)
    Preparing to unpack .../libc-bin_2.36-9+deb12u3_amd64.deb ...
    Unpacking libc-bin (2.36-9+deb12u3) over (2.31-13+deb11u7) ...
    Setting up libc-bin (2.36-9+deb12u3) ...
    (Reading database ... 30624 files and directories currently installed.)
    Preparing to unpack .../perl_5.36.0-7_amd64.deb ...
    Unpacking perl (5.36.0-7) over (5.32.1-4+deb11u2) ...
    Selecting previously unselected package perl-modules-5.36.
    Preparing to unpack .../perl-modules-5.36_5.36.0-7_all.deb ...
    Unpacking perl-modules-5.36 (5.36.0-7) ...
    Preparing to unpack .../libgdbm6_1.23-3_amd64.deb ...
    Unpacking libgdbm6:amd64 (1.23-3) over (1.19-2) ...
    Selecting previously unselected package libperl5.36:amd64.
    Preparing to unpack .../libperl5.36_5.36.0-7_amd64.deb ...
    Unpacking libperl5.36:amd64 (5.36.0-7) ...
    Preparing to unpack .../perl-base_5.36.0-7_amd64.deb ...
    Unpacking perl-base (5.36.0-7) over (5.32.1-4+deb11u2) ...
    Setting up perl-base (5.36.0-7) ...
    (Reading database ... 32551 files and directories currently installed.)
    Preparing to unpack .../liblocale-gettext-perl_1.07-5_amd64.deb ...
    Unpacking liblocale-gettext-perl (1.07-5) over (1.07-4+b1) ...
    Preparing to unpack .../libtext-iconv-perl_1.7-8_amd64.deb ...
    Unpacking libtext-iconv-perl:amd64 (1.7-8) over (1.7-7+b1) ...
    Preparing to unpack .../libtext-charwidth-perl_0.04-11_amd64.deb ...
    Unpacking libtext-charwidth-perl:amd64 (0.04-11) over (0.04-10+b1) ...
    Preparing to unpack .../bzip2_1.0.8-5+b1_amd64.deb ...
    Unpacking bzip2 (1.0.8-5+b1) over (1.0.8-4) ...
    Preparing to unpack .../libbz2-1.0_1.0.8-5+b1_amd64.deb ...
    Unpacking libbz2-1.0:amd64 (1.0.8-5+b1) over (1.0.8-4) ...
    Setting up libbz2-1.0:amd64 (1.0.8-5+b1) ...
    (Reading database ... 32550 files and directories currently installed.)
    Preparing to unpack .../libaudit-common_1%3a3.0.9-1_all.deb ...
    Unpacking libaudit-common (1:3.0.9-1) over (1:3.0-2) ...
    Setting up libaudit-common (1:3.0.9-1) ...
    (Reading database ... 32550 files and directories currently installed.)
    Preparing to unpack .../libcap-ng0_0.8.3-1+b3_amd64.deb ...
    Unpacking libcap-ng0:amd64 (0.8.3-1+b3) over (0.7.9-2.2+b1) ...
    Setting up libcap-ng0:amd64 (0.8.3-1+b3) ...
    (Reading database ... 32552 files and directories currently installed.)
    Preparing to unpack .../libaudit1_1%3a3.0.9-1_amd64.deb ...
    Unpacking libaudit1:amd64 (1:3.0.9-1) over (1:3.0-2) ...
    Setting up libaudit1:amd64 (1:3.0.9-1) ...
    (Reading database ... 32552 files and directories currently installed.)
    Preparing to unpack .../libpam0g_1.5.2-6+deb12u1_amd64.deb ...
    Unpacking libpam0g:amd64 (1.5.2-6+deb12u1) over (1.4.0-9+deb11u1) ...
    Setting up libpam0g:amd64 (1.5.2-6+deb12u1) ...
    (Reading database ... 32552 files and directories currently installed.)
    Preparing to unpack .../libcrypt1_1%3a4.4.33-2_amd64.deb ...
    Unpacking libcrypt1:amd64 (1:4.4.33-2) over (1:4.4.18-4) ...
    Setting up libcrypt1:amd64 (1:4.4.33-2) ...
    (Reading database ... 32552 files and directories currently installed.)
    Preparing to unpack .../libdb5.3_5.3.28+dfsg2-1_amd64.deb ...
    Unpacking libdb5.3:amd64 (5.3.28+dfsg2-1) over (5.3.28+dfsg1-0.8) ...
    Setting up libdb5.3:amd64 (5.3.28+dfsg2-1) ...
    (Reading database ... 32552 files and directories currently installed.)
    Preparing to unpack .../libgdbm-compat4_1.23-3_amd64.deb ...
    Unpacking libgdbm-compat4:amd64 (1.23-3) over (1.19-2) ...
    Preparing to unpack .../zlib1g_1%3a1.2.13.dfsg-1_amd64.deb ...
    Unpacking zlib1g:amd64 (1:1.2.13.dfsg-1) over (1:1.2.11.dfsg-2+deb11u2) ...
    Setting up zlib1g:amd64 (1:1.2.13.dfsg-1) ...
    (Reading database ... 32552 files and directories currently installed.)
    Preparing to unpack .../libtext-wrapi18n-perl_0.06-10_all.deb ...
    Unpacking libtext-wrapi18n-perl (0.06-10) over (0.06-9) ...
    Preparing to unpack .../debconf-i18n_1.5.82_all.deb ...
    Unpacking debconf-i18n (1.5.82) over (1.5.77) ...
    Preparing to unpack .../debconf_1.5.82_all.deb ...
    Unpacking debconf (1.5.82) over (1.5.77) ...
    Setting up debconf (1.5.82) ...
    Selecting previously unselected package gcc-12-base:amd64.
    (Reading database ... 32555 files and directories currently installed.)
    Preparing to unpack .../gcc-12-base_12.2.0-14_amd64.deb ...
    Unpacking gcc-12-base:amd64 (12.2.0-14) ...
    Setting up gcc-12-base:amd64 (12.2.0-14) ...
    (Reading database ... 32560 files and directories currently installed.)
    Preparing to unpack .../libgcc-s1_12.2.0-14_amd64.deb ...
    Unpacking libgcc-s1:amd64 (12.2.0-14) over (10.2.1-6) ...
    Setting up libgcc-s1:amd64 (12.2.0-14) ...
    (Reading database ... 32560 files and directories currently installed.)
    Preparing to unpack .../libsemanage-common_3.4-1_all.deb ...
    Unpacking libsemanage-common (3.4-1) over (3.1-1) ...
    Setting up libsemanage-common (3.4-1) ...
    Installing new version of config file /etc/selinux/semanage.conf ...
    (Reading database ... 32560 files and directories currently installed.)
    Preparing to unpack .../libselinux1_3.4-1+b6_amd64.deb ...
    Unpacking libselinux1:amd64 (3.4-1+b6) over (3.1-3) ...
    Setting up libselinux1:amd64 (3.4-1+b6) ...
    Selecting previously unselected package libsepol2:amd64.
    (Reading database ... 32561 files and directories currently installed.)
    Preparing to unpack .../libsepol2_3.4-2.1_amd64.deb ...
    Unpacking libsepol2:amd64 (3.4-2.1) ...
    Setting up libsepol2:amd64 (3.4-2.1) ...
    Selecting previously unselected package libsemanage2:amd64.
    (Reading database ... 32565 files and directories currently installed.)
    Preparing to unpack .../libsemanage2_3.4-1+b5_amd64.deb ...
    Unpacking libsemanage2:amd64 (3.4-1+b5) ...
    Setting up libsemanage2:amd64 (3.4-1+b5) ...
    (Reading database ... 32570 files and directories currently installed.)
    Preparing to unpack .../passwd_1%3a4.13+dfsg1-1+b1_amd64.deb ...
    Unpacking passwd (1:4.13+dfsg1-1+b1) over (1:4.8.1-1) ...
    Setting up passwd (1:4.13+dfsg1-1+b1) ...
    Installing new version of config file /etc/default/useradd ...
    (Reading database ... 32605 files and directories currently installed.)
    Removing libsemanage1:amd64 (3.1-1+b2) ...
    (Reading database ... 32600 files and directories currently installed.)
    Preparing to unpack .../libpcre2-8-0_10.42-1_amd64.deb ...
    Unpacking libpcre2-8-0:amd64 (10.42-1) over (10.36-2+deb11u1) ...
    Setting up libpcre2-8-0:amd64 (10.42-1) ...
    (Reading database ... 32600 files and directories currently installed.)
    Preparing to unpack .../libpam-modules-bin_1.5.2-6+deb12u1_amd64.deb ...
    Unpacking libpam-modules-bin (1.5.2-6+deb12u1) over (1.4.0-9+deb11u1) ...
    Replacing files in old package libpam-modules:amd64 (1.4.0-9+deb11u1) ...
    Setting up libpam-modules-bin (1.5.2-6+deb12u1) ...
    (Reading database ... 32606 files and directories currently installed.)
    Preparing to unpack .../libpam-modules_1.5.2-6+deb12u1_amd64.deb ...
    Unpacking libpam-modules:amd64 (1.5.2-6+deb12u1) over (1.4.0-9+deb11u1) ...
    Setting up libpam-modules:amd64 (1.5.2-6+deb12u1) ...
    Installing new version of config file /etc/security/limits.conf ...
    Installing new version of config file /etc/security/sepermit.conf ...
    (Reading database ... 32607 files and directories currently installed.)
    Preparing to unpack .../archives/adduser_3.134_all.deb ...
    moving unchanged adduser.conf to adduser.conf.update-old. New dpkg-conffile will come from the package.
    Unpacking adduser (3.134) over (3.118+deb11u1) ...
    Setting up adduser (3.134) ...
    Installing new version of config file /etc/deluser.conf ...
    (Reading database ... 32575 files and directories currently installed.)
    Preparing to unpack .../libelf1_0.188-2.1_amd64.deb ...
    Unpacking libelf1:amd64 (0.188-2.1) over (0.183-1) ...
    Selecting previously unselected package libbpf1:amd64.
    Preparing to unpack .../libbpf1_1%3a1.1.0-1_amd64.deb ...
    Unpacking libbpf1:amd64 (1:1.1.0-1) ...
    Preparing to unpack .../libmd0_1.0.4-2_amd64.deb ...
    Unpacking libmd0:amd64 (1.0.4-2) over (1.0.3-3) ...
    Setting up libmd0:amd64 (1.0.4-2) ...
    (Reading database ... 32580 files and directories currently installed.)
    Preparing to unpack .../libbsd0_0.11.7-2_amd64.deb ...
    Unpacking libbsd0:amd64 (0.11.7-2) over (0.11.3-1+deb11u1) ...
    Preparing to unpack .../libcap2_1%3a2.66-4_amd64.deb ...
    Unpacking libcap2:amd64 (1:2.66-4) over (1:2.44-1) ...
    Setting up libcap2:amd64 (1:2.66-4) ...
    (Reading database ... 32583 files and directories currently installed.)
    Preparing to unpack .../00-libtirpc-common_1.3.3+ds-1_all.deb ...
    Unpacking libtirpc-common (1.3.3+ds-1) over (1.3.1-1+deb11u1) ...
    Selecting previously unselected package libssl3:amd64.
    Preparing to unpack .../01-libssl3_3.0.11-1~deb12u2_amd64.deb ...
    Unpacking libssl3:amd64 (3.0.11-1~deb12u2) ...
    Preparing to unpack .../02-libcom-err2_1.47.0-2_amd64.deb ...
    Unpacking libcom-err2:amd64 (1.47.0-2) over (1.46.2-2) ...
    Preparing to unpack .../03-libkeyutils1_1.6.3-2_amd64.deb ...
    Unpacking libkeyutils1:amd64 (1.6.3-2) over (1.6.1-2) ...
    Preparing to unpack .../04-libk5crypto3_1.20.1-2+deb12u1_amd64.deb ...
    Unpacking libk5crypto3:amd64 (1.20.1-2+deb12u1) over (1.18.3-6+deb11u4) ...
    Preparing to unpack .../05-libgssapi-krb5-2_1.20.1-2+deb12u1_amd64.deb ...
    Unpacking libgssapi-krb5-2:amd64 (1.20.1-2+deb12u1) over (1.18.3-6+deb11u4) ...
    Preparing to unpack .../06-libkrb5support0_1.20.1-2+deb12u1_amd64.deb ...
    Unpacking libkrb5support0:amd64 (1.20.1-2+deb12u1) over (1.18.3-6+deb11u4) ...
    Preparing to unpack .../07-libkrb5-3_1.20.1-2+deb12u1_amd64.deb ...
    Unpacking libkrb5-3:amd64 (1.20.1-2+deb12u1) over (1.18.3-6+deb11u4) ...
    Preparing to unpack .../08-libtirpc3_1.3.3+ds-1_amd64.deb ...
    Unpacking libtirpc3:amd64 (1.3.3+ds-1) over (1.3.1-1+deb11u1) ...
    Preparing to unpack .../09-libiptc0_1.8.9-2_amd64.deb ...
    Unpacking libiptc0:amd64 (1.8.9-2) over (1.8.7-1) ...
    Preparing to unpack .../10-libxtables12_1.8.9-2_amd64.deb ...
    Unpacking libxtables12:amd64 (1.8.9-2) over (1.8.7-1) ...
    Preparing to unpack .../11-iptables_1.8.9-2_amd64.deb ...
    Unpacking iptables (1.8.9-2) over (1.8.7-1) ...
    Preparing to unpack .../12-libip4tc2_1.8.9-2_amd64.deb ...
    Unpacking libip4tc2:amd64 (1.8.9-2) over (1.8.7-1) ...
    Preparing to unpack .../13-libip6tc2_1.8.9-2_amd64.deb ...
    Unpacking libip6tc2:amd64 (1.8.9-2) over (1.8.7-1) ...
    Preparing to unpack .../14-libnfnetlink0_1.0.2-2_amd64.deb ...
    Unpacking libnfnetlink0:amd64 (1.0.2-2) over (1.0.1-3+b1) ...
    Preparing to unpack .../15-netbase_6.4_all.deb ...
    Unpacking netbase (6.4) over (6.3) ...
    Preparing to unpack .../16-libnetfilter-conntrack3_1.0.9-3_amd64.deb ...
    Unpacking libnetfilter-conntrack3:amd64 (1.0.9-3) over (1.0.8-3) ...
    Preparing to unpack .../17-libnftnl11_1.2.4-2_amd64.deb ...
    Unpacking libnftnl11:amd64 (1.2.4-2) over (1.1.9-1) ...
    Preparing to unpack .../18-libcap2-bin_1%3a2.66-4_amd64.deb ...
    Unpacking libcap2-bin (1:2.66-4) over (1:2.44-1) ...
    Preparing to unpack .../19-iproute2_6.1.0-3_amd64.deb ...
    Unpacking iproute2 (6.1.0-3) over (5.10.0-4) ...
    Preparing to unpack .../20-ifupdown_0.8.41_amd64.deb ...
    Unpacking ifupdown (0.8.41) over (0.8.36) ...
    Preparing to unpack .../21-debianutils_5.7-0.5~deb12u1_amd64.deb ...
    Unpacking debianutils (5.7-0.5~deb12u1) over (4.11.2) ...
    Setting up debianutils (5.7-0.5~deb12u1) ...
    update-alternatives: using /usr/bin/which.debianutils to provide /usr/bin/which (which) in auto mode
    (Reading database ... 32609 files and directories currently installed.)
    Preparing to unpack .../bash_5.2.15-2+b2_amd64.deb ...
    Unpacking bash (5.2.15-2+b2) over (5.1-2+deb11u1) ...
    Setting up bash (5.2.15-2+b2) ...
    update-alternatives: using /usr/share/man/man7/bash-builtins.7.gz to provide /usr/share/man/man7/builtins.7.gz (builtins.7.gz) in auto mode
    (Reading database ... 32611 files and directories currently installed.)
    Preparing to unpack .../bsdutils_1%3a2.38.1-5+b1_amd64.deb ...
    Unpacking bsdutils (1:2.38.1-5+b1) over (1:2.36.1-8+deb11u1) ...
    Setting up bsdutils (1:2.38.1-5+b1) ...
    (Reading database ... 32612 files and directories currently installed.)
    Preparing to unpack .../libgmp10_2%3a6.2.1+dfsg1-1.1_amd64.deb ...
    Unpacking libgmp10:amd64 (2:6.2.1+dfsg1-1.1) over (2:6.2.1+dfsg-1+deb11u1) ...
    Setting up libgmp10:amd64 (2:6.2.1+dfsg1-1.1) ...
    (Reading database ... 32612 files and directories currently installed.)
    Preparing to unpack .../coreutils_9.1-1_amd64.deb ...
    Unpacking coreutils (9.1-1) over (8.32-4+b1) ...
    Setting up coreutils (9.1-1) ...
    (Reading database ... 32611 files and directories currently installed.)
    Preparing to unpack .../liblzma5_5.4.1-0.2_amd64.deb ...
    Unpacking liblzma5:amd64 (5.4.1-0.2) over (5.2.5-2.1~deb11u1) ...
    Setting up liblzma5:amd64 (5.4.1-0.2) ...
    (Reading database ... 32611 files and directories currently installed.)
    Preparing to unpack .../libzstd1_1.5.4+dfsg2-5_amd64.deb ...
    Unpacking libzstd1:amd64 (1.5.4+dfsg2-5) over (1.4.8+dfsg-2.1) ...
    Setting up libzstd1:amd64 (1.5.4+dfsg2-5) ...
    (Reading database ... 32611 files and directories currently installed.)
    Preparing to unpack .../tar_1.34+dfsg-1.2_amd64.deb ...
    Unpacking tar (1.34+dfsg-1.2) over (1.34+dfsg-1) ...
    Setting up tar (1.34+dfsg-1.2) ...
    (Reading database ... 32611 files and directories currently installed.)
    Preparing to unpack .../dpkg_1.21.22_amd64.deb ...
    Unpacking dpkg (1.21.22) over (1.20.13) ...
    Setting up dpkg (1.21.22) ...
    Installing new version of config file /etc/cron.daily/dpkg ...
    Created symlink /etc/systemd/system/timers.target.wants/dpkg-db-backup.timer → /lib/systemd/system/dpkg-db-backup.timer.
    dpkg-db-backup.service is a disabled or a static unit not running, not starting it.
    (Reading database ... 32613 files and directories currently installed.)
    Preparing to unpack .../dash_0.5.12-2_amd64.deb ...
    Unpacking dash (0.5.12-2) over (0.5.11+git20200708+dd9ef66-5) ...
    Setting up dash (0.5.12-2) ...
    (Reading database ... 32614 files and directories currently installed.)
    Preparing to unpack .../diffutils_1%3a3.8-4_amd64.deb ...
    Unpacking diffutils (1:3.8-4) over (1:3.7-5) ...
    Setting up diffutils (1:3.8-4) ...
    (Reading database ... 32614 files and directories currently installed.)
    Preparing to unpack .../findutils_4.9.0-4_amd64.deb ...
    Unpacking findutils (4.9.0-4) over (4.8.0-1) ...
    Setting up findutils (4.9.0-4) ...
    (Reading database ... 32614 files and directories currently installed.)
    Preparing to unpack .../archives/grep_3.8-5_amd64.deb ...
    Unpacking grep (3.8-5) over (3.6-1+deb11u1) ...
    Setting up grep (3.8-5) ...
    (Reading database ... 32616 files and directories currently installed.)
    Preparing to unpack .../archives/gzip_1.12-1_amd64.deb ...
    Unpacking gzip (1.12-1) over (1.10-4+deb11u1) ...
    Setting up gzip (1.12-1) ...
    (Reading database ... 32616 files and directories currently installed.)
    Preparing to unpack .../hostname_3.23+nmu1_amd64.deb ...
    Unpacking hostname (3.23+nmu1) over (3.23) ...
    Setting up hostname (3.23+nmu1) ...
    (Reading database ... 32616 files and directories currently installed.)
    Preparing to unpack .../login_1%3a4.13+dfsg1-1+b1_amd64.deb ...
    Unpacking login (1:4.13+dfsg1-1+b1) over (1:4.8.1-1) ...
    Setting up login (1:4.13+dfsg1-1+b1) ...
    Installing new version of config file /etc/login.defs ...
    (Reading database ... 32626 files and directories currently installed.)
    Preparing to unpack .../libncurses6_6.4-4_amd64.deb ...
    Unpacking libncurses6:amd64 (6.4-4) over (6.2+20201114-2+deb11u2) ...
    Preparing to unpack .../libncursesw6_6.4-4_amd64.deb ...
    Unpacking libncursesw6:amd64 (6.4-4) over (6.2+20201114-2+deb11u2) ...
    Preparing to unpack .../libtinfo6_6.4-4_amd64.deb ...
    Unpacking libtinfo6:amd64 (6.4-4) over (6.2+20201114-2+deb11u2) ...
    Setting up libtinfo6:amd64 (6.4-4) ...
    (Reading database ... 32624 files and directories currently installed.)
    Preparing to unpack .../ncurses-bin_6.4-4_amd64.deb ...
    Unpacking ncurses-bin (6.4-4) over (6.2+20201114-2+deb11u2) ...
    Setting up ncurses-bin (6.4-4) ...
    (Reading database ... 32624 files and directories currently installed.)
    Preparing to unpack .../archives/sed_4.9-1_amd64.deb ...
    Unpacking sed (4.9-1) over (4.7-1) ...
    Setting up sed (4.9-1) ...
    (Reading database ... 32625 files and directories currently installed.)
    Preparing to unpack .../libblkid1_2.38.1-5+b1_amd64.deb ...
    Unpacking libblkid1:amd64 (2.38.1-5+b1) over (2.36.1-8+deb11u1) ...
    Setting up libblkid1:amd64 (2.38.1-5+b1) ...
    (Reading database ... 32627 files and directories currently installed.)
    Preparing to unpack .../libmount1_2.38.1-5+b1_amd64.deb ...
    Unpacking libmount1:amd64 (2.38.1-5+b1) over (2.36.1-8+deb11u1) ...
    Setting up libmount1:amd64 (2.38.1-5+b1) ...
    (Reading database ... 32629 files and directories currently installed.)
    Preparing to unpack .../libsmartcols1_2.38.1-5+b1_amd64.deb ...
    Unpacking libsmartcols1:amd64 (2.38.1-5+b1) over (2.36.1-8+deb11u1) ...
    Setting up libsmartcols1:amd64 (2.38.1-5+b1) ...
    (Reading database ... 32631 files and directories currently installed.)
    Preparing to unpack .../libfdisk1_2.38.1-5+b1_amd64.deb ...
    Unpacking libfdisk1:amd64 (2.38.1-5+b1) over (2.36.1-8+deb11u1) ...
    Preparing to unpack .../fdisk_2.38.1-5+b1_amd64.deb ...
    Unpacking fdisk (2.38.1-5+b1) over (2.36.1-8+deb11u1) ...
    Preparing to unpack .../util-linux_2.38.1-5+b1_amd64.deb ...
    Unpacking util-linux (2.38.1-5+b1) over (2.36.1-8+deb11u1) ...
    dpkg: warning: unable to delete old directory '/usr/lib/udev/rules.d': Directory not empty
    dpkg: warning: unable to delete old directory '/usr/lib/udev': Directory not empty
    Selecting previously unselected package util-linux-extra.
    Preparing to unpack .../util-linux-extra_2.38.1-5+b1_amd64.deb ...
    Unpacking util-linux-extra (2.38.1-5+b1) ...
    Setting up util-linux-extra (2.38.1-5+b1) ...
    (Reading database ... 32646 files and directories currently installed.)
    Preparing to unpack .../libuuid1_2.38.1-5+b1_amd64.deb ...
    Unpacking libuuid1:amd64 (2.38.1-5+b1) over (2.36.1-8+deb11u1) ...
    Setting up libuuid1:amd64 (2.38.1-5+b1) ...
    (Reading database ... 32647 files and directories currently installed.)
    Preparing to unpack .../readline-common_8.2-1.3_all.deb ...
    Unpacking readline-common (8.2-1.3) over (8.1-1) ...
    Preparing to unpack .../libreadline8_8.2-1.3_amd64.deb ...
    Unpacking libreadline8:amd64 (8.2-1.3) over (8.1-1) ...
    Preparing to unpack .../libgpg-error0_1.46-1_amd64.deb ...
    Unpacking libgpg-error0:amd64 (1.46-1) over (1.38-2) ...
    Setting up libgpg-error0:amd64 (1.46-1) ...
    (Reading database ... 32647 files and directories currently installed.)
    Preparing to unpack .../libgcrypt20_1.10.1-3_amd64.deb ...
    Unpacking libgcrypt20:amd64 (1.10.1-3) over (1.8.7-6) ...
    Setting up libgcrypt20:amd64 (1.10.1-3) ...
    (Reading database ... 32649 files and directories currently installed.)
    Preparing to unpack .../libstdc++6_12.2.0-14_amd64.deb ...
    Unpacking libstdc++6:amd64 (12.2.0-14) over (10.2.1-6) ...
    Setting up libstdc++6:amd64 (12.2.0-14) ...
    (Reading database ... 32649 files and directories currently installed.)
    Preparing to unpack .../liblz4-1_1.9.4-1_amd64.deb ...
    Unpacking liblz4-1:amd64 (1.9.4-1) over (1.9.3-2) ...
    Setting up liblz4-1:amd64 (1.9.4-1) ...
    (Reading database ... 32649 files and directories currently installed.)
    Preparing to unpack .../libargon2-1_0~20171227-0.3+deb12u1_amd64.deb ...
    Unpacking libargon2-1:amd64 (0~20171227-0.3+deb12u1) over (0~20171227-0.2) ...
    Preparing to unpack .../dmsetup_2%3a1.02.185-2_amd64.deb ...
    Unpacking dmsetup (2:1.02.185-2) over (2:1.02.175-2.1) ...
    Preparing to unpack .../libacl1_2.3.1-3_amd64.deb ...
    Unpacking libacl1:amd64 (2.3.1-3) over (2.2.53-10) ...
    Setting up libacl1:amd64 (2.3.1-3) ...
    (Reading database ... 32650 files and directories currently installed.)
    Preparing to unpack .../0-kmod_30+20221128-1_amd64.deb ...
    Unpacking kmod (30+20221128-1) over (28-1) ...
    Preparing to unpack .../1-libkmod2_30+20221128-1_amd64.deb ...
    Unpacking libkmod2:amd64 (30+20221128-1) over (28-1) ...
    Preparing to unpack .../2-less_590-2_amd64.deb ...
    Unpacking less (590-2) over (551-2) ...
    Preparing to unpack .../3-libnss-systemd_252.17-1~deb12u1_amd64.deb ...
    Unpacking libnss-systemd:amd64 (252.17-1~deb12u1) over (247.3-7+deb11u4) ...
    Preparing to unpack .../4-systemd-timesyncd_252.17-1~deb12u1_amd64.deb ...
    Unpacking systemd-timesyncd (252.17-1~deb12u1) over (247.3-7+deb11u4) ...
    Preparing to unpack .../5-libpam-systemd_252.17-1~deb12u1_amd64.deb ...
    Unpacking libpam-systemd:amd64 (252.17-1~deb12u1) over (247.3-7+deb11u4) ...
    Setting up libssl3:amd64 (3.0.11-1~deb12u2) ...
    (Reading database ... 32656 files and directories currently installed.)
    Preparing to unpack .../systemd_252.17-1~deb12u1_amd64.deb ...
    Unpacking systemd (252.17-1~deb12u1) over (247.3-7+deb11u4) ...
    Preparing to unpack .../udev_252.17-1~deb12u1_amd64.deb ...
    Unpacking udev (252.17-1~deb12u1) over (247.3-7+deb11u4) ...
    Preparing to unpack .../libudev1_252.17-1~deb12u1_amd64.deb ...
    Unpacking libudev1:amd64 (252.17-1~deb12u1) over (247.3-7+deb11u4) ...
    Setting up libudev1:amd64 (252.17-1~deb12u1) ...
    (Reading database ... 32726 files and directories currently installed.)
    Preparing to unpack .../libdevmapper1.02.1_2%3a1.02.185-2_amd64.deb ...
    Unpacking libdevmapper1.02.1:amd64 (2:1.02.185-2) over (2:1.02.175-2.1) ...
    Preparing to unpack .../libjson-c5_0.16-2_amd64.deb ...
    Unpacking libjson-c5:amd64 (0.16-2) over (0.15-2+deb11u1) ...
    Preparing to unpack .../libcryptsetup12_2%3a2.6.1-4~deb12u1_amd64.deb ...
    Unpacking libcryptsetup12:amd64 (2:2.6.1-4~deb12u1) over (2:2.3.7-1+deb11u1) ...
    Preparing to unpack .../libapparmor1_3.0.8-3_amd64.deb ...
    Unpacking libapparmor1:amd64 (3.0.8-3) over (2.13.6-10) ...
    Preparing to unpack .../libseccomp2_2.5.4-1+b3_amd64.deb ...
    Unpacking libseccomp2:amd64 (2.5.4-1+b3) over (2.5.1-1+deb11u1) ...
    Setting up libseccomp2:amd64 (2.5.4-1+b3) ...
    Selecting previously unselected package libsystemd-shared:amd64.
    (Reading database ... 32727 files and directories currently installed.)
    Preparing to unpack .../libsystemd-shared_252.17-1~deb12u1_amd64.deb ...
    Unpacking libsystemd-shared:amd64 (252.17-1~deb12u1) ...
    Preparing to unpack .../libpam-runtime_1.5.2-6+deb12u1_all.deb ...
    Unpacking libpam-runtime (1.5.2-6+deb12u1) over (1.4.0-9+deb11u1) ...
    Setting up libpam-runtime (1.5.2-6+deb12u1) ...
    (Reading database ... 32735 files and directories currently installed.)
    Preparing to unpack .../0-dbus_1.14.10-1~deb12u1_amd64.deb ...
    Unpacking dbus (1.14.10-1~deb12u1) over (1.12.28-0+deb11u1) ...
    Preparing to unpack .../1-libdbus-1-3_1.14.10-1~deb12u1_amd64.deb ...
    Unpacking libdbus-1-3:amd64 (1.14.10-1~deb12u1) over (1.12.28-0+deb11u1) ...
    Selecting previously unselected package dbus-bin.
    Preparing to unpack .../2-dbus-bin_1.14.10-1~deb12u1_amd64.deb ...
    Unpacking dbus-bin (1.14.10-1~deb12u1) ...
    Selecting previously unselected package dbus-session-bus-common.
    Preparing to unpack .../3-dbus-session-bus-common_1.14.10-1~deb12u1_all.deb ...
    Unpacking dbus-session-bus-common (1.14.10-1~deb12u1) ...
    Preparing to unpack .../4-libexpat1_2.5.0-1_amd64.deb ...
    Unpacking libexpat1:amd64 (2.5.0-1) over (2.2.10-2+deb11u5) ...
    Selecting previously unselected package dbus-daemon.
    Preparing to unpack .../5-dbus-daemon_1.14.10-1~deb12u1_amd64.deb ...
    Unpacking dbus-daemon (1.14.10-1~deb12u1) ...
    Selecting previously unselected package dbus-system-bus-common.
    Preparing to unpack .../6-dbus-system-bus-common_1.14.10-1~deb12u1_all.deb ...
    Unpacking dbus-system-bus-common (1.14.10-1~deb12u1) ...
    Preparing to unpack .../7-libsystemd0_252.17-1~deb12u1_amd64.deb ...
    Unpacking libsystemd0:amd64 (252.17-1~deb12u1) over (247.3-7+deb11u4) ...
    Setting up libsystemd0:amd64 (252.17-1~deb12u1) ...
    Setting up libargon2-1:amd64 (0~20171227-0.3+deb12u1) ...
    Setting up libjson-c5:amd64 (0.16-2) ...
    Setting up libfdisk1:amd64 (2.38.1-5+b1) ...
    Setting up libkmod2:amd64 (30+20221128-1) ...
    Setting up libapparmor1:amd64 (3.0.8-3) ...
    Setting up libip4tc2:amd64 (1.8.9-2) ...
    Setting up libsystemd-shared:amd64 (252.17-1~deb12u1) ...
    Setting up libdevmapper1.02.1:amd64 (2:1.02.185-2) ...
    Setting up libcryptsetup12:amd64 (2:2.6.1-4~deb12u1) ...
    Setting up systemd (252.17-1~deb12u1) ...
    Installing new version of config file /etc/systemd/journald.conf ...
    Installing new version of config file /etc/systemd/logind.conf ...
    Installing new version of config file /etc/systemd/networkd.conf ...
    Installing new version of config file /etc/systemd/pstore.conf ...
    Installing new version of config file /etc/systemd/sleep.conf ...
    Installing new version of config file /etc/systemd/system.conf ...
    Installing new version of config file /etc/systemd/user.conf ...
    Removing obsolete conffile /etc/systemd/resolved.conf ...
    Setting up dmsetup (2:1.02.185-2) ...
    (Reading database ... 32759 files and directories currently installed.)
    Preparing to unpack .../systemd-sysv_252.17-1~deb12u1_amd64.deb ...
    Unpacking systemd-sysv (252.17-1~deb12u1) over (247.3-7+deb11u4) ...
    Selecting previously unselected package libffi8:amd64.
    Preparing to unpack .../libffi8_3.4.4-1_amd64.deb ...
    Unpacking libffi8:amd64 (3.4.4-1) ...
    Setting up libffi8:amd64 (3.4.4-1) ...
    (Reading database ... 32765 files and directories currently installed.)
    Preparing to unpack .../libp11-kit0_0.24.1-2_amd64.deb ...
    Unpacking libp11-kit0:amd64 (0.24.1-2) over (0.23.22-1) ...
    Setting up libp11-kit0:amd64 (0.24.1-2) ...
    (Reading database ... 32765 files and directories currently installed.)
    Preparing to unpack .../mount_2.38.1-5+b1_amd64.deb ...
    Unpacking mount (2.38.1-5+b1) over (2.36.1-8+deb11u1) ...
    Preparing to unpack .../libxxhash0_0.8.1-1_amd64.deb ...
    Unpacking libxxhash0:amd64 (0.8.1-1) over (0.8.0-2) ...
    Setting up libxxhash0:amd64 (0.8.1-1) ...
    (Reading database ... 32766 files and directories currently installed.)
    Preparing to unpack .../libapt-pkg6.0_2.6.1_amd64.deb ...
    Unpacking libapt-pkg6.0:amd64 (2.6.1) over (2.2.4) ...
    Setting up libapt-pkg6.0:amd64 (2.6.1) ...
    (Reading database ... 32766 files and directories currently installed.)
    Preparing to unpack .../libnettle8_3.8.1-2_amd64.deb ...
    Unpacking libnettle8:amd64 (3.8.1-2) over (3.7.3-1) ...
    Setting up libnettle8:amd64 (3.8.1-2) ...
    (Reading database ... 32766 files and directories currently installed.)
    Preparing to unpack .../libhogweed6_3.8.1-2_amd64.deb ...
    Unpacking libhogweed6:amd64 (3.8.1-2) over (3.7.3-1) ...
    Setting up libhogweed6:amd64 (3.8.1-2) ...
    (Reading database ... 32766 files and directories currently installed.)
    Preparing to unpack .../libunistring2_1.0-2_amd64.deb ...
    Unpacking libunistring2:amd64 (1.0-2) over (0.9.10-4) ...
    Setting up libunistring2:amd64 (1.0-2) ...
    (Reading database ... 32766 files and directories currently installed.)
    Preparing to unpack .../libidn2-0_2.3.3-1+b1_amd64.deb ...
    Unpacking libidn2-0:amd64 (2.3.3-1+b1) over (2.3.0-5) ...
    Setting up libidn2-0:amd64 (2.3.3-1+b1) ...
    (Reading database ... 32768 files and directories currently installed.)
    Preparing to unpack .../libtasn1-6_4.19.0-2_amd64.deb ...
    Unpacking libtasn1-6:amd64 (4.19.0-2) over (4.16.0-2+deb11u1) ...
    Setting up libtasn1-6:amd64 (4.19.0-2) ...
    (Reading database ... 32768 files and directories currently installed.)
    Preparing to unpack .../libgnutls30_3.7.9-2_amd64.deb ...
    Unpacking libgnutls30:amd64 (3.7.9-2) over (3.7.1-5+deb11u3) ...
    Setting up libgnutls30:amd64 (3.7.9-2) ...
    (Reading database ... 32770 files and directories currently installed.)
    Preparing to unpack .../archives/apt_2.6.1_amd64.deb ...
    Unpacking apt (2.6.1) over (2.2.4) ...
    Setting up apt (2.6.1) ...
    Installing new version of config file /etc/apt/apt.conf.d/01autoremove ...
    Installing new version of config file /etc/cron.daily/apt-compat ...
    Removing obsolete conffile /etc/kernel/postinst.d/apt-auto-removal ...
    (Reading database ... 32767 files and directories currently installed.)
    Preparing to unpack .../apt-utils_2.6.1_amd64.deb ...
    Unpacking apt-utils (2.6.1) over (2.2.4) ...
    Preparing to unpack .../gpgv_2.2.40-1.1_amd64.deb ...
    Unpacking gpgv (2.2.40-1.1) over (2.2.27-2+deb11u2) ...
    Setting up gpgv (2.2.40-1.1) ...
    (Reading database ... 32767 files and directories currently installed.)
    Preparing to unpack .../debian-archive-keyring_2023.3+deb12u1_all.deb ...
    Unpacking debian-archive-keyring (2023.3+deb12u1) over (2021.1.1+deb11u1) ...
    Setting up debian-archive-keyring (2023.3+deb12u1) ...
    Removing obsolete conffile /etc/apt/trusted.gpg.d/debian-archive-buster-automatic.gpg ...
    Removing obsolete conffile /etc/apt/trusted.gpg.d/debian-archive-buster-security-automatic.gpg ...
    Removing obsolete conffile /etc/apt/trusted.gpg.d/debian-archive-buster-stable.gpg ...
    Removing obsolete conffile /etc/apt/trusted.gpg.d/debian-archive-bullseye-automatic.gpg ...
    Removing obsolete conffile /etc/apt/trusted.gpg.d/debian-archive-bullseye-security-automatic.gpg ...
    Removing obsolete conffile /etc/apt/trusted.gpg.d/debian-archive-bullseye-stable.gpg ...
    Removing obsolete conffile /etc/apt/trusted.gpg.d/debian-archive-bookworm-stable.gpg ...
    Removing obsolete conffile /etc/apt/trusted.gpg.d/debian-archive-bookworm-security-automatic.gpg ...
    Removing obsolete conffile /etc/apt/trusted.gpg.d/debian-archive-bookworm-automatic.gpg ...
    (Reading database ... 32767 files and directories currently installed.)
    Preparing to unpack .../libdebconfclient0_0.270_amd64.deb ...
    Unpacking libdebconfclient0:amd64 (0.270) over (0.260) ...
    Setting up libdebconfclient0:amd64 (0.270) ...
    (Reading database ... 32767 files and directories currently installed.)
    Preparing to unpack .../base-passwd_3.6.1_amd64.deb ...
    Unpacking base-passwd (3.6.1) over (3.5.51) ...
    Setting up base-passwd (3.6.1) ...
    Selecting previously unselected package libnumber-compare-perl.
    (Reading database ... 32767 files and directories currently installed.)
    Preparing to unpack .../libnumber-compare-perl_0.03-3_all.deb ...
    Unpacking libnumber-compare-perl (0.03-3) ...
    Setting up libnumber-compare-perl (0.03-3) ...
    Selecting previously unselected package libtext-glob-perl.
    (Reading database ... 32774 files and directories currently installed.)
    Preparing to unpack .../libtext-glob-perl_0.11-3_all.deb ...
    Unpacking libtext-glob-perl (0.11-3) ...
    Setting up libtext-glob-perl (0.11-3) ...
    Selecting previously unselected package libfile-find-rule-perl.
    (Reading database ... 32780 files and directories currently installed.)
    Preparing to unpack .../libfile-find-rule-perl_0.34-3_all.deb ...
    Unpacking libfile-find-rule-perl (0.34-3) ...
    Setting up perl-modules-5.36 (5.36.0-7) ...
    Setting up libgdbm6:amd64 (1.23-3) ...
    Setting up libgdbm-compat4:amd64 (1.23-3) ...
    Setting up libperl5.36:amd64 (5.36.0-7) ...
    Setting up perl (5.36.0-7) ...
    Setting up libfile-find-rule-perl (0.34-3) ...
    Selecting previously unselected package usrmerge.
    (Reading database ... 32795 files and directories currently installed.)
    Preparing to unpack .../archives/usrmerge_35_all.deb ...
    Unpacking usrmerge (35) ...
    Setting up usrmerge (35) ...
    (Reading database ... 32802 files and directories currently installed.)
    Preparing to unpack .../init-system-helpers_1.65.2_all.deb ...
    Unpacking init-system-helpers (1.65.2) over (1.60) ...
    Setting up init-system-helpers (1.65.2) ...
    (Reading database ... 32802 files and directories currently installed.)
    Preparing to unpack .../vim-tiny_2%3a9.0.1378-2_amd64.deb ...
    Unpacking vim-tiny (2:9.0.1378-2) over (2:8.2.2434-3+deb11u1) ...
    Preparing to unpack .../xxd_2%3a9.0.1378-2_amd64.deb ...
    Unpacking xxd (2:9.0.1378-2) over (2:8.2.2434-3+deb11u1) ...
    Preparing to unpack .../vim-common_2%3a9.0.1378-2_all.deb ...
    Unpacking vim-common (2:9.0.1378-2) over (2:8.2.2434-3+deb11u1) ...
    Preparing to unpack .../ncurses-base_6.4-4_all.deb ...
    Unpacking ncurses-base (6.4-4) over (6.2+20201114-2+deb11u2) ...
    Setting up ncurses-base (6.4-4) ...
    (Reading database ... 32804 files and directories currently installed.)
    Preparing to unpack .../0-xkb-data_2.35.1-1_all.deb ...
    Unpacking xkb-data (2.35.1-1) over (2.29-2) ...
    Preparing to unpack .../1-kbd_2.5.1-1+b1_amd64.deb ...
    Unpacking kbd (2.5.1-1+b1) over (2.3.0-3) ...
    Preparing to unpack .../2-console-setup-linux_1.221_all.deb ...
    Unpacking console-setup-linux (1.221) over (1.205) ...
    Preparing to unpack .../3-console-setup_1.221_all.deb ...
    Unpacking console-setup (1.221) over (1.205) ...
    Preparing to unpack .../4-keyboard-configuration_1.221_all.deb ...
    Unpacking keyboard-configuration (1.221) over (1.205) ...
    Preparing to unpack .../5-lsb-base_11.6_all.deb ...
    Unpacking lsb-base (11.6) over (11.1.0) ...
    Preparing to unpack .../6-sysvinit-utils_3.06-4_amd64.deb ...
    Unpacking sysvinit-utils (3.06-4) over (2.96-7+deb11u1) ...
    Setting up sysvinit-utils (3.06-4) ...
    (Reading database ... 32808 files and directories currently installed.)
    Preparing to unpack .../0-logsave_1.47.0-2_amd64.deb ...
    Unpacking logsave (1.47.0-2) over (1.46.2-2) ...
    Preparing to unpack .../1-klibc-utils_2.0.12-1_amd64.deb ...
    Unpacking klibc-utils (2.0.12-1) over (2.0.8-6.1) ...
    Preparing to unpack .../2-busybox_1%3a1.35.0-4+b3_amd64.deb ...
    Unpacking busybox (1:1.35.0-4+b3) over (1:1.30.1-6+b3) ...
    Preparing to unpack .../3-initramfs-tools_0.142_all.deb ...
    Unpacking initramfs-tools (0.142) over (0.140) ...
    Preparing to unpack .../4-initramfs-tools-core_0.142_all.deb ...
    Unpacking initramfs-tools-core (0.142) over (0.140) ...
    Preparing to unpack .../5-libext2fs2_1.47.0-2_amd64.deb ...
    Unpacking libext2fs2:amd64 (1.47.0-2) over (1.46.2-2) ...
    Setting up libcom-err2:amd64 (1.47.0-2) ...
    Setting up libext2fs2:amd64 (1.47.0-2) ...
    (Reading database ... 32809 files and directories currently installed.)
    Preparing to unpack .../e2fsprogs_1.47.0-2_amd64.deb ...
    Unpacking e2fsprogs (1.47.0-2) over (1.46.2-2) ...
    Preparing to unpack .../libklibc_2.0.12-1_amd64.deb ...
    Unpacking libklibc:amd64 (2.0.12-1) over (2.0.8-6.1) ...
    Preparing to unpack .../linux-base_4.9_all.deb ...
    Unpacking linux-base (4.9) over (4.6) ...
    Preparing to unpack .../cpio_2.13+dfsg-7.1_amd64.deb ...
    Unpacking cpio (2.13+dfsg-7.1) over (2.13+dfsg-7.1~deb11u1) ...
    dpkg: cron: dependency problems, but removing anyway as you requested:
     logrotate depends on cron | anacron | cron-daemon | systemd-sysv; however:
      Package cron is to be removed.
      Package anacron is not installed.
      Package cron-daemon is not installed.
      Package cron which provides cron-daemon is to be removed.
      Package systemd-sysv is not configured yet.
     logrotate depends on cron | anacron | cron-daemon | systemd-sysv; however:
      Package cron is to be removed.
      Package anacron is not installed.
      Package cron-daemon is not installed.
      Package cron which provides cron-daemon is to be removed.
      Package systemd-sysv is not configured yet.

    (Reading database ... 32805 files and directories currently installed.)
    Removing cron (3.0pl1-137) ...
    Selecting previously unselected package cron-daemon-common.
    (Reading database ... 32780 files and directories currently installed.)
    Preparing to unpack .../cron-daemon-common_3.0pl1-162_all.deb ...
    Unpacking cron-daemon-common (3.0pl1-162) ...
    Setting up cron-daemon-common (3.0pl1-162) ...
    Installing new version of config file /etc/crontab ...
    Selecting previously unselected package cron.
    (Reading database ... 32789 files and directories currently installed.)
    Preparing to unpack .../cron_3.0pl1-162_amd64.deb ...
    Unpacking cron (3.0pl1-162) ...
    Preparing to unpack .../sensible-utils_0.0.17+nmu1_all.deb ...
    Unpacking sensible-utils (0.0.17+nmu1) over (0.0.14) ...
    Setting up systemd-sysv (252.17-1~deb12u1) ...
    (Reading database ... 32820 files and directories currently installed.)
    Preparing to unpack .../00-init_1.65.2_amd64.deb ...
    Unpacking init (1.65.2) over (1.60) ...
    Preparing to unpack .../01-libedit2_3.1-20221030-2_amd64.deb ...
    Unpacking libedit2:amd64 (3.1-20221030-2) over (3.1-20191231-2+b1) ...
    Selecting previously unselected package libcbor0.8:amd64.
    Preparing to unpack .../02-libcbor0.8_0.8.0-2+b1_amd64.deb ...
    Unpacking libcbor0.8:amd64 (0.8.0-2+b1) ...
    Preparing to unpack .../03-libfido2-1_1.12.0-2+b1_amd64.deb ...
    Unpacking libfido2-1:amd64 (1.12.0-2+b1) over (1.6.0-2) ...
    Preparing to unpack .../04-openssh-sftp-server_1%3a9.2p1-2+deb12u1_amd64.deb ...
    Unpacking openssh-sftp-server (1:9.2p1-2+deb12u1) over (1:8.4p1-5+deb11u2) ...
    Preparing to unpack .../05-openssh-server_1%3a9.2p1-2+deb12u1_amd64.deb ...
    Unpacking openssh-server (1:9.2p1-2+deb12u1) over (1:8.4p1-5+deb11u2) ...
    Preparing to unpack .../06-openssh-client_1%3a9.2p1-2+deb12u1_amd64.deb ...
    Unpacking openssh-client (1:9.2p1-2+deb12u1) over (1:8.4p1-5+deb11u2) ...
    Selecting previously unselected package libproc2-0:amd64.
    Preparing to unpack .../07-libproc2-0_2%3a4.0.2-3_amd64.deb ...
    Unpacking libproc2-0:amd64 (2:4.0.2-3) ...
    Preparing to unpack .../08-procps_2%3a4.0.2-3_amd64.deb ...
    Unpacking procps (2:4.0.2-3) over (2:3.3.17-5) ...
    Preparing to unpack .../09-ucf_3.0043+nmu1_all.deb ...
    Unpacking ucf (3.0043+nmu1) over (3.0043) ...
    Preparing to unpack .../10-runit-helper_2.15.2_all.deb ...
    Unpacking runit-helper (2.15.2) over (2.10.3) ...
    Preparing to unpack .../11-libwrap0_7.6.q-32_amd64.deb ...
    Unpacking libwrap0:amd64 (7.6.q-32) over (7.6.q-31) ...
    Selecting previously unselected package libpython3.11-minimal:amd64.
    Preparing to unpack .../12-libpython3.11-minimal_3.11.2-6_amd64.deb ...
    Unpacking libpython3.11-minimal:amd64 (3.11.2-6) ...
    Selecting previously unselected package python3.11-minimal.
    Preparing to unpack .../13-python3.11-minimal_3.11.2-6_amd64.deb ...
    Unpacking python3.11-minimal (3.11.2-6) ...
    Preparing to unpack .../14-python3-pycurl_7.45.2-3_amd64.deb ...
    Unpacking python3-pycurl (7.45.2-3) over (7.43.0.6-5) ...
    Preparing to unpack .../15-python3-apt_2.6.0_amd64.deb ...
    Unpacking python3-apt (2.6.0) over (2.2.1) ...
    Setting up libpython3.11-minimal:amd64 (3.11.2-6) ...
    Setting up libexpat1:amd64 (2.5.0-1) ...
    Setting up python3.11-minimal (3.11.2-6) ...
    (Reading database ... 33177 files and directories currently installed.)
    Preparing to unpack .../python3-minimal_3.11.2-1+b1_amd64.deb ...
    Unpacking python3-minimal (3.11.2-1+b1) over (3.9.2-3) ...
    Setting up python3-minimal (3.11.2-1+b1) ...
    (Reading database ... 33178 files and directories currently installed.)
    Preparing to unpack .../00-python3_3.11.2-1+b1_amd64.deb ...
    running python pre-rtupdate hooks for python3.11...
    Unpacking python3 (3.11.2-1+b1) over (3.9.2-3) ...
    Preparing to unpack .../01-libbrotli1_1.0.9-2+b6_amd64.deb ...
    Unpacking libbrotli1:amd64 (1.0.9-2+b6) over (1.0.9-2+b2) ...
    Preparing to unpack .../02-libsasl2-modules-db_2.1.28+dfsg-10_amd64.deb ...
    Unpacking libsasl2-modules-db:amd64 (2.1.28+dfsg-10) over (2.1.27+dfsg-2.1+deb11u1) ...
    Preparing to unpack .../03-libsasl2-2_2.1.28+dfsg-10_amd64.deb ...
    Unpacking libsasl2-2:amd64 (2.1.28+dfsg-10) over (2.1.27+dfsg-2.1+deb11u1) ...
    Selecting previously unselected package libldap-2.5-0:amd64.
    Preparing to unpack .../04-libldap-2.5-0_2.5.13+dfsg-5_amd64.deb ...
    Unpacking libldap-2.5-0:amd64 (2.5.13+dfsg-5) ...
    Preparing to unpack .../05-libnghttp2-14_1.52.0-1+deb12u1_amd64.deb ...
    Unpacking libnghttp2-14:amd64 (1.52.0-1+deb12u1) over (1.43.0-1+deb11u1) ...
    Preparing to unpack .../06-libpsl5_0.21.2-1_amd64.deb ...
    Unpacking libpsl5:amd64 (0.21.2-1) over (0.21.0-1.2) ...
    Preparing to unpack .../07-libssh2-1_1.10.0-3+b1_amd64.deb ...
    Unpacking libssh2-1:amd64 (1.10.0-3+b1) over (1.9.0-2) ...
    Preparing to unpack .../08-libcurl3-gnutls_7.88.1-10+deb12u4_amd64.deb ...
    Unpacking libcurl3-gnutls:amd64 (7.88.1-10+deb12u4) over (7.74.0-1.3+deb11u10) ...
    Preparing to unpack .../09-python-apt-common_2.6.0_all.deb ...
    Unpacking python-apt-common (2.6.0) over (2.2.1) ...
    Preparing to unpack .../10-distro-info-data_0.58_all.deb ...
    Unpacking distro-info-data (0.58) over (0.51+deb11u4) ...
    Preparing to unpack .../11-media-types_10.0.0_all.deb ...
    Unpacking media-types (10.0.0) over (4.0.0) ...
    Preparing to unpack .../12-libsqlite3-0_3.40.1-2_amd64.deb ...
    Unpacking libsqlite3-0:amd64 (3.40.1-2) over (3.34.1-3) ...
    Selecting previously unselected package libpython3.11-stdlib:amd64.
    Preparing to unpack .../13-libpython3.11-stdlib_3.11.2-6_amd64.deb ...
    Unpacking libpython3.11-stdlib:amd64 (3.11.2-6) ...
    Selecting previously unselected package python3.11.
    Preparing to unpack .../14-python3.11_3.11.2-6_amd64.deb ...
    Unpacking python3.11 (3.11.2-6) ...
    Preparing to unpack .../15-libpython3-stdlib_3.11.2-1+b1_amd64.deb ...
    Unpacking libpython3-stdlib:amd64 (3.11.2-1+b1) over (3.9.2-3) ...
    Preparing to unpack .../16-tasksel-data_3.73_all.deb ...
    Unpacking tasksel-data (3.73) over (3.68+deb11u1) ...
    Preparing to unpack .../17-tasksel_3.73_all.deb ...
    Unpacking tasksel (3.73) over (3.68+deb11u1) ...
    Preparing to unpack .../18-libattr1_1%3a2.5.1-4_amd64.deb ...
    Unpacking libattr1:amd64 (1:2.5.1-4) over (1:2.4.48-6) ...
    Setting up libattr1:amd64 (1:2.5.1-4) ...
    Installing new version of config file /etc/xattr.conf ...
    (Reading database ... 33563 files and directories currently installed.)
    Preparing to unpack .../libpcre3_2%3a8.39-15_amd64.deb ...
    Unpacking libpcre3:amd64 (2:8.39-15) over (2:8.39-13) ...
    Setting up libpcre3:amd64 (2:8.39-15) ...
    (Reading database ... 33563 files and directories currently installed.)
    Preparing to unpack .../00-mawk_1.3.4.20200120-3.1_amd64.deb ...
    Unpacking mawk (1.3.4.20200120-3.1) over (1.3.4.20200120-2) ...
    Preparing to unpack .../01-tzdata_2023c-5_all.deb ...
    Unpacking tzdata (2023c-5) over (2021a-1+deb11u10) ...
    Preparing to unpack .../02-dmidecode_3.4-1_amd64.deb ...
    Unpacking dmidecode (3.4-1) over (3.3-2) ...
    Preparing to unpack .../03-iputils-ping_3%3a20221126-1_amd64.deb ...
    Unpacking iputils-ping (3:20221126-1) over (3:20210202-1) ...
    Preparing to unpack .../04-isc-dhcp-client_4.4.3-P1-2_amd64.deb ...
    Unpacking isc-dhcp-client (4.4.3-P1-2) over (4.4.1-2.3+deb11u2) ...
    Preparing to unpack .../05-isc-dhcp-common_4.4.3-P1-2_amd64.deb ...
    Unpacking isc-dhcp-common (4.4.3-P1-2) over (4.4.1-2.3+deb11u2) ...
    Preparing to unpack .../06-libpopt0_1.19+dfsg-1_amd64.deb ...
    Unpacking libpopt0:amd64 (1.19+dfsg-1) over (1.18-2) ...
    Preparing to unpack .../07-logrotate_3.21.0-1_amd64.deb ...
    Unpacking logrotate (3.21.0-1) over (3.18.0-2+deb11u2) ...
    Preparing to unpack .../08-nano_7.2-1_amd64.deb ...
    Unpacking nano (7.2-1) over (5.4-2+deb11u2) ...
    Preparing to unpack .../09-ncurses-term_6.4-4_all.deb ...
    Unpacking ncurses-term (6.4-4) over (6.2+20201114-2+deb11u2) ...
    Preparing to unpack .../10-libslang2_2.3.3-3_amd64.deb ...
    Unpacking libslang2:amd64 (2.3.3-3) over (2.3.2-5) ...
    Preparing to unpack .../11-libnewt0.52_0.52.23-1+b1_amd64.deb ...
    Unpacking libnewt0.52:amd64 (0.52.23-1+b1) over (0.52.21-4+b3) ...
    Preparing to unpack .../12-whiptail_0.52.23-1+b1_amd64.deb ...
    Unpacking whiptail (0.52.23-1+b1) over (0.52.21-4+b3) ...
    Preparing to unpack .../13-bash-completion_1%3a2.11-6_all.deb ...
    Unpacking bash-completion (1:2.11-6) over (1:2.11-2) ...
    Preparing to unpack .../14-openssl_3.0.11-1~deb12u2_amd64.deb ...
    Unpacking openssl (3.0.11-1~deb12u2) over (1.1.1w-0+deb11u1) ...
    Preparing to unpack .../15-ca-certificates_20230311_all.deb ...
    Unpacking ca-certificates (20230311) over (20210119) ...
    Preparing to unpack .../16-file_1%3a5.44-3_amd64.deb ...
    Unpacking file (1:5.44-3) over (1:5.39-3+deb11u1) ...
    Preparing to unpack .../17-libmagic1_1%3a5.44-3_amd64.deb ...
    Unpacking libmagic1:amd64 (1:5.44-3) over (1:5.39-3+deb11u1) ...
    Preparing to unpack .../18-libmagic-mgc_1%3a5.44-3_amd64.deb ...
    Unpacking libmagic-mgc (1:5.44-3) over (1:5.39-3+deb11u1) ...
    Preparing to unpack .../19-gettext-base_0.21-12_amd64.deb ...
    Unpacking gettext-base (0.21-12) over (0.21-4) ...
    Preparing to unpack .../20-manpages_6.03-2_all.deb ...
    Unpacking manpages (6.03-2) over (5.10-1) ...
    Preparing to unpack .../21-pci.ids_0.0~2023.04.11-1_all.deb ...
    Unpacking pci.ids (0.0~2023.04.11-1) over (0.0~2021.02.08-1) ...
    Preparing to unpack .../22-pciutils_1%3a3.9.0-4_amd64.deb ...
    Unpacking pciutils (1:3.9.0-4) over (1:3.7.0-5) ...
    Preparing to unpack .../23-libpci3_1%3a3.9.0-4_amd64.deb ...
    Unpacking libpci3:amd64 (1:3.9.0-4) over (1:3.7.0-5) ...
    Preparing to unpack .../24-reportbug_12.0.0_all.deb ...
    Unpacking reportbug (12.0.0) over (7.10.3+deb11u1) ...
    Preparing to unpack .../25-python3-pkg-resources_66.1.1-1_all.deb ...
    Unpacking python3-pkg-resources (66.1.1-1) over (52.0.0-4) ...
    Preparing to unpack .../26-python3-chardet_5.1.0+dfsg-2_all.deb ...
    Unpacking python3-chardet (5.1.0+dfsg-2) over (4.0.0-1) ...
    Preparing to unpack .../27-python3-debian_0.1.49_all.deb ...
    Unpacking python3-debian (0.1.49) over (0.1.39) ...
    Selecting previously unselected package python3-pyparsing.
    Preparing to unpack .../28-python3-pyparsing_3.0.9-1_all.deb ...
    Unpacking python3-pyparsing (3.0.9-1) ...
    Preparing to unpack .../29-python3-httplib2_0.20.4-3_all.deb ...
    Unpacking python3-httplib2 (0.20.4-3) over (0.18.1-3) ...
    Preparing to unpack .../30-python3-pysimplesoap_1.16.2-5_all.deb ...
    Unpacking python3-pysimplesoap (1.16.2-5) over (1.16.2-3) ...
    Preparing to unpack .../31-python3-debianbts_4.0.1_all.deb ...
    Unpacking python3-debianbts (4.0.1) over (3.1.0) ...
    Preparing to unpack .../32-python3-certifi_2022.9.24-1_all.deb ...
    Unpacking python3-certifi (2022.9.24-1) over (2020.6.20-1) ...
    Selecting previously unselected package python3-charset-normalizer.
    Preparing to unpack .../33-python3-charset-normalizer_3.0.1-2_all.deb ...
    Unpacking python3-charset-normalizer (3.0.1-2) ...
    Preparing to unpack .../34-python3-idna_3.3-1_all.deb ...
    Unpacking python3-idna (3.3-1) over (2.10-1) ...
    Preparing to unpack .../35-python3-six_1.16.0-4_all.deb ...
    Unpacking python3-six (1.16.0-4) over (1.16.0-2) ...
    Preparing to unpack .../36-python3-urllib3_1.26.12-1_all.deb ...
    Unpacking python3-urllib3 (1.26.12-1) over (1.26.5-1~exp1) ...
    Preparing to unpack .../37-python3-requests_2.28.1+dfsg-1_all.deb ...
    Unpacking python3-requests (2.28.1+dfsg-1) over (2.25.1+dfsg-2) ...
    Preparing to unpack .../38-python3-reportbug_12.0.0_all.deb ...
    Unpacking python3-reportbug (12.0.0) over (7.10.3+deb11u1) ...
    Preparing to unpack .../39-wget_1.21.3-1+b2_amd64.deb ...
    Unpacking wget (1.21.3-1+b2) over (1.21-1+deb11u1) ...
    Preparing to unpack .../40-xz-utils_5.4.1-0.2_amd64.deb ...
    Unpacking xz-utils (5.4.1-0.2) over (5.2.5-2.1~deb11u1) ...
    Preparing to unpack .../41-apparmor_3.0.8-3_amd64.deb ...
    Unpacking apparmor (3.0.8-3) over (2.13.6-10) ...
    Preparing to unpack .../42-bsdextrautils_2.38.1-5+b1_amd64.deb ...
    Unpacking bsdextrautils (2.38.1-5+b1) over (2.36.1-8+deb11u1) ...
    Preparing to unpack .../43-ncal_12.1.8_amd64.deb ...
    Unpacking ncal (12.1.8) over (12.1.7+nmu3) ...
    Preparing to unpack .../44-bsdmainutils_12.1.8_all.deb ...
    Unpacking bsdmainutils (12.1.8) over (12.1.7+nmu3) ...
    Selecting previously unselected package dbus-user-session.
    Preparing to unpack .../45-dbus-user-session_1.14.10-1~deb12u1_amd64.deb ...
    Unpacking dbus-user-session (1.14.10-1~deb12u1) ...
    Preparing to unpack .../46-libusb-1.0-0_2%3a1.0.26-1_amd64.deb ...
    Unpacking libusb-1.0-0:amd64 (2:1.0.26-1) over (2:1.0.24-3) ...
    Preparing to unpack .../47-discover-data_2.2013.01.13_all.deb ...
    Unpacking discover-data (2.2013.01.13) over (2.2013.01.11+nmu1) ...
    Preparing to unpack .../48-discover_2.1.2-10_amd64.deb ...
    Unpacking discover (2.1.2-10) over (2.1.2-8) ...
    Preparing to unpack .../49-libdiscover2_2.1.2-10_amd64.deb ...
    Unpacking libdiscover2 (2.1.2-10) over (2.1.2-8) ...
    Preparing to unpack .../50-eject_2.38.1-5+b1_amd64.deb ...
    Unpacking eject (2.38.1-5+b1) over (2.36.1-8+deb11u1) ...
    Preparing to unpack .../51-gdbm-l10n_1.23-3_all.deb ...
    Unpacking gdbm-l10n (1.23-3) over (1.19-2) ...
    Preparing to unpack .../52-grub-pc_2.06-13+deb12u1_amd64.deb ...
    Unpacking grub-pc (2.06-13+deb12u1) over (2.06-3~deb11u6) ...
    Preparing to unpack .../53-grub2-common_2.06-13+deb12u1_amd64.deb ...
    Unpacking grub2-common (2.06-13+deb12u1) over (2.06-3~deb11u6) ...
    Preparing to unpack .../54-grub-pc-bin_2.06-13+deb12u1_amd64.deb ...
    Unpacking grub-pc-bin (2.06-13+deb12u1) over (2.06-3~deb11u6) ...
    Preparing to unpack .../55-libpng16-16_1.6.39-2_amd64.deb ...
    Unpacking libpng16-16:amd64 (1.6.39-2) over (1.6.37-3) ...
    Preparing to unpack .../56-libfreetype6_2.12.1+dfsg-5_amd64.deb ...
    Unpacking libfreetype6:amd64 (2.12.1+dfsg-5) over (2.10.4+dfsg-1+deb11u1) ...
    Preparing to unpack .../57-libfuse2_2.9.9-6+b1_amd64.deb ...
    Unpacking libfuse2:amd64 (2.9.9-6+b1) over (2.9.9-5) ...
    Preparing to unpack .../58-grub-common_2.06-13+deb12u1_amd64.deb ...
    Unpacking grub-common (2.06-13+deb12u1) over (2.06-3~deb11u6) ...
    Preparing to unpack .../59-installation-report_2.89_all.deb ...
    Unpacking installation-report (2.89) over (2.78) ...
    Preparing to unpack .../60-libestr0_0.1.11-1_amd64.deb ...
    Unpacking libestr0:amd64 (0.1.11-1) over (0.1.10-2.1+b1) ...
    Preparing to unpack .../61-libfastjson4_1.2304.0-1_amd64.deb ...
    Unpacking libfastjson4:amd64 (1.2304.0-1) over (0.99.9-1) ...
    Preparing to unpack .../62-libldap-common_2.5.13+dfsg-5_all.deb ...
    Unpacking libldap-common (2.5.13+dfsg-5) over (2.4.57+dfsg-3+deb11u1) ...
    Preparing to unpack .../63-liblognorm5_2.0.6-4_amd64.deb ...
    Unpacking liblognorm5:amd64 (2.0.6-4) over (2.0.5-1.1) ...
    Preparing to unpack .../64-libss2_1.47.0-2_amd64.deb ...
    Unpacking libss2:amd64 (1.47.0-2) over (1.46.2-2) ...
    Preparing to unpack .../65-libx11-data_2%3a1.8.4-2+deb12u2_all.deb ...
    Unpacking libx11-data (2:1.8.4-2+deb12u2) over (2:1.7.2-1+deb11u2) ...
    Preparing to unpack .../66-libxcb1_1.15-1_amd64.deb ...
    Unpacking libxcb1:amd64 (1.15-1) over (1.14-3) ...
    Preparing to unpack .../67-libx11-6_2%3a1.8.4-2+deb12u2_amd64.deb ...
    Unpacking libx11-6:amd64 (2:1.8.4-2+deb12u2) over (2:1.7.2-1+deb11u2) ...
    Preparing to unpack .../68-libxext6_2%3a1.3.4-1+b1_amd64.deb ...
    Unpacking libxext6:amd64 (2:1.3.4-1+b1) over (2:1.3.3-1.1) ...
    Preparing to unpack .../69-libxmuu1_2%3a1.1.3-3_amd64.deb ...
    Unpacking libxmuu1:amd64 (2:1.1.3-3) over (2:1.1.2-2+b3) ...
    Selecting previously unselected package linux-image-6.1.0-13-amd64.
    Preparing to unpack .../70-linux-image-6.1.0-13-amd64_6.1.55-1_amd64.deb ...
    Unpacking linux-image-6.1.0-13-amd64 (6.1.55-1) ...
    Preparing to unpack .../71-linux-image-amd64_6.1.55-1_amd64.deb ...
    Unpacking linux-image-amd64 (6.1.55-1) over (5.10.197-1) ...
    Preparing to unpack .../72-mailcap_3.70+nmu1_all.deb ...
    Unpacking mailcap (3.70+nmu1) over (3.69) ...
    Preparing to unpack .../73-os-prober_1.81_amd64.deb ...
    Unpacking os-prober (1.81) over (1.79) ...
    Preparing to unpack .../74-rsyslog_8.2302.0-1_amd64.deb ...
    Unpacking rsyslog (8.2302.0-1) over (8.2102.0-2+deb11u1) ...
    Preparing to unpack .../75-usb.ids_2023.05.17-0+deb12u1_all.deb ...
    Unpacking usb.ids (2023.05.17-0+deb12u1) over (2023.01.16-0+deb11u1) ...
    Preparing to unpack .../76-usbutils_1%3a014-1_amd64.deb ...
    Unpacking usbutils (1:014-1) over (1:013-3) ...
    Preparing to unpack .../77-xauth_1%3a1.1.2-1_amd64.deb ...
    Unpacking xauth (1:1.1.2-1) over (1:1.1-1) ...
    Selecting previously unselected package zstd.
    Preparing to unpack .../78-zstd_1.5.4+dfsg2-5_amd64.deb ...
    Unpacking zstd (1.5.4+dfsg2-5) ...
    Setting up media-types (10.0.0) ...
    Installing new version of config file /etc/mime.types ...
    Setting up cpio (2.13+dfsg-7.1) ...
    Setting up libtext-iconv-perl:amd64 (1.7-8) ...
    Setting up libtext-charwidth-perl:amd64 (0.04-11) ...
    Setting up runit-helper (2.15.2) ...
    Setting up lsb-base (11.6) ...
    Setting up libkeyutils1:amd64 (1.6.3-2) ...
    Setting up libc-l10n (2.36-9+deb12u3) ...
    Setting up pci.ids (0.0~2023.04.11-1) ...
    Setting up libpsl5:amd64 (0.21.2-1) ...
    Setting up libxcb1:amd64 (1.15-1) ...
    Setting up apt-utils (2.6.1) ...
    Setting up linux-base (4.9) ...
    Setting up bsdextrautils (2.38.1-5+b1) ...
    Setting up wget (1.21.3-1+b2) ...
    Setting up init (1.65.2) ...
    Setting up libmagic-mgc (1:5.44-3) ...
    Setting up ncal (12.1.8) ...
    Setting up libip6tc2:amd64 (1.8.9-2) ...
    Setting up distro-info-data (0.58) ...
    Setting up manpages (6.03-2) ...
    Setting up libestr0:amd64 (0.1.11-1) ...
    Setting up libfastjson4:amd64 (1.2304.0-1) ...
    Setting up libtirpc-common (1.3.3+ds-1) ...
    Setting up libcbor0.8:amd64 (0.8.0-2+b1) ...
    Setting up libbrotli1:amd64 (1.0.9-2+b6) ...
    Setting up libsqlite3-0:amd64 (3.40.1-2) ...
    Setting up installation-report (2.89) ...
    Setting up libnghttp2-14:amd64 (1.52.0-1+deb12u1) ...
    Setting up libmagic1:amd64 (1:5.44-3) ...
    Setting up less (590-2) ...
    Setting up gettext-base (0.21-12) ...
    Setting up libnss-systemd:amd64 (252.17-1~deb12u1) ...
    Setting up xkb-data (2.35.1-1) ...
    Setting up libnftnl11:amd64 (1.2.4-2) ...
    Setting up file (1:5.44-3) ...
    Setting up kmod (30+20221128-1) ...
    Installing new version of config file /etc/init.d/kmod ...
    Setting up libfuse2:amd64 (2.9.9-6+b1) ...
    Setting up bzip2 (1.0.8-5+b1) ...
    Setting up locales (2.36-9+deb12u3) ...
    Installing new version of config file /etc/locale.alias ...
    Generating locales (this might take a while)...
      en_US.UTF-8... done
    Generation complete.
    Setting up libldap-common (2.5.13+dfsg-5) ...
    Setting up libtext-wrapi18n-perl (0.06-10) ...
    Setting up xxd (2:9.0.1378-2) ...
    Setting up libkrb5support0:amd64 (1.20.1-2+deb12u1) ...
    Setting up libsasl2-modules-db:amd64 (2.1.28+dfsg-10) ...
    Setting up tzdata (2023c-5) ...

    Current default time zone: 'America/New_York'
    Local time is now:      Tue Dec  5 12:37:41 EST 2023.
    Universal Time is now:  Tue Dec  5 17:37:41 UTC 2023.
    Run 'dpkg-reconfigure tzdata' if you wish to change it.

    Setting up libcap2-bin (1:2.66-4) ...
    Setting up eject (2.38.1-5+b1) ...
    Setting up apparmor (3.0.8-3) ...
    Installing new version of config file /etc/apparmor.d/abstractions/X ...
    Installing new version of config file /etc/apparmor.d/abstractions/apache2-common ...
    Installing new version of config file /etc/apparmor.d/abstractions/apparmor_api/change_profile ...
    Installing new version of config file /etc/apparmor.d/abstractions/apparmor_api/examine ...
    Installing new version of config file /etc/apparmor.d/abstractions/apparmor_api/find_mountpoint ...
    Installing new version of config file /etc/apparmor.d/abstractions/apparmor_api/introspect ...
    Installing new version of config file /etc/apparmor.d/abstractions/apparmor_api/is_enabled ...
    Installing new version of config file /etc/apparmor.d/abstractions/aspell ...
    Installing new version of config file /etc/apparmor.d/abstractions/audio ...
    Installing new version of config file /etc/apparmor.d/abstractions/authentication ...
    Installing new version of config file /etc/apparmor.d/abstractions/base ...
    Installing new version of config file /etc/apparmor.d/abstractions/bash ...
    Installing new version of config file /etc/apparmor.d/abstractions/consoles ...
    Installing new version of config file /etc/apparmor.d/abstractions/cups-client ...
    Installing new version of config file /etc/apparmor.d/abstractions/dbus ...
    Installing new version of config file /etc/apparmor.d/abstractions/dbus-accessibility ...
    Installing new version of config file /etc/apparmor.d/abstractions/dbus-accessibility-strict ...
    Installing new version of config file /etc/apparmor.d/abstractions/dbus-network-manager-strict ...
    Installing new version of config file /etc/apparmor.d/abstractions/dbus-session ...
    Installing new version of config file /etc/apparmor.d/abstractions/dbus-session-strict ...
    Installing new version of config file /etc/apparmor.d/abstractions/dbus-strict ...
    Installing new version of config file /etc/apparmor.d/abstractions/dconf ...
    Installing new version of config file /etc/apparmor.d/abstractions/dovecot-common ...
    Installing new version of config file /etc/apparmor.d/abstractions/dri-common ...
    Installing new version of config file /etc/apparmor.d/abstractions/dri-enumerate ...
    Installing new version of config file /etc/apparmor.d/abstractions/enchant ...
    Installing new version of config file /etc/apparmor.d/abstractions/exo-open ...
    Installing new version of config file /etc/apparmor.d/abstractions/fcitx ...
    Installing new version of config file /etc/apparmor.d/abstractions/fcitx-strict ...
    Installing new version of config file /etc/apparmor.d/abstractions/fonts ...
    Installing new version of config file /etc/apparmor.d/abstractions/freedesktop.org ...
    Installing new version of config file /etc/apparmor.d/abstractions/gio-open ...
    Installing new version of config file /etc/apparmor.d/abstractions/gnome ...
    Installing new version of config file /etc/apparmor.d/abstractions/gnupg ...
    Installing new version of config file /etc/apparmor.d/abstractions/gvfs-open ...
    Installing new version of config file /etc/apparmor.d/abstractions/hosts_access ...
    Installing new version of config file /etc/apparmor.d/abstractions/ibus ...
    Installing new version of config file /etc/apparmor.d/abstractions/kde ...
    Installing new version of config file /etc/apparmor.d/abstractions/kde-globals-write ...
    Installing new version of config file /etc/apparmor.d/abstractions/kde-icon-cache-write ...
    Installing new version of config file /etc/apparmor.d/abstractions/kde-language-write ...
    Installing new version of config file /etc/apparmor.d/abstractions/kde-open5 ...
    Installing new version of config file /etc/apparmor.d/abstractions/kerberosclient ...
    Installing new version of config file /etc/apparmor.d/abstractions/ldapclient ...
    Installing new version of config file /etc/apparmor.d/abstractions/libpam-systemd ...
    Installing new version of config file /etc/apparmor.d/abstractions/likewise ...
    Installing new version of config file /etc/apparmor.d/abstractions/mdns ...
    Installing new version of config file /etc/apparmor.d/abstractions/mesa ...
    Installing new version of config file /etc/apparmor.d/abstractions/mir ...
    Installing new version of config file /etc/apparmor.d/abstractions/mozc ...
    Installing new version of config file /etc/apparmor.d/abstractions/mysql ...
    Installing new version of config file /etc/apparmor.d/abstractions/nameservice ...
    Installing new version of config file /etc/apparmor.d/abstractions/nis ...
    Installing new version of config file /etc/apparmor.d/abstractions/nvidia ...
    Installing new version of config file /etc/apparmor.d/abstractions/opencl ...
    Installing new version of config file /etc/apparmor.d/abstractions/opencl-common ...
    Installing new version of config file /etc/apparmor.d/abstractions/opencl-intel ...
    Installing new version of config file /etc/apparmor.d/abstractions/opencl-mesa ...
    Installing new version of config file /etc/apparmor.d/abstractions/opencl-nvidia ...
    Installing new version of config file /etc/apparmor.d/abstractions/opencl-pocl ...
    Installing new version of config file /etc/apparmor.d/abstractions/openssl ...
    Installing new version of config file /etc/apparmor.d/abstractions/orbit2 ...
    Installing new version of config file /etc/apparmor.d/abstractions/p11-kit ...
    Installing new version of config file /etc/apparmor.d/abstractions/perl ...
    Installing new version of config file /etc/apparmor.d/abstractions/php ...
    Installing new version of config file /etc/apparmor.d/abstractions/php5 ...
    Installing new version of config file /etc/apparmor.d/abstractions/postfix-common ...
    Installing new version of config file /etc/apparmor.d/abstractions/private-files ...
    Installing new version of config file /etc/apparmor.d/abstractions/private-files-strict ...
    Installing new version of config file /etc/apparmor.d/abstractions/python ...
    Installing new version of config file /etc/apparmor.d/abstractions/qt5 ...
    Installing new version of config file /etc/apparmor.d/abstractions/qt5-compose-cache-write ...
    Installing new version of config file /etc/apparmor.d/abstractions/qt5-settings-write ...
    Installing new version of config file /etc/apparmor.d/abstractions/recent-documents-write ...
    Installing new version of config file /etc/apparmor.d/abstractions/ruby ...
    Installing new version of config file /etc/apparmor.d/abstractions/samba ...
    Installing new version of config file /etc/apparmor.d/abstractions/smbpass ...
    Installing new version of config file /etc/apparmor.d/abstractions/ssl_certs ...
    Installing new version of config file /etc/apparmor.d/abstractions/ssl_keys ...
    Installing new version of config file /etc/apparmor.d/abstractions/svn-repositories ...
    Installing new version of config file /etc/apparmor.d/abstractions/ubuntu-bittorrent-clients ...
    Installing new version of config file /etc/apparmor.d/abstractions/ubuntu-browsers ...
    Installing new version of config file /etc/apparmor.d/abstractions/ubuntu-browsers.d/java ...
    Installing new version of config file /etc/apparmor.d/abstractions/ubuntu-browsers.d/kde ...
    Installing new version of config file /etc/apparmor.d/abstractions/ubuntu-browsers.d/mailto ...
    Installing new version of config file /etc/apparmor.d/abstractions/ubuntu-browsers.d/multimedia ...
    Installing new version of config file /etc/apparmor.d/abstractions/ubuntu-browsers.d/plugins-common ...
    Installing new version of config file /etc/apparmor.d/abstractions/ubuntu-browsers.d/productivity ...
    Installing new version of config file /etc/apparmor.d/abstractions/ubuntu-browsers.d/text-editors ...
    Installing new version of config file /etc/apparmor.d/abstractions/ubuntu-browsers.d/ubuntu-integration ...
    Installing new version of config file /etc/apparmor.d/abstractions/ubuntu-browsers.d/ubuntu-integration-xul ...
    Installing new version of config file /etc/apparmor.d/abstractions/ubuntu-browsers.d/user-files ...
    Installing new version of config file /etc/apparmor.d/abstractions/ubuntu-console-browsers ...
    Installing new version of config file /etc/apparmor.d/abstractions/ubuntu-console-email ...
    Installing new version of config file /etc/apparmor.d/abstractions/ubuntu-email ...
    Installing new version of config file /etc/apparmor.d/abstractions/ubuntu-feed-readers ...
    Installing new version of config file /etc/apparmor.d/abstractions/ubuntu-gnome-terminal ...
    Installing new version of config file /etc/apparmor.d/abstractions/ubuntu-helpers ...
    Installing new version of config file /etc/apparmor.d/abstractions/ubuntu-konsole ...
    Installing new version of config file /etc/apparmor.d/abstractions/ubuntu-media-players ...
    Installing new version of config file /etc/apparmor.d/abstractions/ubuntu-unity7-base ...
    Installing new version of config file /etc/apparmor.d/abstractions/ubuntu-unity7-launcher ...
    Installing new version of config file /etc/apparmor.d/abstractions/ubuntu-unity7-messaging ...
    Installing new version of config file /etc/apparmor.d/abstractions/ubuntu-xterm ...
    Installing new version of config file /etc/apparmor.d/abstractions/user-download ...
    Installing new version of config file /etc/apparmor.d/abstractions/user-mail ...
    Installing new version of config file /etc/apparmor.d/abstractions/user-manpages ...
    Installing new version of config file /etc/apparmor.d/abstractions/user-tmp ...
    Installing new version of config file /etc/apparmor.d/abstractions/user-write ...
    Installing new version of config file /etc/apparmor.d/abstractions/video ...
    Installing new version of config file /etc/apparmor.d/abstractions/vulkan ...
    Installing new version of config file /etc/apparmor.d/abstractions/wayland ...
    Installing new version of config file /etc/apparmor.d/abstractions/web-data ...
    Installing new version of config file /etc/apparmor.d/abstractions/winbind ...
    Installing new version of config file /etc/apparmor.d/abstractions/wutmp ...
    Installing new version of config file /etc/apparmor.d/abstractions/xad ...
    Installing new version of config file /etc/apparmor.d/abstractions/xdg-desktop ...
    Installing new version of config file /etc/apparmor.d/abstractions/xdg-open ...
    Installing new version of config file /etc/apparmor.d/local/README ...
    Installing new version of config file /etc/apparmor.d/lsb_release ...
    Installing new version of config file /etc/apparmor.d/nvidia_modprobe ...
    Installing new version of config file /etc/apparmor.d/tunables/apparmorfs ...
    Installing new version of config file /etc/apparmor.d/tunables/global ...
    Installing new version of config file /etc/apparmor.d/tunables/home ...
    Installing new version of config file /etc/apparmor.d/tunables/multiarch ...
    Installing new version of config file /etc/apparmor.d/tunables/xdg-user-dirs ...
    Installing new version of config file /etc/apparmor/parser.conf ...
    Reloading AppArmor profiles
    Setting up busybox (1:1.35.0-4+b3) ...
    Setting up libklibc:amd64 (2.0.12-1) ...
    Setting up vim-common (2:9.0.1378-2) ...
    Installing new version of config file /etc/vim/vimrc ...
    Setting up libslang2:amd64 (2.3.3-3) ...
    Setting up libwrap0:amd64 (7.6.q-32) ...
    Setting up libx11-data (2:1.8.4-2+deb12u2) ...
    Setting up bash-completion (1:2.11-6) ...
    Setting up libiptc0:amd64 (1.8.9-2) ...
    Setting up libncurses6:amd64 (6.4-4) ...
    Setting up libdbus-1-3:amd64 (1.14.10-1~deb12u1) ...
    Setting up xz-utils (5.4.1-0.2) ...
    Setting up libproc2-0:amd64 (2:4.0.2-3) ...
    Setting up bsdmainutils (12.1.8) ...
    Setting up libpng16-16:amd64 (1.6.39-2) ...
    Setting up systemd-timesyncd (252.17-1~deb12u1) ...
    Installing new version of config file /etc/systemd/timesyncd.conf ...
    Setting up udev (252.17-1~deb12u1) ...
    Setting up libss2:amd64 (1.47.0-2) ...
    Setting up usb.ids (2023.05.17-0+deb12u1) ...
    Setting up util-linux (2.38.1-5+b1) ...
    fstrim.timer is a disabled or a static unit not running, not starting it.
    fstrim.service is a disabled or a static unit not running, not starting it.
    Setting up libncursesw6:amd64 (6.4-4) ...
    Setting up libk5crypto3:amd64 (1.20.1-2+deb12u1) ...
    Setting up libxtables12:amd64 (1.8.9-2) ...
    Setting up gdbm-l10n (1.23-3) ...
    Setting up logsave (1.47.0-2) ...
    Setting up libsasl2-2:amd64 (2.1.28+dfsg-10) ...
    Setting up liblognorm5:amd64 (2.0.6-4) ...
    Setting up nano (7.2-1) ...
    Installing new version of config file /etc/nanorc ...
    Setting up libpci3:amd64 (1:3.9.0-4) ...
    Setting up python-apt-common (2.6.0) ...
    Setting up mount (2.38.1-5+b1) ...
    Setting up sensible-utils (0.0.17+nmu1) ...
    Setting up libnfnetlink0:amd64 (1.0.2-2) ...
    Setting up dbus-session-bus-common (1.14.10-1~deb12u1) ...
    Setting up procps (2:4.0.2-3) ...
    Installing new version of config file /etc/init.d/procps ...
    Installing new version of config file /etc/sysctl.d/README.sysctl ...
    Setting up libx11-6:amd64 (2:1.8.4-2+deb12u2) ...
    Setting up kbd (2.5.1-1+b1) ...
    Setting up libssh2-1:amd64 (1.10.0-3+b1) ...
    Setting up netbase (6.4) ...
    Installing new version of config file /etc/ethertypes ...
    Installing new version of config file /etc/protocols ...
    Installing new version of config file /etc/rpc ...
    Setting up discover-data (2.2013.01.13) ...
    Setting up isc-dhcp-common (4.4.3-P1-2) ...
    Setting up mawk (1.3.4.20200120-3.1) ...
    Setting up libkrb5-3:amd64 (1.20.1-2+deb12u1) ...
    Setting up libusb-1.0-0:amd64 (2:1.0.26-1) ...
    Setting up dmidecode (3.4-1) ...
    Setting up dbus-system-bus-common (1.14.10-1~deb12u1) ...
    Setting up libfido2-1:amd64 (1.12.0-2+b1) ...
    Setting up klibc-utils (2.0.12-1) ...
    Setting up openssl (3.0.11-1~deb12u2) ...
    Installing new version of config file /etc/ssl/openssl.cnf ...
    Setting up libbsd0:amd64 (0.11.7-2) ...
    Setting up mailcap (3.70+nmu1) ...
    Setting up libelf1:amd64 (0.188-2.1) ...
    Setting up iputils-ping (3:20221126-1) ...
    Setting up readline-common (8.2-1.3) ...
    Setting up zstd (1.5.4+dfsg2-5) ...
    Setting up libxmuu1:amd64 (2:1.1.3-3) ...
    Setting up dbus-bin (1.14.10-1~deb12u1) ...
    Setting up liblocale-gettext-perl (1.07-5) ...
    Setting up libbpf1:amd64 (1:1.1.0-1) ...
    Setting up libpopt0:amd64 (1.19+dfsg-1) ...
    Setting up ncurses-term (6.4-4) ...
    Setting up logrotate (3.21.0-1) ...
    logrotate.service is a disabled or a static unit not running, not starting it.
    Setting up libnewt0.52:amd64 (0.52.23-1+b1) ...
    Setting up libdiscover2 (2.1.2-10) ...
    Setting up libedit2:amd64 (3.1-20221030-2) ...
    Setting up libreadline8:amd64 (8.2-1.3) ...
    Setting up cron (3.0pl1-162) ...
    Setting up rsyslog (8.2302.0-1) ...
    Installing new version of config file /etc/logrotate.d/rsyslog ...
    Installing new version of config file /etc/rsyslog.conf ...
    Removing obsolete conffile /etc/init.d/rsyslog ...
    Setting up libxext6:amd64 (2:1.3.4-1+b1) ...
    Setting up debconf-i18n (1.5.82) ...
    Setting up e2fsprogs (1.47.0-2) ...
    Installing new version of config file /etc/mke2fs.conf ...
    update-initramfs: deferring update (trigger activated)
    e2scrub_all.service is a disabled or a static unit not running, not starting it.
    Setting up dbus-daemon (1.14.10-1~deb12u1) ...
    Setting up vim-tiny (2:9.0.1378-2) ...
    Installing new version of config file /etc/vim/vimrc.tiny ...
    update-alternatives: updating alternative /usr/bin/vim.tiny because link group ex has changed slave links
    update-alternatives: updating alternative /usr/bin/vim.tiny because link group vi has changed slave links
    update-alternatives: updating alternative /usr/bin/vim.tiny because link group view has changed slave links
    Setting up usbutils (1:014-1) ...
    Setting up libldap-2.5-0:amd64 (2.5.13+dfsg-5) ...
    Setting up fdisk (2.38.1-5+b1) ...
    Setting up ca-certificates (20230311) ...
    Updating certificates in /etc/ssl/certs...
    rehash: warning: skipping ca-certificates.crt,it does not contain exactly one certificate or CRL
    26 added, 15 removed; done.
    Setting up libfreetype6:amd64 (2.12.1+dfsg-5) ...
    Setting up dbus (1.14.10-1~deb12u1) ...
    A reboot is required to replace the running dbus-daemon.
    Please reboot the system when convenient.
    dbus.service is a disabled or a static unit, not starting it.
    Setting up libgssapi-krb5-2:amd64 (1.20.1-2+deb12u1) ...
    Setting up ucf (3.0043+nmu1) ...
    Setting up pciutils (1:3.9.0-4) ...
    Setting up whiptail (0.52.23-1+b1) ...
    Setting up xauth (1:1.1.2-1) ...
    Setting up libnetfilter-conntrack3:amd64 (1.0.9-3) ...
    Setting up libpam-systemd:amd64 (252.17-1~deb12u1) ...
    Setting up keyboard-configuration (1.221) ...
    Setting up discover (2.1.2-10) ...
    Setting up initramfs-tools-core (0.142) ...
    Installing new version of config file /etc/initramfs-tools/initramfs.conf ...
    Setting up libtirpc3:amd64 (1.3.3+ds-1) ...
    Setting up initramfs-tools (0.142) ...
    update-initramfs: deferring update (trigger activated)
    Setting up iptables (1.8.9-2) ...
    Setting up iproute2 (6.1.0-3) ...
    Installing new version of config file /etc/iproute2/rt_protos ...
    Setting up openssh-client (1:9.2p1-2+deb12u1) ...
    Setting up libpython3.11-stdlib:amd64 (3.11.2-6) ...
    Setting up isc-dhcp-client (4.4.3-P1-2) ...
    Setting up libcurl3-gnutls:amd64 (7.88.1-10+deb12u4) ...
    Setting up grub-common (2.06-13+deb12u1) ...
    Installing new version of config file /etc/grub.d/30_os-prober ...
    Setting up dbus-user-session (1.14.10-1~deb12u1) ...
    Setting up os-prober (1.81) ...
    Setting up ifupdown (0.8.41) ...
    Installing new version of config file /etc/init.d/networking ...
    Setting up linux-image-6.1.0-13-amd64 (6.1.55-1) ...
    I: /vmlinuz.old is now a symlink to boot/vmlinuz-5.10.0-26-amd64
    I: /initrd.img.old is now a symlink to boot/initrd.img-5.10.0-26-amd64
    I: /vmlinuz is now a symlink to boot/vmlinuz-6.1.0-13-amd64
    I: /initrd.img is now a symlink to boot/initrd.img-6.1.0-13-amd64
    /etc/kernel/postinst.d/initramfs-tools:
    update-initramfs: Generating /boot/initrd.img-6.1.0-13-amd64
    W: initramfs-tools configuration sets RESUME=UUID=41927fad-bbf7-4119-9909-d606ab124ab6
    W: but no matching swap device is available.
    /etc/kernel/postinst.d/zz-update-grub:
    Generating grub configuration file ...
    Found linux image: /boot/vmlinuz-6.1.0-13-amd64
    Found initrd image: /boot/initrd.img-6.1.0-13-amd64
    Found linux image: /boot/vmlinuz-5.10.0-26-amd64
    Found initrd image: /boot/initrd.img-5.10.0-26-amd64
    Found linux image: /boot/vmlinuz-4.19.0-23-amd64
    Found initrd image: /boot/initrd.img-4.19.0-23-amd64
    Warning: os-prober will not be executed to detect other bootable partitions.
    Systems on them will not be added to the GRUB boot configuration.
    Check GRUB_DISABLE_OS_PROBER documentation entry.
    done
    Setting up console-setup-linux (1.221) ...
    Installing new version of config file /etc/console-setup/compose.ISO-8859-1.inc ...
    Installing new version of config file /etc/console-setup/compose.ISO-8859-13.inc ...
    Installing new version of config file /etc/console-setup/compose.ISO-8859-14.inc ...
    Installing new version of config file /etc/console-setup/compose.ISO-8859-15.inc ...
    Installing new version of config file /etc/console-setup/compose.ISO-8859-2.inc ...
    Installing new version of config file /etc/console-setup/compose.ISO-8859-3.inc ...
    Installing new version of config file /etc/console-setup/compose.ISO-8859-4.inc ...
    Installing new version of config file /etc/console-setup/compose.ISO-8859-7.inc ...
    Installing new version of config file /etc/console-setup/compose.ISO-8859-9.inc ...
    Installing new version of config file /etc/console-setup/compose.KOI8-R.inc ...
    Installing new version of config file /etc/console-setup/compose.KOI8-U.inc ...
    Installing new version of config file /etc/console-setup/compose.VISCII.inc ...
    Installing new version of config file /etc/init.d/console-setup.sh ...
    Installing new version of config file /etc/init.d/keyboard-setup.sh ...
    Setting up libpython3-stdlib:amd64 (3.11.2-1+b1) ...
    Setting up openssh-sftp-server (1:9.2p1-2+deb12u1) ...
    Setting up python3.11 (3.11.2-6) ...
    Setting up console-setup (1.221) ...
    Setting up openssh-server (1:9.2p1-2+deb12u1) ...
    Installing new version of config file /etc/init.d/ssh ...
    Installing new version of config file /etc/ssh/moduli ...
    rescue-ssh.target is a disabled or a static unit not running, not starting it.
    ssh.socket is a disabled or a static unit not running, not starting it.
    Setting up grub2-common (2.06-13+deb12u1) ...
    Setting up python3 (3.11.2-1+b1) ...
    running python rtupdate hooks for python3.11...
    running python post-rtupdate hooks for python3.11...
    Setting up linux-image-amd64 (6.1.55-1) ...
    Setting up grub-pc-bin (2.06-13+deb12u1) ...
    Setting up grub-pc (2.06-13+deb12u1) ...
    Replacing config file /etc/default/grub with new version
    grub-pc: Running grub-install ...
    Installing for i386-pc platform.
    Installation finished. No error reported.
      grub-install success for /dev/vda
    Generating grub configuration file ...
    Found linux image: /boot/vmlinuz-6.1.0-13-amd64
    Found initrd image: /boot/initrd.img-6.1.0-13-amd64
    Found linux image: /boot/vmlinuz-5.10.0-26-amd64
    Found initrd image: /boot/initrd.img-5.10.0-26-amd64
    Found linux image: /boot/vmlinuz-4.19.0-23-amd64
    Found initrd image: /boot/initrd.img-4.19.0-23-amd64
    Warning: os-prober will not be executed to detect other bootable partitions.
    Systems on them will not be added to the GRUB boot configuration.
    Check GRUB_DISABLE_OS_PROBER documentation entry.
    done
    Setting up python3-six (1.16.0-4) ...
    Setting up python3-pycurl (7.45.2-3) ...
    Setting up python3-pyparsing (3.0.9-1) ...
    Setting up python3-certifi (2022.9.24-1) ...
    Setting up python3-idna (3.3-1) ...
    Setting up python3-urllib3 (1.26.12-1) ...
    Setting up python3-httplib2 (0.20.4-3) ...
    Setting up python3-pkg-resources (66.1.1-1) ...
    Setting up python3-apt (2.6.0) ...
    Setting up python3-charset-normalizer (3.0.1-2) ...
    Setting up python3-chardet (5.1.0+dfsg-2) ...
    Setting up python3-debian (0.1.49) ...
    Setting up python3-requests (2.28.1+dfsg-1) ...
    Setting up python3-pysimplesoap (1.16.2-5) ...
    Setting up python3-debianbts (4.0.1) ...
    Setting up python3-reportbug (12.0.0) ...
    Setting up reportbug (12.0.0) ...
    Installing new version of config file /etc/reportbug.conf ...
    Setting up tasksel (3.73) ...
    Setting up tasksel-data (3.73) ...
    Processing triggers for debianutils (5.7-0.5~deb12u1) ...
    Processing triggers for libc-bin (2.36-9+deb12u3) ...
    Processing triggers for systemd (252.17-1~deb12u1) ...
    Processing triggers for ca-certificates (20230311) ...
    Updating certificates in /etc/ssl/certs...
    0 added, 0 removed; done.
    Running hooks in /etc/ca-certificates/update.d...
    done.
    Processing triggers for initramfs-tools (0.142) ...
    update-initramfs: Generating /boot/initrd.img-6.1.0-13-amd64
    W: initramfs-tools configuration sets RESUME=UUID=41927fad-bbf7-4119-9909-d606ab124ab6
    W: but no matching swap device is available.
     

     


     

    Now let's try apt update

    apt update
    Hit:1 http://deb.debian.org/debian bookworm InRelease
    Hit:2 http://deb.debian.org/debian bookworm-updates InRelease
    Get:3 http://deb.debian.org/debian-security bookworm-security InRelease [48.0 kB]
    Get:4 http://deb.debian.org/debian-security bookworm-security/main amd64 Packages [106 kB]
    Get:5 http://deb.debian.org/debian-security bookworm-security/main Translation-en [64.1 kB]
    Fetched 170 kB in 1s (337 kB/s)                                  
    Reading package lists... Done
    Building dependency tree       
    Reading state information... Done
    252 packages can be upgraded. Run 'apt list --upgradable' to see them.

     

     

    Warning DO NOT Upgrade To Debian 12 if you are not running Debian 11.

    Here is what happens if going from Debian 10 to 12, and you will have a broken OS if you do below.

    apt dist-upgrade


    Reading package lists... Done
    Building dependency tree       
    Reading state information... Done
    Calculating upgrade... Done
    The following packages were automatically installed and are no longer required:
      bsdmainutils libldap-2.4-2 libmpdec2 libpython3.7-minimal libpython3.7-stdlib libreadline7 libusb-0.1-4 python3.7 python3.7-minimal usb.ids
    Use 'apt autoremove' to remove them.
    The following packages will be REMOVED:
      libsemanage1
    The following NEW packages will be installed:
      bsdextrautils cron-daemon-common dbus-bin dbus-daemon dbus-session-bus-common dbus-system-bus-common dbus-user-session distro-info-data gcc-12-base libapt-pkg6.0 libbpf1 libbrotli1 libcbor0.8 libcrypt1
      libffi8 libfido2-1 libfile-find-rule-perl libgcc-s1 libgdbm-compat4 libgdbm6 libhogweed6 libip4tc2 libip6tc2 libjson-c5 libldap-2.5-0 libmd0 libnettle8 libnsl2 libnumber-compare-perl libperl5.36
      libproc2-0 libpython3.11-minimal libpython3.11-stdlib libreadline8 libsemanage2 libsepol2 libssl3 libsystemd-shared libtext-glob-perl libtirpc-common libtirpc3 libxxhash0 linux-image-6.1.0-13-amd64
      logsave mailcap media-types ncal pci.ids perl perl-modules-5.36 python3-charset-normalizer python3-pyparsing python3.11 python3.11-minimal runit-helper systemd-timesyncd usrmerge util-linux-extra zstd
    The following packages will be upgraded:
      adduser apparmor apt apt-utils base-files base-passwd bash bash-completion bsdmainutils bsdutils busybox bzip2 ca-certificates console-setup console-setup-linux coreutils cpio cron dash dbus debconf
      debconf-i18n debian-archive-keyring debianutils diffutils dirmngr discover discover-data dmidecode dmsetup dpkg e2fsprogs eject fdisk file findutils firmware-linux-free gdbm-l10n gettext-base gnupg
      gnupg-l10n gnupg-utils gpg gpg-agent gpg-wks-client gpg-wks-server gpgconf gpgsm gpgv grep grub-common grub-pc grub-pc-bin grub2-common gzip hostname ifupdown init init-system-helpers initramfs-tools
      initramfs-tools-core installation-report iproute2 iptables iputils-ping isc-dhcp-client isc-dhcp-common kbd keyboard-configuration klibc-utils kmod less libacl1 libapparmor1 libargon2-1 libassuan0
      libattr1 libaudit-common libaudit1 libblkid1 libbsd0 libbz2-1.0 libc-bin libc-l10n libc6 libcap-ng0 libcap2 libcap2-bin libcom-err2 libcryptsetup12 libcurl3-gnutls libdb5.3 libdbus-1-3 libdebconfclient0
      libdevmapper1.02.1 libdiscover2 libedit2 libefiboot1 libefivar1 libelf1 libestr0 libexpat1 libext2fs2 libfastjson4 libfdisk1 libfreetype6 libfuse2 libgcrypt20 libgmp10 libgnutls30 libgpg-error0
      libgssapi-krb5-2 libidn2-0 libiptc0 libk5crypto3 libkeyutils1 libklibc libkmod2 libkrb5-3 libkrb5support0 libksba8 libldap-common liblocale-gettext-perl liblockfile-bin liblognorm5 liblz4-1 liblzma5
      libmagic-mgc libmagic1 libmnl0 libmount1 libncurses6 libncursesw6 libnetfilter-conntrack3 libnewt0.52 libnfnetlink0 libnftnl11 libnghttp2-14 libnpth0 libnss-systemd libp11-kit0 libpam-modules
      libpam-modules-bin libpam-runtime libpam-systemd libpam0g libpci3 libpcre2-8-0 libpcre3 libpng16-16 libpopt0 libpsl5 libpython3-stdlib librtmp1 libsasl2-2 libsasl2-modules-db libseccomp2 libselinux1
      libsemanage-common libslang2 libsmartcols1 libsqlite3-0 libss2 libssh2-1 libstdc++6 libsystemd0 libtasn1-6 libtext-charwidth-perl libtext-iconv-perl libtext-wrapi18n-perl libtinfo6 libudev1 libunistring2
      libusb-1.0-0 libuuid1 libwrap0 libx11-6 libx11-data libxau6 libxcb1 libxext6 libxmuu1 libxtables12 libzstd1 linux-base linux-image-amd64 locales login logrotate lsb-base manpages mawk mime-support mount
      nano ncurses-base ncurses-bin ncurses-term netbase openssh-client openssh-server openssh-sftp-server openssl os-prober passwd pciutils perl-base pinentry-curses procps python-apt-common python3
      python3-apt python3-certifi python3-chardet python3-debian python3-debianbts python3-httplib2 python3-idna python3-minimal python3-pkg-resources python3-pycurl python3-pysimplesoap python3-reportbug
      python3-requests python3-six python3-urllib3 readline-common reportbug rsyslog sed sensible-utils systemd systemd-sysv sysvinit-utils tar tasksel tasksel-data tzdata ucf udev usb.ids usbutils util-linux
      vim-common vim-tiny wget whiptail xauth xkb-data xxd xz-utils zlib1g
    252 upgraded, 59 newly installed, 1 to remove and 0 not upgraded.
    Need to get 172 MB of archives.
    After this operation, 524 MB of additional disk space will be used.
    Do you want to continue? [Y/n] y
    Get:1 http://deb.debian.org/debian bookworm/main amd64 base-files amd64 12.4+deb12u2 [70.7 kB]
    Get:2 http://deb.debian.org/debian bookworm/main amd64 gcc-12-base amd64 12.2.0-14 [37.5 kB]
    Get:3 http://deb.debian.org/debian-security bookworm-security/main amd64 libc6 amd64 2.36-9+deb12u3 [2,755 kB]
    Get:4 http://deb.debian.org/debian bookworm/main amd64 libgcc-s1 amd64 12.2.0-14 [49.9 kB]
    Get:5 http://deb.debian.org/debian-security bookworm-security/main amd64 libc-l10n all 2.36-9+deb12u3 [674 kB]
    Get:6 http://deb.debian.org/debian-security bookworm-security/main amd64 locales all 2.36-9+deb12u3 [3,904 kB]
    Get:7 http://deb.debian.org/debian bookworm/main amd64 libcbor0.8 amd64 0.8.0-2+b1 [27.4 kB]
    Get:8 http://deb.debian.org/debian-security bookworm-security/main amd64 libssl3 amd64 3.0.11-1~deb12u2 [2,019 kB]
    Get:9 http://deb.debian.org/debian bookworm/main amd64 libfido2-1 amd64 1.12.0-2+b1 [77.2 kB]
    Get:10 http://deb.debian.org/debian bookworm/main amd64 libselinux1 amd64 3.4-1+b6 [73.7 kB]
    Get:11 http://deb.debian.org/debian bookworm/main amd64 openssh-client amd64 1:9.2p1-2+deb12u1 [989 kB]
    Get:12 http://deb.debian.org/debian bookworm/main amd64 runit-helper all 2.15.2 [6,520 B]
    Get:13 http://deb.debian.org/debian bookworm/main amd64 libpam0g amd64 1.5.2-6+deb12u1 [92.0 kB]
    Get:14 http://deb.debian.org/debian bookworm/main amd64 libcrypt1 amd64 1:4.4.33-2 [89.5 kB]
    Get:15 http://deb.debian.org/debian bookworm/main amd64 openssh-server amd64 1:9.2p1-2+deb12u1 [455 kB]
    Get:16 http://deb.debian.org/debian-security bookworm-security/main amd64 libc-bin amd64 2.36-9+deb12u3 [606 kB]
    Get:17 http://deb.debian.org/debian bookworm/main amd64 openssh-sftp-server amd64 1:9.2p1-2+deb12u1 [65.8 kB]
    Get:18 http://deb.debian.org/debian bookworm/main amd64 libaudit-common all 1:3.0.9-1 [10.4 kB]
    Get:19 http://deb.debian.org/debian bookworm/main amd64 libcap-ng0 amd64 0.8.3-1+b3 [17.1 kB]
    Get:20 http://deb.debian.org/debian bookworm/main amd64 libaudit1 amd64 1:3.0.9-1 [46.8 kB]
    Get:21 http://deb.debian.org/debian bookworm/main amd64 libtext-iconv-perl amd64 1.7-8 [14.5 kB]
    Get:22 http://deb.debian.org/debian bookworm/main amd64 libtext-charwidth-perl amd64 0.04-11 [9,496 B]
    Get:23 http://deb.debian.org/debian bookworm/main amd64 perl-base amd64 5.36.0-7 [1,608 kB]
    Get:24 http://deb.debian.org/debian bookworm/main amd64 liblocale-gettext-perl amd64 1.07-5 [15.4 kB]
    Get:25 http://deb.debian.org/debian bookworm/main amd64 libtext-wrapi18n-perl all 0.06-10 [8,808 B]
    Get:26 http://deb.debian.org/debian bookworm/main amd64 debconf-i18n all 1.5.82 [208 kB]
    Get:27 http://deb.debian.org/debian bookworm/main amd64 debconf all 1.5.82 [121 kB]
    Get:28 http://deb.debian.org/debian bookworm/main amd64 libblkid1 amd64 2.38.1-5+b1 [147 kB]
    Get:29 http://deb.debian.org/debian bookworm/main amd64 libpcre2-8-0 amd64 10.42-1 [261 kB]
    Get:30 http://deb.debian.org/debian bookworm/main amd64 libgpg-error0 amd64 1.46-1 [76.9 kB]
    Get:31 http://deb.debian.org/debian bookworm/main amd64 libgcrypt20 amd64 1.10.1-3 [696 kB]
    Get:32 http://deb.debian.org/debian bookworm/main amd64 libzstd1 amd64 1.5.4+dfsg2-5 [290 kB]
    Get:33 http://deb.debian.org/debian bookworm/main amd64 libjson-c5 amd64 0.16-2 [44.1 kB]
    Get:34 http://deb.debian.org/debian bookworm/main amd64 libargon2-1 amd64 0~20171227-0.3+deb12u1 [19.4 kB]
    Get:35 http://deb.debian.org/debian bookworm/main amd64 dmsetup amd64 2:1.02.185-2 [82.0 kB]
    Get:36 http://deb.debian.org/debian bookworm/main amd64 libdevmapper1.02.1 amd64 2:1.02.185-2 [133 kB]
    Get:37 http://deb.debian.org/debian bookworm/main amd64 libuuid1 amd64 2.38.1-5+b1 [28.8 kB]
    Get:38 http://deb.debian.org/debian bookworm/main amd64 libcryptsetup12 amd64 2:2.6.1-4~deb12u1 [223 kB]
    Get:39 http://deb.debian.org/debian bookworm/main amd64 libffi8 amd64 3.4.4-1 [22.9 kB]
    Get:40 http://deb.debian.org/debian bookworm/main amd64 libp11-kit0 amd64 0.24.1-2 [345 kB]
    Get:41 http://deb.debian.org/debian bookworm/main amd64 libip4tc2 amd64 1.8.9-2 [19.0 kB]
    Get:42 http://deb.debian.org/debian bookworm/main amd64 libseccomp2 amd64 2.5.4-1+b3 [46.6 kB]
    Get:43 http://deb.debian.org/debian bookworm/main amd64 libacl1 amd64 2.3.1-3 [31.5 kB]
    Get:44 http://deb.debian.org/debian bookworm/main amd64 libapparmor1 amd64 3.0.8-3 [41.2 kB]
    Get:45 http://deb.debian.org/debian bookworm/main amd64 libcap2 amd64 1:2.66-4 [27.0 kB]
    Get:46 http://deb.debian.org/debian bookworm/main amd64 liblzma5 amd64 5.4.1-0.2 [205 kB]
    Get:47 http://deb.debian.org/debian bookworm/main amd64 kmod amd64 30+20221128-1 [95.2 kB]
    Get:48 http://deb.debian.org/debian bookworm/main amd64 libkmod2 amd64 30+20221128-1 [57.9 kB]
    Get:49 http://deb.debian.org/debian bookworm/main amd64 liblz4-1 amd64 1.9.4-1 [62.9 kB]
    Get:50 http://deb.debian.org/debian bookworm/main amd64 libmount1 amd64 2.38.1-5+b1 [166 kB]
    Get:51 http://deb.debian.org/debian bookworm/main amd64 libsystemd-shared amd64 252.17-1~deb12u1 [1,691 kB]
    Get:52 http://deb.debian.org/debian bookworm/main amd64 less amd64 590-2 [131 kB]
    Get:53 http://deb.debian.org/debian bookworm/main amd64 libudev1 amd64 252.17-1~deb12u1 [108 kB]
    Get:54 http://deb.debian.org/debian bookworm/main amd64 udev amd64 252.17-1~deb12u1 [1,643 kB]
    Get:55 http://deb.debian.org/debian bookworm/main amd64 libnss-systemd amd64 252.17-1~deb12u1 [163 kB]
    Get:56 http://deb.debian.org/debian bookworm/main amd64 libmd0 amd64 1.0.4-2 [29.5 kB]
    Get:57 http://deb.debian.org/debian bookworm/main amd64 dpkg amd64 1.21.22 [1,567 kB]
    Get:58 http://deb.debian.org/debian bookworm/main amd64 xkb-data all 2.35.1-1 [764 kB]
    Get:59 http://deb.debian.org/debian bookworm/main amd64 console-setup-linux all 1.221 [1,882 kB]
    Get:60 http://deb.debian.org/debian bookworm/main amd64 keyboard-configuration all 1.221 [416 kB]
    Get:61 http://deb.debian.org/debian bookworm/main amd64 console-setup all 1.221 [102 kB]
    Get:62 http://deb.debian.org/debian bookworm/main amd64 lsb-base all 11.6 [4,584 B]
    Get:63 http://deb.debian.org/debian bookworm/main amd64 libsmartcols1 amd64 2.38.1-5+b1 [107 kB]
    Get:64 http://deb.debian.org/debian bookworm/main amd64 util-linux-extra amd64 2.38.1-5+b1 [111 kB]
    Get:65 http://deb.debian.org/debian bookworm/main amd64 util-linux amd64 2.38.1-5+b1 [1,177 kB]
    Get:66 http://deb.debian.org/debian bookworm/main amd64 login amd64 1:4.13+dfsg1-1+b1 [616 kB]
    Get:67 http://deb.debian.org/debian bookworm/main amd64 libfdisk1 amd64 2.38.1-5+b1 [194 kB]
    Get:68 http://deb.debian.org/debian bookworm/main amd64 libreadline8 amd64 8.2-1.3 [166 kB]
    Get:69 http://deb.debian.org/debian bookworm/main amd64 fdisk amd64 2.38.1-5+b1 [142 kB]
    Get:70 http://deb.debian.org/debian bookworm/main amd64 perl-modules-5.36 all 5.36.0-7 [2,815 kB]
    Get:71 http://deb.debian.org/debian bookworm/main amd64 libgdbm6 amd64 1.23-3 [72.2 kB]
    Get:72 http://deb.debian.org/debian bookworm/main amd64 libgdbm-compat4 amd64 1.23-3 [48.2 kB]
    Get:73 http://deb.debian.org/debian bookworm/main amd64 libperl5.36 amd64 5.36.0-7 [4,218 kB]
    Get:74 http://deb.debian.org/debian bookworm/main amd64 perl amd64 5.36.0-7 [239 kB]
    Get:75 http://deb.debian.org/debian bookworm/main amd64 libnumber-compare-perl all 0.03-3 [6,332 B]
    Get:76 http://deb.debian.org/debian bookworm/main amd64 libtext-glob-perl all 0.11-3 [7,676 B]
    Get:77 http://deb.debian.org/debian bookworm/main amd64 libfile-find-rule-perl all 0.34-3 [26.6 kB]
    Get:78 http://deb.debian.org/debian bookworm/main amd64 usrmerge all 35 [12.5 kB]
    Get:79 http://deb.debian.org/debian bookworm/main amd64 init-system-helpers all 1.65.2 [49.8 kB]
    Get:80 http://deb.debian.org/debian bookworm/main amd64 sysvinit-utils amd64 3.06-4 [31.0 kB]
    Get:81 http://deb.debian.org/debian bookworm/main amd64 libdbus-1-3 amd64 1.14.10-1~deb12u1 [201 kB]
    Get:82 http://deb.debian.org/debian bookworm/main amd64 dbus amd64 1.14.10-1~deb12u1 [97.4 kB]
    Get:83 http://deb.debian.org/debian bookworm/main amd64 dbus-bin amd64 1.14.10-1~deb12u1 [105 kB]
    Get:84 http://deb.debian.org/debian bookworm/main amd64 dbus-session-bus-common all 1.14.10-1~deb12u1 [78.2 kB]
    Get:85 http://deb.debian.org/debian bookworm/main amd64 dbus-daemon amd64 1.14.10-1~deb12u1 [184 kB]
    Get:86 http://deb.debian.org/debian bookworm/main amd64 dbus-system-bus-common all 1.14.10-1~deb12u1 [79.3 kB]
    Get:87 http://deb.debian.org/debian bookworm/main amd64 libpam-systemd amd64 252.17-1~deb12u1 [224 kB]
    Get:88 http://deb.debian.org/debian bookworm/main amd64 ifupdown amd64 0.8.41 [62.1 kB]
    Get:89 http://deb.debian.org/debian bookworm/main amd64 systemd amd64 252.17-1~deb12u1 [3,029 kB]
    Get:90 http://deb.debian.org/debian bookworm/main amd64 libsystemd0 amd64 252.17-1~deb12u1 [331 kB]
    Get:91 http://deb.debian.org/debian bookworm/main amd64 libncurses6 amd64 6.4-4 [103 kB]
    Get:92 http://deb.debian.org/debian bookworm/main amd64 libtinfo6 amd64 6.4-4 [331 kB]
    Get:93 http://deb.debian.org/debian bookworm/main amd64 libncursesw6 amd64 6.4-4 [134 kB]
    Get:94 http://deb.debian.org/debian bookworm/main amd64 tar amd64 1.34+dfsg-1.2 [836 kB]
    Get:95 http://deb.debian.org/debian bookworm/main amd64 kbd amd64 2.5.1-1+b1 [335 kB]
    Get:96 http://deb.debian.org/debian bookworm/main amd64 bzip2 amd64 1.0.8-5+b1 [49.8 kB]
    Get:97 http://deb.debian.org/debian bookworm/main amd64 libbz2-1.0 amd64 1.0.8-5+b1 [47.3 kB]
    Get:98 http://deb.debian.org/debian bookworm/main amd64 libdb5.3 amd64 5.3.28+dfsg2-1 [697 kB]
    Get:99 http://deb.debian.org/debian bookworm/main amd64 zlib1g amd64 1:1.2.13.dfsg-1 [86.7 kB]
    Get:100 http://deb.debian.org/debian bookworm/main amd64 readline-common all 8.2-1.3 [69.0 kB]
    Get:101 http://deb.debian.org/debian bookworm/main amd64 libexpat1 amd64 2.5.0-1 [99.3 kB]
    Get:102 http://deb.debian.org/debian bookworm/main amd64 libsemanage-common all 3.4-1 [21.6 kB]
    Get:103 http://deb.debian.org/debian bookworm/main amd64 libsepol2 amd64 3.4-2.1 [276 kB]
    Get:104 http://deb.debian.org/debian bookworm/main amd64 libsemanage2 amd64 3.4-1+b5 [89.9 kB]
    Get:105 http://deb.debian.org/debian bookworm/main amd64 passwd amd64 1:4.13+dfsg1-1+b1 [972 kB]
    Get:106 http://deb.debian.org/debian bookworm/main amd64 libpam-modules-bin amd64 1.5.2-6+deb12u1 [75.6 kB]
    Get:107 http://deb.debian.org/debian bookworm/main amd64 libpam-modules amd64 1.5.2-6+deb12u1 [291 kB]
    Get:108 http://deb.debian.org/debian bookworm/main amd64 adduser all 3.134 [183 kB]
    Get:109 http://deb.debian.org/debian bookworm/main amd64 libpam-runtime all 1.5.2-6+deb12u1 [161 kB]
    Get:110 http://deb.debian.org/debian bookworm/main amd64 systemd-sysv amd64 252.17-1~deb12u1 [41.8 kB]
    Get:111 http://deb.debian.org/debian bookworm/main amd64 libelf1 amd64 0.188-2.1 [174 kB]
    Get:112 http://deb.debian.org/debian bookworm/main amd64 libbpf1 amd64 1:1.1.0-1 [145 kB]
    Get:113 http://deb.debian.org/debian bookworm/main amd64 libtirpc-common all 1.3.3+ds-1 [14.0 kB]
    Get:114 http://deb.debian.org/debian bookworm/main amd64 libcom-err2 amd64 1.47.0-2 [19.8 kB]
    Get:115 http://deb.debian.org/debian bookworm/main amd64 libkeyutils1 amd64 1.6.3-2 [8,808 B]
    Get:116 http://deb.debian.org/debian bookworm/main amd64 libgssapi-krb5-2 amd64 1.20.1-2+deb12u1 [134 kB]
    Get:117 http://deb.debian.org/debian bookworm/main amd64 libkrb5-3 amd64 1.20.1-2+deb12u1 [332 kB]
    Get:118 http://deb.debian.org/debian bookworm/main amd64 libk5crypto3 amd64 1.20.1-2+deb12u1 [78.9 kB]
    Get:119 http://deb.debian.org/debian bookworm/main amd64 libkrb5support0 amd64 1.20.1-2+deb12u1 [32.4 kB]
    Get:120 http://deb.debian.org/debian bookworm/main amd64 libtirpc3 amd64 1.3.3+ds-1 [85.2 kB]
    Get:121 http://deb.debian.org/debian bookworm/main amd64 libbsd0 amd64 0.11.7-2 [117 kB]
    Get:122 http://deb.debian.org/debian bookworm/main amd64 libmnl0 amd64 1.0.4-3 [12.5 kB]
    Get:123 http://deb.debian.org/debian bookworm/main amd64 libip6tc2 amd64 1.8.9-2 [19.4 kB]
    Get:124 http://deb.debian.org/debian bookworm/main amd64 netbase all 6.4 [12.8 kB]
    Get:125 http://deb.debian.org/debian bookworm/main amd64 libnfnetlink0 amd64 1.0.2-2 [15.1 kB]
    Get:126 http://deb.debian.org/debian bookworm/main amd64 libnftnl11 amd64 1.2.4-2 [61.6 kB]
    Get:127 http://deb.debian.org/debian bookworm/main amd64 libnetfilter-conntrack3 amd64 1.0.9-3 [40.7 kB]
    Get:128 http://deb.debian.org/debian bookworm/main amd64 libxtables12 amd64 1.8.9-2 [30.8 kB]
    Get:129 http://deb.debian.org/debian bookworm/main amd64 iptables amd64 1.8.9-2 [360 kB]
    Get:130 http://deb.debian.org/debian bookworm/main amd64 libcap2-bin amd64 1:2.66-4 [34.7 kB]
    Get:131 http://deb.debian.org/debian bookworm/main amd64 iproute2 amd64 6.1.0-3 [1,046 kB]
    Get:132 http://deb.debian.org/debian bookworm/main amd64 mount amd64 2.38.1-5+b1 [134 kB]
    Get:133 http://deb.debian.org/debian bookworm/main amd64 libedit2 amd64 3.1-20221030-2 [93.0 kB]
    Get:134 http://deb.debian.org/debian bookworm/main amd64 libproc2-0 amd64 2:4.0.2-3 [62.8 kB]
    Get:135 http://deb.debian.org/debian bookworm/main amd64 procps amd64 2:4.0.2-3 [709 kB]
    Get:136 http://deb.debian.org/debian bookworm/main amd64 sensible-utils all 0.0.17+nmu1 [19.0 kB]
    Get:137 http://deb.debian.org/debian bookworm/main amd64 ucf all 3.0043+nmu1 [55.2 kB]
    Get:138 http://deb.debian.org/debian bookworm/main amd64 libnsl2 amd64 1.3.0-2 [39.5 kB]
    Get:139 http://deb.debian.org/debian bookworm/main amd64 libwrap0 amd64 7.6.q-32 [54.9 kB]
    Get:140 http://deb.debian.org/debian bookworm/main amd64 debianutils amd64 5.7-0.5~deb12u1 [103 kB]
    Get:141 http://deb.debian.org/debian bookworm/main amd64 bash amd64 5.2.15-2+b2 [1,491 kB]
    Get:142 http://deb.debian.org/debian bookworm/main amd64 bsdmainutils all 12.1.8 [5,952 B]
    Get:143 http://deb.debian.org/debian bookworm/main amd64 bsdextrautils amd64 2.38.1-5+b1 [86.6 kB]
    Get:144 http://deb.debian.org/debian bookworm/main amd64 ncal amd64 12.1.8 [19.7 kB]
    Get:145 http://deb.debian.org/debian bookworm/main amd64 bsdutils amd64 1:2.38.1-5+b1 [94.4 kB]
    Get:146 http://deb.debian.org/debian bookworm/main amd64 libgmp10 amd64 2:6.2.1+dfsg1-1.1 [563 kB]
    Get:147 http://deb.debian.org/debian bookworm/main amd64 coreutils amd64 9.1-1 [2,897 kB]
    Get:148 http://deb.debian.org/debian bookworm/main amd64 dash amd64 0.5.12-2 [91.8 kB]
    Get:149 http://deb.debian.org/debian bookworm/main amd64 diffutils amd64 1:3.8-4 [352 kB]
    Get:150 http://deb.debian.org/debian bookworm/main amd64 findutils amd64 4.9.0-4 [636 kB]
    Get:151 http://deb.debian.org/debian bookworm/main amd64 grep amd64 3.8-5 [421 kB]
    Get:152 http://deb.debian.org/debian bookworm/main amd64 gzip amd64 1.12-1 [140 kB]
    Get:153 http://deb.debian.org/debian bookworm/main amd64 hostname amd64 3.23+nmu1 [10.5 kB]
    Get:154 http://deb.debian.org/debian bookworm/main amd64 ncurses-bin amd64 6.4-4 [421 kB]
    Get:155 http://deb.debian.org/debian bookworm/main amd64 sed amd64 4.9-1 [329 kB]
    Get:156 http://deb.debian.org/debian bookworm/main amd64 libstdc++6 amd64 12.2.0-14 [614 kB]
    Get:157 http://deb.debian.org/debian bookworm/main amd64 libxxhash0 amd64 0.8.1-1 [27.6 kB]
    Get:158 http://deb.debian.org/debian bookworm/main amd64 libapt-pkg6.0 amd64 2.6.1 [907 kB]
    Get:159 http://deb.debian.org/debian bookworm/main amd64 libnettle8 amd64 3.8.1-2 [288 kB]
    Get:160 http://deb.debian.org/debian bookworm/main amd64 libhogweed6 amd64 3.8.1-2 [328 kB]
    Get:161 http://deb.debian.org/debian bookworm/main amd64 libtasn1-6 amd64 4.19.0-2 [56.6 kB]
    Get:162 http://deb.debian.org/debian bookworm/main amd64 libunistring2 amd64 1.0-2 [437 kB]
    Get:163 http://deb.debian.org/debian bookworm/main amd64 libidn2-0 amd64 2.3.3-1+b1 [124 kB]
    Get:164 http://deb.debian.org/debian bookworm/main amd64 libgnutls30 amd64 3.7.9-2 [1,403 kB]
    Get:165 http://deb.debian.org/debian bookworm/main amd64 apt amd64 2.6.1 [1,373 kB]
    Get:166 http://deb.debian.org/debian bookworm/main amd64 apt-utils amd64 2.6.1 [309 kB]
    Get:167 http://deb.debian.org/debian bookworm/main amd64 libksba8 amd64 1.6.3-2 [128 kB]
    Get:168 http://deb.debian.org/debian bookworm/main amd64 libassuan0 amd64 2.5.5-5 [48.5 kB]
    Get:169 http://deb.debian.org/debian bookworm/main amd64 gpg-wks-client amd64 2.2.40-1.1 [541 kB]
    Get:170 http://deb.debian.org/debian bookworm/main amd64 dirmngr amd64 2.2.40-1.1 [792 kB]
    Get:171 http://deb.debian.org/debian bookworm/main amd64 gpg-wks-server amd64 2.2.40-1.1 [531 kB]
    Get:172 http://deb.debian.org/debian bookworm/main amd64 gnupg-utils amd64 2.2.40-1.1 [927 kB]
    Get:173 http://deb.debian.org/debian bookworm/main amd64 gpg-agent amd64 2.2.40-1.1 [695 kB]
    Get:174 http://deb.debian.org/debian bookworm/main amd64 gpg amd64 2.2.40-1.1 [949 kB]
    Get:175 http://deb.debian.org/debian bookworm/main amd64 gpgconf amd64 2.2.40-1.1 [564 kB]
    Get:176 http://deb.debian.org/debian bookworm/main amd64 gnupg-l10n all 2.2.40-1.1 [1,093 kB]
    Get:177 http://deb.debian.org/debian bookworm/main amd64 gnupg all 2.2.40-1.1 [846 kB]
    Get:178 http://deb.debian.org/debian bookworm/main amd64 gpgsm amd64 2.2.40-1.1 [671 kB]
    Get:179 http://deb.debian.org/debian bookworm/main amd64 libsqlite3-0 amd64 3.40.1-2 [837 kB]
    Get:180 http://deb.debian.org/debian bookworm/main amd64 pinentry-curses amd64 1.2.1-1 [77.4 kB]
    Get:181 http://deb.debian.org/debian bookworm/main amd64 libnpth0 amd64 1.6-3 [19.0 kB]
    Get:182 http://deb.debian.org/debian bookworm/main amd64 libsasl2-modules-db amd64 2.1.28+dfsg-10 [20.3 kB]
    Get:183 http://deb.debian.org/debian bookworm/main amd64 libsasl2-2 amd64 2.1.28+dfsg-10 [59.7 kB]
    Get:184 http://deb.debian.org/debian bookworm/main amd64 libldap-2.5-0 amd64 2.5.13+dfsg-5 [183 kB]
    Get:185 http://deb.debian.org/debian bookworm/main amd64 gpgv amd64 2.2.40-1.1 [648 kB]
    Get:186 http://deb.debian.org/debian bookworm/main amd64 debian-archive-keyring all 2023.3+deb12u1 [161 kB]
    Get:187 http://deb.debian.org/debian bookworm/main amd64 libdebconfclient0 amd64 0.270 [9,900 B]
    Get:188 http://deb.debian.org/debian bookworm/main amd64 base-passwd amd64 3.6.1 [60.0 kB]
    Get:189 http://deb.debian.org/debian bookworm/main amd64 vim-tiny amd64 2:9.0.1378-2 [720 kB]
    Get:190 http://deb.debian.org/debian bookworm/main amd64 xxd amd64 2:9.0.1378-2 [83.7 kB]
    Get:191 http://deb.debian.org/debian bookworm/main amd64 vim-common all 2:9.0.1378-2 [124 kB]
    Get:192 http://deb.debian.org/debian bookworm/main amd64 ncurses-base all 6.4-4 [261 kB]
    Get:193 http://deb.debian.org/debian bookworm/main amd64 klibc-utils amd64 2.0.12-1 [94.9 kB]
    Get:194 http://deb.debian.org/debian bookworm/main amd64 initramfs-tools-core all 0.142 [105 kB]
    Get:195 http://deb.debian.org/debian bookworm/main amd64 busybox amd64 1:1.35.0-4+b3 [452 kB]
    Get:196 http://deb.debian.org/debian bookworm/main amd64 initramfs-tools all 0.142 [72.9 kB]
    Get:197 http://deb.debian.org/debian bookworm/main amd64 libext2fs2 amd64 1.47.0-2 [205 kB]
    Get:198 http://deb.debian.org/debian bookworm/main amd64 e2fsprogs amd64 1.47.0-2 [571 kB]
    Get:199 http://deb.debian.org/debian bookworm/main amd64 libklibc amd64 2.0.12-1 [44.2 kB]
    Get:200 http://deb.debian.org/debian bookworm/main amd64 cpio amd64 2.13+dfsg-7.1 [245 kB]
    Get:201 http://deb.debian.org/debian bookworm/main amd64 logsave amd64 1.47.0-2 [19.6 kB]
    Get:202 http://deb.debian.org/debian bookworm/main amd64 linux-base all 4.9 [31.8 kB]
    Get:203 http://deb.debian.org/debian bookworm/main amd64 cron-daemon-common all 3.0pl1-162 [12.7 kB]
    Get:204 http://deb.debian.org/debian bookworm/main amd64 cron amd64 3.0pl1-162 [73.1 kB]
    Get:205 http://deb.debian.org/debian bookworm/main amd64 init amd64 1.65.2 [16.8 kB]
    Get:206 http://deb.debian.org/debian bookworm/main amd64 libpython3.11-minimal amd64 3.11.2-6 [813 kB]
    Get:207 http://deb.debian.org/debian bookworm/main amd64 python3.11-minimal amd64 3.11.2-6 [2,064 kB]
    Get:208 http://deb.debian.org/debian bookworm/main amd64 python3-pycurl amd64 7.45.2-3 [67.7 kB]
    Get:209 http://deb.debian.org/debian bookworm/main amd64 python3-apt amd64 2.6.0 [159 kB]
    Get:210 http://deb.debian.org/debian bookworm/main amd64 python3-minimal amd64 3.11.2-1+b1 [26.3 kB]
    Get:211 http://deb.debian.org/debian bookworm/main amd64 python3 amd64 3.11.2-1+b1 [26.3 kB]
    Get:212 http://deb.debian.org/debian bookworm/main amd64 libbrotli1 amd64 1.0.9-2+b6 [275 kB]
    Get:213 http://deb.debian.org/debian-security bookworm-security/main amd64 libnghttp2-14 amd64 1.52.0-1+deb12u1 [72.4 kB]
    Get:214 http://deb.debian.org/debian bookworm/main amd64 libpsl5 amd64 0.21.2-1 [58.7 kB]
    Get:215 http://deb.debian.org/debian bookworm/main amd64 librtmp1 amd64 2.4+20151223.gitfa8646d.1-2+b2 [60.8 kB]
    Get:216 http://deb.debian.org/debian bookworm/main amd64 libssh2-1 amd64 1.10.0-3+b1 [179 kB]
    Get:217 http://deb.debian.org/debian-security bookworm-security/main amd64 libcurl3-gnutls amd64 7.88.1-10+deb12u4 [385 kB]
    Get:218 http://deb.debian.org/debian bookworm/main amd64 python-apt-common all 2.6.0 [64.3 kB]
    Get:219 http://deb.debian.org/debian bookworm/main amd64 distro-info-data all 0.58 [5,848 B]
    Get:220 http://deb.debian.org/debian bookworm/main amd64 mime-support all 3.66 [10.9 kB]
    Get:221 http://deb.debian.org/debian bookworm/main amd64 mailcap all 3.70+nmu1 [32.0 kB]
    Get:222 http://deb.debian.org/debian bookworm/main amd64 media-types all 10.0.0 [26.1 kB]
    Get:223 http://deb.debian.org/debian bookworm/main amd64 libpython3.11-stdlib amd64 3.11.2-6 [1,796 kB]
    Get:224 http://deb.debian.org/debian bookworm/main amd64 python3.11 amd64 3.11.2-6 [572 kB]
    Get:225 http://deb.debian.org/debian bookworm/main amd64 libpython3-stdlib amd64 3.11.2-1+b1 [9,312 B]
    Get:226 http://deb.debian.org/debian bookworm/main amd64 tasksel-data all 3.73 [18.0 kB]
    Get:227 http://deb.debian.org/debian bookworm/main amd64 tasksel all 3.73 [51.2 kB]
    Get:228 http://deb.debian.org/debian bookworm/main amd64 libattr1 amd64 1:2.5.1-4 [22.2 kB]
    Get:229 http://deb.debian.org/debian bookworm/main amd64 libpcre3 amd64 2:8.39-15 [341 kB]
    Get:230 http://deb.debian.org/debian bookworm/main amd64 mawk amd64 1.3.4.20200120-3.1 [119 kB]
    Get:231 http://deb.debian.org/debian bookworm/main amd64 tzdata all 2023c-5 [296 kB]
    Get:232 http://deb.debian.org/debian bookworm/main amd64 dmidecode amd64 3.4-1 [68.8 kB]
    Get:233 http://deb.debian.org/debian bookworm/main amd64 iputils-ping amd64 3:20221126-1 [47.1 kB]
    Get:234 http://deb.debian.org/debian bookworm/main amd64 isc-dhcp-client amd64 4.4.3-P1-2 [1,096 kB]
    Get:235 http://deb.debian.org/debian bookworm/main amd64 isc-dhcp-common amd64 4.4.3-P1-2 [117 kB]
    Get:236 http://deb.debian.org/debian bookworm/main amd64 libpopt0 amd64 1.19+dfsg-1 [43.3 kB]
    Get:237 http://deb.debian.org/debian bookworm/main amd64 logrotate amd64 3.21.0-1 [62.1 kB]
    Get:238 http://deb.debian.org/debian bookworm/main amd64 nano amd64 7.2-1 [689 kB]
    Get:239 http://deb.debian.org/debian bookworm/main amd64 ncurses-term all 6.4-4 [501 kB]
    Get:240 http://deb.debian.org/debian bookworm/main amd64 libslang2 amd64 2.3.3-3 [554 kB]
    Get:241 http://deb.debian.org/debian bookworm/main amd64 libnewt0.52 amd64 0.52.23-1+b1 [59.2 kB]
    Get:242 http://deb.debian.org/debian bookworm/main amd64 whiptail amd64 0.52.23-1+b1 [24.2 kB]
    Get:243 http://deb.debian.org/debian bookworm/main amd64 bash-completion all 1:2.11-6 [234 kB]
    Get:244 http://deb.debian.org/debian-security bookworm-security/main amd64 openssl amd64 3.0.11-1~deb12u2 [1,419 kB]
    Get:245 http://deb.debian.org/debian bookworm/main amd64 ca-certificates all 20230311 [153 kB]
    Get:246 http://deb.debian.org/debian bookworm/main amd64 file amd64 1:5.44-3 [42.5 kB]
    Get:247 http://deb.debian.org/debian bookworm/main amd64 libmagic1 amd64 1:5.44-3 [104 kB]
    Get:248 http://deb.debian.org/debian bookworm/main amd64 libmagic-mgc amd64 1:5.44-3 [305 kB]
    Get:249 http://deb.debian.org/debian bookworm/main amd64 gettext-base amd64 0.21-12 [160 kB]
    Get:250 http://deb.debian.org/debian bookworm/main amd64 liblockfile-bin amd64 1.17-1+b1 [20.8 kB]
    Get:251 http://deb.debian.org/debian bookworm/main amd64 manpages all 6.03-2 [1,332 kB]
    Get:252 http://deb.debian.org/debian bookworm/main amd64 pciutils amd64 1:3.9.0-4 [104 kB]
    Get:253 http://deb.debian.org/debian bookworm/main amd64 pci.ids all 0.0~2023.04.11-1 [243 kB]
    Get:254 http://deb.debian.org/debian bookworm/main amd64 libpci3 amd64 1:3.9.0-4 [67.4 kB]
    Get:255 http://deb.debian.org/debian bookworm/main amd64 reportbug all 12.0.0 [64.5 kB]
    Get:256 http://deb.debian.org/debian bookworm/main amd64 python3-certifi all 2022.9.24-1 [153 kB]
    Get:257 http://deb.debian.org/debian bookworm/main amd64 python3-charset-normalizer all 3.0.1-2 [49.3 kB]
    Get:258 http://deb.debian.org/debian bookworm/main amd64 python3-idna all 3.3-1 [39.4 kB]
    Get:259 http://deb.debian.org/debian bookworm/main amd64 python3-six all 1.16.0-4 [17.5 kB]
    Get:260 http://deb.debian.org/debian bookworm/main amd64 python3-requests all 2.28.1+dfsg-1 [67.9 kB]
    Get:261 http://deb.debian.org/debian bookworm/main amd64 python3-urllib3 all 1.26.12-1 [117 kB]
    Get:262 http://deb.debian.org/debian bookworm/main amd64 python3-pkg-resources all 66.1.1-1 [296 kB]
    Get:263 http://deb.debian.org/debian bookworm/main amd64 python3-chardet all 5.1.0+dfsg-2 [110 kB]
    Get:264 http://deb.debian.org/debian bookworm/main amd64 python3-debian all 0.1.49 [115 kB]
    Get:265 http://deb.debian.org/debian bookworm/main amd64 python3-pyparsing all 3.0.9-1 [138 kB]
    Get:266 http://deb.debian.org/debian bookworm/main amd64 python3-httplib2 all 0.20.4-3 [36.0 kB]
    Get:267 http://deb.debian.org/debian bookworm/main amd64 python3-pysimplesoap all 1.16.2-5 [43.1 kB]
    Get:268 http://deb.debian.org/debian bookworm/main amd64 python3-debianbts all 4.0.1 [12.2 kB]
    Get:269 http://deb.debian.org/debian bookworm/main amd64 python3-reportbug all 12.0.0 [78.9 kB]
    Get:270 http://deb.debian.org/debian bookworm/main amd64 systemd-timesyncd amd64 252.17-1~deb12u1 [62.9 kB]
    Get:271 http://deb.debian.org/debian bookworm/main amd64 wget amd64 1.21.3-1+b2 [984 kB]
    Get:272 http://deb.debian.org/debian bookworm/main amd64 xz-utils amd64 5.4.1-0.2 [471 kB]
    Get:273 http://deb.debian.org/debian bookworm/main amd64 apparmor amd64 3.0.8-3 [616 kB]
    Get:274 http://deb.debian.org/debian bookworm/main amd64 dbus-user-session amd64 1.14.10-1~deb12u1 [78.1 kB]
    Get:275 http://deb.debian.org/debian bookworm/main amd64 libusb-1.0-0 amd64 2:1.0.26-1 [62.6 kB]
    Get:276 http://deb.debian.org/debian bookworm/main amd64 discover-data all 2.2013.01.13 [389 kB]
    Get:277 http://deb.debian.org/debian bookworm/main amd64 discover amd64 2.1.2-10 [43.2 kB]
    Get:278 http://deb.debian.org/debian bookworm/main amd64 libdiscover2 amd64 2.1.2-10 [92.3 kB]
    Get:279 http://deb.debian.org/debian bookworm/main amd64 eject amd64 2.38.1-5+b1 [48.0 kB]
    Get:280 http://deb.debian.org/debian bookworm/main amd64 firmware-linux-free all 20200122-1 [24.2 kB]
    Get:281 http://deb.debian.org/debian bookworm/main amd64 gdbm-l10n all 1.23-3 [89.0 kB]
    Get:282 http://deb.debian.org/debian bookworm/main amd64 libefivar1 amd64 37-6 [50.0 kB]
    Get:283 http://deb.debian.org/debian bookworm/main amd64 libefiboot1 amd64 37-6 [44.1 kB]
    Get:284 http://deb.debian.org/debian-security bookworm-security/main amd64 grub-pc amd64 2.06-13+deb12u1 [137 kB]
    Get:285 http://deb.debian.org/debian-security bookworm-security/main amd64 grub2-common amd64 2.06-13+deb12u1 [614 kB]
    Get:286 http://deb.debian.org/debian-security bookworm-security/main amd64 grub-pc-bin amd64 2.06-13+deb12u1 [997 kB]
    Get:287 http://deb.debian.org/debian bookworm/main amd64 libpng16-16 amd64 1.6.39-2 [276 kB]
    Get:288 http://deb.debian.org/debian bookworm/main amd64 libfreetype6 amd64 2.12.1+dfsg-5 [399 kB]
    Get:289 http://deb.debian.org/debian bookworm/main amd64 libfuse2 amd64 2.9.9-6+b1 [119 kB]
    Get:290 http://deb.debian.org/debian-security bookworm-security/main amd64 grub-common amd64 2.06-13+deb12u1 [2,709 kB]
    Get:291 http://deb.debian.org/debian bookworm/main amd64 installation-report all 2.89 [8,324 B]
    Get:292 http://deb.debian.org/debian bookworm/main amd64 libestr0 amd64 0.1.11-1 [9,204 B]
    Get:293 http://deb.debian.org/debian bookworm/main amd64 libfastjson4 amd64 1.2304.0-1 [28.9 kB]
    Get:294 http://deb.debian.org/debian bookworm/main amd64 libiptc0 amd64 1.8.9-2 [7,032 B]
    Get:295 http://deb.debian.org/debian bookworm/main amd64 libldap-common all 2.5.13+dfsg-5 [29.3 kB]
    Get:296 http://deb.debian.org/debian bookworm/main amd64 liblognorm5 amd64 2.0.6-4 [67.2 kB]
    Get:297 http://deb.debian.org/debian bookworm/main amd64 libss2 amd64 1.47.0-2 [24.5 kB]
    Get:298 http://deb.debian.org/debian-security bookworm-security/main amd64 libx11-data all 2:1.8.4-2+deb12u2 [292 kB]
    Get:299 http://deb.debian.org/debian bookworm/main amd64 libxau6 amd64 1:1.0.9-1 [19.7 kB]
    Get:300 http://deb.debian.org/debian bookworm/main amd64 libxcb1 amd64 1.15-1 [144 kB]
    Get:301 http://deb.debian.org/debian-security bookworm-security/main amd64 libx11-6 amd64 2:1.8.4-2+deb12u2 [760 kB]
    Get:302 http://deb.debian.org/debian bookworm/main amd64 libxext6 amd64 2:1.3.4-1+b1 [52.9 kB]
    Get:303 http://deb.debian.org/debian bookworm/main amd64 libxmuu1 amd64 2:1.1.3-3 [23.9 kB]
    Get:304 http://deb.debian.org/debian bookworm/main amd64 linux-image-6.1.0-13-amd64 amd64 6.1.55-1 [68.7 MB]
    Get:305 http://deb.debian.org/debian bookworm/main amd64 linux-image-amd64 amd64 6.1.55-1 [1,480 B]
    Get:306 http://deb.debian.org/debian bookworm/main amd64 os-prober amd64 1.81 [30.9 kB]
    Get:307 http://deb.debian.org/debian bookworm/main amd64 rsyslog amd64 8.2302.0-1 [723 kB]
    Get:308 http://deb.debian.org/debian bookworm/main amd64 usb.ids all 2023.05.17-0+deb12u1 [207 kB]
    Get:309 http://deb.debian.org/debian bookworm/main amd64 usbutils amd64 1:014-1 [79.7 kB]
    Get:310 http://deb.debian.org/debian bookworm/main amd64 xauth amd64 1:1.1.2-1 [36.0 kB]
    Get:311 http://deb.debian.org/debian bookworm/main amd64 zstd amd64 1.5.4+dfsg2-5 [701 kB]
    Fetched 172 MB in 3s (66.7 MB/s)
    Extracting templates from packages: 100%
    Preconfiguring packages ...
    (Reading database ... 22646 files and directories currently installed.)
    Preparing to unpack .../base-files_12.4+deb12u2_amd64.deb ...
    Unpacking base-files (12.4+deb12u2) over (10.3+deb10u4) ...
    Setting up base-files (12.4+deb12u2) ...
    Installing new version of config file /etc/debian_version ...
    Installing new version of config file /etc/dpkg/origins/debian ...
    Installing new version of config file /etc/issue ...
    Installing new version of config file /etc/issue.net ...
    Updating /etc/profile to current default.
    Updating /root/.profile to current default.
    Selecting previously unselected package gcc-12-base:amd64.
    (Reading database ... 22646 files and directories currently installed.)
    Preparing to unpack .../gcc-12-base_12.2.0-14_amd64.deb ...
    Unpacking gcc-12-base:amd64 (12.2.0-14) ...
    Setting up gcc-12-base:amd64 (12.2.0-14) ...
    (Reading database ... 22651 files and directories currently installed.)
    Preparing to unpack .../locales_2.36-9+deb12u3_all.deb ...
    Unpacking locales (2.36-9+deb12u3) over (2.28-10+deb10u2) ...
    Preparing to unpack .../openssh-server_1%3a9.2p1-2+deb12u1_amd64.deb ...
    Unpacking openssh-server (1:9.2p1-2+deb12u1) over (1:7.9p1-10+deb10u2) ...
    Preparing to unpack .../libc6_2.36-9+deb12u3_amd64.deb ...
    Checking for services that may need to be restarted...
    Checking init scripts...
    Unpacking libc6:amd64 (2.36-9+deb12u3) over (2.28-10+deb10u2) ...
    Selecting previously unselected package libgcc-s1:amd64.
    Preparing to unpack .../libgcc-s1_12.2.0-14_amd64.deb ...
    Unpacking libgcc-s1:amd64 (12.2.0-14) ...
    Replacing files in old package libgcc1:amd64 (1:8.3.0-6) ...
    Setting up libgcc-s1:amd64 (12.2.0-14) ...
    Setting up libc6:amd64 (2.36-9+deb12u3) ...
    /usr/bin/perl: error while loading shared libraries: libcrypt.so.1: cannot open shared object file: No such file or directory
    dpkg: error processing package libc6:amd64 (--configure):
     installed libc6:amd64 package post-installation script subprocess returned error exit status 127
    Errors were encountered while processing:
     libc6:amd64
    E: Sub-process /usr/bin/dpkg returned an error code (1)

     

    We get this error:

    /usr/bin/perl: error while loading shared libraries: libcrypt.so.1: cannot open shared object file: No such file or directory
    dpkg: error processing package libc6:amd64 (--configure):
     installed libc6:amd64 package post-installation script subprocess returned error exit status 127

     

    The issue is that the old Debian uses old keys and Bookworm uses different keys

    See the guide at the top for how to get the correct keys.

    apt update
    Get:1 http://deb.debian.org/debian bookworm InRelease [151 kB]
    Get:2 http://deb.debian.org/debian bookworm-updates InRelease [52.1 kB]
    Get:3 http://deb.debian.org/debian-security bookworm-security InRelease [48.0 kB]
    Err:1 http://deb.debian.org/debian bookworm InRelease
      The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 0E98404D386FA1D9 NO_PUBKEY 6ED0E7B82643E131 NO_PUBKEY F8D2585B8783D481
    Err:2 http://deb.debian.org/debian bookworm-updates InRelease
      The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 0E98404D386FA1D9 NO_PUBKEY 6ED0E7B82643E131
    Err:3 http://deb.debian.org/debian-security bookworm-security InRelease
      The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 54404762BBB6E853 NO_PUBKEY BDE6D2B9216EC7A8
    Reading package lists... Done
    W: GPG error: http://deb.debian.org/debian bookworm InRelease: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 0E98404D386FA1D9 NO_PUBKEY 6ED0E7B82643E131 NO_PUBKEY F8D2585B8783D481
    E: The repository 'http://deb.debian.org/debian bookworm InRelease' is not signed.
    N: Updating from such a repository can't be done securely, and is therefore disabled by default.
    N: See apt-secure(8) manpage for repository creation and user configuration details.
    W: GPG error: http://deb.debian.org/debian bookworm-updates InRelease: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 0E98404D386FA1D9 NO_PUBKEY 6ED0E7B82643E131
    E: The repository 'http://deb.debian.org/debian bookworm-updates InRelease' is not signed.
    N: Updating from such a repository can't be done securely, and is therefore disabled by default.
    N: See apt-secure(8) manpage for repository creation and user configuration details.
    W: GPG error: http://deb.debian.org/debian-security bookworm-security InRelease: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 54404762BBB6E853 NO_PUBKEY BDE6D2B9216EC7A8
    E: The repository 'http://deb.debian.org/debian-security bookworm-security InRelease' is not signed.
    N: Updating from such a repository can't be done securely, and is therefore disabled by default.
    N: See apt-secure(8) manpage for repository creation and user configuration details.

     

     


  • Linux dhcp dhclient Mint Redhat Ubuntu Debian How To Use Local Domain DNS Server Instead of ISPs


    If you are running a local DNS server like named/bind and don't want to use the ISP supplied DNS servers that are announced via a DHCP request (using dhclient) then the solution is simple.

    The reason should be obvious, but normally running your own DNS server will provide a more reliable, and fast DNS response and you won't have to worry about filtering as much (unless your upstream filters or proxies outgoing DNS requests).

    Edit /etc/dhcp/dhclient.conf

    Add the following line, or in many cases you can find the line is there but just commented out with a #.  Uncomment it or add the line like below:

    prepend domain-name-servers 127.0.0.1;

    Need more DNS servers just add a comma after:

    prepend domain-name-servers 127.0.0.1, 192.168.10.80;

    Now when checking /etc/resolv.conf, you should see that the first DNS server is 127.0.0.1 and then whatever your ISP or LAN provided you with.

    What if you want to define the ONLY DNS servers and not use anything from the ISP/DHCP Server

    Instead of the "prepend" option, we can use "supersede" which will completely ignore all the DNS servers provided from the DHCP server. 

    Add the following line, or in many cases you can find the line is there but just commented out with a #.  Uncomment it or add the line like below:

    supersede domain-name-servers 127.0.0.1;

    Just like the prepend option you can specify multiple DNS servers like this:

    supersede domain-name-servers 127.0.0.1, 192.168.10.80;

    Of course, keep in mind that if your local DNS fails or is not working or starting for any reason, that DNS requests will fail, which will generally cause many things to break.  It is probably wise to use a secondary, trusted DNS server on your LAN or on the public internet if possible.

    Don't Forget To Disable systemd-resolved

    On most GUI Linux's such as Ubuntu/Mint etc.. you will have systemd-resolved which has it's own listener on port 53 which forwards requests to the actual DNS server (eg. your ISP's).  This will conflict with your local listener (eg. bind/named).  If you want to use your localhost DNS successfully remember to disable systemd-resolved and stop the service or you will have broken DNS.

    systemctl disable systemd-resolved

    #remember to stop it too!

    systemctl stop systemd-resolved

     


  • Docker dockerd swarm high CPU usage cause solution


    If you have swarm services and dockerd is creating a high load even with the containers just being idle, the easiest solution is to upgrade to a newer docker version.

    For example an identical config of 3 nodes, with Redis 5 with 30 replicas produces a load of about 1.45 in Debian 10 with Docker 18.09.1

    If I create the same setup on Debian 11, with Docker 20.10.5+dfsg1 then the CPU usage is low.

    One other difference I wondered is the kernel.  In my test setup Debian 10 has kernel linux-image-4.19.0-25-amd64, while Debian 11 has linux-image-5.10.0-11-amd64.

    To see if it is some major difference caused between Kernel 4.19 and 5.10 (though I doubted this was the issue), I installed the latest kernel 5.10 in Debian 10 linux-image-5.10.0-0.deb10.26-amd64 on all nodes.  There was no difference at all between 4.19 and 5.10 kernels, so the issue seems to solely be based on an issue that exists in Docker 18.09.01 (or at least how it was compiled for Debian 10) vs the Debian 11's Docker  20.10.5

    It's easy enough to upgrade your Debian 10 to 11 if you need to (I prefer Debian 10 for teseting due to it's smaller footprint over 11).

    Debian 11 Docker Info:

    root@Deb11Docker02:~# docker version
    Client:
     Version:           20.10.5+dfsg1
     API version:       1.41
     Go version:        go1.15.15
     Git commit:        55c4c88
     Built:             Mon May 30 18:34:49 2022
     OS/Arch:           linux/amd64
     Context:           default
     Experimental:      true

    Server:
     Engine:
      Version:          20.10.5+dfsg1
      API version:      1.41 (minimum version 1.12)
      Go version:       go1.15.15
      Git commit:       363e9a8
      Built:            Mon May 30 18:34:49 2022
      OS/Arch:          linux/amd64
      Experimental:     false
     containerd:
      Version:          1.4.13~ds1
      GitCommit:        1.4.13~ds1-1~deb11u4
     runc:
      Version:          1.0.0~rc93+ds1
      GitCommit:        1.0.0~rc93+ds1-5+deb11u2
     docker-init:
      Version:          0.19.0
      GitCommit:        

     

    Debian 10 Docker Info:

    Client:
     Version:           18.09.1
     API version:       1.39
     Go version:        go1.11.6
     Git commit:        4c52b90
     Built:             Sun, 21 Feb 2021 18:18:35 +0100
     OS/Arch:           linux/amd64
     Experimental:      false

    Server:
     Engine:
      Version:          18.09.1
      API version:      1.39 (minimum version 1.12)
      Go version:       go1.11.6
      Git commit:       4c52b90
      Built:            Sun Feb 21 17:18:35 2021
      OS/Arch:          linux/amd64
      Experimental:     false


  • Docker Minimum Requirements/How Efficient is Docker? How Much Memory Does Dockerd Use?


    We used a simple Debian 10 VM and showed the memory before starting docker and with no docker containers being started.  The goal is to show much much memory dockerd actually uses.

    Before docker was started

    The VM was using 58M of RAM.

    After docker was started

    it was using 99MB of RAM.

    How much RAM does docker use?

    It's not scientific but fair to say dockerd itself uses about 41MB of RAM (99-58).

    This proves that docker has very low requirements and doesn't have much overhead to even run containers.

    Learn more in this Docker Tutorial


  • qemu-nbd: Failed to set NBD socket solution qemu-nbd: Disconnect client, due to: Failed to read request: Unexpected end-of-file before all bytes were read


    You are trying to mount and connect to an image using qemu-nbd:

    qemu-nbd -c /dev/nbd0 rtt.qcow2

    qemu-nbd: Failed to set NBD socket
    qemu-nbd: Disconnect client, due to: Failed to read request: Unexpected end-of-file before all bytes were read

    Another related error:

    qemu-nbd: Failed to unlink socket /var/lock/qemu-nbd-nbd0: Operation not permitted
    Error with nbd, exiting

    The above can happen if you don't have permission to access the nbd socket.

    qemu-nbd is not that smart, this is caused by /dev/nbd0 being connected

    This can happen due to a failed mount or perhaps you just forgot to disconnect the previous time.

    We'll solve it by disconnecting the nbd0 device with the -d flag (for disconnect).

    qemu-nbd -d /dev/nbd0
    /dev/nbd0 disconnected

    Now can see that it works without error
     

    qemu-nbd -c /dev/nbd0 1234.img
     

    fdisk -l /dev/nbd0


    Disk /dev/nbd0: 15 GiB, 16106127360 bytes, 31457280 sectors
    Units: sectors of 1 * 512 = 512 bytes
    Sector size (logical/physical): 512 bytes / 512 bytes
    I/O size (minimum/optimal): 512 bytes / 512 bytes

    Simple Way To Test if /dev/nbd0 is in use

    Also remember by default you probably have up to /dev/nbd15.

    You can use a tool like fdisk to check if the nbd is in use:

    fdisk -l /dev/nbd0
    fdisk: cannot open /dev/nbd0: Inappropriate ioctl for device

    If you get an error like "fdisk: cannot open /dev/nbd0: Inappropriate ioctl for device", it is NOT in use.

    If it's in use you should be able to see the disk info:

    fdisk -l /dev/nbd0
    Disk /dev/nbd0: 10 GiB, 10737418240 bytes, 20971520 sectors
    Units: sectors of 1 * 512 = 512 bytes
    Sector size (logical/physical): 512 bytes / 512 bytes
    I/O size (minimum/optimal): 512 bytes / 512 bytes


  • apache2 httpd apache server will not start [pid 22449:tid 139972160445760] AH00052: child pid 23248 exit signal Aborted (6) solution Mint Debian Ubuntu Redhat


    If you get this error, it is often because you have configured Apache with modules that weren't actually installed.  Eg. you try to load the PHP module but didn't actually install the apache2 php module, so the server can't start.  In general, this error can often be caused by issues with problematic modules and/or Apache being configured for modules that have not actually be installed (eg. libapache2-mod-php) is missing.

    The above results in this less than obvious error:

    [pid 22449:tid 139972160445760] AH00052: child pid 23248 exit signal Aborted (6) 

    Install the missing module into Apache 2 to solve it

    In this test case we know the issue is PHP missing from Apache

    apt install libapache2-mod-php

    Of course if you were using another module, you would want to install the corresponding one.

    Here is a list of apache2 modules from Debian 11:

    libapache2-mod-upload-progress - upload progress support for the Apache web server
    libapache2-mod-md - transitional package
    libapache2-mod-proxy-uwsgi - transitional package
    libapache2-mod-xforward - Apache module implements redirection based on X-Forward response header
    libapache2-mod-apparmor - changehat AppArmor library as an Apache module
    libapache2-mod-auth-radius - Apache 2.x module for RADIUS authentication
    libapache2-mod-evasive - evasive module to minimize HTTP DoS or brute force attacks
    libapache-mod-jk-doc - Documentation of libapache2-mod-jk package
    libapache2-mod-jk - Apache 2 connector for the Tomcat Java servlet engine
    libapache2-mod-log-sql - Use SQL to store/write your Apache queries logs - Base
    libapache2-mod-log-sql-dbi - Use SQL to store/write your Apache queries logs - DBI interface
    libapache2-mod-log-sql-mysql - Use SQL to store/write your Apache queries logs - MySQL interface
    libapache2-mod-log-sql-ssl - Use SQL to store/write your Apache queries logs - SSL extension
    libapache2-mod-musicindex - Browse, stream, download and search through MP3/Ogg/FLAC files
    libapache2-mod-removeip - Module to remove IP from apache2's logs
    libapache2-authcassimple-perl - Apache2 module to authenticate trough a CAS server
    libapache2-authcookie-perl - Perl Authentication and Authorization via cookies
    libapache2-mod-auth-cas - CAS authentication module for Apache2
    libapache2-mod-auth-gssapi - GSSAPI Authentication module for Apache2
    libapache2-mod-auth-mellon - SAML 2.0 authentication module for Apache
    libapache2-mod-auth-openid - OpenID authentication module for Apache2
    libapache2-mod-auth-openidc - OpenID Connect authentication module for Apache
    libapache2-mod-auth-plain - Module for Apache2 which provides plaintext authentication
    libapache2-mod-auth-pubtkt - key-based single-sign-on authentication module for Apache
    libapache2-mod-auth-tkt - lightweight single-sign-on authentication module for Apache
    libapache2-mod-authn-sasl - SASL authentication backend provider for Apache
    libapache2-mod-authn-yolo - Yolo style authentication for Apache 2
    libapache2-mod-authn-yubikey - Yubikey authentication provider for Apache
    libapache2-mod-authnz-external - authenticate Apache against external authentication services
    libapache2-mod-authnz-pam - PAM authorization checker and PAM Basic Authentication provider
    libapache2-mod-authz-unixgroup - access control based on on unix group membership for Apache
    libapache2-mod-bw - bandwidth limiting module for apache2
    libapache2-mod-defensible - module for Apache2 which provides DNSBL usage
    libapache2-mod-encoding - Apache2 module for non-ascii filename interoperability
    libapache2-mod-fcgid - FastCGI interface module for Apache 2
    libapache2-mod-form - Apache module to decode data submitted from Web forms
    libapache2-mod-form-dev - Apache module to decode data submitted from Web forms (development files)
    libapache2-mod-geoip - GeoIP support for apache2
    libapache2-mod-intercept-form-submit - Apache module to intercept login form submission and run PAM authentication
    libapache2-mod-ldap-userdir - Apache module that provides UserDir lookups via LDAP
    libapache2-mod-ldap-userdir-dbg - Debugging symbols for mod_ldap_userdir
    libapache2-mod-lisp - An Apache2 module that interfaces with Lisp environments
    libapache2-mod-log-slow - Apache module for logging of slow requests handling
    libapache2-mod-lookup-identity - Apache module to retrieve additional information about the authenticated user
    libapache2-mod-perl2 - Integration of perl with the Apache2 web server
    libapache2-mod-perl2-dev - Integration of perl with the Apache2 web server - development files
    libapache2-mod-perl2-doc - Integration of perl with the Apache2 web server - documentation
    libapache2-mod-python - Python-embedding module for Apache 2
    libapache2-mod-python-doc - Python-embedding module for Apache 2 - documentation
    libapache2-mod-qos - quality of service module for the apache2
    libapache2-mod-rivet - Server-side Tcl programming system combining ease of use and power
    libapache2-mod-rivet-doc - Documentation for Rivet, a server-side Tcl programming system
    libapache2-mod-rpaf - module for Apache2 which takes the last IP from the 'X-Forwarded-For' header
    libapache2-mod-tile - Apache module to deliver tiles created by renderd
    libapache2-mod-watchcat - Process monitoring Apache module
    libapache2-mod-xsendfile - Serve large static files efficiently from web applications
    libapache2-reload-perl - module for reloading Perl modules when changed on disk
    libapache2-sitecontrol-perl - perl web site authentication/authorization system
    libapache2-mod-apreq2 - generic Apache request library - Apache module
    libapache2-request-perl - generic Apache request library - Perl modules
    libapache2-mod-mapcache - tile caching server - Apache module
    libapache2-mod-dnssd - Zeroconf support for Apache 2 via avahi
    libapache2-mod-mime-xattr - Apache2 module to get MIME info from filesystem extended attributes
    libapache2-mod-mono - Apache module for running ASP.NET applications on Mono
    libapache2-mod-vhost-ldap - Apache 2 module for Virtual Hosting from LDAP
    libapache2-mod-wsgi-py3 - Python 3 WSGI adapter module for Apache
    libapache2-mod-security2 - Tighten web applications security for Apache
    libapache2-mpm-itk - multiuser module for Apache
    libapache2-mod-neko - Apache module for running server-side Neko programs
    libapache2-mod-netcgi-apache - OCaml application-level Internet libraries - netcgi2 Apache2 connector
    libapache2-mod-parser3 - Parser 3, HTML-embedded scripting language (Apache2 module)
    libapache2-mod-passenger - Rails and Rack support for Apache2
    libapache2-mod-php - server-side, HTML-embedded scripting language (Apache 2 module) (default)
    libapache2-mod-php7.4 - server-side, HTML-embedded scripting language (Apache 2 module)
    libapache2-mod-r-base - server-side R integration with Apache 2
    libapache2-mod-shib - Federated web single sign-on system (Apache module)
    libapache2-mod-svn - Apache Subversion server modules for Apache httpd
    libapache2-mod-ruwsgi - uwsgi module for Apache2 (mod_Ruwsgi)
    libapache2-mod-ruwsgi-dbg - debugging symbols for Apache2 mod_Ruwsgi
    libapache2-mod-uwsgi - uwsgi module for Apache2 (mod_uwsgi)
    libapache2-mod-uwsgi-dbg - debugging symbols for Apache2 mod_uwsgi
    libapache2-mod-webauth - Apache module for WebAuth authentication
    libapache2-mod-webauthldap - Apache module for WebAuth LDAP lookup and authorization
    libapache2-mod-webkdc - Apache modules for a WebAuth authentication KDC

     


  • How to use the FTDI USB serial cable to RJ45 adapter to connect to the console on Cisco/Juniper Switch Router Firewall in Linux Ubuntu Debian Redhat


    This should work for most console ports of other manufacturers too.  It is a quick and simple method for emegencies or deploying a few appliances/devices in a non-standard environment or small environment. 

    However, if this is a route thing, or the equipment is not physically close to you, it would be best to use some sort of "Terminal" server which is an IP connected switch with several serial ports built-in for this purpose.  Normally they accessible by web/ssh/telnet, so you don't have to worry about getting physical access to the device (eg. if it's in a communications room, datacenter or another place that is not convenient to physically access).

    Step 1 - Just plugin the USB side and then connect to the console port of the device

    The console port is often located at the back of the device, but some devices may have them at the front of the unit.  Also be careful that you don't connect it to the Management port of the device, as then this won't work and you won't receive any output to the terminal.

    You should get output like this after plugging in the USB to RJ45 adapter:

    [ 2113.427366] usb 1-1.2: new full-speed USB device number 24 using ehci-pci
    [ 2113.542286] usb 1-1.2: New USB device found, idVendor=0403, idProduct=6001, bcdDevice= 6.00
    [ 2113.542289] usb 1-1.2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
    [ 2113.542292] usb 1-1.2: Product: FT232R USB UART
    [ 2113.542294] usb 1-1.2: Manufacturer: FTDI
    [ 2113.542295] usb 1-1.2: SerialNumber: A50285BI
    [ 2113.544859] ftdi_sio 1-1.2:1.0: FTDI USB Serial Device converter detected
    [ 2113.544901] usb 1-1.2: Detected FT232RL
    [ 2113.545854] usb 1-1.2:
    FTDI USB Serial Device converter now attached to ttyUSB0

    Note the "attached to ttyUSB0" part, normally a standard serial cable would be available by deault on /dev/ttyS0, but with the USB adapter it will live on /dev/ttyUSB0

    If you don't get the above output, confirm that the ftdi_sio kernel module is loaded.  If it's not there, you may need the following packages:

    linux-modules-extra

    Here is the easiest way to install the missing ftdi driver on Debian/Ubuntu/Mint

    sudo apt install linux-modules-extra-`uname -r`

    Step 2 - Connect to the console port on your device using screen/putty or other tool

    One of the easiest tools to use is screen or putty, but any serial/terminal program will normally do the job.

    screen /dev/ttyUSB0

    Below is an example of consoling into a Juniper switch.

     


  • How To Setup Python3 in Ubuntu Docker Image for AI Deep Learning


    The issue is that Docker images are stripped down, so many tools and even python3 is missing, so you'll have to build or update the actual image yourself.

    I assume you have started an image with something like this and that you have the Nvidia Toolkit installed (assuming you are using GPUs).  If you're not using nvidia just remove --runtime=nvidia --gpus all.

    docker run -it --runtime=nvidia --gpus all ubuntu bash

    These works for most images like Ubuntu 20.04 22.04 etc..:

    apt update;apt install python3-pip


    Get:1 http://security.ubuntu.com/ubuntu jammy-security InRelease [110 kB]
    Get:2 http://archive.ubuntu.com/ubuntu jammy InRelease [270 kB]
    Get:3 http://security.ubuntu.com/ubuntu jammy-security/restricted amd64 Packages [1404 kB]
    Get:4 http://security.ubuntu.com/ubuntu jammy-security/multiverse amd64 Packages [44.0 kB]
    Get:5 http://security.ubuntu.com/ubuntu jammy-security/universe amd64 Packages [1011 kB]
    Get:6 http://security.ubuntu.com/ubuntu jammy-security/main amd64 Packages [1204 kB]
    Get:7 http://archive.ubuntu.com/ubuntu jammy-updates InRelease [119 kB]        
    Get:8 http://archive.ubuntu.com/ubuntu jammy-backports InRelease [109 kB]                 
    Get:9 http://archive.ubuntu.com/ubuntu jammy/multiverse amd64 Packages [266 kB]
    Get:10 http://archive.ubuntu.com/ubuntu jammy/restricted amd64 Packages [164 kB]
    Get:11 http://archive.ubuntu.com/ubuntu jammy/main amd64 Packages [1792 kB]
    Get:12 http://archive.ubuntu.com/ubuntu jammy/universe amd64 Packages [17.5 MB]
    Get:13 http://archive.ubuntu.com/ubuntu jammy-updates/restricted amd64 Packages [1430 kB]
    Get:14 http://archive.ubuntu.com/ubuntu jammy-updates/main amd64 Packages [1474 kB]
    Get:15 http://archive.ubuntu.com/ubuntu jammy-updates/multiverse amd64 Packages [49.8 kB]
    Get:16 http://archive.ubuntu.com/ubuntu jammy-updates/universe amd64 Packages [1279 kB]
    Get:17 http://archive.ubuntu.com/ubuntu jammy-backports/universe amd64 Packages [32.6 kB]
    Get:18 http://archive.ubuntu.com/ubuntu jammy-backports/main amd64 Packages [78.3 kB]
    Fetched 28.3 MB in 3s (8211 kB/s)                          
    Reading package lists... Done
    Building dependency tree... Done
    Reading state information... Done
    11 packages can be upgraded. Run 'apt list --upgradable' to see them.
    Reading package lists... Done
    Building dependency tree... Done
    Reading state information... Done
    The following additional packages will be installed:
      binutils binutils-common binutils-x86-64-linux-gnu build-essential bzip2 ca-certificates cpp cpp-11 dirmngr dpkg-dev fakeroot fontconfig-config fonts-dejavu-core g++ g++-11 gcc gcc-11 gcc-11-base gnupg
      gnupg-l10n gnupg-utils gpg gpg-agent gpg-wks-client gpg-wks-server gpgconf gpgsm javascript-common libalgorithm-diff-perl libalgorithm-diff-xs-perl libalgorithm-merge-perl libasan6 libassuan0 libatomic1
      libbinutils libbrotli1 libbsd0 libc-dev-bin libc-devtools libc6-dev libcc1-0 libcrypt-dev libctf-nobfd0 libctf0 libdeflate0 libdpkg-perl libexpat1 libexpat1-dev libfakeroot libfile-fcntllock-perl
      libfontconfig1 libfreetype6 libgcc-11-dev libgd3 libgdbm-compat4 libgdbm6 libgomp1 libisl23 libitm1 libjbig0 libjpeg-turbo8 libjpeg8 libjs-jquery libjs-sphinxdoc libjs-underscore libksba8 libldap-2.5-0
      libldap-common liblocale-gettext-perl liblsan0 libmd0 libmpc3 libmpdec3 libmpfr6 libnpth0 libnsl-dev libperl5.34 libpng16-16 libpython3-dev libpython3-stdlib libpython3.10 libpython3.10-dev
      libpython3.10-minimal libpython3.10-stdlib libquadmath0 libreadline8 libsasl2-2 libsasl2-modules libsasl2-modules-db libsqlite3-0 libstdc++-11-dev libtiff5 libtirpc-dev libtsan0 libubsan1 libwebp7
      libx11-6 libx11-data libxau6 libxcb1 libxdmcp6 libxpm4 linux-libc-dev lto-disabled-list make manpages manpages-dev media-types netbase openssl patch perl perl-modules-5.34 pinentry-curses python3
      python3-dev python3-distutils python3-lib2to3 python3-minimal python3-pkg-resources python3-setuptools python3-wheel python3.10 python3.10-dev python3.10-minimal readline-common rpcsvc-proto ucf xz-utils
      zlib1g-dev
    Suggested packages:
      binutils-doc bzip2-doc cpp-doc gcc-11-locales dbus-user-session libpam-systemd pinentry-gnome3 tor debian-keyring g++-multilib g++-11-multilib gcc-11-doc gcc-multilib autoconf automake libtool flex bison
      gdb gcc-doc gcc-11-multilib parcimonie xloadimage scdaemon apache2 | lighttpd | httpd glibc-doc git bzr libgd-tools gdbm-l10n libsasl2-modules-gssapi-mit | libsasl2-modules-gssapi-heimdal
      libsasl2-modules-ldap libsasl2-modules-otp libsasl2-modules-sql libstdc++-11-doc make-doc man-browser ed diffutils-doc perl-doc libterm-readline-gnu-perl | libterm-readline-perl-perl
      libtap-harness-archive-perl pinentry-doc python3-doc python3-tk python3-venv python-setuptools-doc python3.10-venv python3.10-doc binfmt-support readline-doc
    The following NEW packages will be installed:
      binutils binutils-common binutils-x86-64-linux-gnu build-essential bzip2 ca-certificates cpp cpp-11 dirmngr dpkg-dev fakeroot fontconfig-config fonts-dejavu-core g++ g++-11 gcc gcc-11 gcc-11-base gnupg
      gnupg-l10n gnupg-utils gpg gpg-agent gpg-wks-client gpg-wks-server gpgconf gpgsm javascript-common libalgorithm-diff-perl libalgorithm-diff-xs-perl libalgorithm-merge-perl libasan6 libassuan0 libatomic1
      libbinutils libbrotli1 libbsd0 libc-dev-bin libc-devtools libc6-dev libcc1-0 libcrypt-dev libctf-nobfd0 libctf0 libdeflate0 libdpkg-perl libexpat1 libexpat1-dev libfakeroot libfile-fcntllock-perl
      libfontconfig1 libfreetype6 libgcc-11-dev libgd3 libgdbm-compat4 libgdbm6 libgomp1 libisl23 libitm1 libjbig0 libjpeg-turbo8 libjpeg8 libjs-jquery libjs-sphinxdoc libjs-underscore libksba8 libldap-2.5-0
      libldap-common liblocale-gettext-perl liblsan0 libmd0 libmpc3 libmpdec3 libmpfr6 libnpth0 libnsl-dev libperl5.34 libpng16-16 libpython3-dev libpython3-stdlib libpython3.10 libpython3.10-dev
      libpython3.10-minimal libpython3.10-stdlib libquadmath0 libreadline8 libsasl2-2 libsasl2-modules libsasl2-modules-db libsqlite3-0 libstdc++-11-dev libtiff5 libtirpc-dev libtsan0 libubsan1 libwebp7
      libx11-6 libx11-data libxau6 libxcb1 libxdmcp6 libxpm4 linux-libc-dev lto-disabled-list make manpages manpages-dev media-types netbase openssl patch perl perl-modules-5.34 pinentry-curses python3
      python3-dev python3-distutils python3-lib2to3 python3-minimal python3-pip python3-pkg-resources python3-setuptools python3-wheel python3.10 python3.10-dev python3.10-minimal readline-common rpcsvc-proto
      ucf xz-utils zlib1g-dev
    0 upgraded, 131 newly installed, 0 to remove and 11 not upgraded.
    Need to get 101 MB of archives.
    After this operation, 356 MB of additional disk space will be used.
    Do you want to continue? [Y/n] y
    .......
    done.

    Install needed packages

    To get started we just install tensorflow and torch.  You will need to adjust for whatever python libraries you need.

    Install pytorch:

    pip3 install torch matplotlib       
    WARNING: The directory '/root/.cache/pip' or its parent directory is not owned or is not writable by the current user. The cache has been disabled. Check the permissions and owner of that directory. If executing pip with sudo, you should use sudo's -H flag.
    Collecting torch
      Downloading torch-2.1.1-cp310-cp310-manylinux1_x86_64.whl (670.2 MB)
         ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 670.2/670.2 MB 112.5 MB/s eta 0:00:00
    Collecting matplotlib
      Downloading matplotlib-3.8.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (11.6 MB)
         ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 11.6/11.6 MB 117.5 MB/s eta 0:00:00
    Collecting nvidia-cufft-cu12==11.0.2.54
      Downloading nvidia_cufft_cu12-11.0.2.54-py3-none-manylinux1_x86_64.whl (121.6 MB)
         ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 121.6/121.6 MB 111.0 MB/s eta 0:00:00
    Collecting triton==2.1.0
      Downloading triton-2.1.0-0-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (89.2 MB)
         ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 89.2/89.2 MB 111.6 MB/s eta 0:00:00
    Collecting fsspec
      Downloading fsspec-2023.10.0-py3-none-any.whl (166 kB)
         ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 166.4/166.4 KB 168.7 MB/s eta 0:00:00
    Collecting nvidia-cuda-runtime-cu12==12.1.105
      Downloading nvidia_cuda_runtime_cu12-12.1.105-py3-none-manylinux1_x86_64.whl (823 kB)
         ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 823.6/823.6 KB 169.9 MB/s eta 0:00:00
    Collecting nvidia-cuda-cupti-cu12==12.1.105
      Downloading nvidia_cuda_cupti_cu12-12.1.105-py3-none-manylinux1_x86_64.whl (14.1 MB)
         ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 14.1/14.1 MB 111.9 MB/s eta 0:00:00
    Collecting nvidia-curand-cu12==10.3.2.106
      Downloading nvidia_curand_cu12-10.3.2.106-py3-none-manylinux1_x86_64.whl (56.5 MB)
         ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 56.5/56.5 MB 117.1 MB/s eta 0:00:00
    Collecting nvidia-cusolver-cu12==11.4.5.107
      Downloading nvidia_cusolver_cu12-11.4.5.107-py3-none-manylinux1_x86_64.whl (124.2 MB)
         ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 124.2/124.2 MB 98.5 MB/s eta 0:00:00
    Collecting networkx
      Downloading networkx-3.2.1-py3-none-any.whl (1.6 MB)
         ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.6/1.6 MB 148.2 MB/s eta 0:00:00
    Collecting nvidia-cudnn-cu12==8.9.2.26
      Downloading nvidia_cudnn_cu12-8.9.2.26-py3-none-manylinux1_x86_64.whl (731.7 MB)
         ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 731.7/731.7 MB 120.6 MB/s eta 0:00:00
    Collecting nvidia-cusparse-cu12==12.1.0.106
      Downloading nvidia_cusparse_cu12-12.1.0.106-py3-none-manylinux1_x86_64.whl (196.0 MB)
         ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 196.0/196.0 MB 117.5 MB/s eta 0:00:00
    Collecting filelock
      Downloading filelock-3.13.1-py3-none-any.whl (11 kB)
    Collecting nvidia-nvtx-cu12==12.1.105
      Downloading nvidia_nvtx_cu12-12.1.105-py3-none-manylinux1_x86_64.whl (99 kB)
         ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 99.1/99.1 KB 83.6 MB/s eta 0:00:00
    Collecting jinja2
      Downloading Jinja2-3.1.2-py3-none-any.whl (133 kB)
         ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 133.1/133.1 KB 149.0 MB/s eta 0:00:00
    Collecting typing-extensions
      Downloading typing_extensions-4.8.0-py3-none-any.whl (31 kB)
    Collecting nvidia-cuda-nvrtc-cu12==12.1.105
      Downloading nvidia_cuda_nvrtc_cu12-12.1.105-py3-none-manylinux1_x86_64.whl (23.7 MB)
         ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 23.7/23.7 MB 82.2 MB/s eta 0:00:00
    Collecting nvidia-nccl-cu12==2.18.1
      Downloading nvidia_nccl_cu12-2.18.1-py3-none-manylinux1_x86_64.whl (209.8 MB)
         ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 209.8/209.8 MB 117.5 MB/s eta 0:00:00
    Collecting sympy
      Downloading sympy-1.12-py3-none-any.whl (5.7 MB)
         ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 5.7/5.7 MB 125.7 MB/s eta 0:00:00
    Collecting nvidia-cublas-cu12==12.1.3.1
      Downloading nvidia_cublas_cu12-12.1.3.1-py3-none-manylinux1_x86_64.whl (410.6 MB)
         ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 410.6/410.6 MB 114.3 MB/s eta 0:00:00
    Collecting nvidia-nvjitlink-cu12
      Downloading nvidia_nvjitlink_cu12-12.3.101-py3-none-manylinux1_x86_64.whl (20.5 MB)
         ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 20.5/20.5 MB 114.3 MB/s eta 0:00:00
    Collecting pyparsing>=2.3.1
      Downloading pyparsing-3.1.1-py3-none-any.whl (103 kB)
         ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 103.1/103.1 KB 144.1 MB/s eta 0:00:00
    Collecting numpy<2,>=1.21
      Downloading numpy-1.26.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (18.2 MB)
         ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 18.2/18.2 MB 77.1 MB/s eta 0:00:00
    Collecting fonttools>=4.22.0
      Downloading fonttools-4.45.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (4.6 MB)
         ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 4.6/4.6 MB 114.6 MB/s eta 0:00:00
    Collecting python-dateutil>=2.7
      Downloading python_dateutil-2.8.2-py2.py3-none-any.whl (247 kB)
         ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 247.7/247.7 KB 185.9 MB/s eta 0:00:00
    Collecting pillow>=8
      Downloading Pillow-10.1.0-cp310-cp310-manylinux_2_28_x86_64.whl (3.6 MB)
         ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 3.6/3.6 MB 129.8 MB/s eta 0:00:00
    Collecting cycler>=0.10
      Downloading cycler-0.12.1-py3-none-any.whl (8.3 kB)
    Collecting packaging>=20.0
      Downloading packaging-23.2-py3-none-any.whl (53 kB)
         ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 53.0/53.0 KB 144.1 MB/s eta 0:00:00
    Collecting kiwisolver>=1.3.1
      Downloading kiwisolver-1.4.5-cp310-cp310-manylinux_2_12_x86_64.manylinux2010_x86_64.whl (1.6 MB)
         ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.6/1.6 MB 145.5 MB/s eta 0:00:00
    Collecting contourpy>=1.0.1
      Downloading contourpy-1.2.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (310 kB)
         ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 310.7/310.7 KB 162.4 MB/s eta 0:00:00
    Collecting six>=1.5
      Downloading six-1.16.0-py2.py3-none-any.whl (11 kB)
    Collecting MarkupSafe>=2.0
      Downloading MarkupSafe-2.1.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (25 kB)
    Collecting mpmath>=0.19
      Downloading mpmath-1.3.0-py3-none-any.whl (536 kB)
         ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 536.2/536.2 KB 179.5 MB/s eta 0:00:00
    Installing collected packages: mpmath, typing-extensions, sympy, six, pyparsing, pillow, packaging, nvidia-nvtx-cu12, nvidia-nvjitlink-cu12, nvidia-nccl-cu12, nvidia-curand-cu12, nvidia-cufft-cu12, nvidia-cuda-runtime-cu12, nvidia-cuda-nvrtc-cu12, nvidia-cuda-cupti-cu12, nvidia-cublas-cu12, numpy, networkx, MarkupSafe, kiwisolver, fsspec, fonttools, filelock, cycler, triton, python-dateutil, nvidia-cusparse-cu12, nvidia-cudnn-cu12, jinja2, contourpy, nvidia-cusolver-cu12, matplotlib, torch
    Successfully installed MarkupSafe-2.1.3 contourpy-1.2.0 cycler-0.12.1 filelock-3.13.1 fonttools-4.45.0 fsspec-2023.10.0 jinja2-3.1.2 kiwisolver-1.4.5 matplotlib-3.8.2 mpmath-1.3.0 networkx-3.2.1 numpy-1.26.2 nvidia-cublas-cu12-12.1.3.1 nvidia-cuda-cupti-cu12-12.1.105 nvidia-cuda-nvrtc-cu12-12.1.105 nvidia-cuda-runtime-cu12-12.1.105 nvidia-cudnn-cu12-8.9.2.26 nvidia-cufft-cu12-11.0.2.54 nvidia-curand-cu12-10.3.2.106 nvidia-cusolver-cu12-11.4.5.107 nvidia-cusparse-cu12-12.1.0.106 nvidia-nccl-cu12-2.18.1 nvidia-nvjitlink-cu12-12.3.101 nvidia-nvtx-cu12-12.1.105 packaging-23.2 pillow-10.1.0 pyparsing-3.1.1 python-dateutil-2.8.2 six-1.16.0 sympy-1.12 torch-2.1.1 triton-2.1.0 typing-extensions-4.8.0
     

    Install Tensorflow:

    pip3 install tensorflow       
    WARNING: The directory '/root/.cache/pip' or its parent directory is not owned or is not writable by the current user. The cache has been disabled. Check the permissions and owner of that directory. If executing pip with sudo, you should use sudo's -H flag.
    Collecting tensorflow
      Downloading tensorflow-2.15.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (475.2 MB)
         ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 475.2/475.2 MB 110.9 MB/s eta 0:00:00
    Collecting astunparse>=1.6.0
      Downloading astunparse-1.6.3-py2.py3-none-any.whl (12 kB)
    Requirement already satisfied: numpy<2.0.0,>=1.23.5 in /usr/local/lib/python3.10/dist-packages (from tensorflow) (1.26.2)
    Collecting wrapt<1.15,>=1.11.0
      Downloading wrapt-1.14.1-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (77 kB)
         ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 77.9/77.9 KB 139.3 MB/s eta 0:00:00
    Requirement already satisfied: packaging in /usr/local/lib/python3.10/dist-packages (from tensorflow) (23.2)
    Collecting termcolor>=1.1.0
      Downloading termcolor-2.3.0-py3-none-any.whl (6.9 kB)
    Collecting absl-py>=1.0.0
      Downloading absl_py-2.0.0-py3-none-any.whl (130 kB)
         ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 130.2/130.2 KB 161.6 MB/s eta 0:00:00
    Collecting h5py>=2.9.0
      Downloading h5py-3.10.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (4.8 MB)
         ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 4.8/4.8 MB 109.2 MB/s eta 0:00:00
    Requirement already satisfied: setuptools in /usr/lib/python3/dist-packages (from tensorflow) (59.6.0)
    Collecting opt-einsum>=2.3.2
      Downloading opt_einsum-3.3.0-py3-none-any.whl (65 kB)
         ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 65.5/65.5 KB 134.5 MB/s eta 0:00:00
    Collecting tensorflow-io-gcs-filesystem>=0.23.1
      Downloading tensorflow_io_gcs_filesystem-0.34.0-cp310-cp310-manylinux_2_12_x86_64.manylinux2010_x86_64.whl (2.4 MB)
         ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 2.4/2.4 MB 119.6 MB/s eta 0:00:00
    Collecting flatbuffers>=23.5.26
      Downloading flatbuffers-23.5.26-py2.py3-none-any.whl (26 kB)
    Collecting libclang>=13.0.0
      Downloading libclang-16.0.6-py2.py3-none-manylinux2010_x86_64.whl (22.9 MB)
         ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 22.9/22.9 MB 114.4 MB/s eta 0:00:00
    Collecting tensorflow-estimator<2.16,>=2.15.0
      Downloading tensorflow_estimator-2.15.0-py2.py3-none-any.whl (441 kB)
         ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 442.0/442.0 KB 152.5 MB/s eta 0:00:00
    Collecting gast!=0.5.0,!=0.5.1,!=0.5.2,>=0.2.1
      Downloading gast-0.5.4-py3-none-any.whl (19 kB)
    Collecting google-pasta>=0.1.1
      Downloading google_pasta-0.2.0-py3-none-any.whl (57 kB)
         ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 57.5/57.5 KB 127.5 MB/s eta 0:00:00
    Collecting tensorboard<2.16,>=2.15
      Downloading tensorboard-2.15.1-py3-none-any.whl (5.5 MB)
         ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 5.5/5.5 MB 112.9 MB/s eta 0:00:00
    Collecting grpcio<2.0,>=1.24.3
      Downloading grpcio-1.59.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (5.3 MB)
         ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 5.3/5.3 MB 122.0 MB/s eta 0:00:00
    Collecting ml-dtypes~=0.2.0
      Downloading ml_dtypes-0.2.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.0 MB)
         ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.0/1.0 MB 137.3 MB/s eta 0:00:00
    Requirement already satisfied: six>=1.12.0 in /usr/local/lib/python3.10/dist-packages (from tensorflow) (1.16.0)
    Collecting keras<2.16,>=2.15.0
      Downloading keras-2.15.0-py3-none-any.whl (1.7 MB)
         ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.7/1.7 MB 125.8 MB/s eta 0:00:00
    Collecting protobuf!=4.21.0,!=4.21.1,!=4.21.2,!=4.21.3,!=4.21.4,!=4.21.5,<5.0.0dev,>=3.20.3
      Downloading protobuf-4.25.1-cp37-abi3-manylinux2014_x86_64.whl (294 kB)
         ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 294.6/294.6 KB 164.4 MB/s eta 0:00:00
    Requirement already satisfied: typing-extensions>=3.6.6 in /usr/local/lib/python3.10/dist-packages (from tensorflow) (4.8.0)
    Requirement already satisfied: wheel<1.0,>=0.23.0 in /usr/lib/python3/dist-packages (from astunparse>=1.6.0->tensorflow) (0.37.1)
    Collecting google-auth-oauthlib<2,>=0.5
      Downloading google_auth_oauthlib-1.1.0-py2.py3-none-any.whl (19 kB)
    Collecting tensorboard-data-server<0.8.0,>=0.7.0
      Downloading tensorboard_data_server-0.7.2-py3-none-manylinux_2_31_x86_64.whl (6.6 MB)
         ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 6.6/6.6 MB 113.3 MB/s eta 0:00:00
    Collecting protobuf!=4.21.0,!=4.21.1,!=4.21.2,!=4.21.3,!=4.21.4,!=4.21.5,<5.0.0dev,>=3.20.3
      Downloading protobuf-4.23.4-cp37-abi3-manylinux2014_x86_64.whl (304 kB)
         ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 304.5/304.5 KB 136.7 MB/s eta 0:00:00
    Collecting werkzeug>=1.0.1
      Downloading werkzeug-3.0.1-py3-none-any.whl (226 kB)
         ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 226.7/226.7 KB 184.9 MB/s eta 0:00:00
    Collecting markdown>=2.6.8
      Downloading Markdown-3.5.1-py3-none-any.whl (102 kB)
         ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 102.2/102.2 KB 157.0 MB/s eta 0:00:00
    Collecting requests<3,>=2.21.0
      Downloading requests-2.31.0-py3-none-any.whl (62 kB)
         ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 62.6/62.6 KB 135.8 MB/s eta 0:00:00
    Collecting google-auth<3,>=1.6.3
      Downloading google_auth-2.23.4-py2.py3-none-any.whl (183 kB)
         ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 183.3/183.3 KB 164.8 MB/s eta 0:00:00
    Collecting cachetools<6.0,>=2.0.0
      Downloading cachetools-5.3.2-py3-none-any.whl (9.3 kB)
    Collecting rsa<5,>=3.1.4
      Downloading rsa-4.9-py3-none-any.whl (34 kB)
    Collecting pyasn1-modules>=0.2.1
      Downloading pyasn1_modules-0.3.0-py2.py3-none-any.whl (181 kB)
         ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 181.3/181.3 KB 149.5 MB/s eta 0:00:00
    Collecting requests-oauthlib>=0.7.0
      Downloading requests_oauthlib-1.3.1-py2.py3-none-any.whl (23 kB)
    Collecting charset-normalizer<4,>=2
      Downloading charset_normalizer-3.3.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (142 kB)
         ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 142.1/142.1 KB 144.8 MB/s eta 0:00:00
    Collecting certifi>=2017.4.17
      Downloading certifi-2023.11.17-py3-none-any.whl (162 kB)
         ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 162.5/162.5 KB 142.4 MB/s eta 0:00:00
    Collecting idna<4,>=2.5
      Downloading idna-3.4-py3-none-any.whl (61 kB)
         ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 61.5/61.5 KB 138.7 MB/s eta 0:00:00
    Collecting urllib3<3,>=1.21.1
      Downloading urllib3-2.1.0-py3-none-any.whl (104 kB)
         ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 104.6/104.6 KB 160.3 MB/s eta 0:00:00
    Requirement already satisfied: MarkupSafe>=2.1.1 in /usr/local/lib/python3.10/dist-packages (from werkzeug>=1.0.1->tensorboard<2.16,>=2.15->tensorflow) (2.1.3)
    Collecting pyasn1<0.6.0,>=0.4.6
      Downloading pyasn1-0.5.0-py2.py3-none-any.whl (83 kB)
         ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 83.9/83.9 KB 154.6 MB/s eta 0:00:00
    Collecting oauthlib>=3.0.0
      Downloading oauthlib-3.2.2-py3-none-any.whl (151 kB)
         ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 151.7/151.7 KB 159.3 MB/s eta 0:00:00
    Installing collected packages: libclang, flatbuffers, wrapt, werkzeug, urllib3, termcolor, tensorflow-io-gcs-filesystem, tensorflow-estimator, tensorboard-data-server, pyasn1, protobuf, opt-einsum, oauthlib, ml-dtypes, markdown, keras, idna, h5py, grpcio, google-pasta, gast, charset-normalizer, certifi, cachetools, astunparse, absl-py, rsa, requests, pyasn1-modules, requests-oauthlib, google-auth, google-auth-oauthlib, tensorboard, tensorflow
    Successfully installed absl-py-2.0.0 astunparse-1.6.3 cachetools-5.3.2 certifi-2023.11.17 charset-normalizer-3.3.2 flatbuffers-23.5.26 gast-0.5.4 google-auth-2.23.4 google-auth-oauthlib-1.1.0 google-pasta-0.2.0 grpcio-1.59.3 h5py-3.10.0 idna-3.4 keras-2.15.0 libclang-16.0.6 markdown-3.5.1 ml-dtypes-0.2.0 oauthlib-3.2.2 opt-einsum-3.3.0 protobuf-4.23.4 pyasn1-0.5.0 pyasn1-modules-0.3.0 requests-2.31.0 requests-oauthlib-1.3.1 rsa-4.9 tensorboard-2.15.1 tensorboard-data-server-0.7.2 tensorflow-2.15.0 tensorflow-estimator-2.15.0 tensorflow-io-gcs-filesystem-0.34.0 termcolor-2.3.0 urllib3-2.1.0 werkzeug-3.0.1 wrapt-1.14.1
     

     


  • How to Configure NVIDIA GPUs with Docker on Ubuntu: A Comprehensive Guide for AI Deep Learning CUDA Solution


    Welcome to our in-depth guide on configuring NVIDIA GPUs with Docker on Ubuntu. This post is tailored for developers, data scientists, and IT professionals who are looking to leverage the power of NVIDIA's GPU acceleration within Docker containers. 

    Whether you're working on machine learning projects, scientific computations, or any GPU-intensive tasks, this guide will walk you through the process step-by-step.

    This guide will work for all Nvidia GPUs that have a supported driver in Linux such as the GTX, RTX and Tesla series.  Of course the Tesla series is recommended as they have ECC and are more tailored for AI applications.

    Normally it is not possible to share a GPU with multiple containers

    Typically 1 real/physical GPU can work on one machine, whether physical or a VM that gets exclusive use.  But nvidia has made tools that solve this problem by essentially creating a layer between Docker and the nvidia driver.

    There is the old nvidia-docker2 package that NVIDIA has created which allows an unlimited amount of Docker containers to use the underlaying GPU(s) on the host  but this has now been deprecrated for the new "nvidia-toolkit"

    nvidia-toolkit is what you want unless there's a reason why you have an older distro that can't use the newer nvidia-toolkit.

    nvidia-toolkit official install guide: https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/latest/install-guide.html

    How To Install nvidia-toolkit on Mint Ubuntu Debian

    Step 1.) Add the Nvidia repo to Linux

    First we add the gpg key for the repo:

    curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg

    Add the repo into our sources.list.d

    curl -s -L https://nvidia.github.io/libnvidia-container/stable/deb/nvidia-container-toolkit.list | sed 's#deb https://#deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://#g' |  
    sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list

    Update apt so it can see the required packages from the nvidia repo

    apt update

    Step 2 - Install nvidia toolkit

    apt-get install -y nvidia-container-toolkit
    
    Reading package lists... Done
    Building dependency tree       
    Reading state information... Done
    The following additional packages will be installed:
      libnvidia-container-tools libnvidia-container1 nvidia-container-toolkit-base
    The following NEW packages will be installed:
      libnvidia-container-tools libnvidia-container1 nvidia-container-toolkit nvidia-container-toolkit-base
    0 upgraded, 4 newly installed, 0 to remove and 690 not upgraded.
    Need to get 4,194 kB of archives.
    After this operation, 16.6 MB of additional disk space will be used.
    Get:1 https://nvidia.github.io/libnvidia-container/stable/deb/amd64  libnvidia-container1 1.14.3-1 [923 kB]
    Get:2 https://nvidia.github.io/libnvidia-container/stable/deb/amd64  libnvidia-container-tools 1.14.3-1 [19.3 kB]
    Get:3 https://nvidia.github.io/libnvidia-container/stable/deb/amd64  nvidia-container-toolkit-base 1.14.3-1 [2,336 kB]
    Get:4 https://nvidia.github.io/libnvidia-container/stable/deb/amd64  nvidia-container-toolkit 1.14.3-1 [917 kB]
    Fetched 4,194 kB in 1s (3,150 kB/s)           
    Selecting previously unselected package libnvidia-container1:amd64.
    (Reading database ... 467373 files and directories currently installed.)
    Preparing to unpack .../libnvidia-container1_1.14.3-1_amd64.deb ...
    Unpacking libnvidia-container1:amd64 (1.14.3-1) ...
    Selecting previously unselected package libnvidia-container-tools.
    Preparing to unpack .../libnvidia-container-tools_1.14.3-1_amd64.deb ...
    Unpacking libnvidia-container-tools (1.14.3-1) ...
    Selecting previously unselected package nvidia-container-toolkit-base.
    Preparing to unpack .../nvidia-container-toolkit-base_1.14.3-1_amd64.deb ...
    Unpacking nvidia-container-toolkit-base (1.14.3-1) ...
    Selecting previously unselected package nvidia-container-toolkit.
    Preparing to unpack .../nvidia-container-toolkit_1.14.3-1_amd64.deb ...
    Unpacking nvidia-container-toolkit (1.14.3-1) ...
    Setting up nvidia-container-toolkit-base (1.14.3-1) ...
    Setting up libnvidia-container1:amd64 (1.14.3-1) ...
    Setting up libnvidia-container-tools (1.14.3-1) ...
    Setting up nvidia-container-toolkit (1.14.3-1) ...
    Processing triggers for libc-bin (2.31-0ubuntu9.2) ...
    
    

    Step 3 - Docker Configuration

    nvidia-ctk runtime configure --runtime=docker


    INFO[0000] Loading config from /etc/docker/daemon.json  
    INFO[0000] Wrote updated config to /etc/docker/daemon.json
    INFO[0000] It is recommended that docker daemon be restarted.

    Step 4 - Test

    docker run --rm --runtime=nvidia --gpus all ubuntu nvidia-smi
    
    +-----------------------------------------------------------------------------+
    | NVIDIA-SMI 390.154                Driver Version: 390.154                   |
    |-------------------------------+----------------------+----------------------+
    | GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
    | Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
    |===============================+======================+======================|
    |   0  Tesla V100-SXM2...      Off  | 00000000:04:00.0 N/A |              N/A |
    | N/A   41C    P0    N/A /  N/A |    0MiB /   16160MiB |     N/A      Default |
    +-------------------------------+----------------------+----------------------+
                                                                                   
    +-----------------------------------------------------------------------------+
    | Processes:                                                       GPU Memory |
    |  GPU       PID   Type   Process name                             Usage      |
    |=============================================================================|
    |    0                    Not Supported                                       |
    +-----------------------------------------------------------------------------+
    
    

     


  • Linux Ubuntu Mint how to check nameservers when /etc/resolv.conf disabled solution


    You'll notice that /etc/resolv.conf contains dire warners on most Linux Desktops. 


    # This file is managed by man:systemd-resolved(8). Do not edit.
    #
    # This is a dynamic resolv.conf file for connecting local clients to the
    # internal DNS stub resolver of systemd-resolved. This file lists all
    # configured search domains.
    #
    # Run "resolvectl status" to see details about the uplink DNS servers
    # currently in use.
    #
    # Third party programs must not access this file directly, but only through the
    # symlink at /etc/resolv.conf. To manage man:resolv.conf(5) in a different way,
    # replace this symlink by a static file or a different symlink.
    #
    # See man:systemd-resolved.service(8) for details about the supported modes of
    # operation for /etc/resolv.conf.

    nameserver 127.0.0.53

     

    This is because of systemd-resolved, which is a local, internal DNS resolver service that handles all of the DNS requests.  It warns you not to make changes since they will just be overwritten and defaulted back to the local resolver running on 127.0.0.52 as we can see with the line for "nameserver 127.0.0.53"

    We can see that indeed systemd-resolved is running on 127.0.0.53

    Output of netstat

    tcp        0      0 127.0.0.53:53           0.0.0.0:*               LISTEN      1773/systemd-resolv
    udp        0      0 127.0.0.53:53           0.0.0.0:*                           1773/systemd-resolv

     

    You can check the current nameservers with this command:

    systemd-resolve --status

    Global
           LLMNR setting: no                  
    MulticastDNS setting: no                  
      DNSOverTLS setting: no                  
          DNSSEC setting: no                  
        DNSSEC supported: no                  
      Current DNS Server: 172.76.5.2     
             DNS Servers:
    172.76.5.2
                          172.76.5.3     
              DNSSEC NTA: 10.in-addr.arpa     
                          16.172.in-addr.arpa
                          168.192.in-addr.arpa
                          17.172.in-addr.arpa
                          18.172.in-addr.arpa
                          19.172.in-addr.arpa
                          20.172.in-addr.arpa
                          21.172.in-addr.arpa
                          22.172.in-addr.arpa
                          23.172.in-addr.arpa
                          24.172.in-addr.arpa
                          25.172.in-addr.arpa
                          26.172.in-addr.arpa
                          27.172.in-addr.arpa
                          28.172.in-addr.arpa
                          29.172.in-addr.arpa
                          30.172.in-addr.arpa
                          31.172.in-addr.arpa
                          corp                
                          d.f.ip6.arpa        
                          home                
                          internal            
                          intranet            
                          lan                 
                          local               
                          private             
                          test                

    Link 13 (veth8325f72)
          Current Scopes: none
    DefaultRoute setting: no  
           LLMNR setting: yes
    MulticastDNS setting: no  
      DNSOverTLS setting: no  
          DNSSEC setting: no  
        DNSSEC supported: no  

    Link 11 (veth9a73ce5)
          Current Scopes: none
    DefaultRoute setting: no  
           LLMNR setting: yes
    MulticastDNS setting: no  
      DNSOverTLS setting: no  
          DNSSEC setting: no  
        DNSSEC supported: no  

    How can we get rid of systemd-resolved?

    In fact this is required if want to run our own bind or DNSMasq server for various reasons including running your own local routing/DNS: https://realtechtalk.com/Virtualbox_Best_Networking_Mode_In_LabWork_Environment_without_using_NAT_Network_or_Bridged-2475-articles

     

    systemctl disable systemd-resolved

    #remember to stop it too!

    systemctl stop systemd-resolved

    Remember to actually add a "nameserver" entry in /etc/resolv.conf or your DNS won't work.


  • Docker cannot work on other overlayfs filesystems such as ecryptfs won't start overlayfs: filesystem on '/home/docker/overlay2/check-overlayfs-support130645871/upper' not supported as upperdir


    This does not seem to be officially documented but makes sense that an overlay on an overlay does not work and is considered an unsupported filesystem as is even NTFS .  Some admins/organizations try to use ecyptfs as a simple solution to encrypt the contents of Docker.  Instead, you could probably use something like Luks to encrypt it all.

    One other half measure that you can use, is to do mount a volume that is encrypted to your container.  If all the sensitive data is located on the volume alone, that would provide a better level of security than no encryption.  However, if during the operation of the container, data is copied to portions of the container that are not part of the encrypted mount volume, then this does expose any of those portions of data.  It also won't help protect any secrets that are stored in Docker, since those will live in unencrypted /var/lib/docker, so keep that in mind.

    You'll get errors like this when trying to run on ecryptfs or another overlayfs system:

    [graphdriver] trying configured driver: overlay2
    failed to mount overlay: invalid argument     storage-driver=overlay2
    failed to start daemon: error initializing graphdriver: driver not supported: overlay2

    overlayfs: filesystem on '/home/docker/overlay2/check-overlayfs-support130645871/upper' not supported as upperdir

    Basically Docker mainly supports and recommends overlayfs, so this does create a limitation if the data directory for docker (by default /var/lib/docker) is already using overlayfs for any reason.

    References:

    https://github.com/moby/moby/pull/23121

    https://github.com/moby/moby/issues/22577

    https://forums.rancher.com/t/overlayfs-filesystem-on-not-supported-as-upperdir/20690


  • Linux How To Access Original Contents of Directory Mounted Debian Mint CentOS Redhat Solution


    Let's say you have a directory /mnt/raid which has files and directories inside it, but nothing is mounted to it.

    Then you mount a block device such as /dev/sdh to /mnt/raid

    Even though /mnt/raid has files and directories there, you can only see the mounted contents of /mnt/raid.

    How do we access the original contents?

    Just do a bind mount of the root filesystem to another location.

    mkdir /bindmount

    mount --bind / /bindmount

    Now just go to /bindmount/mnt/raid and you will be able to see the original contents of those files/directories and this is the case with any other situation where something is mounted on a directory.

     


  • ecryptfs how to manually encrypt your existing home directory or other directory


    Just in case, it is reocmmended to backup the original contents of the directory (especially your home dir) before proceeding.

    Setup ecryptfs

    Run this command: ecryptfs-setup-private

    It will ask you for your login password, this is so that when you login, everything is automatically decrypted by using a passphrase that is wrapped with your login.

    You can hit enter and leave things blank for an autogenerated passphrase (for mounting) or you can enter your own.

    You should have output like below and then, logout and login and see that things are mounted.

    Check that ecryptfs worked

    As we can see things are mounted on /home/mint/Private

    This is the default behavior, and remember that only files and directories inside /home/youruser/Private are actually encrypted.

     


  • How to Reset CIPC Cisco IP Communicator for CME CUCM CallManager


    Just hit **# on the keypad and the CIPC will enable the button in settings for a factory reset.  Sometimes the phone may run into issues or may be unable to register to another tftp server (eg. another CME or CUCM server) due to a bug or maybe due to the security settings tying it to a specific server.

    Step 1 - Click Settings


     

    Step 2 - Hit "**#" on the keypad

    Below is how things look when the phone is still locked. 

     

    After hitting **# you will see the "Erase" button appear like below:

     

     

    Click the "Erase" button and it will be reset.


  • Internet Explorer Cannot Download File "Your security settings do not allow for this file to be downloaded." Security Settings Solution


    By default in most newer Windows installs, you will not be able to download files from "Internet" sites and you'll get this error "Your security settings do not allow for this file to be downloaded."

    Solution to Enable Downloads in IE Internet Explorer

    1.) Go to Settings (button) -> Internet options -> Security (tab)

    2.) Click "Internet" and then the "Custom Level" button.

    3.) Find the following section and set Download to Enabled.

    Downloads: File Download: Enabled (check)

    Solution to enable file downloads in Internet Explorer

    Enable File Downloads in Internet Explorer

    *If you find it is already enabled you are probably in the wrong area under Trusted Sites, make sure you are under "Internet".


  • Linux How To Upgrade To The Latest Kernel Debian Mint Ubuntu


    How to check what kernel version you have/currently running?

    uname -rm
    5.4.0-91-generic x86_64

    The above shows us that we are running 5.4.0-91-generic on the x86_64 architecture.

    The safest way is to stick with the same flavor eg if you're on generic, and say on kernel 5.4.0 then it makes sense to follow what is below.  However, if you are migrating or dual booting between newer hardware (eg. you got a new laptop, server or Desktop that is newer than the age of your kernel), you may want to switch series.

    For example in Ubuntu 20 we can search and see there is Kernel 5.15 which will provide newer hardware support.  If you try to upgrade your existing flavor and kernel version and find it doesn't work, then it's time to do the second method we'll describe later on.

    If you want the latest version of the flavor you have, which is often -generic, then type this:

    If your Linux flavor is something other than generic then change the -generic below.

    sudo apt install linux-image-generic

    The example below is from the Ubuntu 20 live CD.


    Reading package lists... Done
    Building dependency tree       
    Reading state information... Done
    The following additional packages will be installed:
      linux-generic linux-headers-5.4.0-166 linux-headers-5.4.0-166-generic linux-headers-generic linux-image-5.4.0-166-generic linux-modules-5.4.0-166-generic linux-modules-extra-5.4.0-166-generic
    Suggested packages:
      fdutils linux-doc | linux-source-5.4.0 linux-tools
    The following NEW packages will be installed:
      linux-headers-5.4.0-166 linux-headers-5.4.0-166-generic linux-image-5.4.0-166-generic linux-modules-5.4.0-166-generic linux-modules-extra-5.4.0-166-generic
    The following packages will be upgraded:
      linux-generic linux-headers-generic linux-image-generic
    3 upgraded, 5 newly installed, 0 to remove and 685 not upgraded.
    Need to get 77.1 MB of archives.
    After this operation, 380 MB of additional disk space will be used.
    Do you want to continue? [Y/n]

    Second Method Upgrade Kernel Series To The Latest

    Say your kernel series was 5.4 generic and you upgraded to the latest one (at this time in Ubuntu 20 that would be 5.4.0-166) and you find your new hardware is still not supported.   You'll want to do an apt-cache search linux-image and see what the latest series is, as newer kernel series' will probably support your new hardware.  This is likely a case of your hardware not existing when the kernel version/series was created, so there are no valid kernel modules for some of your new hardware.

    You do an apt-cache search linux-image and then grep on generic (or whatever flavor you want).

    As w can see below, Linux 5.15 linux-image-5.15.0-88-generic is the latest version, so we'll install this one, plus the extra modules ( linux-modules-extra) and kernel source (linux-headers).

    sudo apt install linux-modules-5.15.0-88-generic linux-headers-5.15.0-88-generic linux-modules-extra-5.15.0-88-generic

    apt-cache search linux-image-|grep generic
    linux-image-5.4.0-26-generic - Signed kernel image generic
    linux-image-generic - Generic Linux kernel image
    linux-image-generic-hwe-18.04 - Generic Linux kernel image (dummy transitional package)
    linux-image-generic-hwe-18.04-edge - Generic Linux kernel image (dummy transitional package)
    linux-image-generic-hwe-20.04 - Generic Linux kernel image
    linux-image-oem - Depends on the generic kernel image (dummy transitional package)
    linux-image-oem-osp1 - Depends on the generic kernel image (dummy transitional package)
    linux-image-unsigned-5.4.0-26-generic - Linux kernel image for version 5.4.0 on 64 bit x86 SMP
    linux-modules-nvidia-390-5.4.0-26-generic - Linux kernel nvidia modules for version 5.4.0-26
    linux-modules-nvidia-440-5.4.0-26-generic - Linux kernel nvidia modules for version 5.4.0-26
    linux-image-5.11.0-22-generic - Signed kernel image generic
    linux-image-5.11.0-25-generic - Signed kernel image generic
    linux-image-5.11.0-27-generic - Signed kernel image generic
    linux-image-5.11.0-34-generic - Signed kernel image generic
    linux-image-5.11.0-36-generic - Signed kernel image generic
    linux-image-5.11.0-37-generic - Signed kernel image generic
    linux-image-5.11.0-38-generic - Signed kernel image generic
    linux-image-5.11.0-40-generic - Signed kernel image generic
    linux-image-5.11.0-41-generic - Signed kernel image generic
    linux-image-5.11.0-43-generic - Signed kernel image generic
    linux-image-5.11.0-44-generic - Signed kernel image generic
    linux-image-5.11.0-46-generic - Signed kernel image generic
    linux-image-5.13.0-1007-intel - Signed kernel image generic
    linux-image-5.13.0-21-generic - Signed kernel image generic
    linux-image-5.13.0-22-generic - Signed kernel image generic
    linux-image-5.13.0-23-generic - Signed kernel image generic
    linux-image-5.13.0-25-generic - Signed kernel image generic
    linux-image-5.13.0-27-generic - Signed kernel image generic
    linux-image-5.13.0-28-generic - Signed kernel image generic
    linux-image-5.13.0-30-generic - Signed kernel image generic
    linux-image-5.13.0-35-generic - Signed kernel image generic
    linux-image-5.13.0-37-generic - Signed kernel image generic
    linux-image-5.13.0-39-generic - Signed kernel image generic
    linux-image-5.13.0-40-generic - Signed kernel image generic
    linux-image-5.13.0-41-generic - Signed kernel image generic
    linux-image-5.13.0-44-generic - Signed kernel image generic
    linux-image-5.13.0-48-generic - Signed kernel image generic
    linux-image-5.13.0-51-generic - Signed kernel image generic
    linux-image-5.13.0-52-generic - Signed kernel image generic
    linux-image-5.15.0-33-generic - Signed kernel image generic
    linux-image-5.15.0-41-generic - Signed kernel image generic
    linux-image-5.15.0-43-generic - Signed kernel image generic
    linux-image-5.15.0-46-generic - Signed kernel image generic
    linux-image-5.15.0-48-generic - Signed kernel image generic
    linux-image-5.15.0-50-generic - Signed kernel image generic
    linux-image-5.15.0-52-generic - Signed kernel image generic
    linux-image-5.15.0-53-generic - Signed kernel image generic
    linux-image-5.15.0-56-generic - Signed kernel image generic
    linux-image-5.15.0-57-generic - Signed kernel image generic
    linux-image-5.15.0-58-generic - Signed kernel image generic
    linux-image-5.15.0-60-generic - Signed kernel image generic
    linux-image-5.15.0-67-generic - Signed kernel image generic
    linux-image-5.15.0-69-generic - Signed kernel image generic
    linux-image-5.15.0-70-generic - Signed kernel image generic
    linux-image-5.15.0-71-generic - Signed kernel image generic
    linux-image-5.15.0-72-generic - Signed kernel image generic
    linux-image-5.15.0-73-generic - Signed kernel image generic
    linux-image-5.15.0-75-generic - Signed kernel image generic
    linux-image-5.15.0-76-generic - Signed kernel image generic
    linux-image-5.15.0-78-generic - Signed kernel image generic
    linux-image-5.15.0-79-generic - Signed kernel image generic
    linux-image-5.15.0-82-generic - Signed kernel image generic
    linux-image-5.15.0-83-generic - Signed kernel image generic
    linux-image-5.15.0-84-generic - Signed kernel image generic
    linux-image-5.15.0-86-generic - Signed kernel image generic
    linux-image-5.15.0-87-generic - Signed kernel image generic
    linux-image-5.15.0-88-generic - Signed kernel image generic
    linux-image-5.4.0-100-generic - Signed kernel image generic
    linux-image-5.4.0-104-generic - Signed kernel image generic
    linux-image-5.4.0-105-generic - Signed kernel image generic
    linux-image-5.4.0-107-generic - Signed kernel image generic
    linux-image-5.4.0-109-generic - Signed kernel image generic
    linux-image-5.4.0-110-generic - Signed kernel image generic
    linux-image-5.4.0-113-generic - Signed kernel image generic
    linux-image-5.4.0-117-generic - Signed kernel image generic
    linux-image-5.4.0-120-generic - Signed kernel image generic
    linux-image-5.4.0-121-generic - Signed kernel image generic
    linux-image-5.4.0-122-generic - Signed kernel image generic
    linux-image-5.4.0-124-generic - Signed kernel image generic
    linux-image-5.4.0-125-generic - Signed kernel image generic
    linux-image-5.4.0-126-generic - Signed kernel image generic
    linux-image-5.4.0-128-generic - Signed kernel image generic
    linux-image-5.4.0-131-generic - Signed kernel image generic
    linux-image-5.4.0-132-generic - Signed kernel image generic
    linux-image-5.4.0-135-generic - Signed kernel image generic
    linux-image-5.4.0-136-generic - Signed kernel image generic
    linux-image-5.4.0-137-generic - Signed kernel image generic
    linux-image-5.4.0-139-generic - Signed kernel image generic
    linux-image-5.4.0-144-generic - Signed kernel image generic
    linux-image-5.4.0-146-generic - Signed kernel image generic
    linux-image-5.4.0-147-generic - Signed kernel image generic
    linux-image-5.4.0-148-generic - Signed kernel image generic
    linux-image-5.4.0-149-generic - Signed kernel image generic
    linux-image-5.4.0-150-generic - Signed kernel image generic
    linux-image-5.4.0-152-generic - Signed kernel image generic
    linux-image-5.4.0-153-generic - Signed kernel image generic
    linux-image-5.4.0-155-generic - Signed kernel image generic
    linux-image-5.4.0-156-generic - Signed kernel image generic
    linux-image-5.4.0-159-generic - Signed kernel image generic
    linux-image-5.4.0-162-generic - Signed kernel image generic
    linux-image-5.4.0-163-generic - Signed kernel image generic
    linux-image-5.4.0-164-generic - Signed kernel image generic
    linux-image-5.4.0-165-generic - Signed kernel image generic
    linux-image-5.4.0-166-generic - Signed kernel image generic
    linux-image-5.4.0-28-generic - Signed kernel image generic
    linux-image-5.4.0-29-generic - Signed kernel image generic
    linux-image-5.4.0-31-generic - Signed kernel image generic
    linux-image-5.4.0-33-generic - Signed kernel image generic
    linux-image-5.4.0-37-generic - Signed kernel image generic
    linux-image-5.4.0-39-generic - Signed kernel image generic
    linux-image-5.4.0-40-generic - Signed kernel image generic
    linux-image-5.4.0-42-generic - Signed kernel image generic
    linux-image-5.4.0-45-generic - Signed kernel image generic
    linux-image-5.4.0-47-generic - Signed kernel image generic
    linux-image-5.4.0-48-generic - Signed kernel image generic
    linux-image-5.4.0-51-generic - Signed kernel image generic
    linux-image-5.4.0-52-generic - Signed kernel image generic
    linux-image-5.4.0-53-generic - Signed kernel image generic
    linux-image-5.4.0-54-generic - Signed kernel image generic
    linux-image-5.4.0-58-generic - Signed kernel image generic
    linux-image-5.4.0-59-generic - Signed kernel image generic
    linux-image-5.4.0-60-generic - Signed kernel image generic
    linux-image-5.4.0-62-generic - Signed kernel image generic
    linux-image-5.4.0-64-generic - Signed kernel image generic
    linux-image-5.4.0-65-generic - Signed kernel image generic
    linux-image-5.4.0-66-generic - Signed kernel image generic
    linux-image-5.4.0-67-generic - Signed kernel image generic
    linux-image-5.4.0-70-generic - Signed kernel image generic
    linux-image-5.4.0-71-generic - Signed kernel image generic
    linux-image-5.4.0-72-generic - Signed kernel image generic
    linux-image-5.4.0-73-generic - Signed kernel image generic
    linux-image-5.4.0-74-generic - Signed kernel image generic
    linux-image-5.4.0-77-generic - Signed kernel image generic
    linux-image-5.4.0-80-generic - Signed kernel image generic
    linux-image-5.4.0-81-generic - Signed kernel image generic
    linux-image-5.4.0-84-generic - Signed kernel image generic
    linux-image-5.4.0-86-generic - Signed kernel image generic
    linux-image-5.4.0-88-generic - Signed kernel image generic
    linux-image-5.4.0-89-generic - Signed kernel image generic
    linux-image-5.4.0-90-generic - Signed kernel image generic
    linux-image-5.4.0-91-generic - Signed kernel image generic
    linux-image-5.4.0-92-generic - Signed kernel image generic
    linux-image-5.4.0-94-generic - Signed kernel image generic
    linux-image-5.4.0-96-generic - Signed kernel image generic
    linux-image-5.4.0-97-generic - Signed kernel image generic
    linux-image-5.4.0-99-generic - Signed kernel image generic
    linux-image-5.8.0-23-generic - Signed kernel image generic
    linux-image-5.8.0-25-generic - Signed kernel image generic
    linux-image-5.8.0-28-generic - Signed kernel image generic
    linux-image-5.8.0-29-generic - Signed kernel image generic
    linux-image-5.8.0-33-generic - Signed kernel image generic
    linux-image-5.8.0-34-generic - Signed kernel image generic
    linux-image-5.8.0-36-generic - Signed kernel image generic
    linux-image-5.8.0-38-generic - Signed kernel image generic
    linux-image-5.8.0-40-generic - Signed kernel image generic
    linux-image-5.8.0-41-generic - Signed kernel image generic
    linux-image-5.8.0-43-generic - Signed kernel image generic
    linux-image-5.8.0-44-generic - Signed kernel image generic
    linux-image-5.8.0-45-generic - Signed kernel image generic
    linux-image-5.8.0-48-generic - Signed kernel image generic
    linux-image-5.8.0-49-generic - Signed kernel image generic
    linux-image-5.8.0-50-generic - Signed kernel image generic
    linux-image-5.8.0-53-generic - Signed kernel image generic
    linux-image-5.8.0-55-generic - Signed kernel image generic
    linux-image-5.8.0-59-generic - Signed kernel image generic
    linux-image-5.8.0-63-generic - Signed kernel image generic
    linux-image-generic-hwe-20.04-edge - Generic Linux kernel image
    linux-image-unsigned-5.11.0-22-generic - Linux kernel image for version 5.11.0 on 64 bit x86 SMP
    linux-image-unsigned-5.11.0-25-generic - Linux kernel image for version 5.11.0 on 64 bit x86 SMP
    linux-image-unsigned-5.11.0-27-generic - Linux kernel image for version 5.11.0 on 64 bit x86 SMP
    linux-image-unsigned-5.11.0-34-generic - Linux kernel image for version 5.11.0 on 64 bit x86 SMP
    linux-image-unsigned-5.11.0-36-generic - Linux kernel image for version 5.11.0 on 64 bit x86 SMP
    linux-image-unsigned-5.11.0-37-generic - Linux kernel image for version 5.11.0 on 64 bit x86 SMP
    linux-image-unsigned-5.11.0-38-generic - Linux kernel image for version 5.11.0 on 64 bit x86 SMP
    linux-image-unsigned-5.11.0-40-generic - Linux kernel image for version 5.11.0 on 64 bit x86 SMP
    linux-image-unsigned-5.11.0-41-generic - Linux kernel image for version 5.11.0 on 64 bit x86 SMP
    linux-image-unsigned-5.11.0-43-generic - Linux kernel image for version 5.11.0 on 64 bit x86 SMP
    linux-image-unsigned-5.11.0-44-generic - Linux kernel image for version 5.11.0 on 64 bit x86 SMP
    linux-image-unsigned-5.11.0-46-generic - Linux kernel image for version 5.11.0 on 64 bit x86 SMP
    linux-image-unsigned-5.13.0-21-generic - Linux kernel image for version 5.13.0 on 64 bit x86 SMP
    linux-image-unsigned-5.13.0-22-generic - Linux kernel image for version 5.13.0 on 64 bit x86 SMP
    linux-image-unsigned-5.13.0-23-generic - Linux kernel image for version 5.13.0 on 64 bit x86 SMP
    linux-image-unsigned-5.13.0-25-generic - Linux kernel image for version 5.13.0 on 64 bit x86 SMP
    linux-image-unsigned-5.13.0-27-generic - Linux kernel image for version 5.13.0 on 64 bit x86 SMP
    linux-image-unsigned-5.13.0-28-generic - Linux kernel image for version 5.13.0 on 64 bit x86 SMP
    linux-image-unsigned-5.13.0-30-generic - Linux kernel image for version 5.13.0 on 64 bit x86 SMP
    linux-image-unsigned-5.13.0-35-generic - Linux kernel image for version 5.13.0 on 64 bit x86 SMP
    linux-image-unsigned-5.13.0-37-generic - Linux kernel image for version 5.13.0 on 64 bit x86 SMP
    linux-image-unsigned-5.13.0-39-generic - Linux kernel image for version 5.13.0 on 64 bit x86 SMP
    linux-image-unsigned-5.13.0-40-generic - Linux kernel image for version 5.13.0 on 64 bit x86 SMP
    linux-image-unsigned-5.13.0-41-generic - Linux kernel image for version 5.13.0 on 64 bit x86 SMP
    linux-image-unsigned-5.13.0-44-generic - Linux kernel image for version 5.13.0 on 64 bit x86 SMP
    linux-image-unsigned-5.13.0-48-generic - Linux kernel image for version 5.13.0 on 64 bit x86 SMP
    linux-image-unsigned-5.13.0-51-generic - Linux kernel image for version 5.13.0 on 64 bit x86 SMP
    linux-image-unsigned-5.13.0-52-generic - Linux kernel image for version 5.13.0 on 64 bit x86 SMP
    linux-image-unsigned-5.15.0-33-generic - Linux kernel image for version 5.15.0 on 64 bit x86 SMP
    linux-image-unsigned-5.15.0-41-generic - Linux kernel image for version 5.15.0 on 64 bit x86 SMP
    linux-image-unsigned-5.15.0-43-generic - Linux kernel image for version 5.15.0 on 64 bit x86 SMP
    linux-image-unsigned-5.15.0-46-generic - Linux kernel image for version 5.15.0 on 64 bit x86 SMP
    linux-image-unsigned-5.15.0-48-generic - Linux kernel image for version 5.15.0 on 64 bit x86 SMP
    linux-image-unsigned-5.15.0-50-generic - Linux kernel image for version 5.15.0 on 64 bit x86 SMP
    linux-image-unsigned-5.15.0-52-generic - Linux kernel image for version 5.15.0 on 64 bit x86 SMP
    linux-image-unsigned-5.15.0-53-generic - Linux kernel image for version 5.15.0 on 64 bit x86 SMP
    linux-image-unsigned-5.15.0-56-generic - Linux kernel image for version 5.15.0 on 64 bit x86 SMP
    linux-image-unsigned-5.15.0-57-generic - Linux kernel image for version 5.15.0 on 64 bit x86 SMP
    linux-image-unsigned-5.15.0-58-generic - Linux kernel image for version 5.15.0 on 64 bit x86 SMP
    linux-image-unsigned-5.15.0-60-generic - Linux kernel image for version 5.15.0 on 64 bit x86 SMP
    linux-image-unsigned-5.15.0-67-generic - Linux kernel image for version 5.15.0 on 64 bit x86 SMP
    linux-image-unsigned-5.15.0-69-generic - Linux kernel image for version 5.15.0 on 64 bit x86 SMP
    linux-image-unsigned-5.15.0-70-generic - Linux kernel image for version 5.15.0 on 64 bit x86 SMP
    linux-image-unsigned-5.15.0-71-generic - Linux kernel image for version 5.15.0 on 64 bit x86 SMP
    linux-image-unsigned-5.15.0-72-generic - Linux kernel image for version 5.15.0 on 64 bit x86 SMP
    linux-image-unsigned-5.15.0-73-generic - Linux kernel image for version 5.15.0 on 64 bit x86 SMP
    linux-image-unsigned-5.15.0-75-generic - Linux kernel image for version 5.15.0 on 64 bit x86 SMP
    linux-image-unsigned-5.15.0-76-generic - Linux kernel image for version 5.15.0 on 64 bit x86 SMP
    linux-image-unsigned-5.15.0-78-generic - Linux kernel image for version 5.15.0 on 64 bit x86 SMP
    linux-image-unsigned-5.15.0-79-generic - Linux kernel image for version 5.15.0 on 64 bit x86 SMP
    linux-image-unsigned-5.15.0-82-generic - Linux kernel image for version 5.15.0 on 64 bit x86 SMP
    linux-image-unsigned-5.15.0-83-generic - Linux kernel image for version 5.15.0 on 64 bit x86 SMP
    linux-image-unsigned-5.15.0-84-generic - Linux kernel image for version 5.15.0 on 64 bit x86 SMP
    linux-image-unsigned-5.15.0-86-generic - Linux kernel image for version 5.15.0 on 64 bit x86 SMP
    linux-image-unsigned-5.15.0-87-generic - Linux kernel image for version 5.15.0 on 64 bit x86 SMP
    linux-image-unsigned-5.15.0-88-generic - Linux kernel image for version 5.15.0 on 64 bit x86 SMP
    linux-image-unsigned-5.4.0-100-generic - Linux kernel image for version 5.4.0 on 64 bit x86 SMP
    linux-image-unsigned-5.4.0-104-generic - Linux kernel image for version 5.4.0 on 64 bit x86 SMP
    linux-image-unsigned-5.4.0-105-generic - Linux kernel image for version 5.4.0 on 64 bit x86 SMP
    linux-image-unsigned-5.4.0-107-generic - Linux kernel image for version 5.4.0 on 64 bit x86 SMP
    linux-image-unsigned-5.4.0-109-generic - Linux kernel image for version 5.4.0 on 64 bit x86 SMP
    linux-image-unsigned-5.4.0-110-generic - Linux kernel image for version 5.4.0 on 64 bit x86 SMP
    linux-image-unsigned-5.4.0-113-generic - Linux kernel image for version 5.4.0 on 64 bit x86 SMP
    linux-image-unsigned-5.4.0-117-generic - Linux kernel image for version 5.4.0 on 64 bit x86 SMP
    linux-image-unsigned-5.4.0-120-generic - Linux kernel image for version 5.4.0 on 64 bit x86 SMP
    linux-image-unsigned-5.4.0-121-generic - Linux kernel image for version 5.4.0 on 64 bit x86 SMP
    linux-image-unsigned-5.4.0-122-generic - Linux kernel image for version 5.4.0 on 64 bit x86 SMP
    linux-image-unsigned-5.4.0-124-generic - Linux kernel image for version 5.4.0 on 64 bit x86 SMP
    linux-image-unsigned-5.4.0-125-generic - Linux kernel image for version 5.4.0 on 64 bit x86 SMP
    linux-image-unsigned-5.4.0-126-generic - Linux kernel image for version 5.4.0 on 64 bit x86 SMP
    linux-image-unsigned-5.4.0-128-generic - Linux kernel image for version 5.4.0 on 64 bit x86 SMP
    linux-image-unsigned-5.4.0-131-generic - Linux kernel image for version 5.4.0 on 64 bit x86 SMP
    linux-image-unsigned-5.4.0-132-generic - Linux kernel image for version 5.4.0 on 64 bit x86 SMP
    linux-image-unsigned-5.4.0-135-generic - Linux kernel image for version 5.4.0 on 64 bit x86 SMP
    linux-image-unsigned-5.4.0-136-generic - Linux kernel image for version 5.4.0 on 64 bit x86 SMP
    linux-image-unsigned-5.4.0-137-generic - Linux kernel image for version 5.4.0 on 64 bit x86 SMP
    linux-image-unsigned-5.4.0-139-generic - Linux kernel image for version 5.4.0 on 64 bit x86 SMP
    linux-image-unsigned-5.4.0-144-generic - Linux kernel image for version 5.4.0 on 64 bit x86 SMP
    linux-image-unsigned-5.4.0-146-generic - Linux kernel image for version 5.4.0 on 64 bit x86 SMP
    linux-image-unsigned-5.4.0-147-generic - Linux kernel image for version 5.4.0 on 64 bit x86 SMP
    linux-image-unsigned-5.4.0-148-generic - Linux kernel image for version 5.4.0 on 64 bit x86 SMP
    linux-image-unsigned-5.4.0-149-generic - Linux kernel image for version 5.4.0 on 64 bit x86 SMP
    linux-image-unsigned-5.4.0-150-generic - Linux kernel image for version 5.4.0 on 64 bit x86 SMP
    linux-image-unsigned-5.4.0-152-generic - Linux kernel image for version 5.4.0 on 64 bit x86 SMP
    linux-image-unsigned-5.4.0-153-generic - Linux kernel image for version 5.4.0 on 64 bit x86 SMP
    linux-image-unsigned-5.4.0-155-generic - Linux kernel image for version 5.4.0 on 64 bit x86 SMP
    linux-image-unsigned-5.4.0-156-generic - Linux kernel image for version 5.4.0 on 64 bit x86 SMP
    linux-image-unsigned-5.4.0-159-generic - Linux kernel image for version 5.4.0 on 64 bit x86 SMP
    linux-image-unsigned-5.4.0-162-generic - Linux kernel image for version 5.4.0 on 64 bit x86 SMP
    linux-image-unsigned-5.4.0-163-generic - Linux kernel image for version 5.4.0 on 64 bit x86 SMP
    linux-image-unsigned-5.4.0-164-generic - Linux kernel image for version 5.4.0 on 64 bit x86 SMP
    linux-image-unsigned-5.4.0-165-generic - Linux kernel image for version 5.4.0 on 64 bit x86 SMP
    linux-image-unsigned-5.4.0-166-generic - Linux kernel image for version 5.4.0 on 64 bit x86 SMP
    linux-image-unsigned-5.4.0-28-generic - Linux kernel image for version 5.4.0 on 64 bit x86 SMP
    linux-image-unsigned-5.4.0-29-generic - Linux kernel image for version 5.4.0 on 64 bit x86 SMP
    linux-image-unsigned-5.4.0-31-generic - Linux kernel image for version 5.4.0 on 64 bit x86 SMP
    linux-image-unsigned-5.4.0-33-generic - Linux kernel image for version 5.4.0 on 64 bit x86 SMP
    linux-image-unsigned-5.4.0-37-generic - Linux kernel image for version 5.4.0 on 64 bit x86 SMP
    linux-image-unsigned-5.4.0-39-generic - Linux kernel image for version 5.4.0 on 64 bit x86 SMP
    linux-image-unsigned-5.4.0-40-generic - Linux kernel image for version 5.4.0 on 64 bit x86 SMP
    linux-image-unsigned-5.4.0-42-generic - Linux kernel image for version 5.4.0 on 64 bit x86 SMP
    linux-image-unsigned-5.4.0-45-generic - Linux kernel image for version 5.4.0 on 64 bit x86 SMP
    linux-image-unsigned-5.4.0-47-generic - Linux kernel image for version 5.4.0 on 64 bit x86 SMP
    linux-image-unsigned-5.4.0-48-generic - Linux kernel image for version 5.4.0 on 64 bit x86 SMP
    linux-image-unsigned-5.4.0-51-generic - Linux kernel image for version 5.4.0 on 64 bit x86 SMP
    linux-image-unsigned-5.4.0-52-generic - Linux kernel image for version 5.4.0 on 64 bit x86 SMP
    linux-image-unsigned-5.4.0-53-generic - Linux kernel image for version 5.4.0 on 64 bit x86 SMP
    linux-image-unsigned-5.4.0-54-generic - Linux kernel image for version 5.4.0 on 64 bit x86 SMP
    linux-image-unsigned-5.4.0-58-generic - Linux kernel image for version 5.4.0 on 64 bit x86 SMP
    linux-image-unsigned-5.4.0-59-generic - Linux kernel image for version 5.4.0 on 64 bit x86 SMP
    linux-image-unsigned-5.4.0-60-generic - Linux kernel image for version 5.4.0 on 64 bit x86 SMP
    linux-image-unsigned-5.4.0-62-generic - Linux kernel image for version 5.4.0 on 64 bit x86 SMP
    linux-image-unsigned-5.4.0-64-generic - Linux kernel image for version 5.4.0 on 64 bit x86 SMP
    linux-image-unsigned-5.4.0-65-generic - Linux kernel image for version 5.4.0 on 64 bit x86 SMP
    linux-image-unsigned-5.4.0-66-generic - Linux kernel image for version 5.4.0 on 64 bit x86 SMP
    linux-image-unsigned-5.4.0-67-generic - Linux kernel image for version 5.4.0 on 64 bit x86 SMP
    linux-image-unsigned-5.4.0-70-generic - Linux kernel image for version 5.4.0 on 64 bit x86 SMP
    linux-image-unsigned-5.4.0-71-generic - Linux kernel image for version 5.4.0 on 64 bit x86 SMP
    linux-image-unsigned-5.4.0-72-generic - Linux kernel image for version 5.4.0 on 64 bit x86 SMP
    linux-image-unsigned-5.4.0-73-generic - Linux kernel image for version 5.4.0 on 64 bit x86 SMP
    linux-image-unsigned-5.4.0-74-generic - Linux kernel image for version 5.4.0 on 64 bit x86 SMP
    linux-image-unsigned-5.4.0-77-generic - Linux kernel image for version 5.4.0 on 64 bit x86 SMP
    linux-image-unsigned-5.4.0-80-generic - Linux kernel image for version 5.4.0 on 64 bit x86 SMP
    linux-image-unsigned-5.4.0-81-generic - Linux kernel image for version 5.4.0 on 64 bit x86 SMP
    linux-image-unsigned-5.4.0-84-generic - Linux kernel image for version 5.4.0 on 64 bit x86 SMP
    linux-image-unsigned-5.4.0-86-generic - Linux kernel image for version 5.4.0 on 64 bit x86 SMP
    linux-image-unsigned-5.4.0-88-generic - Linux kernel image for version 5.4.0 on 64 bit x86 SMP
    linux-image-unsigned-5.4.0-89-generic - Linux kernel image for version 5.4.0 on 64 bit x86 SMP
    linux-image-unsigned-5.4.0-90-generic - Linux kernel image for version 5.4.0 on 64 bit x86 SMP
    linux-image-unsigned-5.4.0-91-generic - Linux kernel image for version 5.4.0 on 64 bit x86 SMP
    linux-image-unsigned-5.4.0-92-generic - Linux kernel image for version 5.4.0 on 64 bit x86 SMP
    linux-image-unsigned-5.4.0-94-generic - Linux kernel image for version 5.4.0 on 64 bit x86 SMP
    linux-image-unsigned-5.4.0-96-generic - Linux kernel image for version 5.4.0 on 64 bit x86 SMP
    linux-image-unsigned-5.4.0-97-generic - Linux kernel image for version 5.4.0 on 64 bit x86 SMP
    linux-image-unsigned-5.4.0-99-generic - Linux kernel image for version 5.4.0 on 64 bit x86 SMP
    linux-image-unsigned-5.8.0-23-generic - Linux kernel image for version 5.8.0 on 64 bit x86 SMP
    linux-image-unsigned-5.8.0-25-generic - Linux kernel image for version 5.8.0 on 64 bit x86 SMP
    linux-image-unsigned-5.8.0-28-generic - Linux kernel image for version 5.8.0 on 64 bit x86 SMP
    linux-image-unsigned-5.8.0-29-generic - Linux kernel image for version 5.8.0 on 64 bit x86 SMP
    linux-image-unsigned-5.8.0-33-generic - Linux kernel image for version 5.8.0 on 64 bit x86 SMP
    linux-image-unsigned-5.8.0-34-generic - Linux kernel image for version 5.8.0 on 64 bit x86 SMP
    linux-image-unsigned-5.8.0-36-generic - Linux kernel image for version 5.8.0 on 64 bit x86 SMP
    linux-image-unsigned-5.8.0-38-generic - Linux kernel image for version 5.8.0 on 64 bit x86 SMP
    linux-image-unsigned-5.8.0-40-generic - Linux kernel image for version 5.8.0 on 64 bit x86 SMP
    linux-image-unsigned-5.8.0-41-generic - Linux kernel image for version 5.8.0 on 64 bit x86 SMP
    linux-image-unsigned-5.8.0-43-generic - Linux kernel image for version 5.8.0 on 64 bit x86 SMP
    linux-image-unsigned-5.8.0-44-generic - Linux kernel image for version 5.8.0 on 64 bit x86 SMP
    linux-image-unsigned-5.8.0-45-generic - Linux kernel image for version 5.8.0 on 64 bit x86 SMP
    linux-image-unsigned-5.8.0-48-generic - Linux kernel image for version 5.8.0 on 64 bit x86 SMP
    linux-image-unsigned-5.8.0-49-generic - Linux kernel image for version 5.8.0 on 64 bit x86 SMP
    linux-image-unsigned-5.8.0-50-generic - Linux kernel image for version 5.8.0 on 64 bit x86 SMP
    linux-image-unsigned-5.8.0-53-generic - Linux kernel image for version 5.8.0 on 64 bit x86 SMP
    linux-image-unsigned-5.8.0-55-generic - Linux kernel image for version 5.8.0 on 64 bit x86 SMP
    linux-image-unsigned-5.8.0-59-generic - Linux kernel image for version 5.8.0 on 64 bit x86 SMP
    linux-image-unsigned-5.8.0-63-generic - Linux kernel image for version 5.8.0 on 64 bit x86 SMP
    linux-modules-nvidia-390-5.4.0-28-generic - Linux kernel nvidia modules for version 5.4.0-28
    linux-modules-nvidia-440-5.4.0-28-generic - Linux kernel nvidia modules for version 5.4.0-28

     

     

    References: https://wiki.debian.org/HowToUpgradeKernel


  • Firefox how to restore and backup saved passwords and history which files/location


    The passwords are stored in the following locations on Unix/Linux:

    The directory is usually inside your home like this:

    ~/.mozilla/firefox

    logins.json contains the locations, username and password

    key*.db (usually then name could be key3.db or key4.db)

    Without the key file you will not see any passwords in Firefox as it is required to in order to decrypt the contents of logins.json

    Copy those files and restore them to the current machine/profile and you should be able to access your old passwords.

    How to backup and restore browsing history?

    Just copy and restore places.sqlite


  • Linux How To echo as root solution to use tee permission denied solution Ubuntu Debian Mint Redhat CentOS


    The issue is when you need to echo something as root/sudo, that it doesn't work.  You can never do a sudo echo to an output file as you'd expect.

    Take an example to clear out wasted RAM buffers/cache like this:

    sudo echo 1 > /proc/sys/vm/drop_caches
    -bash: /proc/sys/vm/drop_caches: Permission denied

    The solution is to run tee as sudo/root

    What we do is echo 1, but then pipe it to the "tee" command as sudo, which then writes the value to the proc entry drop_caches.

    echo 1|sudo tee /proc/sys/vm/drop_caches
     

    This will of course work whenever you need to echo something that requires root privileges.

    Another example of using echo with tee.


  • Linux how to keep command line bash process running if you are disconnected or need to logout of SSH remotely


    So you started a process or other important task that is remote but it is in the foreground and on a pts.  This means if you background with Ctrl + Z or otherwise logout or get disconnected that the process will be stopped.

    Here is how you can solve the problem:

    1.) Hit Ctrl + Z to suspend the process.

    2.) Type bg to restore the process into the background.  If you do a ps aux on the process you will see it was restored with the & at the end, which puts it into the background.

    Now there is no need to restart the task.

    What is a more permanent solution to keep a terminal window open without manually backgrounding processes?

    You can use the "screen" tool which gives you multiple virtual terminals that stay open even if you are disconnected.


  • Linux swapping too much? How to check the swappiness and stop swapping


    We could always disable swap but this would normally be a bad idea unless you have an incredible amount of RAM and a workload that will never exceed it.  However, for live/containerized and high performance environments it could be desirable.

    Another middle ground may be to set swappiness to a lower number.

    You may also want to clear your kernel's cache, which could be eating up RAM unnecessarily by clearing buffers/cache.

    Swappiness is the tendency and how aggressively or passively you want to use swap space

    swappiness is a numeric value between 100 and 0, with 100 being the most aggressive and 0 being the least likely to swap.

    How to check your current swappiness level?

    Here is an example on Ubuntu 20's defaults:

    cat /proc/sys/vm/swappiness
    60

    We can see it is currently at level 60, which is a slight bias toward swapping more aggressively.

    How can we temporarily change swappiness?

    Just enter the numeric value and echo it into the swappiness entry under proc.

    echo 30 > /proc/sys/vm/swappiness

    How can we make the change permanent?

    Edit /etc/sysctl.conf and add this:

    vm.swappiness=30


  • request_module: runaway loop modprobe binfmt-464c Kernel panic - not syncing: No init found Pid: 1, comm: swapper/0 Not tainted solution


    request_module: runaway loop modprobe binfmt-464c Kernel panic - not syncing: No init found Pid: 1, comm: swapper/0 Not tainted

    This is usually caused by a mismatch in architecture and happens frequently in development environments.

    Here is a example of what caused this issue:

    1. Your binaries are based on one architecture
    2. Your kernel was compiled with another architecture.

    Why does this happen?

    Perhaps you migrated your dev environment and chrooted into it, in a new architecture or perhaps you migrated to newer hardware with a different architecture (eg. your dev container is now running on a different architecture than the original).  When you make your kernel, it will by default compile for the active architecture (eg. if you are in a 64 bit x64 kernel then it will compile the kernel as x64 even if your kernel config specified ARM or i386).

    A good hint that this is happening is if you have the same kernel, same config but it is asking you questions about enabling different kernel modules and drivers.  It is likely because of the change in architecture.

    This is a frequent cause of the issue that leads to the mismatch and which is why it tries to modprobe binfmt-464c module to try to try make the non-compatible binaries work.

    How to avoid this?

    Never migrate or one simple way is when you make your kernel specify the architecture using the ARCH= switch.

    make ARCH=i386

     


  • How To Add Multiple SSH Keys Ubuntu Mint Linux Debian Redhat


    By default if you create a private key for SSH, it will create something like .ssh/id_rsa

    Linux will always search for and offer this key when connecting to servers. 

    If you put extra keys in your .ssh directory like id_rsa_realtechtalk.com, they will be ignored by default and NOT used or offered (you can verify this with ssh -v) and see it is not being offered.

    Here is how you add the extra SSH keys so they are all offered:

    #this gives us the PID of the SSH agent otherwise our shell won't know how to communicate with the agent which would cuase ssh-add to fail (this is usually only the case if you have a remote ssh session and are not physically on the actual host).

    eval `ssh-agent -s`

    The actual output of the above starts the ssh-agent and exports the SSH_AUTH_SOCK and SSH_AGENT_PID variables.

    SSH_AUTH_SOCK=/tmp/ssh-adfasdf3Bq/agent.312027; export SSH_AUTH_SOCK;
    SSH_AGENT_PID=35028; export SSH_AGENT_PID;

    #this adds our file id_rsa_realtechtalk.com (you should adjust to the actual path and name of your SSH key file that you wish to be offered when connecting to remote hosts)

    ssh-add id_rsa_realtechtalk.com

    After this you should be able to be able to connect via SSH/SCP using your newly added key and all keys should be offered.

    How can you see which SSH keys are available and added?

    ssh-add -l

    root@e2ac5b0ec2d0:/# ssh-add -l  
    The agent has no identities.

    If you added your keys you should see something like this:

    ssh-add -l
    2048 SHA256:pj53UXwoF490CDaKqlrA9MYwpVYL3+ynzrV1Sk/aNyM root@e2ac5b0ec2d0 (RSA)

    Error when running ssh-add -l

    Could not open a connection to your authentication agent.
     

    You need to run ssh-agent like this: eval `ssh-agent -s`

    Again this happens when you are on a remote host and requires you to run ssh-agent like above.

    ssh-agent does not work over remote ssh session

    If you normally work from the GUI (eg. Mate Desktop, Gnome, KDE) your SSH_AUTH_SOCK are probably something like /run/user/5200/keyring/ssh

    The SSH_AGENT_PID would be the PID of the correct agent.

    This happens because the environment variable SSH_AUTH_SOCK and SSH_AGENT_PID is not set by default when you login remotely by ssh.

    How do we fix it? Normally this will be enough to fix it (even without the SSH_AGENT_PID):

    export SSH_AUTH_SOCK="/run/user/5200/keyring/ssh"

    Change the 5200 to the UID of your user that normally authenticates with the keys that you want.

    You could make the above automatic by adding the export command to ~/.bashrc
     


  • ecryptfs how to change default mount location from Private Ubuntu Debian Centos How


    In a lot of distros like Debian, ecryptfs will mount itself in /home/yourusername/Private

    This is controlled by Private.mnt which may contain the mount path like this:

    /home/yourusername/Private

    Change the default mount location of ecryptfs by modifying this file:

    home/.ecryptfs/yourusername/.ecryptfs/Private.mnt

    After you unmount and relogin, you should find ecryptfs is now mounted in the updated path specified in Private.mnt


  • bash: apt-add-repository: command not found solved solution fix


    Getting this error "bash: apt-add-repository: command not found" ?

    You need to install the software-properties-common to solve the error:

    sudo apt-get install software-properties-common


  • How to upgrade to the latest Python version on Linux Ubuntu Debian Mint 3.11


    A lot of developers want to go to 3.11 because of the speed improvements, but most distros never have the latest Python version.

    Using the deadsnakes third party repo is the easiest way aside from compiling it yourself (which is safer and recommended):

    Step 1 - Add the repo

    apt-add-repository ppa:deadsnakes/ppa

    If you get an error about requests then install it:

    pip3 install requests
    Traceback (most recent call last):
      File "/usr/lib/linuxmint/mintSources/mintSources.py", line 11, in
        import requests
    ModuleNotFoundError: No module named 'requests'

    pip3 install requests
    Collecting requests
      Downloading https://files.pythonhosted.org/packages/2d/61/08076519c80041bc0ffa1a8af0cbd3bf3e2b62af10435d269a9d0f40564d/requests-2.27.1-py2.py3-none-any.whl (63kB)
        100% |████████████████████████████████| 71kB 4.5MB/s
    Collecting certifi>=2017.4.17 (from requests)
      Downloading https://files.pythonhosted.org/packages/4c/dd/2234eab22353ffc7d94e8d13177aaa050113286e93e7b40eae01fbf7c3d9/certifi-2023.7.22-py3-none-any.whl (158kB)
        100% |████████████████████████████████| 163kB 5.0MB/s
    Collecting urllib3<1.27,>=1.21.1 (from requests)
      Downloading https://files.pythonhosted.org/packages/48/fe/a5c6cc46e9fe9171d7ecf0f33ee7aae14642f8d74baa7af4d7840f9358be/urllib3-1.26.17-py2.py3-none-any.whl (143kB)
        100% |████████████████████████████████| 153kB 9.2MB/s
    Requirement already satisfied: idna<4,>=2.5; python_version >= "3" in /usr/lib/python3/dist-packages (from requests)
    Collecting charset-normalizer~=2.0.0; python_version >= "3" (from requests)
      Downloading https://files.pythonhosted.org/packages/06/b3/24afc8868eba069a7f03650ac750a778862dc34941a4bebeb58706715726/charset_normalizer-2.0.12-py3-none-any.whl
    Installing collected packages: certifi, urllib3, charset-normalizer, requests
    Successfully installed certifi-2023.7.22 charset-normalizer-2.0.12 requests-2.27.1 urllib3-1.26.17
     

    Installation of the deadsnakes ppa

    Unable to init server: Could not connect: Connection refused
    Unable to init server: Could not connect: Connection refused
    You are about to add the following PPA:
     This PPA contains more recent Python versions packaged for Ubuntu.

    Disclaimer: there's no guarantee of timely updates in case of security problems or other issues. If you want to use them in a security-or-otherwise-critical environment (say, on a production server), you do so at your own risk.

    Update Note
    ===========
    Please use this repository instead of ppa:fkrull/deadsnakes.

    Reporting Issues
    ================

    Issues can be reported in the master issue tracker at:
    https://github.com/deadsnakes/issues/issues

    Supported Ubuntu and Python Versions
    ====================================

    - Ubuntu 20.04 (focal) Python3.5 - Python3.7, Python3.9 - Python3.11
    - Ubuntu 22.04 (jammy) Python3.7 - Python3.9, Python3.11
    - Note: Python2.7 (all), Python 3.8 (focal), Python 3.10 (jammy) are not provided by deadsnakes as upstream ubuntu provides those packages.

    Why some packages aren't built:
    - Note: for focal, older python versions require libssl<1.1 so they are not currently built
    - Note: for jammy, older python versions requre libssl<3 so they are not currently built
    - If you need these, reach out to asottile to set up a private ppa

    The packages may also work on other versions of Ubuntu or Debian, but that is not tested or supported.

    Packages
    ========

    The packages provided here are loosely based on the debian upstream packages with some modifications to make them more usable as non-default pythons and on ubuntu.  As such, the packages follow debian's patterns and often do not include a full python distribution with just `apt install python#.#`.  Here is a list of packages that may be useful along with the default install:

    - `python#.#-dev`: includes development headers for building C extensions
    - `python#.#-venv`: provides the standard library `venv` module
    - `python#.#-distutils`: provides the standard library `distutils` module
    - `python#.#-lib2to3`: provides the `2to3-#.#` utility as well as the standard library `lib2to3` module
    - `python#.#-gdbm`: provides the standard library `dbm.gnu` module
    - `python#.#-tk`: provides the standard library `tkinter` module

    Third-Party Python Modules
    ==========================

    Python modules in the official Ubuntu repositories are packaged to work with the Python interpreters from the official repositories. Accordingly, they generally won't work with the Python interpreters from this PPA. As an exception, pure-Python modules for Python 3 will work, but any compiled extension modules won't.

    To install 3rd-party Python modules, you should use the common Python packaging tools.  For an introduction into the Python packaging ecosystem and its tools, refer to the Python Packaging User Guide:
    https://packaging.python.org/installing/

    Sources
    =======
    The package sources are available at:
    https://github.com/deadsnakes/

    Nightly Builds
    ==============

    For nightly builds, see ppa:deadsnakes/nightly https://launchpad.net/~deadsnakes/+archive/ubuntu/nightly
     More info: https://launchpad.net/~deadsnakes/+archive/ubuntu/ppa
    Press Enter to continue or Ctrl+C to cancel

    Executing: /tmp/apt-key-gpghome.grYwz5aXqY/gpg.1.sh --keyserver hkps://keyserver.ubuntu.com:443 --recv-keys F23C5A6CF475977595C89F51BA6932366A755776
    gpg: key BA6932366A755776: public key "Launchpad PPA for deadsnakes" imported
    gpg: Total number processed: 1
    gpg:               imported: 1

    Install Python 3.11

    apt update

    apt install python3.11

    Reading package lists... Done
    Building dependency tree       
    Reading state information... Done
    The following additional packages will be installed:
      libpython3.11-minimal libpython3.11-stdlib python3.11-minimal
    Suggested packages:
      python3.11-venv binfmt-support
    The following NEW packages will be installed:
      libpython3.11-minimal libpython3.11-stdlib python3.11 python3.11-minimal
    0 upgraded, 4 newly installed, 0 to remove and 1 not upgraded.
    Need to get 5570 kB of archives.
    After this operation, 21.9 MB of additional disk space will be used.
    Do you want to continue? [Y/n] y
    Get:1 http://ppa.launchpad.net/deadsnakes/ppa/ubuntu focal/main amd64 libpython3.11-minimal amd64 3.11.5-1+focal1 [851 kB]
    Get:2 http://ppa.launchpad.net/deadsnakes/ppa/ubuntu focal/main amd64 python3.11-minimal amd64 3.11.5-1+focal1 [2298 kB]
    Get:3 http://ppa.launchpad.net/deadsnakes/ppa/ubuntu focal/main amd64 libpython3.11-stdlib amd64 3.11.5-1+focal1 [1801 kB]
    Get:4 http://ppa.launchpad.net/deadsnakes/ppa/ubuntu focal/main amd64 python3.11 amd64 3.11.5-1+focal1 [620 kB]
    Fetched 5570 kB in 4s (1307 kB/s)   
    debconf: unable to initialize frontend: Dialog
    debconf: (No usable dialog-like program is installed, so the dialog based frontend cannot be used. at /usr/share/perl5/Debconf/FrontEnd/Dialog.pm line 76, <> line 4.)
    debconf: falling back to frontend: Readline
    Selecting previously unselected package libpython3.11-minimal:amd64.
    (Reading database ... 20150 files and directories currently installed.)
    Preparing to unpack .../libpython3.11-minimal_3.11.5-1+focal1_amd64.deb ...
    Unpacking libpython3.11-minimal:amd64 (3.11.5-1+focal1) ...
    Selecting previously unselected package python3.11-minimal.
    Preparing to unpack .../python3.11-minimal_3.11.5-1+focal1_amd64.deb ...
    Unpacking python3.11-minimal (3.11.5-1+focal1) ...
    Selecting previously unselected package libpython3.11-stdlib:amd64.
    Preparing to unpack .../libpython3.11-stdlib_3.11.5-1+focal1_amd64.deb ...
    Unpacking libpython3.11-stdlib:amd64 (3.11.5-1+focal1) ...
    Selecting previously unselected package python3.11.
    Preparing to unpack .../python3.11_3.11.5-1+focal1_amd64.deb ...
    Unpacking python3.11 (3.11.5-1+focal1) ...
    Setting up libpython3.11-minimal:amd64 (3.11.5-1+focal1) ...
    Setting up python3.11-minimal (3.11.5-1+focal1) ...
    Setting up libpython3.11-stdlib:amd64 (3.11.5-1+focal1) ...
    Setting up python3.11 (3.11.5-1+focal1) ...
    Processing triggers for mime-support (3.64ubuntu1) ...

    You may have to manually invoke as you'll see in Ubuntu 20 it uses the default 3.8 still:

    ls -al /usr/bin/python3
    lrwxrwxrwx 1 root root 9 Mar 13  2020 /usr/bin/python3 -> python3.8
     

    Or if you can take the risk in a testing environment, change the symlink for python3 to point to python3.11

    pip won't work either, so you can use venv or do this (if it's a testing/dev environment):

    wget https://bootstrap.pypa.io/get-pip.py

    python3.11 get-pip.py
    Collecting pip
      Obtaining dependency information for pip from https://files.pythonhosted.org/packages/50/c2/e06851e8cc28dcad7c155f4753da8833ac06a5c704c109313b8d5a62968a/pip-23.2.1-py3-none-any.whl.metadata
      Downloading pip-23.2.1-py3-none-any.whl.metadata (4.2 kB)
    Downloading pip-23.2.1-py3-none-any.whl (2.1 MB)
       ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 2.1/2.1 MB 36.3 MB/s eta 0:00:00
    Installing collected packages: pip
      Attempting uninstall: pip
        Found existing installation: pip 20.0.2
        Uninstalling pip-20.0.2:
          Successfully uninstalled pip-20.0.2
    Successfully installed pip-23.2.1
    WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv



  • kernel panic initramfs not syncing cause solution


    Check your initramfs if it's missing /dev/null or /dev/console, this is likely the reason.

    If you want all actual devices to be created you could also enable devtmpfs in your kernel (.config) and mount like this during init:

    CONFIG_DEVTMPFS=y
    CONFIG_DEVTMPFS_MOUNT=y

    mount -t devtmpfs none /dev

    But note devtmpfs will not create /dev/null or /dev/console for you.


  • add bridge failed: Package not installed Linux Bridge Not working Ubuntu Mint Debian solution


    If you get this error in your logs:

    add bridge failed: Package not installed

    This error normally means one of two things.

    1.) Is your brctl (bridge-utils) installed?

    On Mint/Debian check for "brctl". If it's not there do

    sudo apt install bridge-utils uml-utilities

    2.) Is your bridge.ko (bridge kernel module loaded?).

    On some installs I have seen that you cannot modprobe bridge.ko (it fails) because your list of dependencies is broken for some reason.

    Do this to restore a list of modules:

    sudo depmod

    Then try to modprobe bridge again

    modprobe bridge

    3.) If the bridge.ko is missing make sure you install the package for your kernel that contains the modules

    eg: linux-modules-extra-generic linux-modules

    After fixing everything, this should now work:

    brctl addbr br0


  • vi cannot copy and paste automatic visual mode solution


    See below in the screenshot that copy is disabled by visual mode which enables automatically:

    Fix it by setting this .vimrc option:

    echo "set mouse-=a" >> ~/.vimrc


  • python3 error Ubuntu Linux error solution SyntaxError: invalid syntax line 12 pip{sys.version_info.major}


    This sort of thing normally happens your python3 or pip3 has been updated, because you have to in order to use pip, but the newer pip now breaks compatibility with your old python (3.5 in this case).

    There are a few solutions, the easiest is perhaps to upgrade to a newer OS with a newer distro provided Python 3 or to manually install a newer version of Python/OR use a PPA like deadsnakes that provides newer versions.

     

    Traceback (most recent call last):
      File "/usr/bin/pip3", line 11, in
        sys.exit(main())
      File "/usr/local/lib/python3.5/dist-packages/pip/__init__.py", line 11, in main
        from pip._internal.utils.entrypoints import _wrapper
      File "/usr/local/lib/python3.5/dist-packages/pip/_internal/utils/entrypoints.py", line 12
        f"pip{sys.version_info.major}",
                                     ^
    SyntaxError: invalid syntax


  • Could not read response to hello message from hook [ ! -f /usr/bin/snap ] || /usr/bin/snap advise-snap --from-apt 2>/dev/null || true: Connection reset by peer


    You may have a broken apt configure that calls for snap (which is not installed if you get the error below):

    apt install coreutils

    Reading state information... Done
    E: Could not read response to hello message from hook [ ! -f /usr/bin/snap ] || /usr/bin/snap advise-snap --from-apt 2>/dev/null || true: Connection reset by peer
    E: Could not read message separator line after handshake from [ ! -f /usr/bin/snap ] || /usr/bin/snap advise-snap --from-apt 2>/dev/null || true: Connection reset by peer
    E: Could not read response to hello message from hook [ ! -f /usr/bin/snap ] || /usr/bin/snap advise-snap --from-apt 2>/dev/null || true: Connection reset by peer
    E: Could not read message separator line after handshake from [ ! -f /usr/bin/snap ] || /usr/bin/snap advise-snap --from-apt 2>/dev/null || true: Connection reset by peer


    Remove the 20snapd.conf profile:

    mv /etc/apt/apt.conf.d/20snapd.conf ~
     


  • -bash: expr: command not found Linux Debian Mint Ubuntu


    If you get this error, it's usually because you don't have coreutils installed.

    -bash: expr: command not found

    Install coreutils and you'll be good:

    apt-get -y install coreutils


  • How to remove metadata from pdf on Linux Ubuntu


    Install exiftool:

    apt install exiftool

    Remove the metadata from "thefile.pdf":

    exiftool -all= thefile.pdf


    Warning: [minor] ExifTool PDF edits are reversible. Deleted tags may be recovered! - thefile.pdf
        1 image files updated

     

    Metadata, in the context of PDFs, refers to a set of data that describes and gives information about other data. Essentially, it's data about the PDF that isn't necessarily visible when you open the document but can be extracted using specific tools or software. This might include information such as the author, document properties, editing history, and even comments.

    Here are some of the benefits and security reasons to consider removing metadata from a PDF:

    1. Privacy Protection: Metadata can contain personal information, such as the document's author, the software used to create it, and the system or computer on which it was created. By removing this information, you can protect your privacy, especially if the PDF will be shared publicly.

    2. Confidentiality: In a corporate environment, metadata might reveal details about internal processes, review workflows, or internal comments. This could provide competitors with unintended insights.

    3. Professionalism: Stray comments, annotations, or previous versions of the document can look unprofessional if unintentionally shared. Clean PDFs without unnecessary metadata present a more polished image.

    4. Reduces File Size: Metadata, especially when accumulated over time or with embedded comments and annotations, can add to the file size. By removing unnecessary metadata, the PDF might become smaller and easier to share or upload.

    5. Protect Intellectual Property: Metadata might reveal how a document was created, who worked on it, and other insights that could be of value to competitors or adversaries.

    6. Avoid Accidental Disclosure: In legal settings, it's imperative not to disclose more than intended. Metadata can sometimes contain privileged or confidential information that isn't meant for the opposing counsel or the public.

    7. Mitigate Security Risks: Some metadata, especially if embedded with links or scripts, can be a vector for security vulnerabilities. Cleaning up a PDF can be part of a broader strategy to maintain cybersecurity hygiene.

    8. Standardization: For organizations that deal with a large volume of documents, standardizing the process of cleaning up metadata can ensure that all shared documents meet a consistent standard of privacy and professionalism.

    9. Avoid Digital Footprints: If you're a researcher, activist, or anyone concerned about leaving a digital footprint, removing metadata is essential. It ensures that the origins of a document and its path of creation and modification remain hidden.

    10. Regulatory Compliance: Certain industries or sectors have stringent rules about data protection and privacy. In some cases, it might be a regulatory requirement to strip metadata from documents before sharing.

     


  • How to install and configure haproxy on Linux Ubuntu Debian


    haproxy is one of the best known and widely used Open Source load balancers out there and a strong competitor to nginx.  

    haproxy is used by many large sites per Wikipedia:

    HAProxy is used by a number of high-profile websites including GoDaddy, GitHub, Bitbucket,[6] Stack Overflow,[7] Reddit, Slack,[8] Speedtest.net, Tumblr, Twitter[9][10] and Tuenti[11] and is used in the OpsWorks product from Amazon Web Services.[12]

     

    According to some stats data haproxy is even more popular than the AWS Elastic Load Balancer:

     

    Step 1 - Install

    apt install haproxy
    Reading package lists... Done
    Building dependency tree       
    Reading state information... Done
    The following packages were automatically installed and are no longer required:
      acl ebtables galera-3 git git-man iproute2 less libatm1 libconfig-inifiles-perl libdbd-mysql-perl libdbi-perl liberror-perl libjemalloc1 liblzo2-2 libuv1 lsof
      mariadb-common netcat netcat-traditional patch pigz runc socat squashfs-tools ubuntu-fan xdelta3
    Use 'apt autoremove' to remove them.
    Suggested packages:
      vim-haproxy haproxy-doc
    The following NEW packages will be installed:
      haproxy
    0 upgraded, 1 newly installed, 0 to remove and 34 not upgraded.
    Need to get 1116 kB of archives.
    After this operation, 2374 kB of additional disk space will be used.
    Get:1 http://archive.ubuntu.com/ubuntu bionic-updates/main amd64 haproxy amd64 1.8.8-1ubuntu0.13 [1116 kB]
    Fetched 1116 kB in 2s (657 kB/s)  
    perl: warning: Setting locale failed.
    perl: warning: Please check that your locale settings:
        LANGUAGE = (unset),
        LC_ALL = (unset),
        LANG = "C.UTF-8"
        are supported and installed on your system.
    perl: warning: Falling back to the standard locale ("C").
    locale: Cannot set LC_CTYPE to default locale: No such file or directory
    locale: Cannot set LC_MESSAGES to default locale: No such file or directory
    locale: Cannot set LC_ALL to default locale: No such file or directory
    Selecting previously unselected package haproxy.
    (Reading database ... 20143 files and directories currently installed.)
    Preparing to unpack .../haproxy_1.8.8-1ubuntu0.13_amd64.deb ...
    Unpacking haproxy (1.8.8-1ubuntu0.13) ...
    Setting up haproxy (1.8.8-1ubuntu0.13) ...
    Created symlink /etc/systemd/system/multi-user.target.wants/haproxy.service → /lib/systemd/system/haproxy.service.
    invoke-rc.d: could not determine current runlevel
    invoke-rc.d: WARNING: No init system and policy-rc.d missing! Defaulting to block.
    Processing triggers for systemd (237-3ubuntu10.57) ...

     

    Step 2 - Configure haproxy.cfg file


    vi /etc/haproxy/haproxy.cfg

    Here is how the defaults of haproxy.cfg look:

    global
            log /dev/log    local0
            log /dev/log    local1 notice
            chroot /var/lib/haproxy
            stats socket /run/haproxy/admin.sock mode 660 level admin expose-fd listeners
            stats timeout 30s
            user haproxy
            group haproxy
            daemon

            # Default SSL material locations
            ca-base /etc/ssl/certs
            crt-base /etc/ssl/private

            # Default ciphers to use on SSL-enabled listening sockets.
            # For more information, see ciphers(1SSL). This list is from:
            #  https://hynek.me/articles/hardening-your-web-servers-ssl-ciphers/
            # An alternative list with additional directives can be obtained from
            #  https://mozilla.github.io/server-side-tls/ssl-config-generator/?server=haproxy
            ssl-default-bind-ciphers ECDH+AESGCM:DH+AESGCM:ECDH+AES256:DH+AES256:ECDH+AES128:DH+AES:RSA+AESGCM:RSA+AES:!aNULL:!MD5:!DSS
            ssl-default-bind-options no-sslv3

    defaults
            log     global
            mode    http
            option  httplog
            option  dontlognull
            timeout connect 5000
            timeout client  50000
            timeout server  50000
            errorfile 400 /etc/haproxy/errors/400.http
            errorfile 403 /etc/haproxy/errors/403.http
            errorfile 408 /etc/haproxy/errors/408.http
            errorfile 500 /etc/haproxy/errors/500.http
            errorfile 502 /etc/haproxy/errors/502.http
            errorfile 503 /etc/haproxy/errors/503.http
            errorfile 504 /etc/haproxy/errors/504.http

     

    More info about configuring haproxy from the authors.

     

    Let's add a frontend and backend

    At the moment the load balancer does nothing and essentially has no usable configuration.  We're going to add a frontend that listens on localhost and is bound to port 8080.

    The frontend itself is just the entry point for the user, the frontend is configured on a certain IP and port that we define and the next step is that we'll have to define a "backend" that is the actual source server (eg. our Apache running PHP or another application)

    Add this frontend and backend config to the end of haproxy.cfg

    frontend rttfrontend
      bind 0.0.0.0:8080
      default_backend rttbackendservers

    backend rttbackendservers
      server backendserver01 127.0.0.1:80

     cache rttcache
       # Total size of the cache in MB
       total-max-size 500

       # Max size of any single item in bytes
       max-object-size 100000

       # Time to live for each item in seconds
       # This can be overridden with a Cache-Control header
       max-age 3000

    This config allows you to scale out as much as you need, for example you could add dozens or hundreds of backend servers with different IPs and ports.

    You may also want to add the "check" option after each server so requests won't be sent to dead or overloaded servers:

    server rttbackendserver01 server.com:9000 check

    We can make it more like a CDN by enabling cache, so the backend servers don't need to be contacted if we have a cache hit:

    cache rttcache
       # Total size of the cache in MB
       total-max-size 500

       # Max size of any single item in bytes
       max-object-size 10000

       # Time to live for each item in seconds
       # This can be overridden with a Cache-Control header
       max-age 3000

     

    In older versions like 1.8, the max-object-size option does not exist.

    You'll find the cache doesn't work unless you set this option in your global config:

    tune.bufsize 9999999

    Here is an example of how much performance can be gained by using a caching frontend haproxy server:

    In our first example below the page in question has not been cached and has a TTFB of 0.486955 seconds and total load time of .677587 seconds.

    curl -k -o /dev/null -w "Connect: %{time_connect} TTFB: %{time_starttransfer} Total time: %{time_total} n" $site
      % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                     Dload  Upload   Total   Spent    Left  Speed
    100 16413  100 16413    0     0  24243      0 --:--:-- --:--:-- --:--:-- 24207
    Connect: 0.047765 TTFB: 0.486955 Total time: 0.677587

    Now after we loaded the site and it is in the cache notice the difference in performance:

    TTFB is now 0.090424 and total load time of .135752

    TTFB is now 5.38X faster and load time was 4.99X faster!

    curl -k -o /dev/null -w "Connect: %{time_connect} TTFB: %{time_starttransfer} Total time: %{time_total} n" $site
      % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                     Dload  Upload   Total   Spent    Left  Speed
    100 16413  100 16413    0     0   118k      0 --:--:-- --:--:-- --:--:--  118k
    Connect: 0.044437 TTFB: 0.090424 Total time: 0.135752

     

    How To enable Stats
     

    By enabling stats we can check on things like how our cache is doing:

    Add this to the globa section:

        stats socket ipv4@127.0.0.1:9999 level admin
        stats socket /var/run/hapee-lb.sock mode 666 level admin

     

    You can echo commands via socat to see the status of things like you cache:

    echo "show cache" | socat stdio /var/run/hapee-lb.sock
    0x7f5f1ef9503a: rtt (shctx:0x7f5f1ef95000, available blocks:512000)
    0x7f5f1ef950ac hash:3598866029 size:16657 (17 blocks), refcount:0, expire:25695

     

    Here is a list of commands that can be sent:

    echo "help" | socat stdio /var/run/hapee-lb.sock
    Unknown command. Please enter one of the following commands only :
      help           : this message
      prompt         : toggle interactive mode with prompt
      quit           : disconnect
      show tls-keys [id|*]: show tls keys references or dump tls ticket keys when id specified
      set ssl tls-key [id|keyfile] <tlskey>: set the next TLS key for the <id> or <keyfile> listener to <tlskey>
      show errors    : report last request and response errors for each proxy
      disable agent  : disable agent checks (use 'set server' instead)
      disable health : disable health checks (use 'set server' instead)
      disable server : disable a server for maintenance (use 'set server' instead)
      enable agent   : enable agent checks (use 'set server' instead)
      enable health  : enable health checks (use 'set server' instead)
      enable server  : enable a disabled server (use 'set server' instead)
      set maxconn server : change a server's maxconn setting
      set server     : change a server's state, weight or address
      get weight     : report a server's current weight
      set weight     : change a server's weight (deprecated)
      show sess [id] : report the list of current sessions or dump this session
      shutdown session : kill a specific session
      shutdown sessions server : kill sessions on a server
      clear table    : remove an entry from a table
      set table [id] : update or create a table entry's data
      show table [id]: report table usage stats or dump this table's contents
      clear counters : clear max statistics counters (add 'all' for all counters)
      show info      : report information about the running process
      show stat      : report counters for each proxy and server
      show schema json : report schema used for stats
      show startup-logs : report logs emitted during HAProxy startup
      show resolvers [id]: dumps counters from all resolvers section and
                         associated name servers
      set maxconn global : change the per-process maxconn setting
      set rate-limit : change a rate limiting value
      set severity-output [none|number|string] : set presence of severity level in feedback information
      set timeout    : change a timeout setting
      show env [var] : dump environment variables known to the process
      show cli sockets : dump list of cli sockets
      show fd [num] : dump list of file descriptors in use
      show activity : show per-thread activity stats (for support/developers)
      disable frontend : temporarily disable specific frontend
      enable frontend : re-enable specific frontend
      set maxconn frontend : change a frontend's maxconn setting
      show servers state [id]: dump volatile server information (for backend <id>)
      show backend   : list backends in the current running config
      shutdown frontend : stop a specific frontend
      set dynamic-cookie-key backend : change a backend secret key for dynamic cookies
      enable dynamic-cookie backend : enable dynamic cookies on a specific backend
      disable dynamic-cookie backend : disable dynamic cookies on a specific backend
      show cache     : show cache status
      add acl        : add acl entry
      clear acl <id> : clear the content of this acl
      del acl        : delete acl entry
      get acl        : report the patterns matching a sample for an ACL
      show acl [id]  : report available acls or dump an acl's contents
      add map        : add map entry
      clear map <id> : clear the content of this map
      del map        : delete map entry
      get map        : report the keys and values matching a sample for a map
      set map        : modify map entry
      show map [id]  : report available maps or dump a map's contents
      show pools     : report information about the memory pools usage


  • Linux Ubuntu Mint Gnome keyboard Typing not working in certain application or window solution


    This is a weird issue in Mint Ubuntu gnome that I've only seen on one system.  It may happen in your terminal or your browser but one program will just refuse to allow input from the keyboard.  I am not sure if it's some weird fluke on a strange keyboard by perhaps accidentally hitting a weird key combination.
     

    1. In some windows the keyboard gets weird and only / and Esc seem to work.
    2. / brings up quick find and sometimes Esc will close it
    3. It seems like this is iBus's fault and closing it will fix it.

    The takeway and solution

    This seems to be because of the iBus language detector app that shows as your language in the panel eg. EN. After closing it the program with the issue was able to type and receive keyboard input again.


  • talib/_ta_lib.c:747:10: fatal error: ta-lib/ta_defs.h: No such file or directory


    If you are installing ta-lib for Python and get this error then you can normally solve it by manually getting the ta-lib source files and compiling.

    tar -zxvf ta-lib-0.4.0-src.tar.gz

    cd ta-lib;./configure;make;make install

     

    Collecting ta-lib
      Downloading https://files.pythonhosted.org/packages/39/6f/6acaee2eac6afb2cc6a2adcb294080577f9983fbd2726395b9047c4e13ec/TA-Lib-0.4.26.tar.gz (272kB)
        100% |████████████████████████████████| 276kB 1.6MB/s
    Collecting numpy (from ta-lib)
      Using cached https://files.pythonhosted.org/packages/45/b2/6c7545bb7a38754d63048c7696804a0d947328125d81bf12beaa692c3ae3/numpy-1.19.5-cp36-cp36m-manylinux1_x86_64.whl
    Building wheels for collected packages: ta-lib
      Running setup.py bdist_wheel for ta-lib ... error
      Complete output from command /usr/bin/python3 -u -c "import setuptools, tokenize;__file__='/tmp/pip-build-9wklnwce/ta-lib/setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('rn', 'n');f.close();exec(compile(code, __file__, 'exec'))" bdist_wheel -d /tmp/tmp2lq2a7a3pip-wheel- --python-tag cp36:
      /tmp/pip-build-9wklnwce/ta-lib/setup.py:77: UserWarning: Cannot find ta-lib library, installation may fail.
        warnings.warn('Cannot find ta-lib library, installation may fail.')
      running bdist_wheel
      running build
      running build_py
      creating build
      creating build/lib.linux-x86_64-3.6
      creating build/lib.linux-x86_64-3.6/talib
      copying talib/test_stream.py -> build/lib.linux-x86_64-3.6/talib
      copying talib/test_func.py -> build/lib.linux-x86_64-3.6/talib
      copying talib/__init__.py -> build/lib.linux-x86_64-3.6/talib
      copying talib/abstract.py -> build/lib.linux-x86_64-3.6/talib
      copying talib/test_polars.py -> build/lib.linux-x86_64-3.6/talib
      copying talib/stream.py -> build/lib.linux-x86_64-3.6/talib
      copying talib/test_pandas.py -> build/lib.linux-x86_64-3.6/talib
      copying talib/test_abstract.py -> build/lib.linux-x86_64-3.6/talib
      copying talib/deprecated.py -> build/lib.linux-x86_64-3.6/talib
      copying talib/test_data.py -> build/lib.linux-x86_64-3.6/talib
      running build_ext
      building 'talib._ta_lib' extension
      creating build/temp.linux-x86_64-3.6
      creating build/temp.linux-x86_64-3.6/talib
      x86_64-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -g -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include -I/usr/local/include -I/opt/include -I/opt/local/include -I/opt/homebrew/include -I/opt/homebrew/opt/ta-lib/include -I/home/theuseruseruser/.local/lib/python3.6/site-packages/numpy/core/include -I/usr/include/python3.6m -c talib/_ta_lib.c -o build/temp.linux-x86_64-3.6/talib/_ta_lib.o
      talib/_ta_lib.c:747:10: fatal error: ta-lib/ta_defs.h: No such file or directory
       #include "ta-lib/ta_defs.h"
                ^~~~~~~~~~~~~~~~~~
      compilation terminated.
      error: command 'x86_64-linux-gnu-gcc' failed with exit status 1
     
      ----------------------------------------
      Failed building wheel for ta-lib
      Running setup.py clean for ta-lib
    Failed to build ta-lib
    Installing collected packages: numpy, ta-lib
      Running setup.py install for ta-lib ... error
        Complete output from command /usr/bin/python3 -u -c "import setuptools, tokenize;__file__='/tmp/pip-build-9wklnwce/ta-lib/setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('rn', 'n');f.close();exec(compile(code, __file__, 'exec'))" install --record /tmp/pip-sczgom82-record/install-record.txt --single-version-externally-managed --compile --user --prefix=:
        /tmp/pip-build-9wklnwce/ta-lib/setup.py:77: UserWarning: Cannot find ta-lib library, installation may fail.
          warnings.warn('Cannot find ta-lib library, installation may fail.')
        running install
        /home/theuseruseruser/.local/lib/python3.6/site-packages/setuptools/command/install.py:37: SetuptoolsDeprecationWarning: setup.py install is deprecated. Use build and pip and other standards-based tools.
          setuptools.SetuptoolsDeprecationWarning,
        running build
        running build_py
        creating build
        creating build/lib.linux-x86_64-3.6
        creating build/lib.linux-x86_64-3.6/talib
        copying talib/test_stream.py -> build/lib.linux-x86_64-3.6/talib
        copying talib/test_func.py -> build/lib.linux-x86_64-3.6/talib
        copying talib/__init__.py -> build/lib.linux-x86_64-3.6/talib
        copying talib/abstract.py -> build/lib.linux-x86_64-3.6/talib
        copying talib/test_polars.py -> build/lib.linux-x86_64-3.6/talib
        copying talib/stream.py -> build/lib.linux-x86_64-3.6/talib
        copying talib/test_pandas.py -> build/lib.linux-x86_64-3.6/talib
        copying talib/test_abstract.py -> build/lib.linux-x86_64-3.6/talib
        copying talib/deprecated.py -> build/lib.linux-x86_64-3.6/talib
        copying talib/test_data.py -> build/lib.linux-x86_64-3.6/talib
        running build_ext
        building 'talib._ta_lib' extension
        creating build/temp.linux-x86_64-3.6
        creating build/temp.linux-x86_64-3.6/talib
        x86_64-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -g -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include -I/usr/local/include -I/opt/include -I/opt/local/include -I/opt/homebrew/include -I/opt/homebrew/opt/ta-lib/include -I/home/theuseruseruser/.local/lib/python3.6/site-packages/numpy/core/include -I/usr/include/python3.6m -c talib/_ta_lib.c -o build/temp.linux-x86_64-3.6/talib/_ta_lib.o
        talib/_ta_lib.c:747:10: fatal error: ta-lib/ta_defs.h: No such file or directory
         #include "ta-lib/ta_defs.h"
                  ^~~~~~~~~~~~~~~~~~
        compilation terminated.
        error: command 'x86_64-linux-gnu-gcc' failed with exit status 1
        
        ----------------------------------------
    Command "/usr/bin/python3 -u -c "import setuptools, tokenize;__file__='/tmp/pip-build-9wklnwce/ta-lib/setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('rn', 'n');f.close();exec(compile(code, __file__, 'exec'))" install --record /tmp/pip-sczgom82-record/install-record.txt --single-version-externally-managed --compile --user --prefix=" failed with error code 1 in /tmp/pip-build-9wklnwce/ta-lib/

     

     


  • How to install Windows or other OS and then bring to another computer by using a physical drive and Virtual Machine with QEMU


    This has been a tried and true method for Windows because it is finicky with hardware changes without a reinstall (eg BSOD on boot is what happens 9/10 times unless you move to the same hardwar).  Surprisingly, if you use a QEMU VM and do a standard install, it has worked in every system I've thrown the drive in afterwards.

    So the play is this, use a USB SSD, physical SATA drive plugged internally or for convenience, you could use a SATA to USB adapter on another computer to perform the install, before you move the actual drive to the destination computer (think of saving time and not having to go to another computer until the OS is installed or if you are building an image this way is easier than working with a physical machine initially).

    In this example the drive you plugged in that needs Windows is "/dev/sdj". 

    Just run this QEMU command, install normally and then bring the drive to the computer that needs to run it:

    qemu-system-x86_64 -enable-kvm -smp 8 -m 8096 -drive file=/dev/sdj -cdrom Win10_1607_English_x64.iso
     

    Change file=/dev/sdj to the dev of your drive and -cdrom to the .iso that you want to install from.


  • PXE-E23 Error BOOTx64.EFI GRUB booting is 0 bytes tftp pxe dhcp solution NBP filesize is 0 Bytes


    Be very careful about what filename you specify in dhcpd.conf if you get an error like this:

    NBP filesize is 0 Bytes PXE-E23: Client received TFTP error from server.

    If you specify "BOOTx64.efi" then the file had better not be called "BOOTx64.EFI" as it is case sensitive.  It's really a case of the file technically not existing.

    You can verify this by checking your tftp logs:

    routerOS in.tftpd[169277]: RRQ from 192.168.1.193 filename /BOOTx64.efi

    Then check the actual name of the file:
    BOOTx64.EFI  efi  EFI  grub.cfg  images  ldlinux.c32  libutil.c32  menu.c32  pxelinux.0  pxelinux.cfg  syslinux.efi

    Whoops .EFI != .efi so let's fix it and then we boot OK:

    mv BOOTx64.EFI BOOTx64.efi
     


  • vagrant install on Debian Mint Ubuntu Linux RHEL Quick Setup Guide Tutorial


    1 - Install Vagrant

    apt install vagrant

    Make sure you have a supported Virtualization tool like Virtualbox or VMWare, Hyper-V etc..  It automatically detects and uses what you have.  Virtualbox has a lot of support here with tons of images.

    2 - Init Vagrant

    We'll init to have a Debian 10 box by default to show how quick and easy it is.

    vagrant init generic/debian10

    2.1 - Customize Vagrantfile Options

     

    Note that when we type "vagrant init" it creates a "Vagrantfile" in our present working directory.  This file can be modified to suit our needs to do things like customize RAM, HDD, hostname, network, IP, CPU etc...

    Let's strip the Vagrantfile down without the extra comments and see how it looks currently:

    cat Vagrantfile|grep -v "^  #"|grep -v ^$|grep -v ^#

    Current default Vagrantfile contents:


    Vagrant.configure("2") do |config|
      config.vm.box = "generic/debian10"
    end

     

    All we really have is one parameter which is a generic config of a box called "debian10" which basically is the name of the template we create the VM from.

    How To Set Custom Memory RAM and CPU:

    Just edit the Vagrantfile as below and change "9096" to the amount of RAM you want in MB and CPUs.

    You can see that we added a new config section which is "config.vm.provider "virtualbox" do |vb|

    Vagrant.configure("2") do |config|
      config.vm.box = "generic/debian10"
      config.disksize.size = '700GB'
       config.vm.provider "virtualbox" do |vb|
         vb.gui = true
         vb.memory = "9096"
         vb.cpus = "9"

       end
    end

    To set the disksize you need the plugin that allows us to do this:

    One annoying issue about resizing is that some boxes like our Deb10 template is 130GB, it is not able to resize any smaller so you'd get an error on resize if you make smaller than the default disk size.

    vagrant plugin install vagrant-disksize

    Installing the 'vagrant-disksize' plugin. This can take a few minutes...
    Fetching diffy-3.4.2.gem
    Fetching xml-simple-1.1.9.gem
    Fetching vagrant-libvirt-0.12.2.gem
    Fetching vagrant-disksize-0.1.3.gem
    Parsing documentation for diffy-3.4.2
    Installing ri documentation for diffy-3.4.2
    Parsing documentation for xml-simple-1.1.9
    Installing ri documentation for xml-simple-1.1.9
    Parsing documentation for vagrant-libvirt-0.12.2
    Installing ri documentation for vagrant-libvirt-0.12.2
    Parsing documentation for vagrant-disksize-0.1.3
    Installing ri documentation for vagrant-disksize-0.1.3
    Done installing documentation for diffy, xml-simple, vagrant-libvirt, vagrant-disksize after 1 seconds
    Installed the plugin 'vagrant-disksize (0.1.3)'!

     

     

    3 - Create the Box/VM

    vagrant up

     

     

    Wait for it to complete.

     

     

    Now you can login and get testing.

    You should also be able to see the VM accessible in Virtualbox or whatever provider/tool Vagrant installed the VM on.

    The default login info for a Vagrant box is as follows:

    username: vagrant

    password: vagrant

     

     


    Here's a list of options we can set as config.vm from the devs:

    config.vm.allow_fstab_modification (boolean) - If true, will add fstab entries for synced folders. If false, no modifications to fstab will be made by Vagrant. Note, this may mean that folders will not be automatically mounted on machine reboot. Defaults to true.

    config.vm.allow_hosts_modification (boolean) - If false, will prevent Vagrant from writing to /etc/hosts. Defaults to true.

    config.vm.allowed_synced_folder_types (array of strings) - A list of allowed synced folder plugins. This will restrict plugin selection when Vagrant is determining the default synced folder type. The elements of the array should be the name of the synced folder plugin.

    config.vm.base_mac (string) - The MAC address to be assigned to the default NAT interface on the guest. Support for this option is provider dependent.

    config.vm.base_address (string) - The IP address to be assigned to the default NAT interface on the guest. Support for this option is provider dependent.

    config.vm.boot_timeout (integer) - The time in seconds that Vagrant will wait for the machine to boot and be accessible. By default this is 300 seconds.

    config.vm.box (string) - This configures what box the machine will be brought up against. The value here should be the name of an installed box or a shorthand name of a box in HashiCorp's Vagrant Cloud.

    config.vm.box_architecture (string) - The architecture of the box to be used. Supported architecture values: "i386", "amd64", "arm", "arm64", "ppc64le", "ppc64", "mips64le", "mips64", "mipsle", "mips", and "s390x". The special value :auto will detect the host architecture and fetch the appropriate box, if available. When the value is set to nil, it will fetch the box flagged as the default architecture. Defaults to :auto.

    config.vm.box_check_update (boolean) - If true, Vagrant will check for updates to the configured box on every vagrant up. If an update is found, Vagrant will tell the user. By default this is true. Updates will only be checked for boxes that properly support updates (boxes from HashiCorp's Vagrant Cloud or some other versioned box).

    config.vm.box_download_checksum (string) - The checksum of the box specified by config.vm.box_url. If not specified, no checksum comparison will be done. If specified, Vagrant will compare the checksum of the downloaded box to this value and error if they do not match. Checksum checking is only done when Vagrant must download the box. If this is specified, then config.vm.box_download_checksum_type must also be specified.

    config.vm.box_download_checksum_type (string) - The type of checksum specified by config.vm.box_download_checksum (if any). Supported values are currently "md5", "sha1", "sha256", "sha384", and "sha512".

    config.vm.box_download_client_cert (string) - Path to a client certificate to use when downloading the box, if it is necessary. By default, no client certificate is used to download the box.

    config.vm.box_download_ca_cert (string) - Path to a CA cert bundle to use when downloading a box directly. By default, Vagrant will use the Mozilla CA cert bundle.

    config.vm.box_download_ca_path (string) - Path to a directory containing CA certificates for downloading a box directly. By default, Vagrant will use the Mozilla CA cert bundle.

    config.vm.box_download_disable_ssl_revoke_best_effort (boolean) - Disable SSL revocation checking from being best effort. If an error is encountered when attempting to check certificate revocation, enabling this option will halt the request. This option is only applied on the Windows platform and defaults to false.

    config.vm.box_download_options (map) - A map of extra download options to pass to the downloader. For example, a path to a key that the downloader should use could be specified as {key: ""}. The keys should be options supported by curl using the unshortened form of the flag. For example, use append instead of a. To pass a curl option that does not accept a value, include the option in the map with the value true. For example specify the --fail flag as {fail: true}.

    config.vm.box_download_insecure (boolean) - If true, then SSL certificates from the server will not be verified. By default, if the URL is an HTTPS URL, then SSL certs will be verified.

    config.vm.box_download_location_trusted (boolean) - If true, then all HTTP redirects will be treated as trusted. That means credentials used for initial URL will be used for all subsequent redirects. By default, redirect locations are untrusted so credentials (if specified) used only for initial HTTP request.

    config.vm.box_url (string, array of strings) - The URL that the configured box can be found at. If config.vm.box is a shorthand to a box in HashiCorp's Vagrant Cloud then this value does not need to be specified. Otherwise, it should point to the proper place where the box can be found if it is not installed. This can also be an array of multiple URLs. The URLs will be tried in order.

    Note that any client certificates, insecure download settings, and so on will apply to all URLs in this list. The URLs can also be local files by using the file:// scheme. For example: file://tmp/test.box.

    config.vm.box_version (string) - The version of the box to use. This defaults to ">= 0" (the latest version available). This can contain an arbitrary list of constraints, separated by commas, such as: >= 1.0, < 1.5. When constraints are given, Vagrant will use the latest available box satisfying these constraints.

    config.vm.cloud_init - Stores various cloud_init configurations on the machine.

    config.vm.communicator (string) - The communicator type to use to connect to the guest box. By default this is "ssh", but should be changed to "winrm" for Windows guests.

    config.vm.disk - Stores various virtual disk configurations on the machine.

    config.vm.graceful_halt_timeout (integer) - The time in seconds that Vagrant will wait for the machine to gracefully halt when vagrant halt is called. Defaults to 60 seconds.

    config.vm.guest (string, symbol) - The guest OS that will be running within this machine. This defaults to :linux, and Vagrant will auto-detect the proper distro. However, this should be changed to :windows for Windows guests. Vagrant needs to know this information to perform some guest OS-specific things such as mounting folders and configuring networks.

    config.vm.hostname (string) - The hostname the machine should have. Defaults to nil. If nil, Vagrant will not manage the hostname. If set to a string, the hostname will be set on boot. If set, Vagrant will update /etc/hosts on the guest with the configured hostname.

    config.vm.ignore_box_vagrantfile (boolean) - If true, Vagrant will not load the settings found inside a boxes Vagrantfile, if present. Defaults to false.

    config.vm.network - Configures networks on the machine. Please see the networking page for more information.

    config.vm.post_up_message (string) - A message to show after vagrant up. This will be shown to the user and is useful for containing instructions such as how to access various components of the development environment.

    config.vm.provider - Configures provider-specific configuration, which is used to modify settings which are specific to a certain provider. If the provider you are configuring does not exist or is not setup on the system of the person who runs vagrant up, Vagrant will ignore this configuration block. This allows a Vagrantfile that is configured for many providers to be shared among a group of people who may not have all the same providers installed.

    config.vm.provision - Configures provisioners on the machine, so that software can be automatically installed and configured when the machine is created. Please see the page on provisioners for more information on how this setting works.

    config.vm.synced_folder - Configures synced folders on the machine, so that folders on your host machine can be synced to and from the guest machine. Please see the page on synced folders for more information on how this setting works.

    config.vm.usable_port_range (range) - A range of ports Vagrant can use for handling port collisions and such. Defaults to 2200..2250.

     

     


  • RHEL 8 CentOS 8, Alma Linux 8, Rocky Linux 8 System Not Booting with RAID or on other servers/computers Solution for dracut and initramfs missing kernel modules


    This seems to have changed for RHEL 8 where a normal dracut to update your initramfs creates a system that only boots for the running kernel.  For example if you have Kernel 5 and then chroot into a RHEL 8 variant which uses kernel 4.18, and run dracut, it seems that by default the system will be unbootable.

    It is also the case that if you move your RAID array or drives to another server that it will be unbootable, because dracut seems to only include modules needed for the current running kernel or system.

    Take an example screen below, you'll see the dracut without -N which means --no-hostonly, is small and unbootable at 27M, at least in the circumstances that I describe (this issue does not seem to impact new Debian based installs).

    If you find that your system is unbootable after a migration or chroot install and have a small initramfs, it's worth a shot to rebuild it with -N.  Also consider that you should check and update the grub.cfg and /etc/fstab to make sure the correct UUIDs are used and present.

    You'll see the second example with -N produces an 89M initramfs which is essentially a rescue image that contains all possible kernel modules, which means it supports all possible devices, which is what we want.  I don't see why it's important to save 62M of space at the expense of the OS being unbootable.

     


  • How to Upgrade to Debian 11 from Version 8,9,10


    This likely works for even older versions but I have only tested on 8,9,10 (11,12).  It's quite impressive at how easy it is to upgrade from a very old version to the new version.  I would say that Debian version upgrades are some of the quickest and smoothest of any distro.

    1.) Backup your /etc/apt/sources.list

    cp /etc/apt/sources.list ~

    #Get your keys first, you need the latest keys for Debian 11 or it won't work:

    wget -P /etc/apt/trusted.gpg.d https://ftp-master.debian.org/keys/archive-key-11-security.asc

    wget -P /etc/apt/trusted.gpg.d https://ftp-master.debian.org/keys/archive-key-11.asc

    How To Upgrade to Debian 11 Bullseye

    Edit your /etc/apt/sources.list like this:

    deb http://deb.debian.org/debian bullseye main
    deb-src http://deb.debian.org/debian bullseye main

    deb http://deb.debian.org/debian-security/ bullseye-security main
    deb-src http://deb.debian.org/debian-security/ bullseye-security main

    deb http://deb.debian.org/debian bullseye-updates main
    deb-src http://deb.debian.org/debian bullseye-updates main


    2.) Update to Debian

    apt update

    apt dist-upgrade

    3.) Reboot

    After this reboot into the upgraded OS and new kernel that came with it.

     

     

     


  • Ubuntu Linux Mint Debian Redhat Cannot View Files on Android iPhone USB File Transfer Not Working Solution


    If you plugin your phone to your computer and enable USB File Transfer/Allow on the phone side but the contents of your phone on the computer side are empty in the file manager, you probably don't have mtp-tools.  MTP or media transfer protocol is the standard protocol that most phones use to communicate over USB to the computer.

    Just do this to fix it and get access to your files:

    apt install mtp-tools

    After that you should be able to access the internal storage of your Apple/Android phone, but you may need to reconnect the phone first.


  • Virtualbox Best Networking Mode In Lab/Work Environment without using NAT Network or Bridged


    Virtualbox is a very powerful tool, but for some use cases it is less than optimal.

    Say you are in a work, lab or other environment where you are not alone on the physical network and there could be overlap of IPs, but you need all of your VMs to be contactable from your host, VMs need to communicate with each other, and VMs need internet.

    NAT Network will give you VM to VM communication and internet, however, it is buggy and unstable.  It also doesn't allow host to VM communication without manual port forwarding.

    NAT will give you internet only but no internet VM communication and the host cannot access these VMs without port forwarding

    Bridged mode is the natural solution but this is undesirable in a shared environment, eg at work, in the class or anywhere you are testing or developing since this puts the VMs directly on the LAN with an IP from the LAN and becomes accessible by other machines/users on the LAN.

     

    The Host Only Networking Solution

    Host only networking is exactly as it sounds, however, we can do a few quick hacks on our host system to make this work perfectly for us.  By default you should have a vboxnet0 device adapter which will probably be assigned 192.168.56.1

    As it is now, vboxnet0 allows VMs to communicate and your host to communicate with them but they have no internet at all because there is no gateway or DNS provided by the DHCP and your host does not route IPs in that range.  This is probably undesirable unless it is for security or forensics.

    All we need to do is get our own DNS running on vboxnet0 and route the 192.168.56.0/24 range through our host machine's internet connection via NAT. 

    Step 1 - Enable IP Forwarding + Routing

    Disable systemd-resolved

    This is a local listener on port 53 that will break DNSMasq.

    systemctl disable systemd-resolved

    #remember to stop it too!

    systemctl stop systemd-resolved

    You should manually enter your DNS into /etc/resolv.conf at this point.

    #delete /etc/resolv.conf to be sure

    rm /etc/resolv.conf

    echo "nameserver 208.67.222.222" > /etc/resolv.conf

    echo "nameserver 8.8.8.8" >> /etc/resolv.conf

    **If you are using NetworkManager you need to disable DNS or it will break your /etc/resolv.conf on each restart

    sed -i s/'[main]'/'[main]ndns=none'/ /etc/NetworkManager/NetworkManager.conf

    Install iptables if you don't have it already:

    iptables-persistent will make sure the rules load on each reboot

    sudo apt-get install iptables-persistent

    Edit /etc/sysctl.conf

    net.ipv4.ip_forward=1

    Enable the change

    sysctl -p

     


    Install iptables if you don't already have it and add these rules:


    iptables -I INPUT -i vboxnet0 -j ACCEPT
    iptables -t nat -A POSTROUTING -s 192.168.56.0/24 -j MASQUERADE

    #save the iptables rules

    iptables-save > /etc/iptables/rules.v4

    Step 2 - Delete the hostonly DHCP server

    The host only DHCP server has no possibility of being modified to provide a gateway or DNS which is what we probably want.  If you don't want that then you can skip the next steps.  Eg. if you want to statically assign your IP, gateway and DNS then you can stop here actually.

    List the DHCP servers (find the name of our DHCP server for the host only)

    VBoxManage list dhcpservers
    NetworkName:    HostInterfaceNetworking-vboxnet0
    Dhcpd IP:       192.168.56.100
    LowerIPAddress: 192.168.56.101
    UpperIPAddress: 192.168.56.254
    NetworkMask:    255.255.255.0
    Enabled:        Yes
    Global Configuration:
        minLeaseTime:     default
        defaultLeaseTime: default
        maxLeaseTime:     default
        Forced options:   None
        Suppressed opts.: None
            1/legacy: 255.255.255.0
    Groups:               None
    Individual Configs:   None

     

    Setup Our Host-Only Network

    You could also just use the GUI under File -> Host Network Manager to do this.  Make sure that "Enable" under  DHCP Server is unchecked.

     

    If you don't have one then create one by clicking "Create".  Then assign the Host-only network to a VM.

     

     

     

     

    #I don't recommend trying to remove it, all that seemed to happen is it stopped showing any of the DHCP servers but they kept working and were re-enabled and recreated after a restart of vbox


    VBoxManage dhcpserver remove --network=HostInterfaceNetworking-vboxnet0



    Step 3 - Enable DNS


    apt install dnsmasq
    Reading package lists... Done
    Building dependency tree       
    Reading state information... Done
    Suggested packages:
      resolvconf
    The following NEW packages will be installed:
      dnsmasq
    0 upgraded, 1 newly installed, 0 to remove and 587 not upgraded.
    Need to get 16.5 kB of archives.
    After this operation, 75.8 kB of additional disk space will be used.
    Get:1 http://archive.ubuntu.com/ubuntu focal-updates/universe amd64 dnsmasq all 2.80-1.1ubuntu1.6 [16.5 kB]
    Fetched 16.5 kB in 0s (44.9 kB/s)  
    Selecting previously unselected package dnsmasq.
    (Reading database ... 467267 files and directories currently installed.)
    Preparing to unpack .../dnsmasq_2.80-1.1ubuntu1.6_all.deb ...
    Unpacking dnsmasq (2.80-1.1ubuntu1.6) ...
    Setting up dnsmasq (2.80-1.1ubuntu1.6) ...
    Created symlink /etc/systemd/system/multi-user.target.wants/dnsmasq.service → /lib/systemd/system/dnsmasq.service.
    Processing triggers for systemd (245.4-4ubuntu3.19) ...


    Set the relevant options


    #We set the gateway as being our vboxnet0 IP of 192.168.56.1
    echo "dhcp-option=option:router,192.168.56.1" >> /etc/dnsmasq.conf


    #We set the DNS server as 192.168.56.1 (change if you need)

    echo "dhcp-option=option:dns-server,192.168.56.1" >> /etc/dnsmasq.conf

    #We set the range of .2 to .150 (change as you need).  It is nice to have some unused IPs in case you want to set your own static IPs
    echo "dhcp-range=192.168.56.2,192.168.56.150,12h" >> /etc/dnsmasq.conf

    # Set the interface to be vboxnet0 as we don't want this to be giving out IPs on the LAN!
    echo "interface=vboxnet0" >> /etc/dnsmasq.conf


    Restart dnsmasq to enable the changes above

    systemctl restart dnsmasq

    #enable dnsmasq on start otherwise DNS and DHCP won't work

    systemctl enable dnsmasq

    Restart virtualbox to apply our DNS server changes

    #this normally won't work so it is best to reboot the machine or you'll probably still find that the vbox DHCP server is being used despite us having disabled it

    systemctl restart virtualbox



    Final Setup Steps
     

    One issue in all of this is the fact that DNSMasq will not start when it tries to bind to interface vboxnet0 because it isn't created by VBox until a VM with the host-only network starts.

    You will want a script that does this when you login or when the system boots:

    #this command will create the hostonly interface vboxnet0 and then assign the proper IP to it and put it up

    VBoxManage hostonlyif create

    ifconfig vboxnet0 192.168.56.1 netmask 255.255.255.0 up

    # this command restarts dnsmasq as it will initially fail without vboxnet0 being present

    systemctl restart dnsmasq

    One other lazy thing you could do is put this in a cronjob that runs each minute (as root).

    */1 * * * * /usr/bin/systemctl restart dnsmasq

     
     

     

     


  • debootstrap how to install Ubuntu, Mint, Debian install


     

    In this example we install debian 10 with --variant=minbase which gives us a minimal/tiny install.  Don't use variant if you want the full size install.


    mkdir /tmp/deb10files
    debootstrap --variant=minbase buster /tmp/deb10files/

    Did you get an error?

    debootstrap --variant=minbase buster /home/theuser/VMs/deb10files/
     

    You'll get this error if you make a directory in your home directory, it's best to make it somewhere in /tmp or elsewhere.

    /usr/sbin/debootstrap: 1609: cannot create /home/theuser/VMs/deb10files/test-dev-null: Permission denied
    E: Cannot install into target '/home/theuser/VMs/deb10files' mounted with noexec or nodev

     


    I: Keyring file not available at /usr/share/keyrings/debian-archive-keyring.gpg; switching to https mirror https://deb.debian.org/debian
    I: Retrieving InRelease
    I: Retrieving Packages
    I: Validating Packages
    I: Resolving dependencies of required packages...
    I: Resolving dependencies of base packages...
    I: Checking component main on https://deb.debian.org/debian...
    I: Retrieving libacl1 2.2.53-4
    I: Validating libacl1 2.2.53-4
    I: Retrieving adduser 3.118
    I: Validating adduser 3.118
    I: Retrieving apt 1.8.2.3
    I: Validating apt 1.8.2.3
    I: Retrieving libapt-pkg5.0 1.8.2.3
    I: Validating libapt-pkg5.0 1.8.2.3
    I: Retrieving libattr1 1:2.4.48-4
    I: Validating libattr1 1:2.4.48-4
    I: Retrieving libaudit-common 1:2.8.4-3
    I: Validating libaudit-common 1:2.8.4-3
    I: Retrieving libaudit1 1:2.8.4-3
    I: Validating libaudit1 1:2.8.4-3
    I: Retrieving base-files 10.3+deb10u13
    I: Validating base-files 10.3+deb10u13
    I: Retrieving base-passwd 3.5.46
    I: Validating base-passwd 3.5.46
    I: Retrieving bash 5.0-4
    I: Validating bash 5.0-4
    I: Retrieving libbz2-1.0 1.0.6-9.2~deb10u1
    I: Validating libbz2-1.0 1.0.6-9.2~deb10u1
    I: Retrieving ca-certificates 20200601~deb10u2
    I: Validating ca-certificates 20200601~deb10u2
    I: Retrieving libdebconfclient0 0.249
    I: Validating libdebconfclient0 0.249
    I: Retrieving coreutils 8.30-3
    I: Validating coreutils 8.30-3
    I: Retrieving dash 0.5.10.2-5
    I: Validating dash 0.5.10.2-5
    I: Retrieving libdb5.3 5.3.28+dfsg1-0.5
    I: Validating libdb5.3 5.3.28+dfsg1-0.5
    I: Retrieving debconf 1.5.71+deb10u1
    I: Validating debconf 1.5.71+deb10u1
    I: Retrieving debian-archive-keyring 2019.1+deb10u1
    I: Validating debian-archive-keyring 2019.1+deb10u1
    I: Retrieving debianutils 4.8.6.1
    I: Validating debianutils 4.8.6.1
    I: Retrieving diffutils 1:3.7-3
    I: Validating diffutils 1:3.7-3
    I: Retrieving dpkg 1.19.8
    I: Validating dpkg 1.19.8
    I: Retrieving e2fsprogs 1.44.5-1+deb10u3
    I: Validating e2fsprogs 1.44.5-1+deb10u3
    I: Retrieving libcom-err2 1.44.5-1+deb10u3
    I: Validating libcom-err2 1.44.5-1+deb10u3
    I: Retrieving libext2fs2 1.44.5-1+deb10u3
    I: Validating libext2fs2 1.44.5-1+deb10u3
    I: Retrieving libss2 1.44.5-1+deb10u3
    I: Validating libss2 1.44.5-1+deb10u3
    I: Retrieving findutils 4.6.0+git+20190209-2
    I: Validating findutils 4.6.0+git+20190209-2
    I: Retrieving gcc-8-base 8.3.0-6
    I: Validating gcc-8-base 8.3.0-6
    I: Retrieving libgcc1 1:8.3.0-6
    I: Validating libgcc1 1:8.3.0-6
    I: Retrieving libstdc++6 8.3.0-6
    I: Validating libstdc++6 8.3.0-6
    I: Retrieving libc-bin 2.28-10+deb10u1
    I: Validating libc-bin 2.28-10+deb10u1
    I: Retrieving libc6 2.28-10+deb10u1
    I: Validating libc6 2.28-10+deb10u1
    I: Retrieving libgmp10 2:6.1.2+dfsg-4+deb10u1
    I: Validating libgmp10 2:6.1.2+dfsg-4+deb10u1
    I: Retrieving gpgv 2.2.12-1+deb10u2
    I: Validating gpgv 2.2.12-1+deb10u2
    I: Retrieving libgnutls30 3.6.7-4+deb10u8
    I: Validating libgnutls30 3.6.7-4+deb10u8
    I: Retrieving grep 3.3-1
    I: Validating grep 3.3-1
    I: Retrieving gzip 1.9-3+deb10u1
    I: Validating gzip 1.9-3+deb10u1
    I: Retrieving hostname 3.21
    I: Validating hostname 3.21
    I: Retrieving init-system-helpers 1.56+nmu1
    I: Validating init-system-helpers 1.56+nmu1
    I: Retrieving libcap-ng0 0.7.9-2
    I: Validating libcap-ng0 0.7.9-2
    I: Retrieving libffi6 3.2.1-9
    I: Validating libffi6 3.2.1-9
    I: Retrieving libgcrypt20 1.8.4-5+deb10u1
    I: Validating libgcrypt20 1.8.4-5+deb10u1
    I: Retrieving libgpg-error0 1.35-1
    I: Validating libgpg-error0 1.35-1
    I: Retrieving libidn2-0 2.0.5-1+deb10u1
    I: Validating libidn2-0 2.0.5-1+deb10u1
    I: Retrieving libseccomp2 2.3.3-4
    I: Validating libseccomp2 2.3.3-4
    I: Retrieving libselinux1 2.8-1+b1
    I: Validating libselinux1 2.8-1+b1
    I: Retrieving libsemanage-common 2.8-2
    I: Validating libsemanage-common 2.8-2
    I: Retrieving libsemanage1 2.8-2
    I: Validating libsemanage1 2.8-2
    I: Retrieving libsepol1 2.8-1
    I: Validating libsepol1 2.8-1
    I: Retrieving libtasn1-6 4.13-3
    I: Validating libtasn1-6 4.13-3
    I: Retrieving libunistring2 0.9.10-1
    I: Validating libunistring2 0.9.10-1
    I: Retrieving libzstd1 1.3.8+dfsg-3+deb10u2
    I: Validating libzstd1 1.3.8+dfsg-3+deb10u2
    I: Retrieving liblz4-1 1.8.3-1+deb10u1
    I: Validating liblz4-1 1.8.3-1+deb10u1
    I: Retrieving mawk 1.3.3-17+b3
    I: Validating mawk 1.3.3-17+b3
    I: Retrieving libncursesw6 6.1+20181013-2+deb10u2
    I: Validating libncursesw6 6.1+20181013-2+deb10u2
    I: Retrieving libtinfo6 6.1+20181013-2+deb10u2
    I: Validating libtinfo6 6.1+20181013-2+deb10u2
    I: Retrieving ncurses-base 6.1+20181013-2+deb10u2
    I: Validating ncurses-base 6.1+20181013-2+deb10u2
    I: Retrieving ncurses-bin 6.1+20181013-2+deb10u2
    I: Validating ncurses-bin 6.1+20181013-2+deb10u2
    I: Retrieving libhogweed4 3.4.1-1+deb10u1
    I: Validating libhogweed4 3.4.1-1+deb10u1
    I: Retrieving libnettle6 3.4.1-1+deb10u1
    I: Validating libnettle6 3.4.1-1+deb10u1
    I: Retrieving libssl1.1 1.1.1n-0+deb10u3
    I: Validating libssl1.1 1.1.1n-0+deb10u3
    I: Retrieving openssl 1.1.1n-0+deb10u3
    I: Validating openssl 1.1.1n-0+deb10u3
    I: Retrieving libp11-kit0 0.23.15-2+deb10u1
    I: Validating libp11-kit0 0.23.15-2+deb10u1
    I: Retrieving libpam-modules 1.3.1-5
    I: Validating libpam-modules 1.3.1-5
    I: Retrieving libpam-modules-bin 1.3.1-5
    I: Validating libpam-modules-bin 1.3.1-5
    I: Retrieving libpam-runtime 1.3.1-5
    I: Validating libpam-runtime 1.3.1-5
    I: Retrieving libpam0g 1.3.1-5
    I: Validating libpam0g 1.3.1-5
    I: Retrieving libpcre3 2:8.39-12
    I: Validating libpcre3 2:8.39-12
    I: Retrieving perl-base 5.28.1-6+deb10u1
    I: Validating perl-base 5.28.1-6+deb10u1
    I: Retrieving sed 4.7-1
    I: Validating sed 4.7-1
    I: Retrieving login 1:4.5-1.1
    I: Validating login 1:4.5-1.1
    I: Retrieving passwd 1:4.5-1.1
    I: Validating passwd 1:4.5-1.1
    I: Retrieving libsystemd0 241-7~deb10u8
    I: Validating libsystemd0 241-7~deb10u8
    I: Retrieving libudev1 241-7~deb10u8
    I: Validating libudev1 241-7~deb10u8
    I: Retrieving sysvinit-utils 2.93-8
    I: Validating sysvinit-utils 2.93-8
    I: Retrieving tar 1.30+dfsg-6
    I: Validating tar 1.30+dfsg-6
    I: Retrieving tzdata 2021a-0+deb10u6
    I: Validating tzdata 2021a-0+deb10u6
    I: Retrieving bsdutils 1:2.33.1-0.1
    I: Validating bsdutils 1:2.33.1-0.1
    I: Retrieving fdisk 2.33.1-0.1
    I: Validating fdisk 2.33.1-0.1
    I: Retrieving libblkid1 2.33.1-0.1
    I: Validating libblkid1 2.33.1-0.1
    I: Retrieving libfdisk1 2.33.1-0.1
    I: Validating libfdisk1 2.33.1-0.1
    I: Retrieving libmount1 2.33.1-0.1
    I: Validating libmount1 2.33.1-0.1
    I: Retrieving libsmartcols1 2.33.1-0.1
    I: Validating libsmartcols1 2.33.1-0.1
    I: Retrieving libuuid1 2.33.1-0.1
    I: Validating libuuid1 2.33.1-0.1
    I: Retrieving mount 2.33.1-0.1
    I: Validating mount 2.33.1-0.1
    I: Retrieving util-linux 2.33.1-0.1
    I: Validating util-linux 2.33.1-0.1
    I: Retrieving liblzma5 5.2.4-1+deb10u1
    I: Validating liblzma5 5.2.4-1+deb10u1
    I: Retrieving zlib1g 1:1.2.11.dfsg-1+deb10u1
    I: Validating zlib1g 1:1.2.11.dfsg-1+deb10u1
    I: Chosen extractor for .deb packages: dpkg-deb
    I: Extracting libacl1...
    I: Extracting adduser...
    I: Extracting apt...
    I: Extracting libapt-pkg5.0...
    I: Extracting libattr1...
    I: Extracting libaudit-common...
    I: Extracting libaudit1...
    I: Extracting base-files...
    I: Extracting base-passwd...
    I: Extracting bash...
    I: Extracting libbz2-1.0...
    I: Extracting libdebconfclient0...
    I: Extracting coreutils...
    I: Extracting dash...
    I: Extracting libdb5.3...
    I: Extracting debconf...
    I: Extracting debian-archive-keyring...
    I: Extracting debianutils...
    I: Extracting diffutils...
    I: Extracting dpkg...
    I: Extracting e2fsprogs...
    I: Extracting libcom-err2...
    I: Extracting libext2fs2...
    I: Extracting libss2...
    I: Extracting findutils...
    I: Extracting gcc-8-base...
    I: Extracting libgcc1...
    I: Extracting libstdc++6...
    I: Extracting libc-bin...
    I: Extracting libc6...
    I: Extracting libgmp10...
    I: Extracting gpgv...
    I: Extracting libgnutls30...
    I: Extracting grep...
    I: Extracting gzip...
    I: Extracting hostname...
    I: Extracting init-system-helpers...
    I: Extracting libcap-ng0...
    I: Extracting libffi6...
    I: Extracting libgcrypt20...
    I: Extracting libgpg-error0...
    I: Extracting libidn2-0...
    I: Extracting libseccomp2...
    I: Extracting libselinux1...
    I: Extracting libsemanage-common...
    I: Extracting libsemanage1...
    I: Extracting libsepol1...
    I: Extracting libtasn1-6...
    I: Extracting libunistring2...
    I: Extracting libzstd1...
    I: Extracting liblz4-1...
    I: Extracting mawk...
    I: Extracting libncursesw6...
    I: Extracting libtinfo6...
    I: Extracting ncurses-base...
    I: Extracting ncurses-bin...
    I: Extracting libhogweed4...
    I: Extracting libnettle6...
    I: Extracting libp11-kit0...
    I: Extracting libpam-modules...
    I: Extracting libpam-modules-bin...
    I: Extracting libpam-runtime...
    I: Extracting libpam0g...
    I: Extracting libpcre3...
    I: Extracting perl-base...
    I: Extracting sed...
    I: Extracting login...
    I: Extracting passwd...
    I: Extracting libsystemd0...
    I: Extracting libudev1...
    I: Extracting sysvinit-utils...
    I: Extracting tar...
    I: Extracting tzdata...
    I: Extracting bsdutils...
    I: Extracting fdisk...
    I: Extracting libblkid1...
    I: Extracting libfdisk1...
    I: Extracting libmount1...
    I: Extracting libsmartcols1...
    I: Extracting libuuid1...
    I: Extracting mount...
    I: Extracting util-linux...
    I: Extracting liblzma5...
    I: Extracting zlib1g...
    I: Installing core packages...
    I: Unpacking required packages...
    I: Unpacking libacl1:amd64...
    I: Unpacking adduser...
    I: Unpacking apt...
    I: Unpacking libapt-pkg5.0:amd64...
    I: Unpacking libattr1:amd64...
    I: Unpacking libaudit-common...
    I: Unpacking libaudit1:amd64...
    I: Unpacking base-files...
    I: Unpacking base-passwd...
    I: Unpacking bash...
    I: Unpacking libbz2-1.0:amd64...
    I: Unpacking libdebconfclient0:amd64...
    I: Unpacking coreutils...
    I: Unpacking dash...
    I: Unpacking libdb5.3:amd64...
    I: Unpacking debconf...
    I: Unpacking debian-archive-keyring...
    I: Unpacking debianutils...
    I: Unpacking diffutils...
    I: Unpacking dpkg...
    I: Unpacking e2fsprogs...
    I: Unpacking libcom-err2:amd64...
    I: Unpacking libext2fs2:amd64...
    I: Unpacking libss2:amd64...
    I: Unpacking findutils...
    I: Unpacking gcc-8-base:amd64...
    I: Unpacking libgcc1:amd64...debootstrap --variant=minbase buster /home/theuser/VMs/deb10files/
    I: Unpacking libstdc++6:amd64...
    I: Unpacking libc-bin...
    I: Unpacking libc6:amd64...
    I: Unpacking libgmp10:amd64...
    I: Unpacking gpgv...
    I: Unpacking libgnutls30:amd64...
    I: Unpacking grep...
    I: Unpacking gzip...
    I: Unpacking hostname...
    I: Unpacking init-system-helpers...
    I: Unpacking libcap-ng0:amd64...
    I: Unpacking libffi6:amd64...
    I: Unpacking libgcrypt20:amd64...
    I: Unpacking libgpg-error0:amd64...
    I: Unpacking libidn2-0:amd64...
    I: Unpacking libseccomp2:amd64...
    I: Unpacking libselinux1:amd64...
    I: Unpacking libsemanage-common...
    I: Unpacking libsemanage1:amd64...
    I: Unpacking libsepol1:amd64...
    I: Unpacking libtasn1-6:amd64...
    I: Unpacking libunistring2:amd64...
    I: Unpacking libzstd1:amd64...
    I: Unpacking liblz4-1:amd64...
    I: Unpacking mawk...
    I: Unpacking libncursesw6:amd64...
    I: Unpacking libtinfo6:amd64...
    I: Unpacking ncurses-base...
    I: Unpacking ncurses-bin...
    I: Unpacking libhogweed4:amd64...
    I: Unpacking libnettle6:amd64...
    I: Unpacking libp11-kit0:amd64...
    I: Unpacking libpam-modules:amd64...
    I: Unpacking libpam-modules-bin...
    I: Unpacking libpam-runtime...
    I: Unpacking libpam0g:amd64...
    I: Unpacking libpcre3:amd64...
    I: Unpacking perl-base...
    I: Unpacking sed...
    I: Unpacking login...
    I: Unpacking passwd...
    I: Unpacking libsystemd0:amd64...
    I: Unpacking libudev1:amd64...
    I: Unpacking sysvinit-utils...
    I: Unpacking tar...
    I: Unpacking tzdata...
    I: Unpacking bsdutils...
    I: Unpacking fdisk...
    I: Unpacking libblkid1:amd64...
    I: Unpacking libfdisk1:amd64...
    I: Unpacking libmount1:amd64...
    I: Unpacking libsmartcols1:amd64...
    I: Unpacking libuuid1:amd64...
    I: Unpacking mount...
    I: Unpacking util-linux...
    I: Unpacking liblzma5:amd64...
    I: Unpacking zlib1g:amd64...
    I: Configuring required packages...
    I: Configuring debian-archive-keyring...
    I: Configuring libaudit-common...
    I: Configuring libsemanage-common...
    I: Configuring ncurses-base...
    I: Configuring gcc-8-base:amd64...
    I: Configuring libc6:amd64...
    I: Configuring libudev1:amd64...
    I: Configuring libsepol1:amd64...
    I: Configuring libattr1:amd64...
    I: Configuring libtasn1-6:amd64...
    I: Configuring debianutils...
    I: Configuring mawk...
    I: Configuring libdebconfclient0:amd64...
    I: Configuring base-files...
    I: Configuring libbz2-1.0:amd64...
    I: Configuring base-passwd...
    I: Configuring libdb5.3:amd64...
    I: Configuring libtinfo6:amd64...
    I: Configuring bash...
    I: Configuring libzstd1:amd64...
    I: Configuring liblzma5:amd64...
    I: Configuring libgpg-error0:amd64...
    I: Configuring libgcc1:amd64...
    I: Configuring liblz4-1:amd64...
    I: Configuring libc-bin...
    I: Configuring ncurses-bin...
    I: Configuring libacl1:amd64...
    I: Configuring libunistring2:amd64...
    I: Configuring libsmartcols1:amd64...
    I: Configuring libgcrypt20:amd64...
    I: Configuring zlib1g:amd64...
    I: Configuring libffi6:amd64...
    I: Configuring libidn2-0:amd64...
    I: Configuring libcom-err2:amd64...
    I: Configuring diffutils...
    I: Configuring libseccomp2:amd64...
    I: Configuring libsystemd0:amd64...
    I: Configuring hostname...
    I: Configuring libpcre3:amd64...
    I: Configuring libcap-ng0:amd64...
    I: Configuring libext2fs2:amd64...
    I: Configuring libgmp10:amd64...
    I: Configuring libp11-kit0:amd64...
    I: Configuring libaudit1:amd64...
    I: Configuring libuuid1:amd64...
    I: Configuring libss2:amd64...
    I: Configuring libncursesw6:amd64...
    I: Configuring libnettle6:amd64...
    I: Configuring gpgv...
    I: Configuring libblkid1:amd64...
    I: Configuring libstdc++6:amd64...
    I: Configuring bsdutils...
    I: Configuring libhogweed4:amd64...
    I: Configuring e2fsprogs...
    I: Configuring libselinux1:amd64...
    I: Configuring libgnutls30:amd64...
    I: Configuring sed...
    I: Configuring libfdisk1:amd64...
    I: Configuring findutils...
    I: Configuring libmount1:amd64...
    I: Configuring libapt-pkg5.0:amd64...
    I: Configuring libsemanage1:amd64...
    I: Configuring tar...
    I: Configuring coreutils...
    I: Configuring fdisk...
    I: Configuring dpkg...
    I: Configuring grep...
    I: Configuring perl-base...
    I: Configuring init-system-helpers...
    I: Configuring gzip...
    I: Configuring debconf...
    I: Configuring tzdata...
    I: Configuring libpam0g:amd64...
    I: Configuring dash...
    I: Configuring libpam-modules-bin...
    I: Configuring libpam-modules:amd64...
    I: Configuring passwd...
    I: Configuring libpam-runtime...
    I: Configuring login...
    I: Configuring adduser...
    I: Configuring apt...
    I: Configuring util-linux...
    I: Configuring mount...
    I: Configuring sysvinit-utils...
    I: Configuring libc-bin...
    I: Unpacking the base system...
    I: Unpacking ca-certificates...
    I: Unpacking libssl1.1:amd64...
    I: Unpacking openssl...
    I: Configuring the base system...
    I: Configuring libssl1.1:amd64...
    I: Configuring openssl...
    I: Configuring ca-certificates...
    I: Configuring libc-bin...
    I: Configuring ca-certificates...
    I: Base system installed successfully.

    We can see the install was only 204M


    root@thebox:/deb10files# du -hs /deb10files/
    204M    /deb10files/



     


  • Linux grub not using UUID for the root device instead it uses /dev/sda1 or other device name solution


    You can read lots of posts about this issue but there is not much information about why this is the case or how grub determines the root= device name.  Some even suggest modifying grub.cfg manually which is a disaster as the next kernel update will cause grub to revert back to the device name.

    For most people this won't be an issue but those using template system, automated deployments and working in embedded may run into this issue with custom embedded and created minimal kernels/environments.

    By default, grub will WANT or TRY to use the UUID as the root device, UNLESS in /etc/default/grub you enable the feature of GRUB_DISABLE_LINUX_UUID=true (usually it is not there at all or it is just commented out).

    Then there is /etc/grub.d which scripts are called when you run update grub.  The one we really care about is the 10_linux file.

    It doesn't matter if your fstab is updated to use UUID, this script doesn't care about fstab or the current root filesystem.

    What it does is look for entries in /dev/disk/by-uuid and if it finds a UUID for the root device it will assign it like normal eg. root=UUID=theUUIDhere

    /dev/disk/by-uuid is really just a series of UUIDs in that directory that are symlinked to their actual device name, this is how the grub 10_linux script associates the UUID to the root device and sets up the root=UUID. 

    However, if it does not find a UUID entry in /dev/disk/by-uuid then it falls back to using the actual raw device name whether it be /dev/md2 or /dev/sda1 or /dev/vda1 etc...

     


  • How To Restore Partition Table on Running Linux Mint Ubuntu Debian Machine


    Here is an easy way to restore things if you have the starting point and size of each partition using fdisk:

    In this example we pretend that /dev/sda was wiped out, but the running system still has the info in /sys/class/block/sda

    Go into each partition and record the "start" and "size"

    hostdev@box /sys/class/block/sda/sda1 $ cat start
    2048
    hostdev@box /sys/class/block/sda/sda1 $ cat size
    2097152


    hostdev@box /sys/class/block/sda $ cat sda2/start
    2099200
    hostdev@box /sys/class/block/sda $ cat sda2/size
    62914560


    hostdev@box /sys/class/block/sda $ cat sda3/start
    65013760
    hostdev@box /sys/class/block/sda $ cat sda3/size
    520923740

    Now create the same 3 partitions at the same starting point and with the same size using fdisk:


    Welcome to fdisk (util-linux 2.34).
    Changes will remain in memory only, until you decide to write them.
    Be careful before using the write command.

    Device does not contain a recognized partition table.
    Created a new DOS disklabel with disk identifier 0x8e7672df.

    Command (m for help): n
    Partition type
       p   primary (0 primary, 0 extended, 4 free)
       e   extended (container for logical partitions)
    Select (default p):

    Using default response p.
    Partition number (1-4, default 1):
    First sector (2048-585524838, default 2048): 2048
    Last sector, +/-sectors or +/-size{K,M,G,T,P} (2048-585524838, default 585524838): 2097152

    Created a new partition 1 of type 'Linux' and of size 1023 MiB.

    Command (m for help): n
    Partition type
       p   primary (1 primary, 0 extended, 3 free)
       e   extended (container for logical partitions)
    Select (default p):

    Using default response p.
    Partition number (2-4, default 2):
    First sector (2097153-585524838, default 2099200): 2099200
    Last sector, +/-sectors or +/-size{K,M,G,T,P} (2099200-585524838, default 585524838): 62914560

    Created a new partition 2 of type 'Linux' and of size 29 GiB.

    Command (m for help): n
    Partition type
       p   primary (2 primary, 0 extended, 2 free)
       e   extended (container for logical partitions)
    Select (default p):

    Using default response p.
    Partition number (3,4, default 3): 65013760
    Value out of range.
    Partition number (3,4, default 3):
    First sector (2097153-585524838, default 62916608): 65013760
    Last sector, +/-sectors or +/-size{K,M,G,T,P} (65013760-585524838, default 585524838): 520923740

    Created a new partition 3 of type 'Linux' and of size 217.4 GiB.


  • Debian Ubuntu apt install stop daemon questions/accept the default action without prompting


    This can be a real pain when automating things and you do an apt install and some packages ask a lot of questions.

    Make sure you set this variable when running:

    DEBIAN_FRONTEND=noninteractive

    Remember as well that if chrooting you will want to run like this:

    DEBIAN_FRONTEND=noninteractive apt install -y yourpackagename