<?xml version="1.0" encoding="utf-8"?><!DOCTYPE article  PUBLIC '-//OASIS//DTD DocBook XML V4.4//EN'  'http://www.docbook.org/xml/4.4/docbookx.dtd'><article><articleinfo><title>laptop</title><revhistory><revision><revnumber>76</revnumber><date>2021-10-04 11:52:13</date><authorinitials>OlafHauk</authorinitials></revision><revision><revnumber>75</revnumber><date>2020-01-31 14:46:04</date><authorinitials>OlafHauk</authorinitials></revision><revision><revnumber>74</revnumber><date>2019-04-09 09:35:46</date><authorinitials>JohanCarlin</authorinitials><revremark>Correct documentation</revremark></revision><revision><revnumber>73</revnumber><date>2018-02-15 15:01:03</date><authorinitials>JeffBerry</authorinitials></revision><revision><revnumber>72</revnumber><date>2018-02-14 13:57:18</date><authorinitials>JeffBerry</authorinitials></revision><revision><revnumber>71</revnumber><date>2018-02-14 13:55:26</date><authorinitials>JeffBerry</authorinitials></revision><revision><revnumber>70</revnumber><date>2017-03-06 12:10:40</date><authorinitials>OlafHauk</authorinitials></revision><revision><revnumber>69</revnumber><date>2017-02-07 11:06:55</date><authorinitials>OlafHauk</authorinitials></revision><revision><revnumber>68</revnumber><date>2017-02-07 11:06:35</date><authorinitials>OlafHauk</authorinitials></revision><revision><revnumber>67</revnumber><date>2016-04-11 10:29:31</date><authorinitials>TiborAuer</authorinitials></revision><revision><revnumber>66</revnumber><date>2016-04-11 10:29:18</date><authorinitials>TiborAuer</authorinitials></revision><revision><revnumber>65</revnumber><date>2016-04-11 10:28:38</date><authorinitials>TiborAuer</authorinitials></revision><revision><revnumber>64</revnumber><date>2016-03-01 15:29:47</date><authorinitials>TiborAuer</authorinitials></revision><revision><revnumber>63</revnumber><date>2016-03-01 15:29:25</date><authorinitials>TiborAuer</authorinitials></revision><revision><revnumber>62</revnumber><date>2016-03-01 15:28:06</date><authorinitials>TiborAuer</authorinitials></revision><revision><revnumber>61</revnumber><date>2016-03-01 15:26:31</date><authorinitials>TiborAuer</authorinitials></revision><revision><revnumber>60</revnumber><date>2016-03-01 15:24:48</date><authorinitials>TiborAuer</authorinitials></revision><revision><revnumber>59</revnumber><date>2016-03-01 15:24:22</date><authorinitials>TiborAuer</authorinitials></revision><revision><revnumber>58</revnumber><date>2016-03-01 15:22:29</date><authorinitials>TiborAuer</authorinitials></revision><revision><revnumber>57</revnumber><date>2016-03-01 15:21:36</date><authorinitials>TiborAuer</authorinitials></revision><revision><revnumber>56</revnumber><date>2016-03-01 15:21:09</date><authorinitials>TiborAuer</authorinitials></revision><revision><revnumber>55</revnumber><date>2016-03-01 15:20:58</date><authorinitials>TiborAuer</authorinitials></revision><revision><revnumber>54</revnumber><date>2016-03-01 15:20:43</date><authorinitials>TiborAuer</authorinitials></revision><revision><revnumber>53</revnumber><date>2016-03-01 15:20:06</date><authorinitials>TiborAuer</authorinitials></revision><revision><revnumber>52</revnumber><date>2016-03-01 15:12:22</date><authorinitials>TiborAuer</authorinitials></revision><revision><revnumber>51</revnumber><date>2016-03-01 15:05:36</date><authorinitials>TiborAuer</authorinitials></revision><revision><revnumber>50</revnumber><date>2016-03-01 14:53:22</date><authorinitials>RussellThompson</authorinitials></revision><revision><revnumber>49</revnumber><date>2016-03-01 14:52:44</date><authorinitials>RussellThompson</authorinitials></revision><revision><revnumber>48</revnumber><date>2016-03-01 14:51:37</date><authorinitials>RussellThompson</authorinitials></revision><revision><revnumber>47</revnumber><date>2016-03-01 14:47:24</date><authorinitials>RussellThompson</authorinitials></revision><revision><revnumber>46</revnumber><date>2016-03-01 14:36:58</date><authorinitials>TiborAuer</authorinitials></revision><revision><revnumber>45</revnumber><date>2016-03-01 14:35:42</date><authorinitials>RussellThompson</authorinitials></revision><revision><revnumber>44</revnumber><date>2016-03-01 14:26:15</date><authorinitials>RussellThompson</authorinitials></revision><revision><revnumber>43</revnumber><date>2016-03-01 14:25:18</date><authorinitials>TiborAuer</authorinitials></revision><revision><revnumber>42</revnumber><date>2014-04-30 10:06:05</date><authorinitials>TiborAuer</authorinitials></revision><revision><revnumber>41</revnumber><date>2014-04-30 10:05:33</date><authorinitials>TiborAuer</authorinitials></revision><revision><revnumber>40</revnumber><date>2014-04-30 10:03:56</date><authorinitials>TiborAuer</authorinitials></revision><revision><revnumber>39</revnumber><date>2014-04-30 10:02:27</date><authorinitials>TiborAuer</authorinitials></revision><revision><revnumber>38</revnumber><date>2014-04-30 10:00:21</date><authorinitials>TiborAuer</authorinitials></revision><revision><revnumber>37</revnumber><date>2014-04-30 09:59:49</date><authorinitials>TiborAuer</authorinitials></revision><revision><revnumber>36</revnumber><date>2014-04-30 09:57:17</date><authorinitials>TiborAuer</authorinitials></revision><revision><revnumber>35</revnumber><date>2014-04-30 09:56:25</date><authorinitials>TiborAuer</authorinitials></revision><revision><revnumber>34</revnumber><date>2014-04-30 09:56:03</date><authorinitials>TiborAuer</authorinitials></revision><revision><revnumber>33</revnumber><date>2014-04-30 09:55:05</date><authorinitials>TiborAuer</authorinitials></revision><revision><revnumber>32</revnumber><date>2014-04-30 09:54:29</date><authorinitials>TiborAuer</authorinitials></revision><revision><revnumber>31</revnumber><date>2014-04-30 09:53:40</date><authorinitials>TiborAuer</authorinitials></revision><revision><revnumber>30</revnumber><date>2014-04-30 09:53:23</date><authorinitials>TiborAuer</authorinitials></revision><revision><revnumber>29</revnumber><date>2014-04-30 09:51:45</date><authorinitials>TiborAuer</authorinitials></revision><revision><revnumber>28</revnumber><date>2014-04-30 09:51:39</date><authorinitials>TiborAuer</authorinitials></revision><revision><revnumber>27</revnumber><date>2014-04-30 09:51:27</date><authorinitials>TiborAuer</authorinitials></revision><revision><revnumber>26</revnumber><date>2014-04-30 09:51:19</date><authorinitials>TiborAuer</authorinitials></revision><revision><revnumber>25</revnumber><date>2014-04-30 09:51:09</date><authorinitials>TiborAuer</authorinitials></revision><revision><revnumber>24</revnumber><date>2014-04-30 09:50:51</date><authorinitials>TiborAuer</authorinitials></revision><revision><revnumber>23</revnumber><date>2014-04-30 09:50:35</date><authorinitials>TiborAuer</authorinitials></revision><revision><revnumber>22</revnumber><date>2014-04-30 09:47:57</date><authorinitials>TiborAuer</authorinitials></revision><revision><revnumber>21</revnumber><date>2014-04-30 09:47:42</date><authorinitials>TiborAuer</authorinitials></revision><revision><revnumber>20</revnumber><date>2014-04-30 09:47:31</date><authorinitials>TiborAuer</authorinitials></revision><revision><revnumber>19</revnumber><date>2014-04-30 09:47:11</date><authorinitials>TiborAuer</authorinitials></revision><revision><revnumber>18</revnumber><date>2014-04-30 09:47:00</date><authorinitials>TiborAuer</authorinitials></revision><revision><revnumber>17</revnumber><date>2014-04-30 09:46:35</date><authorinitials>TiborAuer</authorinitials></revision><revision><revnumber>16</revnumber><date>2014-04-30 09:46:17</date><authorinitials>TiborAuer</authorinitials></revision><revision><revnumber>15</revnumber><date>2014-04-30 09:44:46</date><authorinitials>TiborAuer</authorinitials></revision><revision><revnumber>14</revnumber><date>2014-04-30 09:42:55</date><authorinitials>TiborAuer</authorinitials></revision><revision><revnumber>13</revnumber><date>2014-04-30 09:42:44</date><authorinitials>TiborAuer</authorinitials></revision><revision><revnumber>12</revnumber><date>2014-04-30 09:41:48</date><authorinitials>TiborAuer</authorinitials></revision><revision><revnumber>11</revnumber><date>2014-04-30 09:41:04</date><authorinitials>TiborAuer</authorinitials></revision><revision><revnumber>10</revnumber><date>2014-04-30 09:40:47</date><authorinitials>TiborAuer</authorinitials></revision><revision><revnumber>9</revnumber><date>2014-04-30 09:38:29</date><authorinitials>TiborAuer</authorinitials></revision><revision><revnumber>8</revnumber><date>2014-04-30 09:38:15</date><authorinitials>TiborAuer</authorinitials></revision><revision><revnumber>7</revnumber><date>2014-04-30 09:37:51</date><authorinitials>TiborAuer</authorinitials></revision><revision><revnumber>6</revnumber><date>2014-04-30 09:37:41</date><authorinitials>TiborAuer</authorinitials></revision><revision><revnumber>5</revnumber><date>2014-04-30 09:37:27</date><authorinitials>TiborAuer</authorinitials></revision><revision><revnumber>4</revnumber><date>2014-04-30 09:36:29</date><authorinitials>TiborAuer</authorinitials></revision><revision><revnumber>3</revnumber><date>2014-04-30 09:35:33</date><authorinitials>TiborAuer</authorinitials></revision><revision><revnumber>2</revnumber><date>2014-04-30 09:33:21</date><authorinitials>TiborAuer</authorinitials></revision><revision><revnumber>1</revnumber><date>2014-04-30 09:32:06</date><authorinitials>TiborAuer</authorinitials></revision></revhistory></articleinfo><section><title>Training laptops</title><para>General documentation on using the training laptops can be found on the <ulink url="http://intranet.mrc-cbu.cam.ac.uk/computing/training">intranet</ulink>. </para><section><title>Training User Accounts and Connections</title><para>XX – laptop number </para><itemizedlist><listitem><para>Switch on the laptop and log in as: </para></listitem><listitem override="none"><para>Username: trainXXuser </para></listitem><listitem override="none"><para>Password: ******** (available from your trainer, <ulink url="https://lsr-wiki-01.mrc-cbu.cam.ac.uk/methods/laptop/methods/JohanCarlin#">JohanCarlin</ulink>, <ulink url="https://lsr-wiki-01.mrc-cbu.cam.ac.uk/methods/laptop/methods/OlafHauk#">OlafHauk</ulink>, or IT) </para></listitem></itemizedlist><section><title>For existing VNC sessions</title><para>For many classes, VNC sessions should already be running for each account.  If this is the case: </para><itemizedlist><listitem><para>Connect to it using a VNC viewer (e.g. TurboVNC is preferred but UltraVNC will do, too). </para><itemizedlist><listitem><para>The server you need to connect to will be loginXX, if XX &gt; 10, or XX+10 if XX&lt;11.  e.g. train01linux will have a vncserver on login11, train12linux will connect to login12. </para></listitem><listitem><para>If connecting to the login gpu nodes, 01-04 use login-gpu02, 05-08 use login-gpu03, 09-12 use login-gpu04, and 13-15 use login-gpu05 </para><itemizedlist><listitem><para>NB both schemes may be replaced soon with a simpler one. (14/02/18) </para></listitem></itemizedlist></listitem><listitem><para>The VNC display number (sometimes called desktop number) should be 70+XX. </para></listitem></itemizedlist></listitem><listitem override="none"><para>e.g for train02 - login12:52, for train13 - login13:63 </para></listitem><listitem override="none"><para>Password: ******** (available from your trainer, Tibor, Olaf or IT) </para></listitem></itemizedlist></section><section><title>To Create New VNC Sessions</title><para>* Use PuTTY to connect to one of the login nodes. You can use 'login' as the host name, or use the name of a specific login node (currently login11 - login26): </para><caution><para><emphasis role="strong">Host:</emphasis> On some of the laptops, gateway (gate.mrc-cbu.cam.ac.uk) may be set as default connection. Make sure, that you do not use it, because it is slower! </para></caution><itemizedlist><listitem override="none"><para>Username: trainXXlinux </para></listitem><listitem override="none"><para>Password: ******** </para></listitem></itemizedlist><itemizedlist><listitem><para>To check for currently running servers, type: </para></listitem></itemizedlist><itemizedlist><listitem override="none"><para><code>showallvncs</code> </para></listitem></itemizedlist><para> If a vnc server is not already running, you can start one using: </para><itemizedlist><listitem override="none"><para><code>vncstart</code> </para></listitem></itemizedlist><para> Connect as above, using the login node and display provided by the vncserver. </para></section></section><section><title>How to Configure The Environment</title><para>The preferred method for configuring the environment for the training accounts is the vnc_setup.py script (/imaging/local/linux/config/bin/vnc_setup.py). </para><screen><![CDATA[vnc_setup.py --help
Usage:  vnc_setup.py [-V | -h | --help] [-d <directory>] [-g] [-s]  kill | clean | purge | passwd | startvnc | setupvnc | showvncs | synch
This script must be run with root privilege directly or via sudo.
]]><![CDATA[
]]><![CDATA[
        Major Operations are:
kill - find any running vnc sessions and kill them
clean - scrub pidfiles, log files, passwords from the .vnc directory
purge - kill and clean
passwd - copy standard passwords into each users account
startvnc - start a vncserver on the login node which matches the trainee number
         (or trainee number +10 for trainee 1-10 since login01-10 are unavailable)
        with a display of 50+trainee number
setupvnc - pass and startvnc
synch - synch materials to training account directories from the <directory> given with -d
]]><![CDATA[
        -V                       Print version
        -s                       Start all vncs on the node on which the script is run.
                                         Only valid with setupvnc or startvnc.
        -g                       Start all vncs on gpu node(s).
                                         Only valid with purge, setupvnc, or startvnc.
        -h                       Print short help.
        --help                   Print long help.
        -d <directory>           Source directory for synch.
                                 Only valid with synch, if absent will attemtp to find a file from
                                 /imaging/local/linux/config/train.login]]></screen><itemizedlist><listitem><para>The materials specific with -d &lt;&gt; must be world-readable and -writable, e.g. located in <emphasis role="strong">/imaging/training/materials</emphasis>. </para></listitem><listitem><para>The script needs to be run as root or via sudo. <ulink url="https://lsr-wiki-01.mrc-cbu.cam.ac.uk/methods/laptop/methods/OlafHauk#">OlafHauk</ulink>, or IT have appropriate permissions. </para></listitem><listitem><para>The usual method of resetting all the accounts is (assuming sudo is needed and the script is in your PATH: </para></listitem></itemizedlist><screen><![CDATA[sudo vnc_setup.py purge
sudo vnc_setup.py setupvnc
sudo vnc_setup.py -d <directory to be synced> synch]]></screen><para>Note: The to-be-synched directory should only contain letters and numbers. </para><para>This should empty the training accounts' imaging spaces, kill old vncservers, start new ones, and rsync the source directory (which will recursively include subdirectories)into the imaging spaces. </para></section><section><title>Command-line shortcuts (aliases)</title><para>set in <code>/imaging/local/linux/config/train.chsrc</code> </para><itemizedlist><listitem><para><code>cdw</code>: change directory for Workshop folder of the current user (<code>/imaging/trainXXlinux/Workshop</code>) </para></listitem><listitem><para><code>matlab</code>: Launch Matlab R2012b (required for aa) </para></listitem><listitem><para><code>vncstart</code>: Open the designated VNC server with the optimal resolution (N.B. <code>vncserver</code> is shadowed by an alias with the same name pointing to <code>showallvncs</code> to avoid &quot;unwanted&quot; VNC sessions. Would you even need to use <code>vncserver</code>, you can call it with its full path: <code>/hpc-software/bin/vncserver</code>) </para></listitem><listitem><para><code>vnckill</code>: Close the designated VNC server </para></listitem></itemizedlist></section><section><title>Below this point is the old, deprecated method.  (14/02/18)</title><para>Here, some more specific instructions about how to set up them for a hands-on session can be found: </para><section><title>Setup</title><para>XX – laptop number </para><itemizedlist><listitem><para>Switch on the laptop and log in as: </para></listitem><listitem override="none"><para>Username: trainXXuser </para></listitem><listitem override="none"><para>Password: ******** (available from your trainer, <ulink url="https://lsr-wiki-01.mrc-cbu.cam.ac.uk/methods/laptop/methods/JohanCarlin#">JohanCarlin</ulink>, <ulink url="https://lsr-wiki-01.mrc-cbu.cam.ac.uk/methods/laptop/methods/OlafHauk#">OlafHauk</ulink>, or IT) </para></listitem></itemizedlist><itemizedlist><listitem><para>Use PuTTY to connect to one of the login nodes. You can use 'login' as the host name, or use the name of a specific login node (login01 to login22): </para></listitem></itemizedlist><caution><para><emphasis role="strong">Host:</emphasis> On some of the laptops, gateway (gate.mrc-cbu.cam.ac.uk) may be set as default connection. Make sure, that you do not use it, because it is slower! </para></caution><itemizedlist><listitem override="none"><para>Username: trainXXlinux </para></listitem><listitem override="none"><para>Password: ******** (available from your trainer, <ulink url="https://lsr-wiki-01.mrc-cbu.cam.ac.uk/methods/laptop/methods/TiborAuer#">e.g. JohanCarlin</ulink>, <ulink url="https://lsr-wiki-01.mrc-cbu.cam.ac.uk/methods/laptop/methods/OlafHauk#">OlafHauk</ulink> or IT) It may take a while to synchronise Materials (see <link linkend="MATERIALS">below</link>) </para></listitem></itemizedlist><itemizedlist><listitem><para>A VNC server should already be running for the training account. To check, type: </para></listitem></itemizedlist><itemizedlist><listitem override="none"><para><code>showallvncs</code> </para></listitem></itemizedlist><itemizedlist><listitem override="none"><para>The output should show you that a vncserver is running on the login node that matches the number of username, e.g. train01linux will have a vncserver on login01, etc. The vnc desktop number should be 51 in all cases. If a vnc server is not already running, you can start one using: </para></listitem></itemizedlist><itemizedlist><listitem override="none"><para><code>vncstart</code> </para></listitem></itemizedlist><itemizedlist><listitem><para>Once your VNC server is running, connect to it using a VNC viewer (e.g. TurboVNC is preferred but UltraVNC will do, too). The server you need to connect to will be running on the login node that matches the number in your username, e.g. train01linux will have a vncserver on login01, etc. The vnc desktop number should be 51 in all cases. </para></listitem><listitem override="none"><para>VNC server: loginXX:51 (e.g. login01:51 for train01 on login01, login08:51 for train08 on login08) </para></listitem><listitem override="none"><para>Password: ******** (available from your trainer, Tibor, Olaf or IT) </para></listitem></itemizedlist></section><section><title>Central settings</title><itemizedlist><listitem><para><code>/imaging/local/linux/config/train.login</code> (executed during login via PuTTY) </para></listitem><listitem><para><code>/imaging/local/linux/config/train.chsrc</code> (executed during opening a shell) </para></listitem></itemizedlist><para>serve as central setting for all training account. If you want to add some settings (e.g. configuration for programs), you can do it here. </para><section><title>Command-line shortcuts (aliases)</title><para>set in <code>/imaging/local/linux/config/train.chsrc</code> </para><itemizedlist><listitem><para><code>cdw</code>: change directory for Workshop folder of the current user (<code>/imaging/trainXXlinux/Workshop</code>) </para></listitem><listitem><para><code>matlab</code>: Launch Matlab R2012b (required for aa) </para></listitem><listitem><para><code>vncstart</code>: Open the designated VNC server with the optimal resolution (N.B. <code>vncserver</code> is shadowed by an alias with the same name pointing to <code>showallvncs</code> to avoid &quot;unwanted&quot; VNC sessions. Would you even need to use <code>vncserver</code>, you can call it with its full path: <code>/hpc-software/bin/vncserver</code>) </para></listitem><listitem><para><code>vnckill</code>: Close the designated VNC server </para></listitem></itemizedlist></section><section><title>Materials</title><para><anchor id="MATERIALS"/>set in <code>/imaging/local/linux/config/train.login</code> </para><para>The <emphasis>Material</emphasis> folder (<code>/imaging/trainXXlinux/Workshop/Material</code>) is synchronized automatically with any folder of your choosing (I recommend using folder name <emphasis>Material</emphasis> to be consistent). The <emphasis>SOURCE</emphasis> folder can be set in  <code>/imaging/local/linux/config/train.login</code> (line 1). </para></section><section><title>Preparation</title><para>You can synchronise your material from any VNC session (i.e. you don't need the physical laptop). </para><para>ssh trainXXlinux@loginXX will start the synchronisation (if enabled in train.login, see above). </para></section></section></section></section></article>