Skip to content

Linux, bash, and Git resources

Bob Yantosca edited this page Jun 29, 2023 · 10 revisions

Linux

We have collated a few resources for getting started with Linux.

You can also find a lot of third-party information online with information about Linux (including Youtube videos).

What's in a name?

Q. Some of the links above refer to Linux and others to Unix. What's going on?

A. Unix was originally one of the first time-sharing operating systems, originally developed for the Digital PDP-11 computer. For many years, the Unix license was held by AT&T. Over time, a number of licensed Unix flavors (e.g. IRIX for Silicon Graphics machines, Solaris for Sun machines, AIX for IBM machines, UNICOS for Cray machines, etc.) have come and gone. So you can think of Unix as more of a family of operating systems than as a single operating system.

In the early 1990's, Linus Torvalds reverse-engineered the Unix kernel (i.e. the "heart" of the operating system) and made it freely available. This new kernel was named the Linux kernel after its inventor. At about the same time, the GNU project at MIT had created several "Unix-like" utilities (i.e. ls', 'cp, 'mv', grep, emacs, etc). The combination of the Linux kernel and the GNU utilities resulted in what is commonly called GNU/Linux. There are several GNU/Linux distributions available today.

In common usage Linux and Unix are bandied about interchangeably, even though they refer to different operating systems. Unix (except for some derivatives like FreeBSD) has largely been superseded by Linux.

The bash shell and bash scripting

One of the nice features of Linux is that you can highly customize your environment by selecting a different user interface, or shell. While there are several Unix shells that you can pick from, we recommend using bash, which is the de-facto standard on most HPC computing systems.

You can also write shell scripts to perform several commands (such as copying files or running programs) sequentially. This will save you the trouble of having to type the same commands over and over at the command-line prompt.

Here are some resources that you can use to learn more about the bash shell:

Git

Many scientific software applications (including GEOS-Chem, and GCPy) use Git for version control and for source code distribution. If you have never used Git before, we invite you to view the following resources:

Basic Git usage

Github

We use Github to store the GEOS-Chem source code, as well as source code for related software packages such as GCPy. You may also report a bug or request support by opening an issue on the issue tracker attached to the relevant Github repository. You may also search for past issues (to see if a given bug has already been fixed). Please see:

Clone this wiki locally