Keep a link
From mn/geo/geoit
Revision as of 15:43, 13 October 2015 by Johnbur@uio.no (talk | contribs)
# .bash_profile for hycamp group # The purpose of this file is to enable # sshfs mounting of a directory that # contains your bash customizations so # that the directory may be kept consistent # across machines in the network # # This file should live in your $HOME # and assumes you have a symlink to your # customized bashrc file as defined by # the bashfile variable below. # # johnbur 15.07.03 bashfile=$HOME/.mnts/net/nunatak/mn/nunatak/hycamp/team/$USER/dot/bashrc
The variables `$bashfile` will be setup in this script and later 'sourced' as you log in.
# generate a .display file (used as a trick for screen sessions) echo "export DISPLAY=$DISPLAY" > .display.`whoami`.`hostname`
The line above is just a 'trick' that is explained here
Below is the key to setting up the symlink to the mounted directory in your home area.
# A test to see whether we've already mounted the sverdrup net # /etc/mtab is a file on linux machines that keeps a record of what file mounts have been # made. We look for our directory in that file and call that 'mounted' to see if it exists already net="$HOME/.mnts/net" mounted=`cat /etc/mtab | grep $net | awk '{print $2}'` # if it exists, then we just say so and exit if [ "$net" == "$mounted" ]; then echo "Sverdrup mount exists" else # if not, then we do some work to mount it with sshfs #/net # first, make sure our mountpoint (the directory where we'll create the mount) exists, if not create it if [ ! -d $net ]; then mkdir $net fi # then mount the remote directory to your mountpoint sshfs -o IdentityFile=~/.ssh/id_rsa $USER@sverdrup:/net $net fi if [ -n "$BASH_VERSION" ]; then # include .bashrc if it exists # my .bashrc file is actually sourced # from a file called bashrc in .dot # folder (which is symlinked to our # team network share) # if [ -f $bashfile ]; then . $bashfile fi fi