Setting up your Environment

The default login shell is set to bash.
The basic settings such as PATH are automatically loaded. To create the individual’s startup file, prepare a shell such as .bashrc(for bash).

Please note that the following content in the default .bashrc mustn't be deleted since that is needed to set the path of qsub and so on.

# Source global definitions
if [ -f /etc/bashrc ]; then
        . /etc/bashrc
fi

You can change a login shell using the chsh command.

When changing to the tc shell, enter the command as follows and log in again.
It will take up to 10 minutes to change the login shell.

$ chsh tcsh

To execute startup commands only on a particular system, make a conditional statement that switches according to the result of the hostname command, as shown below.

case `hostname` in
    xe*)
        #Processing for system A
    ;;
    ap*)
        #Processing for system B and C
    ;;
esac

switch(`hostname`)
    case xe*:
        #Processing for system A
        breaksw
    case ap*:
        #Processing for system B and C
        breaksw
endsw

Environment modules system can set groups of environment settings that are required for using compilers, libraries, and applications. For details, see Modules .

Notification emails including an error notification of PBS or LSF are sent to your local email address of system A, B, C and E.
These messages can be viewed using the mutt command, but we suggest making a .forward file in a home directory for transferring emails to your email address that you check often and promptly checking them.

## Setting up to transfer email to foo@example.com.
$ echo "foo@example.com" > ~/.forward

The command outputs and the compiler messages can be displayed in Japanese, by setting the LANG variable to ja_JP.UTF-8 . And also set the character code of as SSH client to UTF-8 .

## Setting environment variable LANG (for tcsh)
$ setenv LANG  ja_JP.UTF-8
## Setting environment variable LANG (for bash)
$ export LANG=ja_JP.UTF-8
## Displaying the man command in Japanese
$ man man
man(1)                                                                  man(1)
名前
       man - オンラインマニュアルページを整形し表示する。
       manpath - ユーザー個々のマニュアルページの検索パスを決める。
書式
       man  [-adfhktwW]  [-m  system]  [-p string] [-C config_file] [-M path] [-P
       pager] [-S section_list] [section] name ...

A key authentication method is required to access to another system or a login node within the system. After generating a key pair as the following steps, please add the key pair to the list for logging in.

$ ssh-keygen -t rsa -b 2048  #(1)
Generating public/private rsa key pair. 
Enter file in which to save the key (/home/b/b59999/.ssh/id_rsa):  #(2)
Enter passphrase (empty for no passphrase): #(3)
Enter same passphrase again: #(4)
Your identification has been saved in /home/b/b59999/.ssh/id_rsa.
Your public key has been saved in /home/b/b59999/.ssh/id_rsa.pub.
The key fingerprint is:
12:34:56:78:2f:69:82:36:e5:01:99:50:06:6b:99:ff b59999@ap-0001
The key's randomart image is:
+--[ RSA 2048]----+
|    *.o          |
|     *           |
|    o   o        |
|   . o . +       |
|      o S = .    |
|       V * . +   |
|        * . = .  |
|       + * - +   |
|            S++  |
+-----------------+
$ cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys  #(5)

(1) Generate a 2048 bit key for RSA version 2.RSA.
(2) Enter a file name. By default, ~/.ssh/id_rsa appears. If you accept the default setting, leave it and click Enter.
(3) Enter a passphrase.
(4) Enter same passphrase again.
(5) Add the public key to a file that specifies the list of key for logging in.

You can schedule the server to perform tasks automatically using cron.

Login nodes that allow you to set cron of a whole are camphor1 in system A, laurel1 in system B and C. Before logging in to the login node that allows to set cron, you need to generate a key pair for SSH within the system.

## Logging in to the champhor1 that allows to set up cron.
$ ssh camphor1.kudpc.kyoto-u.ac.jp
## Confirm the cron settings.
$ crontab -l
## Setting up cron (seup editor opens).
$ crontab -e

The process limit of login node is set as below. You can exceed it as necessary.

Item Initial Value Maximum Value
CPU Time 4 hours 24 hours
Memory Size (virtual memory) 8GB 12GB

The bash users can check the settings and exceed the limit value using the ulimit command.

$ ulimit -a
...
cpu time               (seconds, -t) 14400
...
virtual memory          (kbytes, -v) 8388608
...

$ ulimit -v 4194304  # Exceeding to the maximum value of memory size.
$ ulimit -t 86400    # Exceeding to the maximum value of CPU time.
$ ulimit -a          # Checking

cpu time               (seconds, -t) 86400
...
virtual memory          (kbytes, -v) 12582912
...

The tcsh users can check the settings and exceed the limit value using the limit command and the unlimit command.

$ limit
cputime      4:00:00
...
vmemoryuse   8388608 kbytes
...

$ unlimit  # exceeding
$ limit    # checking
cputime      24:00:00
...
vmemoryuse   12582912 kbytes
...


Copyright © Academic Center for Computing and Media Studies, Kyoto University, All Rights Reserved.