tuxpoldo

Members
  • Posts

    730
  • Joined

  • Last visited

  • Days Won

    27

Posts posted by tuxpoldo

  1. Hi Folks!

     

    Unfortunately some GUI package manager frontends do a dist-upgrade without asking. But there are good news: Mark Johnson has fixed the problem and I will release a new package in the next few hours.

     

    Cheers!


    And here it is:
     
    btsync-user (1.16.0-1) unstable; urgency=low  * New upstream release 0.16 on btsyncindicator    - Made compatible with new Web UI of BitTorrent Sync      version 1.3.105 (Closes #btsyncindicator/50) -- Leo Moll <leo.moll@yeasoft.com>  Mon, 02 Jun 2014 23:59:52 +0100
  2. WARNING: You will see, that there is an update of the package btsync-common (1.3.105) available that is held back. The reason is that is is NOT compatible with the current version of btsync-user.
     
    Please see this post for further details.
     
    As soon as Mark has released an update, a compatible version of btsync-user will follow.

     

    IF YOU FORCE THE INSTALLATION WITH dist-upgrade BTSYNC-USER WILL NOT WORK ANY MORE!

  3. Unfortunately yes. The btsyncindicator.py from Mark Johnson is not working with the new version (since the web UI has changes so much) and this would break btsync-user. I'm still waiting for an update... But perhaps I will release today with a limitation in the version dependencies....

    Reported in the btsyncindicator project as Issue #50

    I hope we will get an update soon...


    I added in the package a version limitation ( Breaks: btsync-user (<= 1.15.0-1) ) and this causes btsync-common to be kept back on systems with btsync-user installed. I think that I can now upload the update...
     

    leo@debpoldo /etc/apt/sources.list.d $ sudo apt-get upgradeReading package lists... DoneBuilding dependency tree       Reading state information... DoneThe following packages have been kept back:  btsync-commonThe following packages will be upgraded:  google-chrome-stable libssl1.0.0 libxfont1 linux-headers-3.2.0-4-686-pae linux-headers-3.2.0-4-common  linux-image-3.2.0-4-686-pae linux-libc-dev openssl tzdata tzdata-java yea-base-files11 upgraded, 0 newly installed, 0 to remove and 1 not upgraded.Need to get 79.1 MB of archives.After this operation, 2,003 kB disk space will be freed.Do you want to continue [Y/n]? 
  4. If you are using Debian as a headless server, you may take a look at this thread:

     

    http://forum.bittorrent.com/topic/18974-debian-and-ubuntu-server-packages-for-bittorrent-sync

     

    This is a easy to deploy solution for Debian servers that simplifies considerably the process of setting up btsync on a server. Please read the entire initial posting, before proceeding and remember that you have to remove any other manually created btsync stuff, before deploying that solution.

  5. Hi areichel,
     
    the reason btsync-gui is not available for Ubuntu Lucid is that it requires the library python-requests that is not included in the repositories:
     

    Linux netpoldo32 2.6.32-58-386 #121-Ubuntu SMP Fri May 2 22:04:27 UTC 2014 i686 GNU/LinuxUbuntu 10.04.4 LTSWelcome to YeaSoft's NetPoldo Ubuntu 10.04.4-51 Rescue System!Created from Ubuntu (lucid) on 2014-05-16 21:14 +0200 using - UIC (Unified Installation Creator) 0.16.6 - netpoldo-1004-32 10.04.4-51 uic template * Documentation: http://www.yeasoft.com/netpoldo                  http://www.ubuntu.com/serverLast login: Sun May 18 15:40:29 2014 from macpoldo.yea.yeasoft.netnetpoldo32 ~ # apt-cache search python-requestsnetpoldo32 ~ #

     
    I you really want to install btsync-gui on Ubuntu Lucid, you have to find a source for the python-request library. Perhaps there is some PPA around.... You have to search for it.

     

    If you have found a source for the requests library, you should edit the file /etc/apt/sources.list.d/tuxpoldo-btsync-lucid.list and change the contents to

     

    deb http://ppa.launchpad.net/tuxpoldo/btsync/ubuntu precise maindeb-src http://ppa.launchpad.net/tuxpoldo/btsync/ubuntu precise main

     

    But I will give absolutely no warranty that this may work....

  6. [sOLVED: See Last Edit]

    ...

    EDIT:

    I found a solution. It seems I can remove authentication by using the webui itself (Preferences -> Authorization). When I remove the password here, it removes authentication successfully :D

     

    Is this a bug? The reconfigure command says to leave the username blank to remove authentication. However, the webui says to leave the password blank to remove authentication.

     

    It seems like a bug because the reconfigure command actually doesn't remove authentication (at least in my tests), whereas the webui does successfully remove authentication (although interestingly requires that the username is explicitly NOT blank).

     

    Another bug, is that the secret cannot be copy and pasted (cannot be selected) on ipad (iOS) from the webui.

    Thank you for keep on trying (any finding the solution) ;-) That's exactly the solution that I would have suggested... As you noticed, no "login" and "password" parameter is specified in the configuration file. That's the way to configure a BitTorrent Sync without authentication according to the documentation. Unfortunately now you will feel a side effect of the architecture of BitTorrent Sync: the authorisation data is still there!

     

    This is due to the fact that BitTorrent Sync is designed as a user application with a GUI. It has an internal data storage for all data structures. and when started for the first time, all parameters are initialised with decent default values.

     

    Since the Linux Version has no real GUI, the concept is still valid, but they introduced also the configuration file in order to allow the user to specify his own defaults. If you make some experiments, you will see, that this will be the internal workflow...

    •  Initialise data structures with internal defaults
    • Read the config file and adapt data structure values with values specified in the config file
    • Start internal engine
      • If the storage_path exists and contains a valid database
        • Load databases (data structures will be overwritten)
        • Adjust all values based with the values specified in the config file (and if there are no credentials in the config file, the credentials from the database are still active)
    • else
      • First run!
    • Synching loop (normal program operation)
    • On Quit signal, write all internal data in databases in storage_path
    • end procedd
    • This is the big dilemma: The configuration file only sets the options specified inside. But since there is an internal storage, all other settings will stay persistent.

       

      Basically we can try the following:

       

      "webui" :        {                "listen" : "10.65.0.16:8888",                "login" : "",                "password" : ""        }
      Unfortunately the result is not as expected: BitTorrent continues to ask for credentials, but there are no valid credentials that permit to log on.

      The conclusion is, that your solution is the only valid one. Sorry. In any case I will report the problem also to the BitTorrent Inc. support. Perhaps they know a solution or implement a way to reset the credentials from the configuration file and then I will adapt my package.

    Hello tuxpoldo,

    thank you very much for your work, i found it very useful. I'm trying to implement a data sync service between two vps on linode, so when i found btsync, i discard all the other complex to manage solution that does not fit my needs. Right now i have a huge problem with btsync instances that are both running on its relative server, but can't see each other.

    Both server running Ubuntu 13.10 and got same configuration (the second one is a clone of the first one). Since linode provide private networking, (and the private traffic is not billed :) ) i'm trying to perform sync over private network. I've installed bind-shim and set DAEMON_BIND to the respective private IP address in both machines. Now when is start/restart btsync service (DAEMON_INIT_DEBUG=1)  the message:

    Bind address: '192.168.134.xx'
    gives me hope about right interface has been binded for sync, but if i look at the /var/lib/btsync/sync.log:

    [20140517 18:55:55.732] Using IP address xxx.xx.xxx.xx
    ....
     

     

    Hi panza!

     

    Please do not give too much on the log file: the SHIM is an external workaround and BitTorrent Sync does not know anything about it. You can verify the binding of the interface by issuing the command:

     

    yeasoft-gate2 ~ # netstat -tulpe | grep btsync
    Without shim you will get something like this:

     

    tcp        0      0 *:26185                 *:*                     LISTEN      root       3798794     29900/btsync-daemontcp        0      0 yeasoft-gate2.ffm.:8888 *:*                     LISTEN      root       3798807     29900/btsync-daemontcp        0      0 *:22144                 *:*                     LISTEN      root       3798823     29989/btsync-daemonudp        0      0 *:26185                 *:*                                 root       3798805     29900/btsync-daemonudp        0      0 *:22144                 *:*                                 root       3798834     29989/btsync-daemonudp        0      0 *:3838                  *:*                                 root       3802432     29989/btsync-daemonudp        0      0 *:3838                  *:*                                 root       3803292     29900/btsync-daemon
    With an active shim, you will see this:

     

    linux-dev-64 ~ # netstat -tulpen | grep btsynctcp        0      0 127.0.0.1:8888          0.0.0.0:*               LISTEN      0          11836       2400/btsync-daemontcp        0      0 10.65.6.31:64127        0.0.0.0:*               LISTEN      0          11823       2400/btsync-daemonudp        0      0 10.65.6.31:64127        0.0.0.0:*                           0          11834       2400/btsync-daemonudp        0      0 10.65.6.31:3838         0.0.0.0:*                           0          10755       2400/btsync-daemon
    And here you can see that btsync is only bound to the internal interface. Remember that btsync works fine also on system connected only to internal interfaces: it determines the external address by communicating with the external relay/tracker servers. If you want btsync to limit the communication only to internal systems or systems with known and reachable addresses, you have to disable some options in the folder share settings ("Use tracker server" and "Search DHT network") and add the addresses of all peers involved in the sync (in case they are not on the same LAN segment).

    Here you can see a real life example of a hardened btsync configuration for synchronising the PXE boot areas across all the main routers in my internal infrastructure.

    //!/usr/lib/btsync/btsync-daemon --nodaemon --config//// This btsync instance provides sync services for// all common files in the YeaSoft Server Grid//// DAEMON_NICE=10//{	"device_name" : "yeasoft-gate2 - Server Sync",	"storage_path" : "/var/lib/btsync-serversync",	"listening_port" : 22144,	"check_for_updates" : false,	"use_upnp" : false,	"download_limit" : 0,	"upload_limit" : 0,	"lan_encrypt_data": true,	"lan_use_tcp" : true,	"rate_limit_local_peers" : false,	"webui" : {	}	,	"shared_folders" : [ {		"secret" : "<removed>",		"dir" : "/mnt/data/tftproot/yeaboot",		"use_relay_server" : false,		"use_tracker" : false,		"use_dht" : false,		"search_lan" : true,		"use_sync_trash" : true,		"known_hosts" : [			"10.65.4.1:22144",			"10.65.6.1:22144",			"10.65.8.1:22144",			"10.65.16.1:22144",			"10.65.18.1:22144"		]	}	]}
  7. Ladies and Gentlemen,

    after a long time enjoy this new version featuring the upstream update of Mark Johnson's btsyncindicator....

     

    btsync-user (1.15.0-1) unstable; urgency=low  * New upstream release 0.15 on btsyncindicator    - Fixed TypeError on Debian Wheezy (Closes #btsyncindicator/45)    - Added per folder activity feedback (Closes #btsyncindicator/47)    - Fixed 'Open in File Browser' for directories containing      spaces (Closes #btsyncindicator/48)  * Added support for btsync-common-changed trigger  -- Leo Moll <leo.moll@yeasoft.com>  Wed, 07 May 2014 15:48:45 +0100
  8. Thanks to all developers including the developer for debian desktop gui. I'd like to see such a desktop gui for fedora, too.

     

    Thank you! The GUI itself runs on any Linux with the dependencies installed (there are Packages available also for Arch-Linux) , but currently I have no clue how to create an RPM package. Some time ago I asked if someone would take over this task, but noone was really willing to do the work :-(

     

    Does anybody here have some real life examples of packaging sources for complex applications? In Debian it's simple: you can get the source of a program including the packaging collaterals with the command:

    apt-get source <packagename>

    Then you can look into the debian subdirectory and learn a lot of things (beside of the excellent guides available)...

     

    If you search for RPM packaging examples via google, you find only beginner shit (like "How to install your "Hello World"-console program")

  9. I got from Roman the following detailed description about the secret rules:

     

    Standard secret consists of 33 symbols, where 1st symbol is a prefix and 32 symbols are base32 encoded 20-byte binary secret. Secret MUST start with:

     

    A - RW secret
    B - RO secret
    C - one-time secret
    D - RW node, which supports connecting encrypted nodes
    E - RO node, which supports connecting encrypted nodes (total secret len is 65 symbols due to double key)
    F - RO-Encrypted node key, does not decrypt information.
    R - RO secret (inherited from pre-beta application)

     

    If secret is longer than 33 symbols, it is considered to be a “custom” secret. Custom secret must be 40 symbols or longer, base64 encoded.

     

    Secret treated as invalid, if:

    • secret started from different symbol as mentioned above and shorter than 40 symbols
    • secret is shorter than 33 symbols
    • secret contains non-base32 symbols for standard secret
    • secret contains non-base64 symbols for custom secret
  10. I understand I can simply install the official BTSync for RPi (using wget http://btsync.s3-website-us-east-1.amazonaws.com/btsync_arm.tar.gz), but I can also choose your package from this topic. Which one would be better?

     

    I can not tell you, which way of installing BitTorrent Sync would be better for you, since I have no idea, what are your requirements. This decision is yours, and nobody can take it from you. But there are a few things you should know:

    • The official distribution of BitTorrent Sync (the link above) contains the pure BitTorrent Sync executable and a text file with the license conditions. If you unpack the archive, you have to decide where to put the executable, how to manage startup and shutdown, how to create and maintain you configuration file, how to avoid multiple instances putting their internal data in different paths etc. etc....
    • The server or desktop packages for BitTorrent Sync provide a standard installation and operation scenario for BitTorrent Sync and wrap the original BitTorrent Sync executable in a Debian package that integrates the whole installation, maintenance and update procedure in the standard package management of your distribution. You will get a turnkey installation of BitTorrent Sync like you have on Windows and Mac OSX.
    • Differently from Windows and Mac OSX where BitTorrent Sync is distributed as a user application running in the context of a logged in user, the Linux version can also be operated as a server background task. If you want to run BitTorrent Sync as an application running for the logged in user, you should take a look at the Desktop Package. If you want BitTorrent Sync to run as a background task, the Server Package that is discussed in this thread might be the right one for you.

    Also, why does Bittorrent still maintain their official release for this device if yours is better?

    Who said, that "mine" is better?

     

    BitTorrent Inc. releases the BitTorrent Sync executable because, they produce it and they want to support also the Linux platform. Without the release of the original BitTorrent executable also all derived distributions like the Server and Desktop Packages for BitTorrent Sync would not exist.

  11. I have the same problem.

     

    The missing of the versioned download links for 1.3.94 (and the missing Geode version and the missing changelog) is the reason, I was not able to update the Linux Packages for Debian/Ubuntu/Mint/Respian. In the last days I sent several messages to RomanZ asking for the reason of that, but I got no answer :-(

  12. How would I change the configuration file? Thanks for your help.

    (I went to the post but I'm hoping there is a more detailed instruction on removing shared folders and creating that new configuration file)

     

    The same way you created it. With a text editor. Or do you have installed the BitTorrent Sync Server package? In this case it depends, if you are running a default instance or you are running an instance based on a manually created configuration file. You will find all information you need in the initial posting.

  13. ....

    Ok I wasn't aware of this, and I'm not sure I understand it. What is the correct behavior when I e.g. add new shared folders, or change a configuration option in my config files? 

     

    The configuration file of BitTorrent Sync is a configuration initialisation facility and not a configuration storage facility. This creates a lot of misunderstandings. You can see it by trying the following:

     

    In the web UI you can change a lot of settings that are also configurable through the configuration file (like username, password, ports, pnp settings, etc.). As soon as you change them from the web UI, they become effective. If you restart BitTorrent Sync all settings will be overwritten from the configuration file. If you do not want this, you have to remove the settings from the configuration file. In this case, they will be taken from the internal storage of BitTorrent Sync. This is really confusing for the user. Basically this refers also to the shared folders: create a configuration file with shared folders. After the first run, remove the shared folders from the configuration file and activate the web UI. You will see that the shared folders are still there (since saved in the internal database) and that you can manage them from the web UI.

     

    The management of shared folders both from the web UI and from the configuration file would lead to an inconsistent representation, and for this reason the developers have disabled this possibility. (The only way to manage it in a consistent way would be to display the preconfigured folders from the configuration files in the web ui but to make then not manageable from there).

     

    You can see a typical consequence of such misunderstandings here.

  14. I seem to be running into an issue where I change my password through the internet browser UI but as soon as I reboot the RPI, the password gets reset to the old password I had previously.

     

    The configuration file overrides the web ui. If you change settings in the web UI, they will be stored in the internal storage of BitTorrent Sync. If you start BitTorrent Sync with a configuration file, all internal settings will be overwritten by the configuration file. If you want to change the password, define it into the configuration file. See this posting for more information.

  15. Firstly, thank you so much for putting these packages together!

     

    I've got sync up and running fine, but having issues with the web ui. Everything is running under a non-root user (called deploy). I'm using Ansible to deploy btsync so everything is automated.

     

    The webui simply doesn't load, every browser reports that it can't connect (multiple browsers, networks, clear caches, etc). When I do a manual install and use the default config, the webui works fine. 

    I've tried multiple ports and I'm definitely starting only one custom config I've made, so there are no port conflicts. Running with full logging (FFFF) gives me no errors. 

    Is there a separate log for the webui? How should I debug this?

     

    I'm running Ubuntu 12.04 on an AWS instance.

     

    You should find out if anything runs as expected. Check the processes and the listen ports:

     

    ps axu | grep btsyncnetstat -tlpe | grep btsync

     

    These two commands show you

    1. which btsync processes are running and under which user credentials
    2. which user processes are listening under which ports

    I'm quite sure, that you will find out, that the processes are not working as you think you configured them....

    ...

    I have removed that part from the config and it works fine and all but everytime it updates it creates a similar default config (so I have two almost identical configs running at the same time). Could you make it so that if the user doesn't want the webui he can opt out of it during dpkg-reconfigure?

    No, since it makes no sense (with a disabled web ui, debconf should be able to manage all folder shares). If you really want to have a very special custom configuration, with all shared directories defined in the configuration file, you have to do it manually. The reason for this, is that the configuration file method is not really deterministic (you can add an option, but if you remove it later, it stays still persistent since the configuration file is not the real configuration storage of btsync) and you have to understand the implications of working with a complex configuration file (and currently there is no architectural documentation available about this).

  16. Ladies and Gentlemen,

    and again I'm pleased to announce a new version:

     

    btsync-gui (0.8.3-1) unstable; urgency=low  * Made columns in "Folders" and "Devices" pane persistently sortable  * Hide unimplemented panes "Transfers" and "History"  * Added support for custom secrets (Closes #113)  * Implemented support for restore modified files in read-only folder    settings (Closes #127)  * Added passive support for encrypted secrets (Closes #129)  * Improved input field handling (Closes #130)  * Localisation improvements -- Leo Moll <leo.moll@yeasoft.com>  Thu, 24 Apr 2014 16:35:10 +0200
  17. By the way what i noticed during troubleshooting:

    When you install btsync for the first time, the 'configurator' asks just a few settings.

    After installing and you run dpkg-rconfigure, then it asks for all the settings.

    Just wondering if thats normal behavior.

     

    Yes - it is. During the first installation, the installer only ask the most important things in order to quickly get a running system. The options covered during the initial setup would probably satisfy 90%-95% of all installation requirements.