Vous êtes dans la categorie Linux

Mémo : les commandes GNU / Linux de base à savoir

Rédigé par fab1 aucun commentaire

Lorsque l'on commence avec Linux, ce n'est pas toujours très simple au début, pour passer la première "barrière de la langue", je vous propose un petit mémento listant les commandes GNU / Linux de base qui vous seront probablement très utiles si vous êtes un peu perdu avec votre distribution, d'ailleurs j'ai utilisé une Lubuntu pour utiliser l'ensemble des lignes de commandes renseignées dans ce mémo.

Mémento : les commandes GNU / Linux qu'il faut connaître

Se déplacer dans le système de fichiers

Changer de répertoire :

cd

Accéder directement au répertoire :

cd /var/www/html 

Remonter dans l’arborescence des fichiers

cd ..

Afficher et lister les données d'un répertoire

Liste les éléments d'un répertoire :

ls -l

Une variante plus courte qui permet d'obtenir l'ensemble des détails

ll

Le listage est copié dans un fichier texte :

ls > maliste.txt

Le copier - coller en ligne de commande :

Copier le fichier dans un répertoire de destination :

cp mondossier/monfichier.txt dossier/

Copie complète d'un dossier dans un autre répertoire :

cp -r mondossier/ copiedemondossier/ 

Déplacer des fichiers

Déplace le fichier dans un autre répertoire :

mv mondossier/monfichier.txt mondossier/

Renommer un fichier

Renomme le fichier et le colle dans le répertoire courant, il est possible de préciser un autre répertoire de destination :

mv monfichier.txt monfichier2.txt

Supprimer des fichiers

Supprime un dossier et l'ensemble de son contenu :

rm -rv

Se placer dans un répertoire puis lancer cette ligne de commande qui permet de supprimer l'ensemble des fichiers à l'intérieur :

rm -rf *

Cette ligne de commande permet de supprimer l'ensemble des fichiers dans un dossier

rm -rf repertoire/*

Supprime l'ensemble des fichiers mp3 du répertoire courant (cette commande montre comment utiliser un motif à la manière des expressions régulières) :

rm *.mp3

Création d'un fichier / répertoire

Créer un fichier dans le répertoire courant :

touch monfichier.txt

Créer 10 fichiers avec le même nom de base :

touch fichier{1..10}.txt

Création d'un répertoire :

mkdir monrepertoire

Supprimer un répertoire :

rmdir monrepertoire

Ligne de commande diverses

Afficher le contenu d'un fichier :

cat fichier.txt

Connaitre le type d'un fichier :

file fichier.txt

Affiche le nombre de lignes, nombre caractères d'un fichier :

wc monfichier.txt

Afficher les différences entre deux fichiers :

diff monfichier.txt monfichier2.txt

Afficher les lignes qui contiennent echo dans le fichier :

grep "echo" index.php

Classé dans : Linux

Installer et configurer un serveur FTP avec Pure-ftpd sous Ubuntu / Lubuntu

Rédigé par fab1 aucun commentaire

Vous venez d'installer un serveur Apache sur votre distribution Ubuntu ou Lubuntu, mais après cette étape, il devient rapidement nécessaire d'installer un serveur FTP. En effet, il est alors beaucoup plus simple d'administrer ses fichiers sur le serveur web. Si vous êtes dans le même cas que moi et que votre serveur Apache tourne sur une machine virtuelle, vous n'allez à chaque fois vous rendre sur la machine virtuelle pour éditer vos fichiers web. Le problème se pose encore plus si êtes en train de développer une application et que vous réalisez de nombreuses modification.

De plus, vous n'avez pas accès directement à la machine en permanence et de toute façon votre environnement de développement se trouve peut être sous Windows avec des applications qui ne sont pas disponibles sous Linux. Bref, il nous faut un serveur FTP et c'est ce que nous allons voir dans cet article avec un tutoriel pour installer Pure-ftpd sous Ubuntu / Lubuntu ou une distribution proche compatible.

Nous allons voir qu'avec Pure-ftpd la procédure est vraiment très simple même si il faut passer par l'utilisation de quelques lignes de commandes. Rassurez vous c'est vraiment très simple et vous allez pouvoir mettre en place un serveur FTP très rapidement grâce à Pure-ftpd sous Linux. Pour réaliser ce tutoriel j'ai utilisé les distributions Ubuntu et Lubuntu mais il y a de forte chances pour que ce soit fonctionnel sous Debian, Xubuntu, Kubuntu et d'autres. Pour rappel, pour effectuer l'ensemble des ligne de commande il faudra être sous l'utilisateur root qui est accessible à l'aide de la commande suivante dans un terminal :

sudo -s

On va donc maintenant s'attaquer à l'installation de notre serveur FTP sous Linux avec la commande suivante sous root :

apt-get install pure-ftpd pure-ftpd-common

Pure-ftpd va alors s'installer sur votre distribution Linux et il faut savoir que l'ensemble des fichiers de configuration se trouvent alors dans le dossier : /etc/pure-ftpd/

Nous allons créer un utilisateur/groupe système pour notre serveur FTP, si tout se passe bien les commandes suivantes devaient normalement s’exécuter sans problème dans votre terminal sous root :

groupadd ftpgroup
useradd -g ftpgroup -d /dev/null -s /etc ftpuser

Ensuite, il faut désactiver l’authentification PAM système pour passer sur une authentification avec des utilisateurs virtuels, celle offre bien évidemment une meilleure sécurité pour votre serveur FTP. Il faut aller modifier le fichier /etc/pure-ftpd/conf/PAMAuthentication à l'aide de votre éditeur de texte préféré, cela est possible à l'aide de la commande suivant ou il faudra renseigner "no" dans le fichier.

leafpad /etc/pure-ftpd/conf/PAMAuthentication
no

Cela à pour conséquence de passer la valeur à "yes" dans le fichier de configuration DontResolve qui est faisable à l'aide de la commande suivante :

leafpad /etc/pure-ftpd/conf/DontResolve
yes

Il faut ensuite réaliser la partie des utilisateurs virtuels et cela commence avec la création du fichier 50puredb pour faire le lien. Placez vous dans le répertoire /etc/pure-ftpd/auth/ et réalisez les lignes commande suivante :

cd /etc/pure-ftpd/auth/

ln -s ../conf/PureDB 50puredb

C'est presque terminé maintenant, il ne reste plus qu'à créer le dossier pour votre utilisateur pour de le renseigner à l'aide des commandes suivantes. Un mot de passe vous sera évidemment demandé pour l'authentification de cet utilisateur virtuel.

mkdir /var/www/leprojet
chown -R ftpuser:ftpgroup /var/www/leprojet
pure-pw useradd nomutilisateur -u ftpuser -g ftpgroup -d /var/www/leprojet

Pour vérifier que l'utilisateur virtuel de votre serveur FTP à bien été crée vous pouvez lancer la commande suivante qui va vous permettre de lire le fichier contenant les utilisateurs. Si vous trouvez le nom d'utilisateur dedans, c'est que la création s'est bien passé. Essayez donc :

cat /etc/pure-ftpd/pureftpd.passwd

Enfin pour terminer l'installation, il faut que ce fichier contenant les utilisateurs soit dans un format sécurisé et lisible par le serveur FTP, cela se fait via la ligne de commande suivante :

pure-pw mkdb

Vous pouvez alors redémarrer votre serveur FTP et essayer via votre client FTP si la connexion est possible :

/etc/init.d/pure-ftpd restart

C'est terminé pour l'installation de votre serveur FTP sous Linux, avec le service Pure-ftpd c'est comme vous le voyez vraiment très simple à mettre en place. Il reste toutefois quelques petites commandes à connaitre pour terminer avec Pure-ftpd. On commence avec la liste des utilisateurs disposant d'un compte FTP :

pure-pw list

La ligne de commande pour changer le mot de passe d'un utilisateur FTP :

pure-pw passwd nomutilisateur

La ligne de commande pour supprimer un compte FTP de Pure-ftpd :

pure-pw userdel nomutilisateur

Classé dans : Linux

Serveur LAMP : installer et configurer phpMyAdmin sous Ubuntu / Lubuntu

Rédigé par fab1 aucun commentaire

Une fois que vous avez installé votre serveur LAMP sous votre distribution Linux préférée, vous avez peut être envie d'avoir une interface graphique pour pouvoir gérer votre base de données MySQL, ce qui est il faut bien l'avouer, bien plus pratique. Comme vous le savez probablement il existe plusieurs solutions pour visualiser et exploiter de façon graphique votre base de données MySQL. Je ne vais pas être très original et ce tutoriel va vous montrer comment installer et surtout configurer l'outil phpMyAdmin qui est de loin le plus utilisé dans ce domaine.

Sous Linux, ce n'est pas aussi simple que d'installer un WampServer ou un EasyPHP sous Windows qui proposent directement phpMyAdmin avec la bonne configuration qui va bien. Sous Linux, ce n'est pas beaucoup plus compliqué finalement mais cela nécessite tout de même quelques manipulations.

Pour ceux qui débarquent un peu dans ce domaine, cette configuration fonctionne parfaitement dans un environnement Ubuntu / Lubuntu et donc si vous choisissez l'une de ces distributions vous avez l'assurance que cela ne vous posera pas de problèmes. On commence avec l'installation de phpMyAdmin via la ligne de commande suivante, il faudra bien évidemment faire l'ensemble de ces manipulations sous l'utilisateur root :

apt-get install phpmyadmin

Ensuite une fois le paquet installé, si vous souhaitez accéder à http://localhost/phpmyadmin/ ou http://127.0.0.1/phpmyadmin/ vous allez constater que cela ne fonctionne pas encore, même si votre serveur Apache est bien démarré. Il faut alors réaliser une petite étape de configuration qui est vraiment très simple. Il faut alors éditer le fichier /etc/apache2/apache2.conf qui comme son nom l'indique est un fichier de configuration pour votre serveur Apache2. Pour l'ouvrir sous Lubuntu, vous devez alors taper la ligne de commande suivante en étant sous l'utilisateur root :

leafpad /etc/apache2/apache2.conf

Dans ce fichier il suffit alors d'ajouter cette simple ligne à la fin :

Include /etc/phpmyadmin/apache.conf

Enfin il faut redémarrer votre serveur Apache avec la ligne de commande suivante toujours avec root :

/etc/init.d/apache2 restart

Normalement, si vous avez bien respecté les différentes étapes, vous pouvez maintenant joindre phpMyAdmin aux adresses http://localhost/phpmyadmin/ ou http://127.0.0.1/phpmyadmin/ selon votre configuration à ce niveau

Classé dans : Linux

Comment passer par un serveur proxy avec mot de passe sous Linux avec Debian, Ubuntu ou Lubuntu

Rédigé par fab1 aucun commentaire

Je n'avais encore jamais eu cette problématique, mais après mon arrivée dans une entreprise qui utilisait un serveur proxy, ce qui semble logique, ma pauvre petite distribution Linux fraichement installée en machine virtuelle était incapable de télécharger des mises à jour, d'installer de nouveaux paquets via apt-get, ou encore de naviguer sur Internet. C'est bien dommage surtout si l'on veut s'en servir comme serveur Apache par exemple, il est nécessaire d'aller récupérer le paquet avec un classique apt-get install apache2 que vous connaissez surement si vous êtes arrivés jusqu'ici.

Il faut donc passer par le proxy de l'entreprise (ou celui de votre cas particulier) pour pouvoir joindre le réseau extérieur, ce qui est bien évidemment nécessaire pour récupérer ce dont nous avons besoin pour notre projet. Ici nous allons nous intéresser à Debian et donc Ubuntu, Lubuntu et cela devrait à priori marcher aussi pour les autres distributions issues de Debian (je n'ai pas essayé pour celles qui ne sont pas mentionné). Le problème, c'est que certaines distributions de Linux ne proposent pas de belle petite interface graphique, en fait c'est souvent le cas. Pour ma machine sous Debian ainsi que celle sous Lubuntu, pas d'interface graphique et il va donc falloir faire autrement, à savoir modifier les fichiers de configurations en dur.

On commence donc avec la première étape, qui va nous permettre de modifier le comportement de apt-get et le forcer à utiliser notre serveur proxy avec authentification. Il faut donc aller créer le fichier /etc/apt/apt.conf.d/proxy via une petite commande : touch proxy.

Ensuite on lui ajoute les informations suivantes :

Acquire::http::Proxy "http://login:motdepasse@adresseproxy:port/";
Acquire::https::Proxy "https://login:motdepasse@adresseproxy:port/";
Acquire::ftp::Proxy "ftp://login:motdepasse@adresseproxy:port/";
Acquire::socks::Proxy "socks://login:motdepasse@adresseproxy:port/";

Après on s'attaque à un autre fichier qui est présent à la racine de etc/, il s'agit de /etc/wgetrc, il faut alors ajouter à la fin de ce fichier les informations suivantes :

http_proxy = http://adresseproxy:port/
https_proxy = http://adresseproxy:port/
ftp_proxy = http://adresseproxy:port/
proxy_user = leLogin
proxy_password = leMotDePasse
use_proxy = on
wait = 15

Enfin nous passons à la dernière la dernière étape qui consiste à modifier le fichier /etc/environment où il faut ajouter les informations suivantes :

HTTP_PROXY="http://login:motdepasse@adresseproxy:port/";
HTTPS_PROXY="http://login:motdepasse@adresseproxy:port/";
FTP_PROXY="http://login:motdepasse@adresseproxy:port/";

A partir de la vous pourrez normalement faire fonctionner Synaptic à travers le serveur proxy et vous pourrez aussi réaliser l'ensemble de vos apt-get pour récupérer l'ensemble de ce vous avez besoin pour commencer à utiliser votre distribution Debian, ou Ubuntu, Lubuntu et etc.

Attention, il faudra peut être refaire encore de la configuration pour aller sur Internet via Firefox par exemple, chez moi il a fallu que je renseigne à nouveau les informations du serveur proxy dans Firefox pour pouvoir aller sur internet, mais ce sera l'objet d'un autre article.

EDIT : Vous pouvez avoir une petite variante selon les distributions notamment avec XFCE, dans certains cas, votre fichier /etc/environment devra alors ressembler à quelque chose de plus complet comme :

http_proxy=http://myproxy.server.com:8080/
https_proxy=http://myproxy.server.com:8080/
ftp_proxy=http://myproxy.server.com:8080/
no_proxy="localhost,127.0.0.1,localaddress,.localdomain.com"
HTTP_PROXY=http://myproxy.server.com:8080/
HTTPS_PROXY=http://myproxy.server.com:8080/
FTP_PROXY=http://myproxy.server.com:8080/
NO_PROXY="localhost,127.0.0.1,localaddress,.localdomain.com"

Classé dans : Linux