JonathanTreffler / backblaze-personal-wine-container

Run the Backblaze personal backup client in a docker container
https://hub.docker.com/r/tessypowder/backblaze-personal-wine
GNU Affero General Public License v3.0
374 stars 35 forks source link

Drive mounted as Z and not writeable #166

Open GasPoweredTomato opened 3 months ago

GasPoweredTomato commented 3 months ago

First, backblaze mounted my user drive as Z instead of D. I tried selecting this drive and am getting this error. image It looks like it can't write the file for some reason. The volume is mounted with read/write access.

EDIT: I tried creating a folder .bzvol in the directory, tried chmod 777 on it and changing it to users:nobody. None of that worked.

EDIT 2: Got it working by chaning puid and pgid to 0 (root) for both, not sure if this is a good idea tho. Now the issue is that it is not seeing my data. When I go to exclude folders I noticed it is Z:/backup_volume/ which mounts to my /mnt/user folder. Now sure why it is only seeing 2.4 GB and not the 16TB I have.

traktuner commented 3 months ago

Backblaze is VERY picky when it comes to permissions. Every volume you mount must be fully writable for Backblaze so that it can create its .bzvol folder. If that does not work automatically (happens when you enable the volume in Backblaze to back it up) then something in wrong with permissions. Please note that with the WINE implementation only volumes directly on the host can be backed up. Volumes from other machines mounted to the machine where our container is running can't be seen by the app.

GasPoweredTomato commented 3 months ago

I don't have any volumes on other machines. I'm unsure why my permissions are messed up but I saw on some other issues that changing the user and group to app:app could fix it? One issue is that I do not have the user:group app:app. I could make them but I am unsure how to do that or if I can.

traktuner commented 3 months ago

USER_ID and GROUP_ID just passes the permissions from your local host system to the app user. So if you set both to "0", the app user then has the user+grou ID "0" which is root on your host. Best practice would be to create a new user on your host, set the permissions correctly (give the user read+write access to all volumes which you'd like to back up with Backblaze), and then set USER_ID + GROUP_ID to the values of this newly created user. But - if you already tried setting it to root, Backblaze should see everything - if it does NOT see everything, there might be another issue with your setup. Please also have a look at this part in the readme. There you can see how and where to mount the volumes. Please follow the instructions step by step. If you mount them correctly (e.g. /config/wine/dosdevices/d:) then the volumes get automatically mounted into the container and Backblaze recognizes them.

Edit: If you followed the instructions of the readme carefully, please post your full docker logs of this container here, including the backblaze-wine-startapp.log Thanks!

GasPoweredTomato commented 1 month ago

[app ] [app ] [app ] [app ] [app ] [app ] [app ] [app ] [app ] [app ] [app ] [app ] [app ] [app ] [app ] [app ] [app ] [app ] [app ] [app ] [app ] [app ] [app ] [app ] [app ] [app ] [app ] [app ] [app ] [app ] [app ] [app ] [app ] [app ] [app ] [app ] [app ] [app ] [app ] [app ] [app ] [app ] [app ] [app ] [app ] [app ] [app ] [app ] [app ] [app ] [app ] [app ] [app ] [app ] [app ] [app ] [app ] [app ] ' [app ] + xml_version=9.0.2.783 [app ] ++ cat /config/wine/dosdevices/c:/ProgramData/Backblaze/bzdata/bzreports/bzserv_version.txt [app ] + local_version=9.0.2.783 [app ] + log_message 'UPDATER: Installed Version=9.0.2.783' [app ] ++ date [app ] + echo 'Wed Jul 17 06:58:28 PM EDT 2024: UPDATER: Installed Version=9.0.2.783' [app ] + log_message 'UPDATER: Latest Version=9.0.2.783' [app ] ++ date [app ] + echo 'Wed Jul 17 06:58:28 PM EDT 2024: UPDATER: Latest Version=9.0.2.783' [app ] + compare_versions 9.0.2.783 9.0.2.783 [app ] + local_version=9.0.2.783 [app ] + compare_version=9.0.2.783 [app ] + dpkg --compare-versions 9.0.2.783 lt 9.0.2.783 [app ] + return 1 [app ] + log_message 'UPDATER: The installed version is up to date.' [app ] ++ date [app ] + echo 'Wed Jul 17 06:58:28 PM EDT 2024: UPDATER: The installed version is up to date.' [app ] + start_app [app ] ++ cat /config/wine/dosdevices/c:/ProgramData/Backblaze/bzdata/bzreports/bzserv_version.txt [app ] + log_message 'STARTAPP: Starting Backblaze version 9.0.2.783' [app ] ++ date [app ] + echo 'Wed Jul 17 06:58:28 PM EDT 2024: STARTAPP: Starting Backblaze version 9.0.2.783' [app ] + sleep infinity [app ] + wine64 '/config/wine/drive_c/Program Files (x86)/Backblaze/bzbui.exe' -noquiet [xvnc ] Wed Jul 17 19:00:42 2024 [xvnc ] Connections: accepted: /tmp/vnc.sock [xvnc ] SConnection: Client needs protocol version 3.8 [xvnc ] SConnection: Client requests security type None(1) [xvnc ] VNCSConnST: Server default pixel format depth 24 (32bpp) little-endian rgb888 [xvnc ] VNCSConnST: Client pixel format depth 24 (32bpp) little-endian bgr888 [xvnc ] ComparingUpdateTracker: 0 pixels in / 0 pixels out [xvnc ] ComparingUpdateTracker: (1:-nan ratio)

backblaze-wine-startapp.log

Here are the requested logs.

traktuner commented 1 month ago

@GasPoweredTomato Thank you. That's odd. The log is cut off at the beginning. We have a long routine which detects the mounted volumes and links them to Backblaze - this whole section is missing.

GasPoweredTomato commented 3 weeks ago

@GasPoweredTomato Thank you. That's odd. The log is cut off at the beginning. We have a long routine which detects the mounted volumes and links them to Backblaze - this whole section is missing.

Do you have any advice on modifying the permissions for unraid? I haven't seen much info on adding a PUID/GUID since unraid handles it in some files on the usb.