Salvage Server Project 'Case Study' No.1:

A Gnu/Linux Laptop for a
Community Recycling
Organisation


Produced by the Free Range Salvage Server Project.
SSPCS-01, version 1.0, March 2005     http://www.fraw.org.uk/ssp/

Also available as an Acrobat file (for printing) – click here (1.1 megabytes).



This first case study from the SSP project dives straight in the deep end – installing a Gnu/Linux system on a recycled laptop. This report outlines some of the problems inherent to installing a Linux-based laptop, and ideas for installing a system specifically for use in a small community group.



The Specification

The aim of this project was to put together a wholly recycled laptop-based computer system. The system was to be used by the Green House in Llandeilo, Wales – a shop that recycles and sells goods to raise money for environmental campaigns and social justice. The aim in specifying a fully recycled system was to encourage the use of recycled electronic equipment. As the equipment would be transported to meetings and workshops it was essential that the system was portable – so a laptop was the only option.

A grant for 75% of the cost of the system was obtained from Carmarthenshire County Council. This gave the advantage that the specification could be design to fulfil the needs of the users rather than finding some recycled equipment and trying to tweak the performance of the suit the tasks it was required to perform.

The specification agreed with the group was for a laptop that could perform office related activities and connect to the Internet. It also required that the equipment should be purchased with certain ethical criteria that the group had in mind. The aim was to provide: Part of the specification for the system was the use of free software (the reasons for this are explored in the following section). If proprietary software had been used this might have added a few hundred pounds to the cost of the project. The use of free software meant that it was not necessary to spend large sums of money buying software, which lowered the overall cost to a level where funding as part of a small grant was a practical option.

The whole budget for the project, including labour, delivery and training, was £890.



Selecting Systems and Software

Buying recycled computers is a trade-off between performance and usability: With an older computer system the use of proprietary software (e.g., Microsoft's Windows operating system) requires the user to trade-off system performance in order to use recycled equipment. This is because new or updated versions of proprietary software are always more demanding on the resources of the computer system, and so work more slowly on older computer systems. It would be possible to use older versions of proprietary software on the machine but often these are difficult to get hold of, and the manufacturer usually doesn't support those using old software. Also, as the copyright laws provide protection for software applications for up to seventy years, copying proprietary software leaves those using the equipment open to prosecution for infringing the intellectual property rights of the system's developers.

Whilst the use of free software incurs some of the performance problems associated with proprietary software, it doesn't incur the same restrictions on the copying, distribution and user support. Therefore the cost of providing free alternatives to proprietary software is lower. Also free software systems, unlike proprietary systems, often provide several different programmes to achieve the same task – for example word processors, web browsers or email clients. The difference between these programmes is mainly in the range of functions they provide, and hence how much power they require to run on the system. So in practice some of the performance barriers can be avoided by using programmes that draw less system resources, and so operate more quickly.

The greatest problem with any Gnu/Linux installation on a laptop is the availability of drivers. Laptop systems are very short-lived, in terms of the manufacture of their components. This makes finding device drivers (programs that make the hardware function) for fairly recent models very difficult. Even for laptops that are supported by free software projects some models may have slightly different components within the system, or a different BIOS (Basic Input/Output Operating System – programs within the computer hardware that control the functions of the system). For this reason even the same model of laptop may behave slightly differently when you install the same Gnu/Linux distribution onto it.

Solving the drivers problem involves checking a number of the Gnu/Linux distributions available to see which provides the best range of drivers for the equipment that is being used. This will also involve some consideration of the skills of those using the computer system as the different Gnu/Linux distributions provide varying levels of documentation, training information and online help services for users.



Gnu, Linux and Distributions

An operating system is made up of many different programmes. Some of these actually make the computer work and form the core of the operating system – usually known as the kernel. Other programs work with the functions provided by the kernel. The kernel used on most machines running free software is Linux, developed by a group of programmers around the globe under the leadership of Linus Torvalds.

Much of the free software in use today is licensed under the Gnu General Public License (or GPL), and the development of free software owes much to the Gnu Project and the Free Software Foundation who developed the GPL in the mid-80s. GPL programs use the Linux kernel to operate, and without those programs the Linux kernel would not be usable by most computer users. For this reason systems running the Linux kernel and other free software are called Gnu/Linux systems.

There are many different groups putting together a Linux kernel with collections of programs. These are called distributions. The main difference between each distribution is the purpose for which they were created. However, as free software developers achieve more through co-operation rather than competition, the majority of free software applications are fully compatible.

Some distributions are used primarily to install desktop computer systems, or servers on networks. Some distributions are designed to adapt a computer to perform a specific function and nothing else – such as a email server, or a router/firewall for connecting computers to broadband services. The decision as to which distribution is used for a particular project is usually related to the type of use the system will have. As the distributions are compatible, the decision on which distribution to use involves deciding which of the options provides the best solution for the computer user.

For more information see Salvage Server Project Report No.1 – Selecting Operating Systems For and Upgrading Older Computershttp://www.fraw.org.uk/pubs/ssp/ssp-01.html





Purchase and Installation

Recycled laptops are available from various different suppliers. As well as online sources, magazines such as Micromart provide information on a wide range of laptop computers and their current price. After browsing the various options for a computer meeting the specifications of the project, a Dell Latitude C600 was purchased from DWA Computers in Glasgow. Finding the appropriate peripherals for recycled systems, which are also Gnu/Linux compatible, can be difficult. The availability of good quality recycled/second user equipment can vary from month to month.

A problem with this project was finding a printer. When buying a printer it's important to check if the manufacturer will continue to produce the necessary ink cartridges, ribbons or toner – a good quality printer without ink is useless. After scouring many sources of equipment a Brother HL-1070 laser printer was found at a price that was slightly cheaper than that for a recycled ink-jet printer. Although outside the specification it was Gnu/Linux compatible, toner cartridges are still available for the printer, and in fact the running costs are likely to be less than for a comparable ink-jet printer.

After browsing various options the PCMCIA modem was almost replaced with an external modem, but at the last moment a Xircom Combo card was found within the budget set in the specification. This is a combined modem and network card, which may seem a waste as the laptop already has a network port. However, looking towards the end of the life of this system, having two network ports would mean the laptop could be recycled as a router/firewall machine for connecting to a broadband Internet service. So, providing that the group look after the system and it is still functioning, after two or three years the laptop would still have a viable life when the Green House group have finished using it.

The USB solid-state disks are not that easy to come by as people usually keep them after they upgrade to a larger capacity device. A 128MB device was found by asking various contacts if they new someone who wished to part with one.

To find which Gnu/Linux distribution performed the best, three distributions – Fedora, Mandrake and SuSE – were installed on the computer. For the range of tasks the system would be used for all three performed well. After considering the skills and needs of the group SuSE Linux was chosen as the operating system. Fedora was seriously considered, partly because of its better performance on the machine, but it lost out principally because its lower level of tutorials/documentation meant it was less suitable for beginners.



Configuration

Configuring a Gnu/Linux system is a bottomless pit of options. So much can be done, but it is important to question which of the services that the Linux system can provide would be most beneficial to the users of the system.

This system will be used as a multi-user system – more than one group member will have access to it. Therefore it was configured with two user accounts for the principal users of the system, and a 'guest' account so that others could use the system in a more informal way. If necessary, the number of user accounts can be increased as the use of the system changes. In addition, because all ordinary users have the same group identification number (or GID) it was necessary to change the permissions on the user accounts in order to prevent users from accessing each other's home directories.

To make the system more versatile, after allocating the root and swap partitions on the hard disk the remaining space was divided between a home and a server partition. This allows a large amount of the hard disk to be filled with information, useful for training and the campaign work of the group, that can be accessed as an Intranet.

A critical part of using a computer is backing-up data. Temporary back-up is provided by the USB disk, but as the laptop does not have a CD writer another method of permanent backing-up was required. Backing-up via the Internet is not practical over the dial-up connections that are the standard in rural Wales, and in any case online transfers raise data security issues. For this reason a file transfer protocol (FTP) server was configured on the laptop (see box). In addition a crossed Ethernet cable was provided so that the laptop could network directly, without the use of a hub, with another computer system. This allows the laptop to be connected to another computer and files moved between the two computers. This reduces the chance of data loss from the laptop, but if the other computer has a CD burner then this information can be transferred to CD for longer-term storage.


The FTP Server

SuSE comes with the vsftpd (the Very Secure FTP) server. This is an easily configurable FTP server that allows the computer to exchange files with other computers using an FTP client programme.

vsftpd is easily enabled using SuSE's YaST configuration system. Provided vsftpd is installed (or on older SuSE distributions another option is pure-ftpd) you can toggle its entry in the Network Services (inetd) menu and it will begin operating.

In other distributions (such as Fedora) you need to enable the ftp server via the run level editor program. Enable the FTP server in run levels 3 and 5, and when you restart the system the server should be working.

As a default vsftpd and pure-ftpd are configured as anonymous FTP servers. To enable the movement of files directly to or from the user accounts on the system, it's necessary to edit the configurations files for the server (located at /etc/pure-ftpd/pure-ftpd.conf or /etc/vsftp).

For vsftpd:
  • remove the # from the start of the line local_enable=YES;

  • change the YES to NO in the line anonymous_enable=YES.

For pure-ftp:
  • Change the yes the line AnonymousOnly to no;

  • Change the no in the line NoAnonymous to yes.

When the FTP server is restarted it will be possible for an FTP client program, from a Gnu/Linux, Macintosh or Windows computer system, to exchange files with the computer running the FTP server.




The main problem when connecting two computers via a network is that the addresses of the two network adapters must be compatible. By default most Gnu/Linux and Windows systems are set to use Dynamic Host Configuration Protocol (DHCP). The laptop was configured with a static Internet Protocol (IP) address, rather than an allocated address, in order to avoid having to have a DHCP server to allocate addresses. To connect two systems with a crossed Ethernet cable the IP address must be set as a static IP number operating within the same subnet (the subnet is defined in the first three numbers of the IP address). The laptop has its IP number set to 192.168.67.6. Provided that the other system has a static IP address set between 192.168.67.1 to 5, or 192.168.67.7 to 254, the two should network without any conflict.

The next issue was the provision of information to the users. In order that information and training materials could be easily used by users, an Intranet was developed. To do this it is necessary to enable a web server on the system (see box). This service is primarily available on the laptop system, but if the configuration of the firewall is changed then any computer on the network that the laptop is connected to would be able to browse (and download) the contents of the laptop's Intranet.


The Web Server

SuSE comes with apache2. This is the same type of HyperText Transfer Protocol (HTTP) server that operates a large number of the sites on the Internet. Configuring apache2 as a fully operational web server is extremely complex, but with a few simple modifications it is possible to configure apache2 to run a localised Intranet (an Intranet is a web-like information service that runs over a local network).

The first step is to enable the HTTP server. Using YaST you can enable apache2 using the HTTP Server option in the Network Services menu. In other distributions use the run level editor program to enable the Apache/http service in run levels 3 and 5. Once you have restarted, if you open a web browser to the address http://127.0.0.1/ (the internal network address of the laptop) you should see the Apache server test page – which means the server is running and is ready to be configured.

Unlike the first apache server, apache2 is more complex because the configuration files are split up. The YaST utility for configuring the HTTP server requires that you know a lot about how Apache works, so avoid it. Instead edit the configuration files directly using a text editor program (you must login as root to do this). The configuration files are usually found in the directory /etc/apache2. Always remember to save copies of the unaltered files under another name (e.g., adding .old to the file name) so that you can recover the original configuration if you make a mess.

Open the file default-server.conf (this controls the operation of the default web server). Find the section that starts <Directory "/srv/www/htdocs"> near the end of the file. Change the line that starts Options None to Options Indexes Includes ExecCGI   If you want to use server side includes (useful when experimenting with web site design) you need to add the following two lines after the line DocumentRoot "/srv/www/htdocs"
    AddType text/html .shtml
    AddOutputFilter INCLUDES .shtml


Save the file, and restart the server, to enable the changes. Assuming you have init.d operating you can do this using the command /etc/init.d/apache2 restart

The default location of the files used to present the web site/Intranet is /srv/www/htdocs (note some distributions use /var/www/htdocs). If you load a web site here, or a series of web pages set up to create an Intranet, the content will be displayed whenever anyone browses the internal network loopback (http://127.0.0.1/), or the network address of the laptop (http://192.168.67.6/). Note that provided the firewall on the computer allows connections to port 80, any computers connected to the laptop will also be able to browse the web server.




The web server loads files from a location on the computer's hard disk. Provided you change the permissions on the directories involved, anyone can load files to this area of the disk and then browse the results using a web browser. The value of this isn't just as a means of browsing an Intranet. Using this process people can practice setting up and maintaining web sites.

In order to provide some initial content for the Intranet, the entire Free Range Activism Web Site (80 megabytes) was copied to the laptop. In addition some online books and other materials that give basic tuition on Linux and the development of web sites/Intranets was loaded as part of the Intranet system.

Next the printers were configured. In addition to the Brother HL-1070 the Green House group had purchased a factory reconditioned Lanier photocopier that could print from a computer. Unfortunately the only printing filter that provided the full functionality of the photocopier (double siding, stapling, etc.) worked with the lpd printing system. By default SuSE uses CUPS, and although it would have been fairly easy to reconfigure the system to use lpd, CUPS was the preferred option because it's easier for new users to control the printing system (mainly, the graphical programs that work with CUPS are beginner-friendly). Even so, using the Ricoh aficio filters, CUPS was still able to use the photocopier as a high quality, and fast printer.

Finally, each of the user accounts was configured ready for use: Each user account was also configured with a separate theme/colour scheme and the login manager was configured with some interesting icons and decorative backgrounds. This was to illustrate the way in which Gnu/Linux systems can be personalised by varying the configuration of the desktop.



Conclusion/Next Steps

The purpose of this study was to outline some of the issues related to recycling laptop computers for use by community groups. Many of the issues covered have also been discussed in the Free Range Network's documentation of the Community-Linux Training Centre (CLTC) [http://www.fraw.org.uk/cltc/].

The next step in the study will be to monitor the use of the system, and any problems that occur with its use. In particular, we'll be looking for feedback on the training needs of those using the system with a view to developing information resources for those using similar systems.

Later in 2005, the European Waste Electrical and Electronic Equipment (WEEE) Directive comes into force. This will require that used electrical equipment, such as computers, are recycled. Hopefully this will increase the amount of discarded electrical equipment that will be available for use by community groups. However, unless groups are able to develop their own low-tech/low cost systems for reusing this equipment, the benefits of the Directive will not be fully realised by civil society organisations. We hope to be able to address this issue through this, and similar, studies.



The Salvage Server Project has been developed by the Free Range Network to promote the use of redundant IT equipment as a resource for community and grass roots campaigning organisations. This report has been produced to support the work of the project, and is made freely available to encourage the objectives of the project.

© Copyright 2005, Paul Mobbs/Free Range Network. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with Invariant Sections being the document title and author identification, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is provided at: http://www.fraw.org.uk/_admin/copyright.shtml This document has been wholly produced using the Gnu/Linux operating system and free software.

The information contained in this work has been obtained from sources that are believed to be reliable. However, We cannot provide any absolute guarantee that the information contained herein is wholly correct, or that the manner in which the information is used is correct, and consequently we cannot be responsible for any error, omissions or damages arising from the use of the information in this work. This work has been created on the basis that the Free Range Network is not intending to supply engineering or any other professional services – the purposes of this briefing are merely illustrative.





The Honesty Box

An 'honesty box' is usually something that shops have. You can pick something and walk out quickly if you drop the correct money for the item in the honesty box. We're taking a slightly different angle on the honesty box. We'd like you read this, and the other Free Range project materials on the web site, and honestly answer this question:

"Did you find this information useful, helpful or interesting?"

If the answer is yes, and you'd like more in the future, then it would be really helpful if you could send a donation. We leave the size of donation up to you, but please send what you can spare.

The Salvage Server Project (SSP), like the rest of the Free Range Network, does not have a membership, official funding, or paid staff. The human resources are donated by those taking part. The expenses for the development of new resources and information are usually begged from different sources, to support specific activities (or to put it another way, now you know one of the reasons why we make things from a lot of old second-hand, scrapped and discarded equipment!).

If you would like to help develop the SSP Project please send a donation, by cheque or postal order (in pounds sterling, if you live outside the UK), made payable to "Mobbs' Environmental Investigations (Free Range/SSP)", to –
    Projects,
    The Free Range Network,
    c/o 3 Grosvenor Road,
    Banbury OX16 5HN,
    England.


Note also: Over the coming months we will be developing new information resources and re-issuing our older publications with minor revisions. As part of this process we're asking that people consider making a donation if they use our information as part of their own projects. Donations are not compulsory – the information will continue to be issued under the Gnu Free Documentation License so that anyone can take away the information and use it – but if people would like the SSP project to keep producing this useful documentation then we need to increase the flow of funds through the project.


Thanks!     Bok-btarrk!!

The SSP Team