Outils pour utilisateurs

Outils du site


issue79:labo_linux

Table des matières

1

Linux has always had a reputation of being a good way to reuse old computers. In fact this is how free software slipped into The Working Centre’s Computer Recycling Project. The project began in the late 1990’s as a way for those out of work to get access to a computer to create resumés. Around mid 2001, one of the project volunteers started putting together a Linux distribution based on Debian GNU/Linux called the Working Centre Linux Project (WCLP). WCLP was a desktop distribution designed to run on a 486SX/25 with 16MB of RAM and a 400MB hard drive. WCLP was the start of free software use in the project. Around mid 2005, the volunteers developing WCLP abandoned the project. Other refurbishing-oriented distributions, like RULE (Run Up-to- date Linux Everywhere), were becoming pretty popular, and Ubuntu Linux was on the horizon. It was also around this time the project implemented a SAMBA file server used in conjunction with cloning software. The SAMBA server worked so well that other parts of The Working Centre – besides the Computer Recycling Project – started storing data there. The original SAMBA file server has gone through several upgrades over the years (from hard drive to motherboard), but still uses a modified version of smb.conf that we started with.

Linux a toujours eu la réputation d'être une bonne manière de réutiliser les vieux ordinateurs. En fait, c'est la façon dont les Logiciels libres se sont glissés dans le projet de recyclage d'ordinateurs du Working Centre (Association indépendante de recherche d'emploi au Canada). Le projet a débuté à la fin des années 90 comme un moyen pour les personnes sans emploi d'avoir accès à un ordinateur pour rédiger leurs CV. Vers la mi-2001, l'un des bénévoles du projet a commencé à mettre sur pied une distribution Linux basée sur Debian GNU/Linux appelé le Working Centre Linux Project (WCLP). WCLP était une distribution pour ordinateurs de bureau conçue pour tourner sur un 486SX/25 avec 16 Mo de RAM et un disque dur de 400 Mo. C'est avec WCLP que le projet a commencé à utiliser les Logiciels libres.

Vers la mi-2005, les bénévoles développant WCLP ont abandonné le projet. D'autres distributions spécialisées dans la remise à neuf, comme RULE (Run Up-to-date Linux Everywhere - Faites tourner partout un Linux à jour), devenaient assez populaire et Ubuntu Linux se profilait à l'horizon. C'était aussi à cette époque que le projet mit en place un serveur de fichiers SAMBA, utilisé conjointement avec un logiciel de clonage. Le serveur SAMBA a tellement bien fonctionné que d'autres parties du Working Centre, autres que le projet de recyclage informatique, ont commencé à y stocker des données. Le serveur de fichiers SAMBA d'origine a connu plusieurs améliorations au fil des ans (du disque dur à la carte mère), mais utilise encore une version modifiée de smb.conf avec laquelle nous avons commencé.

One of the great salvations for the project has been the fact that we’ve been able to take a hard drive running Linux out of one system and stick it in a completely new system with relatively few problems (not something you can do with proprietary OS’s because of the whole licensing issues, not to mention driver issues). We had a major hardware failure in one of our systems (we hadn’t looked close enough at the motherboard), and were able to use the hard drive in a computer with a motherboard from the same manufacturer but with a different model number. That system was running a desktop Linux distribution and we were able to restore it on the new motherboard without too much trouble. Late 2005, I started working closer with the project to take it from a once-a-week drop-in project to a 5-day-a-week operation (we’ve since scaled back to 4 days a week to allow for other work to take place in the space). One of the projects I’d been working on while volunteering was a PHP/MySQL parts database. The database was hacked together using a script I’d found. That project was the start of what became a custom PHP/MySQL Point-Of-Sale (POS), based on an existing open source project: OSCommerce. A few months after I started, we had the opportunity to switch spaces into a much more spacious building. During the downtime, we took the opportunity to better lay out the POS. One of our on-staff IT developed the interface, while a programmer we hired for a short period worked on coding the POS.

Ce qui a sauvé le projet a été le fait que nous avons été en mesure de prendre un disque dur avec Linux d'un système et de le coller dans un système complètement nouveau avec relativement peu de problèmes (ce n'est pas quelque chose que vous pouvez faire avec des systèmes d'exploitation propriétaires en raison des questions de licence, sans parler des problèmes de pilotes). Nous avons eu une défaillance matérielle majeure sur l'un de nos systèmes (nous n'avions pas regardé d'assez près la carte mère) et nous avons pu utiliser le disque dur dans un ordinateur avec une carte mère du même fabricant, mais avec un numéro de modèle différent. Ce système faisait tourner une distribution de bureau Linux et nous avons réussi à la restaurer sur la nouvelle carte mère sans trop d'ennuis.

Fin 2005, j'ai commencé à travailler plus étroitement sur le projet pour partir d'un projet ponctuel d'une fois par semaine et arriver à 5 jours par semaine (nous avons depuis réduit à 4 jours par semaine pour permettre à d'autres travaux de prendre la place). L'un des projets sur lequel j'ai travaillé pendant mon bénévolat était la partie PHP/MySQL d'une base de données. La base de données a été assemblée à l'aide d'un script que j'avais trouvé. Ce projet fut le début de ce qui est devenu un Point De Vente PHP/MySQL (PDV) personnalisé, basé sur un projet Open Source existant: OSCommerce. Quelques mois après avoir commencé, nous avons eu la possibilité de déménager dans un bâtiment beaucoup plus spacieux. Pendant le temps d'arrêt, nous avons saisi l'occasion de mieux organiser le PDV. Un de nos techniciens informatique a développé l'interface, tandis qu'un programmeur que nous avons embauché pour une courte période travaillait sur le codage du POS.

2

We actually considered Microsoft Dynamics before hiring anyone for the project, but, at the time, it wasn’t available in Canada, and, even if it was available, we weren’t convinced that it would have given us the flexibility we needed. The decision to hire a programmer and develop the POS ourselves turned out to be a wise decision. The programmer we hired completed the project early, so early that we didn’t really get a chance to completely debug the application. But since we had access to the source code, and we had someone on staff who was better with PHP than me, we could debug the application without begging a third-party company to make changes. It also meant that even I, with my limited PHP/MySQL knowledge, could make minor changes to the code (which I’ve done over the years). For the past several years we’ve had a volunteer come in once a week and maintain the code for us. The volunteer has been cleaning up the code, making a few changes to the interface, and separating the code from the OSCommerce back end, so we can release the project as a completely independent FLOSS POS.

En fait, nous avons pensé à Microsoft Dynamics avant d'embaucher quelqu'un pour le projet, mais, à l'époque, il n'était pas disponible au Canada et, même s'il avait été disponible, nous n'étions pas convaincus que cela nous aurait donné la flexibilité dont nous avions besoin. La décision d'embaucher un programmeur et de développer le PDV nous-mêmes s'est avérée être une sage décision. Le programmeur que nous avons embauché a achevé le projet rapidement, si tôt que nous n'avions pas vraiment eu l'occasion de déboguer complètement l'application. Mais puisque nous avions l'accès au code source et que nous avions quelqu'un dans le personnel qui était meilleur que moi en PHP, nous pouvions déboguer l'application sans demander à une société tierce de faire les changements. Cela signifiait aussi que même moi, avec ma connaissance limitée de PHP/MySQL, je pouvais apporter des modifications mineures au code (ce que j'ai fait au fil des ans).

Depuis plusieurs années, nous demandons à un bénévole de venir une fois par semaine maintenir le code. Le bénévole nettoie le code, faisant quelques modifications à l'interface et détachant le code du socle OSCommerce, afin que nous puissions sortir le projet comme un PDV FLOSS (code source libre et gratuit), complètement indépendant.

As the project grew, we moved a lot of documentation to an Intranet I set up on a system using the Drupal CMS (Content Management System). The system holds a lot of forms and paperwork that volunteers need, as well as information about The Working Centre, the Computer Recycling Project, environmental regulations, safety processes, and processes for building, testing and repairing systems. One of our staff has since added a PXE network boot server on the same machine – to allow us to deploy a variety of Linux distributions. We also keep everyday tools on the PXE server including Darik’s Boot and Nuke (DBAN), memtest86+, HDT (Hardware Detection Tool), and Live Linux environments. Before the PXE boot server, volunteers were always asking me to burn a DBAN/memtest86/other tool CD. Now, volunteers either set up the computer to network boot in the BIOS, or use an Etherboot gPXE CD for systems that don’t support network booting in the BIOS. At the core of the Computer Recycling Project is a table with 8 workstations (7 running Xubuntu, 1 running Ubuntu). Each workstation is on a Keyboard Video Mouse (KVM) switch to allow volunteers to work on repairs or builds on the top, and search for information using the workstation below the table. On another table, we have a special system; a tower system with a couple of IDE and SATA controller cards in addition to the IDE and SATA ports on the motherboard. This system is used for DBAN-ing hard drives (we hate to say wiping hard drives because technically DBAN overwrites data on the drives). DBAN resides on our PXE server, so normally all volunteers have to do is hook up the hard drives, then turn on the DBAN machine. We jumper all IDE drives to cable-select – to make the process simpler for volunteers without a lot of computer building experience.

Au fur et à mesure que le projet grandissait, nous avons placé beaucoup de documentation sur un Intranet que j'ai mis en place sur un système utilisant Drupal CMS (Système de gestion de contenu). Le système contient un grand nombre de formulaires et de paperasserie dont les bénévoles ont besoin, ainsi que des informations sur le Working Center, le Projet de recyclage informatique, les réglementations environnementales, les processus de sécurité et les processus de construction, de tests et de réparation des systèmes. Un de nos collaborateurs a depuis ajouté un serveur de démarrage réseau PXE sur la même machine, pour nous permettre de déployer une variété de distributions Linux. Nous gardons également des outils de tous les jours sur le serveur PXE, y compris Darik's Boot and Nuke (DBAN), memtest86+, HDT (Hardware Detection Tool) et des environnements Live Linux. Avant le serveur de démarrage PXE, les bénévoles me demandaient toujours de graver un CD d'outils avec DBAN/memtest86+/autres. Maintenant, les bénévoles ou bien mettent en place le démarrage via le réseau dans le BIOS ou bien utilisent un CD Etherboot gPXE pour les systèmes dont le BIOS ne supporte pas le démarrage via le réseau .

Au cœur du Projet de recyclage informatique se trouve une table avec 8 postes de travail (7 tournant sous Xubuntu, 1 sous Ubuntu). Chaque poste de travail est sur un commutateur écran-clavier-souris (KVM) pour permettre aux bénévoles de travailler sur les réparations ou les constructions sur la table, et de rechercher des informations sur le poste de travail en dessous de la table. Sur une autre table, nous avons un système spécial ; un système en tour avec deux cartes contrôleur IDE et SATA en plus de l'IDE et des ports SATA sur la carte mère. Ce système est utilisé pour DBAN-er les disques durs (nous détestons dire nettoyer les disques durs parce que techniquement DBAN écrase les données sur les disques). DBAN réside sur notre serveur PXE, donc normalement tout ce que les bénévoles ont à faire est de brancher les disques durs, puis allumer la machine DBAN. Nous avons mis tous les cavaliers en position sélection-par-le-câble pour les disques IDE; pour rendre le processus plus simple pour des bénévoles sans beaucoup d'expérience en construction d'ordinateurs.

3

On the back wall behind the workstation table are 5 monitors and 4 KVM switches. The four monitors with KVM switches all have 4-port KVM switches, so up to 16 computers can be set up on the back wall. Normally, this counter is used only for things that take a bit more time: running memtest86+ on a system for example. The 5th monitor is connected to a small- form-factor computer running XBMCbuntu (a Linux+XBMC distribution) that replaced an aging stereo with a failing CD tray. In another area of Computer Recycling lies one of the more interesting work areas where 3 motherboards are mounted on the wall. These motherboards are used to test different types of RAM (currently we’re only testing DDR and DDR2 since we rarely see any older SDRAM or newer DDR3- based systems). These systems all boot off a multi-tool USB key created using Yumi multiboot USB creator. We’ve also started using Phoronix Test Suite to more accurately gather information about video card RAM at this work area. Phoronix Test Suite has a system-info switch to show information about a system, including Video RAM (VRAM) information. The project gets a lot of systems with video cards that don’t have VRAM information anywhere on the cards.

Sur le mur du fond derrière la table du poste de travail, on a 5 moniteurs et 4 commutateurs KVM. Les quatre moniteurs avec des commutateurs KVM ont tous des commutateurs KVM 4 ports ; ainsi, jusqu'à 16 ordinateurs peuvent être mis en place sur le mur du fond. Normalement, ce comptoir est utilisé seulement pour des choses qui prennent un peu plus de temps : exécuter memtest86+ sur un système, par exemple. Le 5ème moniteur est connecté à un ordinateur de petites dimensions tournant sous XBMCbuntu (une distribution Linux XBMC), qui a remplacé une stéréo vieillissante dont le plateau de CD était cassé.

Dans un autre endroit du service de recyclage des ordinateurs se trouve l'une des zones de travail les plus intéressants où 3 cartes mères sont montées sur le mur. Ces cartes mères sont utilisées pour tester différents types de RAM (actuellement nous ne testons que les DDR et DDR2, puisque nous voyons rarement les systèmes anciens avec de la SDRAM ou ceux, plus récents, avec de la DDR3). Ces systèmes démarrent tous à partir d'une clé USB multi-outil créée avec Yumi multiboot USB creator. Dans cette zone de travail, nous avons également commencé à utiliser Phoronix Test Suite pour recueillir plus précisément des informations sur la RAM de la carte vidéo. Phoronix Test Suite a une option system-info pour afficher des informations sur un système, y compris des informations sur la mémoire vidéo (VRAM). Le projet reçoit beaucoup de systèmes équipés de cartes vidéo qui n'ont pas d'informations VRAM écrites dessus.

Without question, Free Libre Open Source Software has helped the project, and every year our organization budgets a small amount of money to give back to a few open source projects. Being able to look at the code has helped the project adapt to changes over the years. When (in Canada) Goods and Services Tax (GST) and Provincial Sales Tax (PST) became a single Harmonized Sales Tax (HST), I was able to make the changes necessary to keep information on our POS about previous sales and deal with the new tax setup. One of our volunteers has updated the POS several times so we can show different reports we need to see. LOSS has saved us the cost of upgrading software licenses every few years. One of the side effects of having Linux on the computers used by volunteers is the change in attitude of many of the volunteers from indifference towards FLOSS to one of appreciation. Volunteers see just how easy Linux installs on many of the systems we work with. When a volunteer does get stuck, it’s usually because of a hardware fault in the equipment they’re working with. Many volunteers have come in knowing nothing about Linux, and they now support people who arrive with Linux- related questions, or help recommend Libre software on other platforms. And it’s because of FLOSS and the work of volunteers that we’re able to help a lot of people without good access to technology.

Sans aucun doute, le Free Libre Open Source Software a aidé le projet et, chaque année, notre organisation prévoit une petite somme d'argent pour soutenir quelques projets Open Source. La possibilité d'accéder au code a aidé le projet à s'adapter aux changements au fil des ans. Quand (au Canada) la Goods and Services Tax (GST) et la Provincial Sales Tax (PST) sont devenues un e seule etunique Harmonized Sales Tax (HST), j'ai pu faire les changements nécessaires pour conserver les informations relatives aux ventes antérieures sur notre PDV et gérer la nouvelle mise en place des taxes. Un de nos bénévoles a mis à jour le PDV à plusieurs reprises afin que nous puissions montrer différents rapports que nous devons pouvoir consulter. Le FLOSS nous a épargné le coût de la mise à niveau des licences de logiciels tous les deux ou trois ans.

Un des effets secondaires d'avoir Linux sur les ordinateurs utilisés par les bénévoles est le changement d'attitude de la plupart des bénévoles de l'indifférence envers FLOSS vers son appréciation. Les bénévoles voient avec quelle facilité Linux s'installe sur la plupart des systèmes avec lesquels nous travaillons. Lorsqu'un bénévole reste réellement coincé, c'est généralement à cause d'une défaillance matérielle dans l'équipement sur lequel il travaille. De nombreux bénévoles sont venus ignorant tout de Linux et ils aident maintenant les gens qui arrivent avec des questions liées à Linux ou recommandent des Logiciels libres sur d'autres plateformes. Et c'est à cause de FLOSS et du travail des bénévoles que nous sommes en mesure d'aider un grand nombre de personnes n'ayant pas un bon accès à la technologie.

RESOURCES : The Working Centre’s Computer Recycling Project - http://www.theworkingcentre.org/computer-recycling/178 WCLP (uses a very old kernel, out of date) - http://wclp.sourceforge.net/ RULE (tribute site) - http://rule.zona-m.net/ SAMBA - http://www.samba.org/ Memtest86+ - http://www.memtest.org/ Darik’s Boot and Nuke (DBAN) - http://www.dban.org/ HDT - http://www.hdt-project.org/ Etherboot/gPXE - etherboot.org/wiki/index.php XBMC - http://www.xbmc.org/ Yumi multiboot USB creator - http://www.pendrivelinux.com/yumi-multiboot-usb-creator/

Documents: Projet de recyclage informatique du Working Center : http://www.theworkingcentre.org/computer-recycling/178 WCLP (utilise un noyau très vieux, obsolète) : http://wclp.sourceforge.net/ RULE (site hommage) : http://rule.zona-m.net/ SAMBA : http://www.samba.org/ Memtest86+ : http://www.memtest.org/ Darik’s Boot and Nuke (DBAN) : http://www.dban.org/ HDT : http://www.hdt-project.org/ Etherboot/gPXE : etherboot.org/wiki/index.php XBMC : http://www.xbmc.org/ Yumi multiboot USB creator : http://www.pendrivelinux.com/yumi-multiboot-usb-creator/

issue79/labo_linux.txt · Dernière modification : 2014/04/05 13:47 de auntiee