Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente |
issue128:labo_linux [2018/01/10 19:19] – frangi | issue128:labo_linux [2018/01/16 15:56] (Version actuelle) – andre_domenech |
---|
** | ** |
| |
Un de nos bénévoles de Computer Recycling recherchait une démarche intellectuelle un peu différente de celle de nos monteurs-démonteurs-dépanneurs habituels. Ce bénévole avait récupéré un livre sur L'administration système de Linux,dans l'espoir d'en apprendre plus sur la gestion des systèmes. C'est un peu en dehors de ce que nous faisons habituellement, mais après y avoir réfléchi un peu, j'ai pensé que cela pourrait aider cette personne à trouver de nouvelles opportunités. Le poste de travail sur lequel il travaille souvent tourne sous Windows 10. Nous aurions pu configurer un environnement de développement complet dans un serveur virtuel sous Windows 10, mais l'utilisateur souhaitait travailler sur Linux, nous avons donc configuré un environnement à double amorçage. | Un de nos bénévoles de Computer Recycling recherchait une démarche intellectuelle un peu différente de celle de nos monteurs-démonteurs-dépanneurs habituels. Ce bénévole avait récupéré un livre sur L'administration système de Linux, dans l'espoir d'en apprendre plus sur la gestion des systèmes. C'est un peu en dehors de ce que nous faisons habituellement, mais après y avoir réfléchi un peu, j'ai pensé que cela pourrait aider cette personne à trouver de nouvelles opportunités. Le poste de travail sur lequel il travaille souvent tourne sous Windows 10. Nous aurions pu configurer un environnement de développement complet dans un serveur virtuel sous Windows 10, mais l'utilisateur souhaitait travailler sur Linux, nous avons donc configuré un environnement à double amorçage. |
| |
Au départ, nous avions prévu d'installer Linux Mint 18.2 (j'avais précédemment fait une clé USB multi-boot en utilisant la version Windows de l'outil YUMI), mais Linux Mint ne pouvait pas voir le disque dur, il détectait seulement la clé USB. Mon deuxième instinct a été d'essayer Kubuntu (parce que nous sommes habitués à Xubuntu, et il est parfois agréable d'étudier un ensemble de logiciels différent), mais Kubuntu a semblé geler le démarrage à partir de la clé. Unity n'a jamais été mon environnement de bureau préféré, mais, à la surprise de tous les deux, il fonctionnait très bien sur la machine, et n'avait aucun problème à détecter et à partitionner le disque dur. En fait, c'était l'une des installations les plus fluides que j'ai faites depuis un certain temps. | Au départ, nous avions prévu d'installer Linux Mint 18.2 (j'avais précédemment fait une clé USB multi-boot en utilisant la version Windows de l'outil YUMI), mais Linux Mint ne reconnaissait pas le disque dur, il détectait seulement la clé USB. Ma deuxième idée a été d'essayer Kubuntu (parce que nous sommes habitués à Xubuntu, et il est parfois agréable d'étudier un ensemble de logiciels différent), mais Kubuntu a semblé geler le démarrage à partir de la clé. Unity n'a jamais été mon environnement de bureau préféré, mais, à la surprise de tous les deux, il fonctionnait très bien sur la machine, et n'avait aucun problème à détecter et à partitionner le disque dur. En fait, c'était l'une des installations les plus fluides que j'ai faites depuis un certain temps. |
| |
** | ** |
| |
Le matériel: | Le matériel: |
• carte mère Gigabyte Z68P-DS3 | • carte mère Gigabyte Z68P-DS3. |
• CPU Intel Core i5-2400 (4 coeurs) | • CPU Intel Core i5-2400 (4 coeurs). |
• Mémoire 4GB DDR3 | • Mémoire 4GB DDR3. |
• Disque 400GB Western Digital WD4000AAKS-0 | • Disque 400GB Western Digital WD4000AAKS-0. |
• Carte vidéo NVidia Quadro FX580 (512MB) | • Carte vidéo NVidia Quadro FX580 (512MB). |
• Ecran Dell SP2309W 23" LCD de résolution 2048x1152 | • Ecran Dell SP2309W 23" LCD de résolution 2048x1152. |
| |
C'est peu impressionnant par rapport aux normes actuelles, mais étant donné que nous continuons à construire des systèmes Core 2 Duo et Core 2 Quad, il avait un peu plus de puissance que certains des systèmes que nous utilisons encore chez Computer Recycling. | C'est peu impressionnant par rapport aux normes actuelles, mais étant donné que nous continuons à construire des systèmes Core 2 Duo et Core 2 Quad, il avait un peu plus de puissance que certains des systèmes que nous utilisons encore chez Computer Recycling. |
| |
====== 2 ===== | ====== 2 ===== |
| |
** | ** |
One of the adjustments we made was to set up the server's network adapter in "bridged" mode. In bridged mode, we'd be able to access the Ubuntu server session from the same subnet. We gave the server a name, and jotted down the administrative username and password (for the server, not the desktop). During the server setup, we chose to install SSH, but not LAMP. We could have installed LAMP, but I knew installing afterwords is a simple matter of running tasksel again. As it turns out, that was a good idea because, on first try, we couldn't SSH into the server, this was when we discovered we needed to set the network adapter to bridged mode. | One of the adjustments we made was to set up the server's network adapter in "bridged" mode. In bridged mode, we'd be able to access the Ubuntu server session from the same subnet. We gave the server a name, and jotted down the administrative username and password (for the server, not the desktop). During the server setup, we chose to install SSH, but not LAMP. We could have installed LAMP, but I knew installing afterwords is a simple matter of running tasksel again. As it turns out, that was a good idea because, on first try, we couldn't SSH into the server, this was when we discovered we needed to set the network adapter to bridged mode. |
w3m http://portalpage/ | w3m http://portalpage/ |
** | ** |
| |
| L'un des réglages que nous avons faits a été de configurer la carte réseau du serveur en mode « bridge ». Avec ce mode, nous devrions être en mesure d'accéder à la session du serveur Ubuntu à partir du même sous-réseau. Nous avons donné un nom au serveur et noté le nom de l'utilisateur d'administration et son mot de passe (pour le serveur, pas pour l'ordinateur de bureau). Lors de la configuration du serveur, nous avons choisi d'installer SSH, mais pas LAMP. Nous aurions pu installer LAMP, mais je savais que l'installer plus tard serait simplement de lancer de nouveau tasksel. Et il s'est avéré que c'était une bonne idée parce que, au premier essai, nous ne pouvions pas ouvrir de session SSH vers le serveur, c'est à ce moment que nous avons découvert que nous avions besoin de mettre la carte réseau en bridge. |
| |
| Ensuite, nous avons mis à jour le logiciel serveur ; cela s'est avéré être un peu plus difficile puisque le réseau sur lequel nous travaillons comporte un portail captif. Pour ceux qui ne le savent pas, un portail captif est une page de connexion qui empêche l'accès à un réseau (Internet dans ce cas) jusqu'à ce qu'une personne effectue une action dictée par la page (dans notre cas, entrer un nom d'utilisateur et un mot de passe). Sur l'ordinateur de bureau, ce n'est pas un problème ; Nous ouvrons simplement Firefox, chargeons la page et nous nous connectons. Sur le serveur Ubuntu, c'est un peu plus un problème car nous n'avions pas de navigateur installé. Ainsi, pendant un bref instant, j'ai ajouté le serveur à un réseau sans portail captif afin que nous puissions télécharger w3m (un navigateur textuel). Puis j'ai rebranché le système dans le réseau captif. Pour simplifier la connexion à la page du portail captif, j'ai écrit un script bash très simple : |
| |
| #!/bin/bash |
| |
| w3m http://portalpage/ |
| |
** | ** |
After this, we ran updates on the server and installed the LAMP stack using tasksel. During the LAMP installation, we wrote down the mysql root password. Over the virtual server, we wanted to give the volunteer complete control. We also exported the server appliance so the volunteer could eventually work on the same server environment on another machine if they chose. Exporting the server also provided a kind of backup for the server if it got messed up (though we also snapshotted and cloned the server appliance). Of course, until that appliance is moved to another drive, it's not a real backup. | After this, we ran updates on the server and installed the LAMP stack using tasksel. During the LAMP installation, we wrote down the mysql root password. Over the virtual server, we wanted to give the volunteer complete control. We also exported the server appliance so the volunteer could eventually work on the same server environment on another machine if they chose. Exporting the server also provided a kind of backup for the server if it got messed up (though we also snapshotted and cloned the server appliance). Of course, until that appliance is moved to another drive, it's not a real backup. |
** | ** |
| |
| L'URL de la page du portail est plutôt complexe, et même si le bénévole aurait pu écrire w3m http://portalpage/ (l'URL était en fait beaucoup plus longue), il semblait plus simple de taper quelque chose comme ./portal.sh (le nom du script bash). Le script a réussi et nous avons pu passer la page du portail, mais l'un des trucs de w3m est qu'il faut appuyer sur ENTREE pour entrer et sortir de chaque champ (nom d'utilisateur et mot de passe). |
| |
| Après cela, nous avons exécuté des mises à jour sur le serveur et installé la pile de logiciels LAMP en utilisant tasksel. Au cours de l'installation de LAMP, nous avons noté le mot de passe d'administration de mysql. En plus du serveur virtuel, nous voulions donner le contrôle complet au bénévole. Nous avons également exporté la machine serveur afin que le volontaire puisse éventuellement travailler sur le même environnement de serveur sur une autre machine s'il le souhaitait. L'exportation du serveur a également fourni une sorte de sauvegarde pour le serveur au cas où ça se passerait mal (bien que nous ayons également fait un snapshot et un clone du serveur). Bien sûr, tant que cette machine virtuelle n'est pas déplacée sur un autre disque, ce n'est pas une véritable sauvegarde. |
| |
** | ** |
It's a start, but we probably need to create some visuals to help understand everything that's going on. I’m not a programmer, database expert, nor scripting expert, but one of the things I love about Linux is that, with a bit of looking around (and some help from a mentor), anyone can learn a bit about running a server, learning to program, or working with databases. | It's a start, but we probably need to create some visuals to help understand everything that's going on. I’m not a programmer, database expert, nor scripting expert, but one of the things I love about Linux is that, with a bit of looking around (and some help from a mentor), anyone can learn a bit about running a server, learning to program, or working with databases. |
** | ** |
| |
| De retour sur l'ordinateur de bureau, nous avons installé Atom pour éditer le code et Filezilla pour le transfert des fichiers. À ce stade, nous avons eu une brève discussion sur les permissions et l'emplacement du fichier index.html par défaut sur Apache. J'ai l'habitude d'utiliser vi pour les petites modifications (en fait, je n'ai jamais utilisé Atom, mais il semble être bien aimé). |
| |
| À ce stade, le bénévole s'entraîne à faire du SSH sur le serveur et exécute des commandes *NIX simples : cd, cp, ls, pwd, less. Nous avons regardé la page Web par défaut d'Apache, modifié le fichier index.html, l'avons déplacé vers un autre fichier et créé un index.php avec la fonction phpinfo() pour montrer que PHP fonctionnait sur le serveur. |
| |
| Le jour suivant, nous avons tranquillement vérifié la connexion à MySQL et en exécutant quelques commandes sur une base de données d'employés de démonstration que vous pouvez télécharger sur le site Web de MySQL : https://dev.mysql.com/doc/employee/en/. Introduire MySQL à ce moment-là était probablement un peu trop pour le bénévole parce que, revenant de ma pause déjeuner, j'ai trouvé le bénévole devant une ligne bash essayant les commandes, mais celles-ci échouaient car elles ne comportaient pas d'espaces entre les commandes et leurs arguments. |
| |
| C'est un début, mais nous devons probablement créer des visuels pour aider à comprendre tout ce qui se passe. Je ne suis ni programmeur, ni expert en bases de données, ni expert en script, mais l'une des choses que j'aime chez Linux est que, avec un peu de recherche (et un peu d'aide d'un expert), tout le monde peut apprendre un peu comment faire tourner un serveur, programmer ou travailler avec des bases de données. |
| |