Just a dumb thing to fake the type of a filesystem
Dropbox will no longer allow running the Linux client on any filesystem other
than Ext4 (forum thread, Reddit thread). Ext4 is garbage.
So, just pretend we're running dropbox
on an Ext4 filesystem.
Compile this using cmake
, e.g. in a temp directory (starting from this repo):
dir="$(pwd)"
cd "$(mktemp -d -t build-fakeext4.XXXXXXXX)"
cmake "$dir"
make
(optional, but definitely easiest):
make install
## default prefix = /usr/local
## library file = ${prefix}/lib/libfakeext4.so
Ensure it's in dropboxd
's LD_PRELOAD
environment variable. E.g., via a
systemd
user unit drop-in file:
config_dir=$HOME/.config/systemd/user/dropbox.service.d
mkdir -p "$config_dir"
cat > "$config_dir/environment.conf" <<'CONFIG'
[Service]
Environment=LD_PRELOAD=/usr/local/lib/libfakeext4.so
CONFIG
- Successfully intercepts
libc
calls - Intercepts raw syscalls on x86_64 Linux
- Prevents
dropboxd
from popping up a warning about impending failure - Keeps working after the "drop-dead" date
- Check into overriding
statvfs
f_fsid
field
Copyright © 2018 Benjamin R. Haskell
Distributed under the MIT License (included in file: LICENSE).