The aim of this document is to introduce new users to the computing facilities available at the School of Computer Studies. The school maintains several servers (big hard disks) for the storage of software and user files, mostly serving:
Both of these are Unix systems, with high-resolution consoles supporting the X windows interface. While they can't share software, they can now share file server space. Ethernet connections allow remote logins, and remote display between consoles. Further, many of the machines now support the Internet communications protocols that allow you to communicate with a machine on the other side of the world as easily as with a machine in the next room.
The Suns and the Sgis can be remotely accessed from many of the text-based terminals to be found in the labs or in staff and postgraduate offices.
Staff and postgraduates (after consulting their supervisors) can obtain an account on the various computing facilities through support (see below). This means getting a slice of server space to keep your files, and a password to access it and the system software. Having an account (or username ) also allows you to send and recieve electronic mail, and to read news.
Undergraduates have their accounts arranged before they start here.
The Computer and Technical Services Group (a.k.a support) are responsible for running all the School's computers and networks. This includes the installation and maintenance of systems, applications and communications software and the installation and maintenance of all computer and network hardware.
Currently support consists of the following:
Mark Conmy Ian Eastwood David Harkess Steve Harris Jim Jackson Peter Jowett Savio Pirondini Marcia Pusey Simon Saunders
Reports of any and all perceived faults in software or hardware should be directed via electronic mail to ``support''. If this is not possible or the matter is urgent users are requested to telephone the machine room on extension 5488. In some cases there are notices placed near certain pieces of equipment e.g. the laserwriter in the Sun Lounge which indicate who should be contacted in the event of that device having a fault. It is wise not to assume that somebody else has already reported any given fault. All members of support read their email very frequently so responses and necessary action will usually be prompt, but sometimes they may have more important matters to deal with, and your problem may have to wait a little.
All fault reports and requests should always be directed at support and not to a specific member of staff even if the user thinks they know who will respond to their report or enquiry. This avoids messages lying unread for hours or even days.
Please note that support does not provide a programming advisory service. They deal with faults with the facilities, not the people who use them.
Once you've got your account(s), you can log in to one of the consoles. When you sit down at a machine, you will be greeted by the prompt:
login:
to which you type your username (followed by Return ). Now you type your password to the prompt: Password:
The Computer Manager will inform you of your initial password.
Your password will not be visible as you type it. The password is like the PIN number for a cash card- given that it is something only you should know, it confirms your identity as the owner of the account.
If you make a mistake entering your username or your password, the machine will respond with a message like Login Incorrect
and return to the Login: prompt for you to try again.
If you have not managed to log in after several careful attempts, seek assistance from support.
Once you have logged in for the first time, you should change your
password immediately. Type passwd
to a Unix prompt. You will be asked to type
your current password.
You will then be asked for the new password that you want to use, and then asked again for confirmation. Nothing that you type will be visible. If you make a mistake at any point, your password will not be changed.
Support currently supply the following advice on selecting a new password:
For example:
eg. Christmas becomes kryStmAs
eg. "On the first day of Christmas my true love sent to me" would become "OtfdoCmtlstm"
eg. backtofront becomes back2fr0Nt
You should change your password often.
The Unix shell is the ``Command Line Interface'' between Unix and the user --- i.e. you can type commands to it. A shell is what greets you when you log into a sun console or text terminal, and is what runs in a shell window under X (Xterm on the Suns, Winterm on the SGIs). You get a prompt like: csparc1
where ``csparc1'' is the name of the machine (computer science Sparc one). Programs are run by typing their name to this command line, the same as on a PC.
The shell can run ``script'' files (like batchfiles on a PC) which are a collection of Unix commands to be executed. Again, these are run by their name. Shell commands support programming constructs like loops and conditionals.
You'll need to know some basic shell commands to get very far here. New users can refer to any of the large number of introductory texts on Unix which can be borrowed from the University libarary or bought from a good bookshop.
Unix has excellent file maintainance facilities, supporting a heirarchical (branching) directory structure. Every user has their own ``home'' directory, where they start off when they log in: their own ``folder'' in which they can keep their files --- edited text and diagrams, program code, images, data and so on.
File maintenance is the business of creating, updating, using (and letting others use) and ultimately deleting files. To make this easier, users are encouraged to:
.txt
for text files, .jpg
for JPEG image files, and so on.
Support maintain a regular and secure backup service of all user and system files. If you've accidently deleted a file that you wanted to keep, mail support with precise precise details of filename(s), hostname and most importantly, the last known date that the file was intact and when it was last amended.
Unix allows you to specify who can read and write your files and directories, or run your programs. You can set these permissions for:
Undergraduate groups are sorted by course --- csx, dpy etc. On top of that, there are staff, operator (support) and postgraduate groups.
By default, nobody but you can look in
your directories --- this is for the sake of security. For the sake of
collaboration, you can set permissions with the Unix chmod
and umask
commands.
It's common to open your home directory for reading by others, and to put
anything private into sub-directories. Check the permissions you have set with
ls -l
.
The fileservers (the system hard disks) are not of inifinite capacity, and so everybody gets a limited portion, or quota, of server disk space for their own files. These quotas are nominally 4 MegaBytes.
You can overrun your quota, provided you remove the excess within seven days. You can exceed your quota by up to 1MB, at which point you (and any programs you run) will not be able to write anything more into your home directory.
To relieve the burden on the file servers, and keep you within your
quota, clear out unwanted files often. You can also compress files that you
need to keep on the server but don't use that often. If there are any files
that you want to keep, but don't need to hand, you can save them to 3.5 inch
Ms-dos compatible floppy disks. Remember that certain kinds of files can take
up a lot of space- images and sound files especially. Images can be compressed
with the Jpeg format supported by xv
.
If you find that for your work you need to keep more files on the servers than your disk quota will allow, discuss the matter with your supervisor or tutor, and direct any request for extra quota in the first instance to support.
You can find out how much disk quota you have left or how long you have left to get rid of any excess with: quota -v
X windows is a Graphical User Interface, that runs on Unix machines. It allows
for the display of graphics --- pictures (with programs like xv
), drawings (eg
xfig
) and the detailed, stylised text characters, fonts , needed for
document preparation (eg Showcase
, Xdvi
). Users may be familiar with other
GUIs, such as Windows , RISC-OS and NeXTStep . Novice users will have no trouble finding introductory texts in the library or a good bookshop.
User interaction with X is via a pointer, which the user moves about the screen using a mouse connected to the keyboard. The mouse has 3 buttons, which can be used to action events, depending on the pointer location. Programs written especially for X generally take advantage of the pointing and clicking nature of the interface with menus and ``pushbutton'' controls, rather than using typed commands. Usually, placing the pointer in a window gives it input focus --- ie, it will recieve keyboard input.
Under X, Programs run in ``windows'' graphical objects which can be moved,
resized, stacked on top of each other, reduced to an icon or quit (terminating
the program). All these operations are achieved by using the mouse. Perhaps
most important of these are shell windows --- Xterm
on the Suns, and Xwsh
on
the Sgis --- in which run Unix shells. Ideally, all the functionality you need
should be in X --- all the commands you need on menus, etc --- but in reality you
will want to run many Unix programs from the command line, especially file
handling commands (in the absence of a good X-based file manager). Further,
Unix text-based editors like vi or Emacs require a shell window in which to
run.
X allows programs to run side by side on the same screen --- for example, you
don't have to stop or quit a text editor to work out some figures, or to look
at a manual file --- programs like xcalc
and xman will share processor time
and screen space along with the editor. X also allows you to copy text from
one window and paste it into another, using the pointer --- a useful technique,
worth learning.
You will probably notice that some people have X set up in very different ways --- different window colours, different menu options, backdrops and so on. We are coming to that.
Unix and X, and by extension the programs running under them, use a number
of environment variables , which can be set by the user to create a useful
and pleasant working environment. These variables specify things like what
sort of terminal is being used ( +PRINTER)
to use by
default and so on. To display the current environment variable settings, use
the ``env'' command.
Environment variables (amongst other things) are usually set up for a
program by dotfiles in your home directory (type ls -a
and you'll see them).
Some software (like Khoros or Explorer ) requires additions or changes to the
dotfiles in order to run properly. User customisation of the working
environment is a matter of changing these dotfiles, but new users beware that
you can 'customise' your environment into working badly, or not at all, so
be
careful . The dotfiles that most people will be concerned with are:
.login - script run when the user logs in to a machine
.cshrc - script run when a new shell (eg an xterm) is created
.xinitrc (suns) - script run when X starts (run xmailtool etc)
.twmrc (suns) - used to define menus and key functions
.sgisession (SGIs) - script run when X starts (run xmailtool etc)
.chestrc (SGIs) - used to define menus
.4Dwmrc (SGIs) - used to define key functions
.Xdefaults - used to define the default styles (colours, fonts etc) that different X programs will use
.mailrc - customisations for the mail program
Much of the documentation that you'll ever need is on-line, ie actually stored
on the computers. Most software has a ``man'' (manual) page associated with it.
For instance, if you want to know more about vi
, a text editor, type to
Unix :
And in a moment, the first screenfull of the man page will be displayed, Hit Space to move on to the next page screenfull. If instead of hitting Space you hit / (slash) and then type in a word to look for, the page will skip down to the next occurrence of that word in the man page.
If you're unsure what software is available in the first place, you can use
the apropos
command to get a list of man pages for software that mentions a
certain keyword. Try, for example:
apropos image
There is also an X-based manual browser, xman
, which supports the apropos
facility. New users be warned, though, that man pages are often long and
technical.
The other main source of information is the new software review in the PGDOC
area. To access the information simple add the following line to your .cshrc
.
source pgdoc/bin/setup
Either source
the .cshrc
file or logout and log back in.
Now you may use the pgpage
command to access the documentation. Read
the introductory document for more details. If you are sitting in front
of an X terminal simply type:
pgpage introduction
Alternatively you may access the pgdoc documentation by using a hyper-text basedsystem. Simply type:
xmosaicand click on the PGDOC entry.
A lot of the available software has extensive built-in documentation. You're
also likely to come across README
text files, usually in directories
containing a piece or suite of software. You can view these with the more
command.
Remember --- if you're stuck, don't be afraid to ask someone. The news system is always good place to look for help. We have amongst the local newsgroups:
local.unix
local.X11
local.indigo
and more specialised groups, like local.khoros, to which you can post technical questions, and get the attention of many in-school experts. It is hoped that all the Usenet groups will soon be available, giving you access to a very large body of technical expertise. Many newsgroups compile an FAQ (Frequently Asked Questions list), which you can get hold of by various means.
Requests for information may also be directed to support --- but remember, they are not a programming advisory service.
The library has a well stocked Computer Science section, and many bookshops like Austicks (opposite the Parkinson building) keep many standard references in stock, or can order them for you.
There is some documentation of hardware and software held in the support office room 10.31a which is available on short term loan to staff and students. Most Ingres documentation, for example, is kept there.
The computer networking within the University allows remote logins between machines. If you want to use software on the Suns (say) and they're all being used, no problem. You can use an Sgi (say) as a display terminal. Just use rlogin (machine name)
You'll then be asked for your password on that machine. After that, you'll be using a shell running on the remote machine.
X is a client/server system. That is, one console can display (serve) an X
program (the client) running on a different machine. If you run an X program
on a machine that you are remotely logged-into, you need to make sure that the
environment variable DISPLAY
is pointing to the display of the console that
you are sitting at. This can be done automatically with small additions to
your dotfiles --- see:
~pgdoc/remote_display.setup.txt
Note that not all Sgi software can be displayed remotely --- some of it makes use of GL routines that are in the Sgi hardware.
It is possible to access your home directory on the Suns from the Sgis and vice versa (so you won't need to rlogin to use them). The home directory paths have the following structure: /home/system/username
where system
is
csun
for the SCS Suns
csgi
for the SCS SGI's
For example, if user nobby
is logged into an Sgi and wants list his Sun
home directory he'll use:
ll /home/csun/nobby
There are three types of printer available, accessible from any of the machines. In order to see up to date details of the printers available type printers on any School Sun or SG workstation.
Showcase
.
When you print a file, you need to specify which printer you want to use. For example when printing a text file, use:
lpr -Pprintername filename
Print jobs join a queue to await printing. You can view the printer queue with:
lpq -Pprintername filename
If you think better about printing something (eg you have inadvertently sent a program listing to a laser printer), you can look at the queue and remove the print job with:
lprm -Pprintername filename
Some print jobs can take a very long time --- for example, long PostScript files or images. Save printing these till out of office hours, if possible. Some large print jobs can even exceed the printers memory capacity and get rejected.
Be economical in your use of printing facilities, and restrict it to use
related to your course or research work --- support can introduce printing
quotas at the drop of a hat if need be. The large number of X terminals
available means that you can edit your masterpiece in detail and comfort --- be
it plain text in an A4 sized window, a Showcase document, LaTeX (with
xdvi ) or
PostScript (with xpsview
) --- before committing to paper.
The ``Sun Lounge'' on Level 9 currently contains one Sun4 console, one Sun3 console, and five SGI Indigo consoles, as well as 3 specialist Grasparc machines which have limited access. This lab is for the use of staff and postgraduates.
Computer Studies Room 10.31 (on Level 10, off Red Route in the Physics and Administration Building) is the main undergraduate facility. It contains 32 Sgi consoles, as well as nearly 30 text terminals from which the Suns, Sgis and UCS facilities can be accessed. The support offices are also located here.
Room 7.10 contains another 20 Sgi consoles. There are further machines in staff and postgraduate offices, and the seminar room, 7.10a. The arrangements as they stand are liable to change, so keep an eye on news for notification.
It is hoped to ensure undergraduate access to rooms 10.31 and 7.10 from 8am to 12pm, 7 days a week in term time and vacations.
Postgraduates and staff are issued with keys that will allow them access to any of the labs at anytime, as well as their own office. Please ensure that you do not leave any doors open or unlocked outside of office hours, otherwise access may have to be restricted to prevent the danger of theft.
Make best use of machine time and don't hog machines, especially when the labs are busy. So:
Also, don't eat or drink in the labs --- spillages can damage machines and your bank balance. Smoking is not allowed in any of the labs.
X runs all the time on the Sgis, so you don't have to bother running it yourself. The standard setup supplies you with a couple of shell windows, a clock and a menu (``chest'' of useful things, including ``Overview'' and ``Learn'' facilities, which novice users will find useful. Use this menu (sub-menu ``Windows'') to log out.
Microsoft Windows users should find the style of X that runs standardly on the Sgis very familiar. If you happen to prefer the style that runs on the Suns, you can set up your Sgi account to use it.
On the Sgis, time quotas for console use do exist. These are currently:
Undergraduates - 5 to 7 hours per week (to be decided)
Staff and PGs - unlimited
Currently, only normal office hours (9 to 5) are on a quota --- outside of these, console time is not counted. If you use up your quota, you won't be able to use an Sgi console in office hours till the start of the next week. This is to ensure that only essential use is made of the Sgis during peak hours when they can be over-subscribed.
Never hit the reset button on the Sgis --- it can corrupt the file store. If a console is playing up, mail support .
You will not be able to log into an Sgi console if you have not cleared any disk quota excess within the 7 day limit --- you will need to borrow a shell window from someone and remotely login as yourself to delete files in your area.
Once you have logged in, you will be greeted by an informational ``message of the day'', and after a few moments, a Unix prompt.
To be able to use X on the suns, you need to do some setting up. The procedure is outlined in
~pgdoc/SunX.setup.txt
Once this is done, you will not need to do it again. From now on, you can start X running by typing:
After a few moments, the screen will clear as programs start running under
X. A clock should appear, along with a mail tool and two shell windows ---
xterm
and console
.
With the standard setup, pressing the middle mouse button on the background
(``root window'' will give you a menu of X window programs you have running.
Pressing the right mouse button gives a menu of useful actions. From this
menu, you can run programs like shell windows, editors, a calculator and so
on. Use this menu to exit X --- note that this does not log you out: type
logout
afterwards to do this.
The Pgdoc Home page :