• Stars
    star
    853
  • Rank 53,438 (Top 2 %)
  • Language
    Shell
  • License
    BSD 3-Clause "New...
  • Created about 14 years ago
  • Updated almost 2 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

lipsync sets up a lightweight service that provides command-line, Dropbox like syncing

lipsync

A lightweight service that provides automated file synchronization between multiple hosts.

lipsync is an open source, lightweight service that provides automated two-way, {Dropbox}[http://bit.ly/1IGiJu]-like file synchronization in Linux by utilizing OpenSSH, rsync, and lsyncd. lipsync is a realization of a popular blog post of mine named HOWTO build your own open source Dropbox clone. Since I made the posting I’ve received a great deal of interest, and had time to test and architect a workable solution. Thanks to everyone that read, commented and encouraged the further development of this idea!

The basic idea and example of a working system can be seen .

Features

  • automatic file synchronization from multiple clients to a central server

  • two way syncing with changes tracked and propagated to the clients by the server (Dropbox style)

  • transfers secured and tunneled through OpenSSH

  • safe for everyday use

  • low fat

Dependencies

To get started with lipsync you need at least a client and a server, preferably on multiple systems. Software requirements:

  • Server - Linux 2.6.x, rsync (client), opensshd (server)

  • Client - Linux 2.6.x, rsync (client), openssh (client), lsyncd

Mailing list

The mailing list for the lipsync project is hosted on Google Groups, signup here.

Getting started

git clone [email protected]:philcryer/lipsync.git
cd lipsync
chmod +x install.sh
./install.sh

After that, see the docs/INSTALL file or online, INSTALL for full documentation.

Caveats

Much of the initial feedback I received asked for a graphical user interface and support for Windows. Please know that I have attempted neither, instead deciding to focus on the basic server-side functionality. This allowed me to flesh out the architecture, deciding on all the options and understanding ways to improve the transfer performance. Since most of the software used for lipsync is cross-platform, I’d be interested in working with others that want to build a gui front end to talk to the the lipsync backend service. I’ve been interested in the work done on the SparkleShare project, and since it can use different backends I’m hopeful that it will be agnostic enough to adapt to use lipsync.

License

lipsync is licensed as open source software under the Simplified BSD License See the accompanying LICENSE file for full details

Copyright © 2011, Phil Cryer All rights reserved.

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. Neither the name of the Phil Cryer nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS “AS IS” AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

Authors / Contact

phil (at) cryer (dot) us

Download

You can download this project in either zip or tar formats.

Or simply clone the project with Git by running:

git clone git://github.com/philcryer/lipsync

Thanks

More Repositories

1

wpa2own

Use hashcat to crack WPA2 PSK (Pre-Shared Key) passwords!
Shell
69
star
2

nginx-globals

Consolidating common, repeatable, secure nginx configs in a globals directory to standardize and simplify the locking down of nginx based webservers.
Shell
42
star
3

base-secure

base-secure? you tell me
Shell
39
star
4

prickly-pete

A script using Docker to quickly bring up some honeypots exposing lots of services. For research, reconnaissance, and fun. (DISCLAIMER may not be fun, not to be taken internally, aim away from face)
Shell
35
star
5

thinkpad-x220

Discoveries focused on running Linux, and other open source operating systems, on the Lenovo ThinkPad x220.
Shell
19
star
6

stax

Create stacks (aka stax) on AWS (Amazon Web Services) in a private VPC (Virtual Private Cloud) with failover NAT nodes proxying network traffic to elastic CoreOS clusters running Docker.
Shell
17
star
7

kontrola

A script that uses nmap to sweep a subnet looking for ports with SSL certs, then querying those certs to discover upcoming expiration dates.
JavaScript
10
star
8

randota

randota = randomize twitter avatar = randomize a user's Twitter avatar from the commandline
Python
6
star
9

fak3r.com

This repository contains the source code for my long running blog, fak3r, since 2005.
CSS
6
star
10

ca-harvester

A Bash script that creates a random CloudApp short URL (ie http://cl.ly/xxxx), checks that URL and if it finds content it, downloads it. Rinses, and repeats.
Shell
5
star
11

dotfiles

My configs, dotfile, and some handy-dandy one liners. Auto distributed via philcryer/basejump
Shell
4
star
12

get_djatoka

This script downloads, installs and configures the latest version of the djatoka, the open source image server with support for jpeg2000.
Shell
3
star
13

phasebook

A script to automate the retrieving of public data in JSON using Facebook's Graph API and deposing them into CouchDB
Shell
3
star
14

basejump

Basejump helps automate the setup of apps, dotfiles, configs, and one-liners in Linux/macOS. It could help you too! (DISCLAIMER it might not)
Shell
3
star
15

lowf.at

If you don't know I'm not going to tell you.
HTML
2
star
16

htop-cookbook

A Chef cookbook for htop
Ruby
2
star
17

quotes

Because sometimes giggling at work is the best you can do.
2
star
18

ia_scripts

Scripts to download, query and test files at Internet Archive, and then check those files into Fedora-commons digital repository.
Shell
2
star
19

checkers

checks the availability of websites and APIs, providing notification alerts via OSD (Notify OSD, growl) and voice (eSpeak, say). For Linux and Mac OS X
Shell
2
star
20

blackgate

privacy and anonymity for everyone
Shell
1
star
21

smoketests

Some simple smoketests that can be run by Ansible to verify a site is loading.
1
star
22

recruiter-replies

A static one page website that includes canned recruiter replies to make your life easier.
HTML
1
star
23

gitting-started

This is a git tutorial I created for co-workers who are migrating to git, but I made it generic enough for anyone to learn git. I assume the reader has a general idea of software version control practices, but little to no git knowledge. Examples are designed to be worked through during the presentation, so play along at home, won't you?
1
star
24

onstar

A study looking at the specifics of OnStar (and competing products) data gathering, transmission and storing procedures. What do they collect; how do they handle/protect the data they save; what *can* they do with user data? After this, we'll have a feasibility study to see if we want to make a talk out of this for infosec/privacy cons.
1
star