Create a new RSA|DSA key with no passphrase. *IT MUST HAVE THE DEFAULT KEY NAME (ie identity or id_dsa)*
ssh-keygen
Copy the new key to baconhouse:
scp ~/.ssh/< identity.pub | id_dsa.pub > < userid >@baconhouse.sackheads.org:~/.ssh/newpub
Sign onto baconhouse:
ssh < userid >@baconhouse.sackheads.org
Edit the new pubkey
cd .ssh
vi newpub
(RSA keys begin with 1024, DSA keys begin with ssh-dss)
Insert command="unison -server" at the begining of the key ie:
command="unison -server" 1024 35 < long encryption key > < userid >@< sourcehost >
command="unison -server" ssh-dss < really long encryption key > < userid >@< sourchehost >
Save and exit
cat the new key into either authorized_keys or authorized_keys2 (depending on RSA/DSA)
cat newpub >> authorized_keys
exit back to haybaler
ssh to baconhouse to insure unison will run (you should not be prompted for a passwd)
ssh < userid >@baconhouse.sackheads.org
output should read:
Unison 2.someversion
Create a .unison directory
mkdir ~/.unison
cd ~/.unison
Create a unison profile for sync'ing your home directory
vi home.prf
Insert the following:
# Unison configuration batch = true # Roots for synchronization root = /home/< userid > root = ssh://baconhouse.sackheads.org//home/< userid > # What to ignore (these are examples and *should* be modified) ignore = Path html/bin ignore = Path Mail/spam ignore = Path .ssh
More information can be found about usison at:
http://www.cis.upenn.edu/~bcpierce/unison/manual.html
Note on using unison and cron
On haybaler when executing a cronjob /usr/local/bin is not included in the path. Because of this unison will fail with a message stating that remoted connection has failed. In order to work around this create a shell script that adds /usr/local/bin to the path then runs unison.