Detect USB Stick on plugin (Solved)

Hi all,

Although my knowledge is very limited, I somehow managed to install Arch (before EOS has been created) and whenever I run into some problem I search on my own and sooner or later I find how to fix. But for the following I’m unable to find solution:

The only way to be able to use a USB stick is to have it already plugged in during boot. I’m unable to “see” it when plugging in after boot or even when remove and add again, it will not show up (also not in lsblk).
I assume the Kernel is loading the something, which is required for USB Stick detection, only when the stick is plugged in during boot.
Please can anyone help?
Thank you.

1 Like

Welcome to the forum. Thanks for giving EndeavourOS a try. I hope you enjoy your time here.

First I assume you installed the OS with EndeavourOS LiveISO.
Second what Desktop Environment are you using?

I believe udev is mainly responsible for detecting USB drives being plugged in. I am also sure other things are also involved,

I had that same problem on a very basic XFCE install. If I remember correctly both gvfs and gnome-packagekit had to be installed to fix the problem. But in this case I think lsblk -f did detect the USB device.

Pudge

Thank you.
I’m not on EOS, but Arch (installed already before EOS existed).
DE is GNOME.
gvfs and gnome-packagekit is installed. I can use USB stick w/o problem when it was already plugged in during boot. My problem is if USB stick was not already plugged in during boot.
lsblk -f not detecting anything

1 Like

Let’s see if the kernel has the proper modules installed

dmesg | grep usb

You should see a bunch of usb hubs listed. If so, usb support is included in the kernel.
You can also prove this with
$ sudo lspci -v | grep HCI

Pudge

Is it OK / prefered to copy to pastebin?

03:00.4 USB controller: Realtek Semiconductor Co., Ltd. Device 816d (rev 0e) (prog-if 20 [EHCI])
05:00.3 USB controller: Advanced Micro Devices, Inc. [AMD] Raven USB 3.1 (prog-if 30 [XHCI])
05:00.4 USB controller: Advanced Micro Devices, Inc. [AMD] Raven USB 3.1 (prog-if 30 [XHCI])

Booted w/o usb stick plugged in.

Ah, I can see this is not your first rodeo. Yes pastebin is OK. My bad, I should have mentioned ix.io
The preferred method here is inxi which is in the Arch AUR. It’s usage is

"command" | curl -F 'f:1=<-' ix.io

Which will produce an URL such as http;//ix.io/R3hs
then just list the URL in your post.
However pastebin is fine for now.

So it looks like the correct kernel modules are in place. So let’s try to eliminate a corrupted USB drive. I’m sure you have tried the following, but to be sure.

Does the suspect USB drive work on another Linux, MAC, or gasp WIndows machine?
Does a new or otherwise known good USB stick work in the suspect machine?
If both of those are false, it will start to get nasty.

Pudge

The USB stick is fine, works on other notebook as well as on mine notebook if it was already plugged in during boot.
Same behaviour with other USB sticks.

Should I get same logs after rebooting with usb stick plugged in?

Edit: inxi now installed

I believe the above logs would be pretty much the same with it plugged in at bootup.
What would be interesting is if after booting with the USB stick plugged in, does lsblk -f
or fdisk -l show the USB device? If so then, it would have to be something involved with recognizing the action of the USB stick being plugged in while OS is up and running.
That kind of gets us back to udev. I assume this install of Arch is systemd? If so, maybe some service is not getting enabled in systemd?

Pudge

Yes, you are right:

  • lsblk -f and fdisk -l show the USB stick WHEN it has been plugged in during boot but not when it was not plugged in during boot.
  • Arch with systemd
  • could be some systemd service or similar. Basically I believe it is such a simple issue, but I’m unable to find on my own. I believed it is rather the kernel then systemd, but my knowledge is very very low, therefore often not clear for me what is systemd and what is kernel.

Edit: http://ix.io/2nbq
(as you can see a bit special hard drive, but shouldn’t affect USB stick?!?)

Do the following command
$ systemctl status
Then look for the following section from my systemctl status

       │   │ ├─dbus.service 
       │   │ │ ├─1434 /usr/bin/dbus-daemon --session --address=systemd: --nofork --nopidfile --systemd-activation --syslog-only
       │   │ │ ├─1522 /usr/lib/dconf-service
       │   │ │ ├─1527 /usr/lib/gnome-shell-calendar-server
       │   │ │ ├─1554 /usr/lib/goa-daemon
       │   │ │ ├─1569 /usr/lib/goa-identity-service
       │   │ │ └─1606 /usr/bin/gjs /usr/share/gnome-shell/org.gnome.Shell.Notifications

Especially the last one 1606

Pudge

├─dbus.service 
           │   │ │ ├─1440 /usr/bin/dbus-daemon --session --address=systemd: --nofork --nopidfile --systemd-activation --syslog-only
           │   │ │ ├─1576 /usr/lib/dconf-service
           │   │ │ ├─1581 /usr/lib/gnome-shell-calendar-server
           │   │ │ ├─1610 /usr/lib/goa-daemon
           │   │ │ ├─1644 /usr/lib/goa-identity-service
           │   │ │ ├─1720 /usr/bin/gjs /usr/share/gnome-shell/org.gnome.Shell.Notifications
           │   │ │ ├─1817 gjs /home/dennis/.local/share/gnome-shell/extensions/gsconnect@andyholmes.github.io/service/daemon.js
           │   │ │ └─3142 /usr/bin/python /usr/bin/chrome-gnome-shell --gapplication-service

That’s mine. Looks identical.
(But booted with USB stick plugged in. Will now reboot again w/o).

Edit: after reboot w/o plugged in usb stick still same:

           │   │ ├─dbus.service 
           │   │ │ ├─1411 /usr/bin/dbus-daemon --session --address=systemd: --nofork --nopidfile --systemd-activation --syslog-only
           │   │ │ ├─1547 /usr/lib/dconf-service
           │   │ │ ├─1552 /usr/lib/gnome-shell-calendar-server
           │   │ │ ├─1581 /usr/lib/goa-daemon
           │   │ │ ├─1614 /usr/lib/goa-identity-service
           │   │ │ ├─1671 /usr/bin/gjs /usr/share/gnome-shell/org.gnome.Shell.Notifications
           │   │ │ ├─1731 gjs /home/dennis/.local/share/gnome-shell/extensions/gsconnect@andyholmes.github.io/service/daemon.js
           │   │ │ └─3051 /usr/bin/python /usr/bin/chrome-gnome-shell --gapplication-service

These daemons or services are started by configurations started by systemd at boot and should not be affected by what is or isn’t plugged into a USB port.
But it will interesting to see.

Same, please see edit above.

And no sda available anymore:

http://ix.io/2nbv

Let’s go back to the statement above. Are you saying the suspect USB device is recognized on other devices when plugged in at boot up, but not when plugged in with a running OS on different machines?

Pudge

I’ve 3 USB sticks. All 3 show same behaviour

  1. My notebook, booted w/o plugged in usb stick: unable to detect / find the usb stick
  2. My notebook, booted w/ plugged in usb stick: usb stick available and can be used
  3. like 2), but unmount usb stick after usage: not able to mount again. If I pull and plug, nothing happens
  4. Other notebook with already running windows: usb stick can be plugged in and will be detected. Can be used.

Edit: Valid also for different USB ports.

Oohhhh… just noted something strange:
My battery becoming empty, so I plugged in cable. After that usb stick detected. Can be mounted and used.

I use tlp for power management. Let me check if I set something there fore battery optimization.

Great.
In that case, I’m off to bed. Hope that fixes things for you.

Pudge

Mostly fixed already :slight_smile:
Only need to find out how to use it also without charging cable.
Thank you very much and good night.

Edit:

Just in case someone running into same problem:

Set

RUNTIME_PM_ON_BAT=“on”

in tlp.

1 Like

Linux 5.6.14-zen1-1-zen is in use also

1 Like