A Primer

Support Centre

Thank you for purchasing your Linux Desktop or Laptops. You have joined an alternative group of computer users who believe in the freedom of access in the world of information technology and the benefits these innovations bring. We hope you find this experience as rewarding but less challenging than we did.

The following section contains general information intended for novices - to help get the most out of their Linux desktop or laptops. These are only recommended advises and are not necessary for normal operations.

All material presented are licensed under The GNU Free Documentation License.


  1. How to be Environmentally Conscious.
  2. Linux 101
    1. Introduction
    2. Linux Architecture
    3. Linux File System
    4. Linux File Attributes
    5. Linux User Profile
  3. Changing Host Name.
  4. Changing local domain.
  5. Changing timezone.
  6. Adding New User Account.
  7. Changing password for root and user.
  8. Configuring hddtemp.
  9. Re-Configuring seahorse.
  10. Installing realplayer.
  11. Installing flash.
  12. Installing MS Fonts.
  13. Where to go from here...
  14. References

  1. How to be Environmentally Conscious.

    Recycle Icon

    Being environmentally conscious is a responsibility for everyone. Although computers are essential tools in a modern lifestyle, it consumes enormous power and contains hazardous materials.

    To be environmentally conscious, turn off your computer when not in use. You can either shutdown the computer or hibernate the computer for quickly getting back to what you were doing. Unlike suspend, hibernation consumes no power. To reduce power leakage, turn off the power switch at the back of the desktop computer or unplug the laptop AC adaptor form the wall outlet when not in use.

    At the end of the machine life cycle, consider upgrading parts of the machine to extend life span before disposal. Linux operating systems are also very efficient, and the non-commercial nature of Debian Linux means it is not driven by commercial life cycle which means users should enjoy an exceptional life span with their machines. Consider donating the machine to a charity organization to extend its useful lifespan. Make sure to dispose of it in a qualified recycling or hazardous waste site if donation is not possible. Laptop batteries are recyclable. Contact your local municipality for details.

    Updated: 2007-04-04

    Back to top


  2. Linux 101

    Introduction

    Linux was originally written by Linus Torvalds in 1991 while attending the University of Helsinki, it was originally intended as a non-commercial replacement for Minix (an educational OS by Andrew S Tanenbaum). The kernel was later augmented with system utilities and libraries from the GNU project which was started by Richard Stallman - founder of the Free Software Foundation.

    Today, Linux is a Unix-like operating system contributed by thousands of developers world wide and a prime example of FLOSS. Its place in the evolution of Unix can be illustrated as follows:

    image of Unix History

    Above image is public domain, courtesy of Guillem, Wereon, Hotmocha (copied from old version's history), Christoph S. (redrew the image with Inkscape), Ysangkok (touched up the redrawn image).

    Interested readers, read more in wiki

    Linux Architecture

    The Linux architecture is build on multiple layers. There are basically three types of user applications in Linux:

    1. the text applications,
    2. the X applications,
    3. and the GTK/GNOME applications.

    Generally, text applications are more obtuse and GTK/GNOME applications being graphical and standards compliant are more intuitive. You will encounter text application in a Terminal, X windows applications are still around but slowly being replaced by GTK/GNOME/KDE applications. GNOME and KDE are the two rival desktop management system on Linux (FreeBSD as well). Fortunately, most GTK apps. will run on both systems.

    The following architectural diagram illustrates a simplified version of the Linux system with their various components.

    Debian Architecture

    These dependencies can be summarized as follow:

    • The Linux kernel and its various modules depends on the computer hardware;
    • Text applications are dependent on the kernel, its utilities and libraries;
    • X applications are dependent on X server, Xserver depends on the kernel and its utilities and libraries;
    • GTK applications are dependent on GTK libraries and the X server;
    • GNOME or KDE applications are dependent on GNOME or KDE desktop and their libraries. GNOME and KDE are GTK applications.

    Linux File System

    The Linux file system is layout as an upside down tree. From the top of the tree - called the root filesystem, you'll find subdirectories such as the following illustration. There subdirectories are further subdivided into more specific directories. Here we will only cover the top most directories, this will give you a general idea of the layout.

    Linux filesystem

    The general function of these subdirectories are as follows:

    1. The / or the so called root directory is the container for all subdirectories,
    2. the home directory is where each users save their own work.
    3. the usr directory contains user applications and programs that are not part of the Linux OS.
    4. the boot directory contains the Linux kernel, initramfs image, grub configuration files.
    5. the etc directory contains the application/systems configurations, boot up script files, etc, ...
    6. the dev directory contains device files. e.g. /dev/dsp is the sound device.
    7. the mnt/media are directories used as mount points for mounting CD ROMs, etc.
    8. the bin/sbin are directories storing basic Linux applications/system applications.
    9. the sys/proc are dynamically created. They are for system and device communications.
    10. the var directory contains mostly log files, dynamically created session files, caches, etc.
    11. the tmp directory contains application temporary files.
    12. the ... or other directories are less important for a first look.

    A collection of these directories are often grouped together into a partition on the disk during the installation process. There is one partition which is hidden and not mentioned above, that is the swap partition; a swap partition is a borrowed space for when applications ran out of physical ram.

    Linux File Attributes

    Everything in Linux is a file. Every file in Linux has a set of attributes attached - this includes ownership, read/write/execute permissions and special flags. By the way, a directory is a special file. A file can belong to an individual and a group. Only individual or the group with ownership can change the permissions on the file.

    image of file permissions

    Read/Write/Execute permissions defined access for owner/group/others. So a file can be protected from accidental overwrite by taking off the write permission, either for the owner, group or others(everyone else). root user is the exception to the rule, root can change everything.

    Linux User Profile

    Linux was originally designed as a multi-user system so every user created has a profile. The profile is part of the carefully layout security system. This security system may seem like a hassle on a standalone desktop with only one user, but that is not true.

    As long as your computer connects to the outside world via the Internet or other computer via LAN, the access is two way. Security is a means to control that access.

    groups

    Linux creates user profiles and group profiles. A group is a collection of users. Since everything in Linux is a file and every file has a permission and ownership attribute defined. Control is well defined because every user and groups has a well defined access.

    So what does this mean? An example would help, the camera device has a group permission - the camera group. If you belong to the camera group, you have access to the camera device. Similarly for other files/devices.

    There are much more to be explore but as a primer, we stop here. Continue with the following sections as exercises to become familiar with your computer.

    Updated: 2007-05-27

    Back to top


  3. Changing Host Name

    In this exercises, we learn to use a text application in a terminal.

    The host name of a Linux system is the name of the current machine (host). This is also part of the FQDN for a particular site. If the machine is a standalone machine and not part of a domain, it is not necessary to change it. For those who wish to change it, this is how.

    The host name can be permanently change via the /etc/hostname file.

    1. Start the Terminal application by selecting Application->Accessories->Terminal from the GNOME desktop.
    2. enter su and provide the root password. (root is the special user on Linux with unrestricted access - use with care.)

      su in terminal

      Terminal screens will be represented as below from now on.

      $ su
    3. change the file content with your favourite editor. For this exercise use editor.
      # editor /etc/hostname

      Note that root prompts has a # symbol while normal user has a $ symbol.

    4. Make the change, press Ctrl-X to leave the editor, press Y to save.
    5. type exit to leave the root prompt.
    6. type exit to leave the Terminal.
    7. reboot and the change is done. Well, almost, you should also change the /etc/hosts file to make it consistent.
    hostname

    Updated: 2007-05-27

    Back to top


  4. Changing Domain Name

    The domain name of a Linux system is the name of the current domain which the machine (host) belongs in. This is also part of the FQDN for a particular site. If the machine is a standalone machine and not part of a domain, it is not necessary to change it. For those who wish to change it, this is how.

    The domain name which the host belongs in can be permanently change via the /etc/hosts file. SU as root and change the file content with your favourite editor, reboot and the change is done.

    Updated: 2007-04-04

    Back to top


  5. Changing Timezone

    In this exercises, we learn to use a graphical application in GNOME desktop and becomes more familiar with the layout of the GNOME desktop.

    To change the timezone, select Desktop->Administration->Time & Dates options from the menu. Enter the root password and select the timezone.

    timezone

    Updated: 2007-05-27

    Back to top


  6. Adding New User Account

    Your Linux Desktop is designed for multiple user usage - this means you can create as many account as you wish (within system limitation).

    There are two ways to create an account in this Linuxvillage's preloaded machines. One is from the GNOME menu, the other is form a terminal. Using the one from the GNOME menu is straight forward but you have to select all the group permission yourself. The terminal option has the routine to put the user into default groups allowing for maximum permission without compromising security.

    1. From GNOME desktop, select Desktop->Administrator->Users and Groups from the menu. At the password prompt, enter the root password. Once inside, press the Add User button to create new user, press the groups tab to add group permissions.

    2. To use the adduser routine, select Application->Accessories->Terminal from the menu. su as root first.

      $ su
      Then enter the username like below, replace username with actual name.
      # adduser username
      After answering a few prompts, type exit to leave terminal.

    In this exercises, we lean there are more than one way to skin a cat.

    Updated: 2007-05-27

    Back to top


  7. Changing Passwords

    A randomly generated password for root and a normal user is created at install time. Most people find this to be too difficult to remember and would like to replace these passwords. Recommended practise for generating a password should contain letters, numbers and if the authentication on your site permits - punctuations.

    To change the user password, select Application->Accessories->Terminal from the menu.

    $ passwd
    Type passwd like above, then enter old password and enter new password.

    To change root password, su as root first.

    $ su
    Once you see the prompt changes, type passwd, enter old password and new password.
    # passwd

    Here we leaned how to change the root password. Root is the administrator on the local machine, as a administrator root has unlimited access to the system.

    Updated: 2007-05-27

    Back to top


  8. Configuring HDDTemp

    Hddtemp is an application for monitoring temperatures, this is mostly useful on a laptop. To reconfigure hddtemp, select Application->Accessories->Terminal from the menu. SU as root, at the prompt, do as below...

    # dpkg-reconfigure hddtemp

    In this exercises, we leaned how to reconfigure certain applications through dpkg-reconfigure.

    Updated: 2007-05-27

    Back to top


  9. Re-Configuring Seahorse

    Seahorse is a GnuPG application frontend, it provides cryptographic services. Seahorse assists in signing and encrypting correspondences. The default setting has SUID bit on.

    To reconfigure seahorse, select Application->Accessories->Terminal from the menu. SU as root, at the prompt, do as below...

    # dpkg-reconfigure seahorse

    Here we learned the role of setting user id on a program. It allows the normal user to assume the role of the program owner in order to access restricted data.

    Updated: 2007-05-27

    Back to top


  10. Installing RealPlayer

    This is the popular RealPlayer media player for the Internet. To install it:

    1. Select Desktop->Administration->Synaptic Package Manager from the menu.
    2. Enter your root password to access the program.
    3. Press the Search button on the tool bar and enter realplayer to find the package.
    4. Right click on the realplayer entry and mark it for installation.
    5. Press the Apply button to download and install.
    realplayer installation

    In this exercises, we leaned how to install software through Debian's package manager.

    This is an important lesson as most software in Debian should be accessed through the package manager. The package manager will keep track of versions and dependencies, provide you will newer version when available and allows you to cleanly unstall unwanted software.

    Updated: 2007-05-27

    Back to top


  11. Installing Flash

    There are a few version of Flash plugins for your browser. The latest version is from Adobe but it is non-free. To install it:

    1. Select Desktop->Administration->Synaptic Package Manager from the menu.
    2. Enter your root password to access the program.
    3. Press the Search button on the tool bar and enter flash to find the package.
    4. Right click on the particular entry you wish and mark it for installation.
    5. Press the Apply button to download and install.

    Read more about flash in wiki.

    In this exercises, we leaned not everything in Debian GNU/Linux is freed.

    Updated: 2007-05-27

    Back to top


  12. Installing MS Fonts

    This is a gift from Microsoft and Bill Gates, it contains many popular fonts fond on websites. Although these are non-free, its installation will make your transition to Linux less distressing. To install these fonts:

    1. Select Desktop->Administration->Synaptic Package Manager from the menu.
    2. Enter your root password to access the program.
    3. Press the Search button on the tool bar and enter msttcorefonts to find the package.
    4. Right click on the msttcorefonts entry and mark it for installation.
    5. Press the Apply button to download and install.

    Thank you Bill! Here we leaned there are surprising contributors.

    Updated: 2007-05-27

    Back to top


  13. Where to go from here...

    There are further instructions specific to your model of computer and general instruction for configuring printer, backup and restorations, etc. Please continue your reading from the support main page.

    Updated: 2007-04-04

    Back to top


  14. References

    1. Linux Tutorial from tldp.org. For those interested, this tutorial is focus on console commands.
    2. The RoHS Directive stands for the restriction of the use of certain hazardous substances in electrical and electronic equipment. This Directive bans the placing on the EU market of new electrical and electronic equipment containing more than agreed levels of lead, cadmium, mercury, hexavalent chromium, polybrominated biphenyl (PBB) and polybrominated diphenyl ether (PBDE) flame retardants. Read more in wiki.