Page tree
Skip to end of metadata
Go to start of metadata


This how-to is intended to explain how a non-privileged user can mount a NAS share on our Helvetios' front-end using the SMB / CIFS protocols.


The explanation are given for the Helvetios cluster, as this is, at the moment, the only cluster where the necessary software is installed.
Please contact us at 1234@epfl.ch if you would need to use it in the other clusters.



Access to the cluster's front-end


ssh [USERNAME]@helvetios.epfl.ch


top


Preparing the environment

The tools used require a running dbus session, the recommended method is to start a shell with a dedicated session:

dbus-run-session -- bash

The session above needs to be running for the whole duration of any file transfers. For file operations lasting for longer times you can start the above inside a screen session.
It allows you to quit your session without killing the mount.

  • Open a screen session:

    screen -R [ANY_NAME]

    Ex:

    screen -R john_session
  • From your screen session, start the dbus  session as above:

    dbus-run-session -- bash


Mounting your share


Tips

Instead of typing the long command, such as smb://intranet\;[USERNAME]@[NAS_SERVER]/[SHARE_NAME], you can use a variable.

Ex:

MYSHARE="smb://intranet;[USERNAME]@[NAS_SERVER]/[SHARE_NAME]"
(warning) Without the backslash before the semicolon  " ; "

Note:
These are all case insensitive.



To mount your NAS share:

gio mount smb://intranet\;[USERNAME]@[NAS_SERVER]/[SHARE_NAME]

Ex:

gio mount smb://intranet\;john@vpsi1files.epfl.ch/scitas-ge



Or with the variable:

gio mount $MYSHARE





The information on your share can be found here  but these pages are not updated.

The NAS team is working to have a place where all these information will be available.


The other solution is to use the command-line:

smbclient -W INTRANET -U [USERNAME] -L [NAS_SERVER]

Ex:
smbclient -W INTRANET -U john -L vpsi1files.epfl.ch

Your will get a couple of share names. Try to find the appropriate one... .



top


Basic gio commands


To get a list of files

gio list smb://intranet\;[USERNAME]@[NAS_SERVER]/[SHARE_NAME]

To list files in a tree mode

gio tree smb://intranet\;[USERNAME]@[NAS_SERVER]/[SHARE_NAME]



To copy files

  • From the share:

    gio copy smb://intranet\;[USERNAME]@[NAS_SERVER]/[SHARE_NAME] [DESTINATION_PATH] 

    Ex:

    gio copy smb://intranet\;john@vpsi1files.epfl.ch/scitas-ge/Doc/my\ doc.txt /scratch/john/

    Note:
    In this example, the file to copy has a space in its name. That's why the space has to be backslashed (my\ doc.txt).


  • To the share:

    gio copy [YOUR_FILE] smb://intranet\;[USERNAME]@[NAS_SERVER]/[SHARE_NAME]/



To unmount your share

gio mount -u smb://intranet\;[USERNAME]@[NAS_SERVER]/[SHARE_NAME] 


Or, if you are using screen, simply quit the session:

exit (twice)



top


Direct access to your share

The gio mount command actually mounts your share to /run/user/[USERID]/gvfs/[MOUNT_DATA_DIR] .


Ex:

/run/user/123456/gvfs/smb-share:domain=intranet,server=files7.epfl.ch,share=data,user=john


Part of this path can be found thanks to the $XDG_RUNTIME_DIR variable:

echo $XDG_RUNTIME_DIR

/run/user/[YOUR_USERID]


But the preferred method is to use the gio's sub-commands instead.



top


Basic screen usage

To detach from your screen session:

CTRL-a d

To attach to you screen session:

screen -r [YOUR_SCREEN_NAME]

Ex:

screen -r john_session

To exit from your screen session:

exit (twice if you run the "dbus-run-session -- bash" command)



To get help (from screen session):

CTRL-a ?


top