Thursday Extra: "The Future of MathLAN"

On Thursday, February 23, John Stone, Manager of the Mathematics Local-Area Network, will present a concise account of the history, present status, and possible future directions for MathLAN.

At 4:00 p.m., refreshments will be served in the Computer Science Commons, Noyce 3817. The talk, “The Future of MathLAN,” will begin at 4:15 p.m. in Noyce 3821. Everyone is welcome to attend!

Thursday Extra: "Sudo Open Sesame"

On Thursday, September 11, Ajuna Kyaruzi 2017 will describe her experiences as an assistant system administrator for MathLAN last summer.

Refreshments will be served at 4:15 p.m. in the Computer Science Commons (Noyce 3817). The talk, “Sudo Open Sesame: My Summer as an Assistant GNU/Linux System Administrator,” will follow at 4:30 p.m. in Noyce 3821. Everyone is welcome to attend!

Thursday Extra: "MathLAN system administration"

On Thursday, October 3, Adam Arsenault 2016, Jordan Yuan 2015, and Shaun Mataire 2016 will describe their summer work in MathLAN system administration:

Over the summer, we pursued a series of projects relevant to the general maintenance of a GNU/Linux network:

  • configuring Puppet, an open source configuration management tool, which provided a way of centralizing package management and system configuration on all the machines in the network;
  • creating and maintaining a way of installing Debian over the network to the machines in MathLAN, which dramatically sped up installation times; and
  • researching new programs which would be beneficial to our end users, both the novices and the power users, and refreshing the list of system applications.

Refreshments will be served at 4:15 p.m. in the Computer Science Commons (Noyce 3817). The talk, “MathLAN system administration,” will follow at 4:30 p.m. in Noyce 3821. Everyone is welcome to attend!


At times, you will want to access MathLAN programs from your own computer. For example, students in CSC 151 might want to use GIMP and DrRacket and students in CSC 207 might want to use the MathLAN version of Eclipse. One way to access the MathLAN is to use VNC, or Virtual Network Computing. Unfortunately, VNC isn't quite as straightforward as we'd hope, but with some practice, you can get it working. To use VNC, you need to set up a server on a MathLAN machine and a client on your own machine.

These are very rough instructions for using VNC. Expect to see updates as time progresses.

Warning! If you're not careful with VNC, you'll leave things running on various MathLAN machines and make life more difficult for everyone, including yourself. Make sure to clean up after yourself.

VNC Clients

In order to use VNC you'll need a VNC client program.

There are a variety of free VNC clients for the Mac. Sam Rebelsky uses VNC Viewer from RealVNC. Jerod Weinman uses Chicken of the VNC (he hasn't tried its successor, Chicken). There's even a built-in one on the Mac, but none of us have used it much.

The members of the department don't tend to use Microsoft Windows. VNC Viewer from RealVNC, which Sam Rebelsky uses on the Mac, is also available on Windows. Some students have reported success in using it.

Preparatory Work

To start and stop the VNC server, you'll need a way to connect to the MathLAN. Ssh, the secure shell, is the recommended program. If you have a Mac or Linux workstation, ssh is installed by default. If you use Windows, you will probably need to obtain puTTY or some equivalent.

Setting up a VNC Server on MathLAN

Pick an unused machine in the MathLAN. Open a terminal window and connect with ssh. For example, on both Mac and Linux, you would type the following. (We don't use Microsoft Windows very frequently, so we're not sure what you'd do. The last time one of us tried, puTTY worked pretty well.)


We'd prefer that students use for their work. But that may not work perfectly in all cases, so you can also try a machine in one of the classrooms. Make sure the machine is unused. You can type w once you are logged in to make sure that the machine is unused. Eventually, the department hopes to have a script or Web page that lets you check which machines are free. For now, keep trying different machines until you find an unused one.

Once you've logged in to the MathLAN, type the following instruction to set your password for VNC connections.


Choose something that will be hard for others to guess. Then type the following commentvncserver -geometry WIDTHxHEIGHT to start the server, for example

  vncserver -geometry 1200x900

When the server starts, you should get a short report, something like

  New 'machine:2 (username)' desktop is machine:2

  Starting applications specified in /home/username/.vnc/xstartup
  Log file is /home/username/.vnc/machine:2.log

That number after every colon is your desktop number. You'll need to know it in order to connect to VNC.

Stopping your VNC Server

Yes, we know you haven't connected to the server yet. But we put these instructions here to reinforce that you have a responsibility to stop the server.

When you are done using the VNC server, go back to your ssh terminal and type

  vncserver -kill :desktop

For example,

  vncserver -kill :2

Setting up your VNC Client

To connect to the server, you need to know (a) your password on the MathLAN; (b) the desktop number; (c) the vnc password you set above. You will need to translate the desktop number to a port number, which you do by adding "590" in front of single-digit numbers and "59" in front of two-digit numbers. For example, desktop 1 is port 5901, desktop 2 is port 5902, and desktop 10 is port 5910.

Setting up your VNC Client - Macintosh

Open another terminal window on your Mac. Type the following (while you'll substitute the number of the port, you should type the localhost verbatim):

  ssh -L port:localhost:port -N -f

For example,

  ssh -L 5901:localhost:5901 -N -f

For user rebelsky and machine ssh, this command would be

  ssh -L 5901:localhost:5901 -N -f

You should be prompted for a password. Type your MathLAN password.

You can now start your VNC client. When it prompts for a server or host, use localhost:port (e.g., localhost:5901 for desktop 1 and localhost:5902 for desktop 2). In VNC Viewer, you will connect and then be prompted for a password. In Chicken of the VNC, you should enter both localhost:port and the password in the same dialog box.

Setting up your VNC Client - Windows

You'll need to figure out your own way to set up an extra ssh connection for encryption. puTTY might work. SSVNC might work. These instructions for tunneling ssh with puTTY are probably the best strategy (but again we haven't tried it).

Other Notes

By default, VNC starts with only a terminal window. If you want the handy-dandy panel at the bottom of the screen, type

xfce4-panel &
in the terminal widow. (And yes, you should type the ampersand.)

Our instructions give you an encrypted connection (even though RealVNC may not know that it's encrypted). There are ways to have unencrypted connections, but we wouldn't recommend it.

We've moved to a new Web server!

Although we're still using the same access name ( we've actually upgraded from an older Web server machine (, to a new one (, Enjoy!

Thursday Extra: "Managing the MathLAN"

On Thursday, November 4, in Noyce 3821, Jeff Leep 2011 will describe the deployment of a configuration management system, cfengine, that automatically checks for problems in MathLAN computers and then either fixes the problem or alerts the system administrator.

Refreshments will be served at 4:15 p.m. in the Computer Science Commons (Noyce 3817). The talk, Managing the MathLAN, will follow at 4:30 p.m. in Noyce 3821. Everyone is welcome to attend!

Thursday Extra: "Squeezing the MathLAN"

On Thursday, October 28, in Noyce 3821, Martin Dluhos 2012 will describe one of the major system-administration projects he carried out this summer: configuring and using software that automate the installation of a new version of Debian GNU/Linux on the workstations in the MathLAN, in order to make the entire process less tedious and less repetitive.

Refreshments will be served at 4:15 p.m. in the Computer Science Commons (Noyce 3817). The talk, Squeezing the MathLAN, will follow at 4:30 p.m. in Noyce 3821. Everyone is welcome to attend!

MathLAN workstations

The networked computers and printers that compose MathLAN are named for famous mathematicians, computer scientists, and physicists. The links below provide biographical information about them.



MathLAN's remote-login server is named for Michael Leonidas Dertouzos.

Our file server is named for John von Neumann.

Our Web, database, and code repository server is named for Paul Baran.

Our archive server is named for Betty Jean Jennings Bartik.

The machines that provide the Network Information Service and domain-name service are named for Cuthbert Corwin Hurd and Philippe Flajolet.

Our license manager is named for Arthur John Robin Gorell Milner.

Our Network Information Service domain is named for Archimedes of Syracuse.


MathLAN's printers are named for Maurits Cornelius Escher and Leonardo da Vinci, who frequently incorporated mathematical themes into their works.

Additional workstations

Some research-lab computers that are not fully configured as MathLAN workstations are nevertheless served by our network and named as part of the or domain.

For historical reasons, MathLAN also includes a research-lab workstation named cumulus.

The inactive list

Some names previously applied to workstations and other components of MathLAN are not currently in use:

The Mathematics Local-Area Network

The Mathematics Local-Area Network (MathLAN) was created in 1987 to provide Grinnell College students in mathematics and computer science courses with a modern, accessible, well-stocked computing environment. It comprises about 175 workstations and five servers, running the the Debian distribution of GNU/Linux operating system. MathLAN supports a large variety of software for mathematics (notably MATLAB, Maple, and Mathematica), computing (the DrScheme programming environment, the Java Platform, the Eclipse programming environment etc.), and document creation and display (such as, Emacs, TEX, and Mozilla Firefox).

MathLAN has been developed to meet a broad range of curricular needs of both students and faculty:

  • GNU/Linux software includes programming tools that integrate various steps of coding, compiling, testing and debugging in a straightforward way. MathLAN supports compilers and interpreters for Java, Scheme, C, C++, Python, Perl, PHP, Ruby, Lua, Common Lisp, FORTRAN, Ada, Icon, and other languages, as well as a variety of programming tools and environments.

  • Our students and faculty have easy access to the major Internet information services (the World Wide Web, ftp, ssh, and e-mail). MathLAN's World Wide Web server provides access to more than fifteen thousand local documents.

  • High-resolution color graphics, driven by software that is both powerful and easy to use, make it possible to display data, functions, and mathematical structures in an intuitive way. These capabilities are used in a wide variety of courses -- pre-calculus, calculus, linear algebra, statistics, and modeling.

  • Our workstations provide enough processing power to run outstanding mathematical packages that perform algebraic, symbolic, or graphical operations on functions, statistical data sets, and other mathematical objects. The faculty of the Department of Mathematics and Statistics have successfully integrated these computing tools into our courses, particularly at the first- and second-year levels, with the objective of strengthening students' intuitive understanding of mathematical ideas.

About 1000 students, faculty, staff members, and recent graduates of Grinnell College currently maintain accounts on MathLAN.

Each classroom in the Department of Computer Science and the Department of Mathematics and Statistics contains a MathLAN workstation linked to an Eiki digital projection system, for presentations and demonstrations. In addition, five of our classrooms are equipped with student workstations, for use in class activities, laboratory sessions, and workshops.

We also support two open laboratories, each containing nineteen workstations (one of which can be similarly linked to a projection system when the lab is used for a class).

The open laboratories and one of the computer-equipped classrooms are open for student use from 8 a.m. to midnight on Mondays, Tuesdays, Wednesdays, and Thursdays, from 8 a.m. to 5 p.m. on Fridays, from noon to 6 p.m. on Saturdays, and from noon to midnight on Sundays. In the evenings and on weekends, a consultant is present to answer questions and provide general assistance.

A separate server room houses our servers for home-directory files, third-party software license management, remote login, e-mail, the department's Web, ftp, SVN, and Wiki sites, databases, authentication, and domain name resolution.

MathLAN was originally constructed with funds provided in part by the National Science Foundation, the Charles E. Culpeper Foundation, and the W. M. Keck Foundation, and was subsequently funded in part by the Instrumentation and Laboratory Improvement program of the National Science Foundation and by the Arthur Vining Davis Foundations.

MathLAN use policies

The following policies of the Department of Mathematics and Computer Science supplement Grinnell's Academic Computer Use Policies.

MathLAN policies apply only to this department's network. When MathLAN equipment is used to access outside equipment, either in the College or over the Internet, then all ITS policies apply as well.

Violators of these policies may be prosecuted following the procedures outlined by ITS regulations or have their accounts deactivated.


We distinguish four categories of computer use. In descending priority, they are:

  1. academic work for courses within the department;
  2. other scholarly work sponsored by faculty members in the department;
  3. academic work for courses outside the department and other scholarly work sponsored by faculty members outside the department; and
  4. other uses, consistent with ITS's statement on the proper use of computing resources.

When the demand for equipment in the laboratory or computer-equipped classroom exceeds what is available, users engaged in activities of lower priority must yield to those requiring the equipment for projects with higher priority.

When a class has reserved the laboratory or computer-equipped classroom, only members of that class are permitted to use the reserved room during class time. Students not in the class may, upon consultation with the faculty member running the class, receive permission to use the reserved room.

Shared resources

Since MathLAN is a network, a user has the capability of running processes on several workstations at once. It is inappropriate for one user to interfere with the processing of others who may be running jobs of equal or higher priority. Similarly, it is inappropriate for a user to run jobs that generate so many messages over the network as to degrade processing for other users. It is also inappropriate to remote log-in or telnet to a machine on which another member of the community is currently working.

The workstations on faculty desks are for the use of those faculty members. Any student who runs processes on a faculty workstation without permission from that faculty member or a MathLAN administrator may have his or her account deactivated.

Account sharing

The Grinnell College Academic Computer Use Policies discuss sharing of accounts in sections III.A.1 and III.A.2:

  1. No person may use, or attempt to use, any computer accounts other than his/her own assigned account. The negligence or naivete of another user in revealing an account name and password does not confer authorization to use the account.
  2. An account owner may not lend his/her account(s) to another user.

The Department of Mathematics and Computer Science realizes that you may need to share accounts when working together on a laboratory, and permits such use. However, that is the limit of sharing. In particular, no student may use an account without the owner of that account present.

Particular applications

Internet Relay Chat

The department does not forbid the use of Internet Relay Chat (IRC). However, such use must not violate the guidelines described in Grinnell's Academic Computer Use Policies. Furthermore, the department disallows the use of chat robots and proxy servers without prior permission of a MathLAN administrator. Such programs often result in decreased system or network performance and thereby directly affect other users, both local and remote.


According to the above policies, games running on MathLAN and played by individuals fall within priority 4, unless game programs are specifically assigned as part of a course or are part of project under faculty sponsorship. Thus, a game may be run on MathLAN provided that (1) others are not waiting for workstations for academic purposes, (2) the running of the game will not generate processes on machines used by others, and (3) the game does not significantly interfere with the message load over the network.

Since MUDs and other games involving the Internet utilize the all-campus router, such games are explicitly prohibited by ITS policy.


Students may not use the projection systems in the Department's classrooms and labs to show movies, except for academic purposes and with the express permission of the Department.

Account deactivation

In addition to the reasons given above, an account may be deactivated by a MathLAN administrator if the administrator deems that the account is being used inappropriately or has suspicious activity. In addition, any account inactive for a year or more may be deactivated.

The MathLAN administrator will maintain the files of any deactivated account, either on disk or on backup tape, until the owner of that account graduates or otherwise leaves the Grinnell community.

At the time of an account's deactivation, the accounts owner will be contacted through his or her standard Grinnell e-mail account. A student's account may be reactivated upon request.

Syndicate content