Can't access the internet

Ok, when you put it like that it does sound easier. I think I was just getting confused as there seems to be multiple threads and things to try. But you clarified very succinctly. I tried changing the sys-net template to debian-11, I didn’t have debian 12 but still with the same problem. On boot sys-net tried to start but then shutdown. Fedora 38 isn’t listed as an option that I can change sys-net to. The only other options are whonix-gw-16 and whonix-ws-16 but didn’t try them.

If I apparently know that I now have 2 USB controllers is it also possible that I could isolate one for my boot device and one for my USB Ethernet card. Although I’m not sure how I would go about that? This might achieve option b, what do you think?

I checked out this question but I don’t think I can do the first two lines of code as I don’t have a functional Ethernet card:

sudo dnf update
sudo dnf install dkms make kernel-devel -y
git clone https://github.com/tomaspinho/rtl8821ce.git
cd rtl8821ce/
sudo ./dkms-install.sh 
exit

I had been investigating how to install the driver manually and had downloaded that driver code from github and transferred it to dom0 of my Qubes installation. If you read the installation instructions for installing the driver manually it states the following:

In order to install the driver open a terminal in the directory with the source code and execute the following command:

sudo ./dkms-install.sh

I tried this but it failed with the following errors:

So I wasn’t sure if I was executing the file from the correct folder or now. Or maybe I should be doing this in sys-net and not dom0, again, what do you think? Might try that next?

Thank you, I’m glad my expanation helped!

Debian-11 is quite old, so I did not expect that it would help and did not suggest to try it.

These are newly available Templates, you can install them with just one command, see here and here. However, without the Internet access, you would have to download them manually. I’m not sure how to do it… @adw is this possible?

Indeed, I forgot that you have no sys-usb. You can create it manually and add a USB controller to it, but be very careful here. As I explained above, one of your USB controllers (if you have two) is used to boot your system. If you add this one to sys-usb, you will break your system. You need to add a different one. But it can be hard to find out wihch one is which! Do not use automatic create with Salt, because it will put both controllers to sys-usb and break your system (which already happened to you before).

Actually, that link is about the WiFi, not Ethernet: How to enable WIFI on a NitroPC. To be installed in sys-net’s Template.

Exactly. Also, Qubes OS is a security-oriented OS, relying on compartmentalization. Running untrusted code in dom0 is a security risk.

I think it is possible, but I’m not sure how to do it. @marmarek?

1 Like

Ooooppppssss!!! I broked it, dam! I used the following command:

sudo qubesctl state.sls qvm.sys-usb

Which I assumed created the sys-usb VM but then assigned both my USB controllers to it and upset dom0. So guess it’s back the drawing board and a reinstall.

I did then notice the next section about assigning a USB controller manually so guess I’ll have to figure that out next when Qubes reinstalls.

1 Like

But how can I run this is sys-net won’t even start. I was under the impression that I had to start sys-net and then I could start a terminal in sys-net. Is that correct? Or is there another way I can manually install the drivers?

Back to the drawing board, perhaps, but no need for a reinstall just for
this. There’s almost never need for reinstall.
At the Grub prompt, edit the kernel entry to include qubes.skip_autostart and
remove rd.qubes.hide_all_usb
This will allow Qubes to start with no qubes starting, and the USB
controllers will still be available in dom0.
This means that you will be able to check which controller you assign to
sys-usb.

I never presume to speak for the Qubes team. When I comment in the Forum or in the mailing lists I speak for myself.
1 Like

Ooooopps!!! To late, already reinstalled it but that’s worth knowing for when I break it next. Just out of interest how would I edit the kernel?

Humphh!!! Not sure why you liked that post but several hours later and I’m ready to break it again, sigh

I liked the post, because you correctly explained what happened and what went wrong.

Not kernel, but grub bootloader. This is not a Qubes-specific question, it’s related to Linux. Also was explained on this forum: one, two.

Indeed this is an important question. You can try to open Settings of sys-net, tab Devices and remove the currently attached device to it. Also check if it was the correct WiFi card. If not, you should try to attach the correct one. The qube should start without any devices attached (but you of course can’t have the Internet like this).

Sigh, I think I broked it again. So this time I tried to create sys-usb manually using the command:

qvm-create --label red sys-usb

Which seemed to work but wouldn’t allow me to apply devices when I clicked the settings of this VM from Qube manager. The reason was that it was PVH enabled or something like that. Anyway, I might have deleted it and tried again. Eventually I found in settings where I could change the mode to HVM and this then allowed me to assign a device to sys-usb. Not quite sure if I assigned the correct device. I ran the command ‘qvm-pci’ and saved it in a file which I’ll upload although it doesn’t seem to be allowing me to upload a text file so cut and paste it is

dom0:00_00.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Renoir Root Complex
dom0:00_00.2 IOMMU: Advanced Micro Devices, Inc. [AMD] Renoir IOMMU
dom0:00_01.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Renoir PCIe Dummy Host Bridge
dom0:00_01.3 PCI bridge: Advanced Micro Devices, Inc. [AMD] Renoir PCIe GPP Bridge
dom0:00_02.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Renoir PCIe Dummy Host Bridge
dom0:00_02.2 PCI bridge: Advanced Micro Devices, Inc. [AMD] Renoir PCIe GPP Bridge
dom0:00_02.4 PCI bridge: Advanced Micro Devices, Inc. [AMD] Renoir PCIe GPP Bridge
dom0:00_08.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Renoir PCIe Dummy Host Bridge
dom0:00_08.1 PCI bridge: Advanced Micro Devices, Inc. [AMD] Renoir Internal PCIe GPP Bridge to Bus
dom0:00_14.0 SMBus: Advanced Micro Devices, Inc. [AMD] FCH SMBus Controller
dom0:00_14.3 ISA bridge: Advanced Micro Devices, Inc. [AMD] FCH LPC Bridge
dom0:00_18.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Renoir Device 24: Function 0
dom0:00_18.1 Host bridge: Advanced Micro Devices, Inc. [AMD] Renoir Device 24: Function 1
dom0:00_18.2 Host bridge: Advanced Micro Devices, Inc. [AMD] Renoir Device 24: Function 2
dom0:00_18.3 Host bridge: Advanced Micro Devices, Inc. [AMD] Renoir Device 24: Function 3
dom0:00_18.4 Host bridge: Advanced Micro Devices, Inc. [AMD] Renoir Device 24: Function 4
dom0:00_18.5 Host bridge: Advanced Micro Devices, Inc. [AMD] Renoir Device 24: Function 5
dom0:00_18.6 Host bridge: Advanced Micro Devices, Inc. [AMD] Renoir Device 24: Function 6
dom0:00_18.7 Host bridge: Advanced Micro Devices, Inc. [AMD] Renoir Device 24: Function 7
dom0:01_00.0 Unassigned class: Realtek Semiconductor Co., Ltd. RTS522A PCI Express Card Reader
dom0:02_00.0 Network controller: Realtek Semiconductor Co., Ltd. RTL8821CE 802.11ac PCIe Wireless Network Adapter sys-net
dom0:03_00.0 Non-Volatile memory controller: Samsung Electronics Co Ltd
dom0:04_00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Renoir
dom0:04_00.1 Audio device: Advanced Micro Devices, Inc. [AMD/ATI]
dom0:04_00.2 Encryption controller: Advanced Micro Devices, Inc. [AMD] Family 17h (Models 10h-1fh) Platform Security Processor
dom0:04_00.3 USB controller: Advanced Micro Devices, Inc. [AMD] Renoir USB 3.1
dom0:04_00.4 USB controller: Advanced Micro Devices, Inc. [AMD] Renoir USB 3.1
dom0:04_00.5 Multimedia controller: Advanced Micro Devices, Inc. [AMD] Raven/Raven2/FireFlight/Renoir Audio Processor
dom0:04_00.6 Audio device: Advanced Micro Devices, Inc. [AMD] Family 17h (Models 10h-1fh) HD Audio Controller

There were two USB controllers listed so I tried each in turn. The first dom0:04_004 crashed Qubes so I assumed that this was the one that dom0 was using. So I tried the other USB controller and it seemed to work, I think. Now the first time I started sys-usb it wouldn’t start but attempted to load the following devices a cam, some bluetooth device and a gigabit ethernet card which I assume is my USB Ethernet card. The second time I started sys-usb it said these devices were available to me but not sure what to do next? How do I get dom0 to access them or how do I use them?

I checked the settings for sys-net and removed the device driver which was the Realtek driver and then sys-net would start. Whilst I have the driver apparently it requires certain dependencies to install and apparently the only way to install them is to download them so I think I need my USB Ethernet card working before I can solve my wifi issue?

I think I might be getting somewhere but I’m not sure. I do think I am learning something and I appreciate your support and patience

I

1 Like

Although having just rebooted and tried again I got an error saying 'Cannot connect to seconds, qrexec agent for 60 see /var/log/xen/console/guest-sys-usb. log for details. So not sure what that means. But about to give up for one night my head hurts!

But then when I tried again it started and said the three devices were available but still don’t know how to access them?

Hi, I’ve actually now managed to create a sys-usb VM and assign what I hope is the network controller for my USB Ethernet card to that VM. But I’m unsure how I now assign the USB Ethernet card to sys-net and then configure it with the network icon up in the task bar. I was hoping you could help please

Ok so the device popped up and I clicked on Devices in the menu bar (I assumed that was the icon you meant) and I assigned it to sys-net, which I think it has been assigned to. But now how do I configure it? There is no network icon in the task bar.

This is great news!

Now, your sys-usb should be able to connect to the Internet via Ethernet, if this is indeed true. This VM should behave just like a normal Linux system with a USB Ethernet. Can it? If yes, next turn is to allow other qubes to use sys-usb as the network source.

It means that you can open the log file in dom0 located under the shown path and read details of what happened.

Not sure how to connect sys-usb to the internet. I try and start Firefox but it doesn’t seem to be working. Firefox from Personal does seem work but it takes a long time to start. I guess it is either because I am only running 8Gb or I am running Qubes from a USB that is the problem. I suspect it might be time to give up and wait until I upgrade my current machine to something with 16Gb. But I am now also getting a very strange login screen on sys-net and just a flashing cursor in sys-usb so not even sure how I managed to upset sys-net and sys-usb:

May try a reinstall again as it could have been something to do with updates that Qubes seemed to fail to install. But I’m beginning to loose patience, sigh

This is actually a great news. You do not really need the Internet in sys-usb, I only suggested it to check that it works somehow.

If you do not run many qubes but only a couple, it should not be a problem. Qubes Domains widget can show you how much memory is currently in use. You can also go the the Settings of each qube and check how much memory they are allowed to take. By the way, sometimes, sys-usb misbehaves due to too strict memory limit. Increasing it might help you.

Could also be due to strict memory limits in Settings. Otherwise I do not know what could be a reason.

I suspect I shall give up until I can upgrade to a 16Gb machine that is from the recommended Qubes list. But thanks for your support and help, it was greatly appreciated and I still learnt a lot.

1 Like