keybase / client

Keybase Go Library, Client, Service, OS X, iOS, Android, Electron
BSD 3-Clause "New" or "Revised" License
8.84k stars 1.22k forks source link

keybase client v6.2.3-20231016183016+06cb935ee3 causing `/` mount issues under Ubuntu 22.04, Fedora 34 #24764

Open gene1wood opened 2 years ago

gene1wood commented 2 years ago

With the new version of the keybase ( 5.9.0-20211217212642.29bfd9d39f ) that @heronhaye released last week, it's causing a very worrisome issue (which I initially thought to be a hard drive problem).

I've observed it now on two different unrelated Ubuntu 18.04 systems. Initially I didn't realize it was keybase until it happened on the second system and I thought it might be mount/fuse related.

Symptoms

Intermittently the / mount in the OS stops working. Running ls / hangs and doesn't return. Launching nautilus hangs and doesn't launch. Other applications (in my case a java app called SmartGit) that try to read from / also hang. Other mounts appear ok, for example ls /boot works fine. Apps which don't do anything in the / mount (for example my browser which I guess works entirely in my home directory, and home is a distinct mount, works fine)

Solution

After trying some different solutions heronhaye seems to have fixed this with the v5.9.3 release which you can update to via the normal means : https://keybase.io/docs/the_app/install_linux

Big thanks to heronhaye!

Note : If you'd used the workaround below while this was being worked out and put the keybase package on hold in apt make sure to run

sudo apt-mark unhold keybase

Workaround

When this happened on the second Ubuntu machine and I realized it might be keybase, I ran keybase ctl stop and immediately / became available, nautilus would launch, everything was fixed.

I was able to discover the previous version number at https://prerelease.keybase.io/linux_binaries/deb/index.html

Then either

sudo apt install keybase=5.8.1-20210930160723.fefa22edc1

or fetch the deb package listed on https://prerelease.keybase.io/linux_binaries/deb/index.html and install it

wget https://s3.amazonaws.com/prerelease.keybase.io/linux_binaries/deb/keybase_5.8.1-20210930160723.fefa22edc1_amd64.deb
sudo dpkg -i keybase_5.8.1-20210930160723.fefa22edc1_amd64.deb

Then run this to tell apt to hold and not upgrade keybase to 5.9.0

sudo apt-mark hold keybase

Once this issue is fixed you can unhold keybase with

sudo apt-mark unhold keybase

MAKE SURE NOT TO FORGET THAT YOU PUT KEYBASE ON HOLD AS OTHERWISE IT WILL NEVER GET UPDATES AGAIN

alexiswl commented 5 months ago

Weirdly the above doesn't always work.

timeout 2 ls /

will return the top mount list,

but the below will freeze

ls /

The following is fine

bash -c 'ls /'

While this will hang

bash -ic 'ls /'

I have updated my comment accordingly

rsyring commented 3 months ago

I was able to disable the redirector with the instructions at: https://github.com/keybase/client/issues/24764#issuecomment-1021737083

Note that the redirector makes /keybase available but the kbfs is also available without the redirector at ~/keybase. My intention is to leave the redirector disabled and just use ~/keybase.

OvermindDL1 commented 2 weeks ago

Still happening with keybase version 6.3.1 on Ubuntu 24.04.

aleon1138 commented 2 weeks ago

This issue came up again over the weekend and I initially thought I had a hardware failure.

The solution I found was to edit the last line in ~/.config/autostart/keybase_autostart.desktop as follows:

Exec=env KEYBASE_AUTOSTART=1 run_keybase -f

The -f flag disables KBFS, which I believe to be some sort of Dropbox alternative, and which I don't use.