Installing Void Linux inside Qemu running nested on a Debian 12 KVM VPS!

Not_OlesNot_Oles Hosting ProviderContent Writer
edited August 23 in General

Does anybody here use Void Linux with musl libc?

I thought Void might be fun to try! I never tried Void before!

Here below is the beginning of a nested install of the musl libc version of Void inside a KVM VPS running Debian 12.6.

I wonder if I will be able to complete the install successfully. . . .

  • On the remote VPS
wget https://raw.githubusercontent.com/void-linux/void-packages/master/srcpkgs/void-release-keys/files/void-release-20240314.pub
wget https://repo-default.voidlinux.org/live/current/sha256sum.sig
wget https://repo-default.voidlinux.org/live/current/sha256sum.txt
wget https://repo-default.voidlinux.org/live/current/void-live-x86_64-musl-20240314-base.iso

minisign -V -p void-release-20240314.pub -x sha256sum.sig -m sha256sum.txt 
sha256sum -c --ignore-missing sha256sum.txt

qemu-img create -f qcow2 void.qcow2 50G

Run inside tmux:
qemu-system-x86_64 \
-cpu host \
-enable-kvm \
-m 2048 \
-drive file=void.qcow2 \
-cdrom void-live-x86_64-musl-20240314-base.iso \
-net nic -net user,hostfwd=tcp::8080-:8080,hostfwd=tcp::42397-:42397 \
-vnc 127.0.0.1:0 \
-boot d
  • Make an ssh tunnel from the local machine to the VPS:
ssh [email protected] -L 5900:localhost:5900
  • In the local VNC viewer:
localhost:5900

I hope everyone gets the servers they want!

Tagged:

Comments

  • Hah! Love it! Inception, the server!

    Thanked by (1)Not_Oles
  • Not_OlesNot_Oles Hosting ProviderContent Writer

    I ran the Void installer shown in the screenshot above. Now I seem to have an installed system which can update itself, reboot successfully, run sshd, install software, and run some of Yabs.

    The Qemu command I am using for booting the installed system differs slightly from the above command to launch the installer.

    Run inside tmux:
    qemu-system-x86_64 \
    -cpu host \
    -enable-kvm \
    -m 2048 \
    -drive file=void.qcow2 \
    -net nic -net user,hostfwd=tcp::8080-:8080,hostfwd=tcp::42397-:42397 \
    -vnc 127.0.0.1:0 \
    -boot c
    

    Here's basic info on the installed and updated Void Linux system.

    [void@void ~]$ date
    Sun Aug 25 03:12:24 UTC 2024
    [void@void ~]$ uptime
     03:12:31 up  1:14,  0 user,  load average: 0.00, 0.00, 0.12 
    [void@void ~]$ uname -r
    6.6.21_1
    [void@void ~]$ nproc
    1
    [void@void ~]$ free -h
                   total        used        free      shared  buff/cache   available
    Mem:           1.9Gi       194Mi       1.8Gi       484Ki       116Mi       1.7Gi
    Swap:          2.0Gi          0B       2.0Gi
    [void@void ~]$ df -h
    Filesystem      Size  Used Avail Use% Mounted on
    devtmpfs        944M     0  944M   0% /dev
    tmpfs           987M     0  987M   0% /dev/shm
    tmpfs           987M  484K  987M   1% /run
    /dev/sda3        47G  1.8G   43G   4% /
    cgroup          987M     0  987M   0% /sys/fs/cgroup
    /dev/sda1       459M  197M  237M  46% /boot
    tmpfs           987M     0  987M   0% /tmp
    [void@void ~]$ 
    

    Here is an example software install.

    chronos@penguin:~/servers/redacted/void$ cat xbps-install-fio-iperf3-20240824 
    [void@void ~]$ date
    Sun Aug 25 02:34:55 UTC 2024
    [void@void ~]$ sudo xbps-install fio iperf3
    Password: 
    
    Name      Action    Version           New version            Download size
    gdbm      install   -                 1.23_1                 167KB 
    expat     install   -                 2.6.2_1                68KB 
    python3   install   -                 3.12.5_1               7485KB 
    libatomic install   -                 13.2.0_2               9010B 
    libnuma   install   -                 2.0.18_1               22KB 
    fio       install   -                 3.37_1                 7240KB 
    iperf3    install   -                 3.16_1                 91KB 
    
    Size to download:               15MB
    Size required on disk:          34MB
    Space available on disk:        45GB
    
    Do you want to continue? [Y/n] 
    
    [*] Downloading packages
    
      [ . . . ]
    
    [*] Collecting package files
    
      [ . . . ]
    
    [*] Unpacking packages
    
      [ . . . ]
    
    [*] Configuring unpacked packages
    
    [*] Configuring unpacked packages
    gdbm-1.23_1: configuring ...
    gdbm-1.23_1: installed successfully.
    expat-2.6.2_1: configuring ...
    expat-2.6.2_1: installed successfully.
    python3-3.12.5_1: configuring ...
    Byte-compiling python code in usr/lib/python3.12...
    Byte-compiling python3.12 code for module README.txt...
    Updating ldconfig(8) cache...
    python3-3.12.5_1: installed successfully.
    libatomic-13.2.0_2: configuring ...
    libatomic-13.2.0_2: installed successfully.
    libnuma-2.0.18_1: configuring ...
    libnuma-2.0.18_1: installed successfully.
    fio-3.37_1: configuring ...
    fio-3.37_1: installed successfully.
    iperf3-3.16_1: configuring ...
    iperf3-3.16_1: installed successfully.
    
    7 downloaded, 7 installed, 0 updated, 7 configured, 0 removed.
    [void@void ~]$ 
    

    Here is part of a Yabs. The disk speeds are low, partly because I'm using emulated file I/O in Qemu. I am guessing that the network speeds are low partly because I am using Qemu default user networking (slirp). Apparently musl libc doesn't support locales. Additionally, the Geekbench 6 called from Yabs doesn't seem to work. Maybe that's also a result of musl libc.

    [void@void ~]$ curl -sL yabs.sh | bash
    # ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## #
    #              Yet-Another-Bench-Script              #
    #                     v2024-06-09                    #
    # https://github.com/masonr/yet-another-bench-script #
    # ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## #
    
    Sun Aug 25 02:36:46 UTC 2024
    
    Warning: locale 'C' not detected. Test outputs may not be parsed correctly. 
    
    Basic System Information:
    ---------------------------------
    Uptime     : 0 days, 0 hours, 38 minutes
    Processor  : AMD Ryzen 9 7950X 16-Core Processor
    CPU cores  : 1 @ 4499.980 MHz
    AES-NI     : ✔ Enabled
    VM-x/AMD-V : ✔ Enabled
    RAM        : 1.9 GiB
    Swap       : 2.0 GiB
    Disk       : 46.9 GiB
    Distro     : Void Linux
    Kernel     : 6.6.21_1
    VM Type    : 
    IPv4/IPv6  : ✔ Online / ✔ Online
    
    IPv4 Network Information:
    ---------------------------------
    ISP        : Redacted
    ASN        : ASXXXXX Redacted
    Host       : Redacted
    Location   : Redacted, Texas (TX)
    Country    : United States
    
    fio Disk Speed Tests (Mixed R/W 50/50) (Partition /dev/sda3):
    ---------------------------------
    Block Size | 4k            (IOPS) | 64k           (IOPS)
      ------   | ---            ----  | ----           ---- 
    Read       | 5.67 MB/s     (1.4k) | 78.87 MB/s    (1.2k)
    Write      | 5.69 MB/s     (1.4k) | 79.28 MB/s    (1.2k)
    Total      | 11.37 MB/s    (2.8k) | 158.16 MB/s   (2.4k)
               |                      |                     
    Block Size | 512k          (IOPS) | 1m            (IOPS)
      ------   | ---            ----  | ----           ---- 
    Read       | 354.17 MB/s    (691) | 482.19 MB/s    (470)
    Write      | 372.99 MB/s    (728) | 514.31 MB/s    (502)
    Total      | 727.16 MB/s   (1.4k) | 996.50 MB/s    (972)
    
    iperf3 Network Speed Tests (IPv4):
    ---------------------------------
    Provider        | Location (Link)           | Send Speed      | Recv Speed      | Ping           
    -----           | -----                     | ----            | ----            | ----           
    Clouvider       | London, UK (10G)          | 1.02 Gbits/sec  | 1.72 Gbits/sec  | 101 ms         
    Eranium         | Amsterdam, NL (100G)      | 975 Mbits/sec   | 1.51 Gbits/sec  | 112 ms         
    Uztelecom       | Tashkent, UZ (10G)        | 758 Mbits/sec   | 498 Mbits/sec   | 207 ms         
    Leaseweb        | Singapore, SG (10G)       | 744 Mbits/sec   | 723 Mbits/sec   | 206 ms         
    Clouvider       | Los Angeles, CA, US (10G) | 1.15 Gbits/sec  | busy            | 35.4 ms        
    Leaseweb        | NYC, NY, US (10G)         | 1.11 Gbits/sec  | 2.46 Gbits/sec  | 32.3 ms        
    Edgoo           | Sao Paulo, BR (1G)        | 987 Mbits/sec   | 1.11 Gbits/sec  | 137 ms         
    
    iperf3 Network Speed Tests (IPv6):
    ---------------------------------
    Provider        | Location (Link)           | Send Speed      | Recv Speed      | Ping           
    -----           | -----                     | ----            | ----            | ----           
    Clouvider       | London, UK (10G)          | busy            | 1.68 Gbits/sec  | 101 ms         
    Eranium         | Amsterdam, NL (100G)      | 770 Mbits/sec   | 1.52 Gbits/sec  | 112 ms         
    Uztelecom       | Tashkent, UZ (10G)        | 709 Mbits/sec   | 764 Mbits/sec   | 208 ms         
    Leaseweb        | Singapore, SG (10G)       | 649 Mbits/sec   | 831 Mbits/sec   | 206 ms         
    Clouvider       | Los Angeles, CA, US (10G) | 785 Mbits/sec   | busy            | 35.4 ms        
    Leaseweb        | NYC, NY, US (10G)         | busy            | 2.48 Gbits/sec  | 32.2 ms        
    Edgoo           | Sao Paulo, BR (1G)        | 803 Mbits/sec   | 1.29 Gbits/sec  | 136 ms         
    
    Geekbench 6 test failed. Run manually to determine cause.
    
    YABS completed in 7 min 17 sec
    [void@void ~]$ 
    

    I hope everyone gets the servers they want!

  • Not_OlesNot_Oles Hosting ProviderContent Writer

    Here is a fun page comparing musl with glibc and other mibc implementations, but unfortunately not including BSD libc in the comparison. If anybody knows of a comparison which includes musl libc, glibc, and BSD libc, please share a link.

    Thanked by (1)hornet

    I hope everyone gets the servers they want!

  • https://www.etalabs.net/compare_libcs.html

    I have tried to be fair and objective, but as I am the author of musl, that may have influenced my choice of which aspects to compare.

    :p

    Thanked by (1)Not_Oles
Sign In or Register to comment.