|
Il y a actuellement 2 visiteurs connectés sur le site !
Commandes Linux qui peuvent vous faciliter la vie
|
Commandes Linux qui peuvent vous faciliter la vie
|
|
Introduction
A l'époque des interfaces graphiques et du cliquodrome, il est étonnant de voir comment la ligne de commande est appréciée des informaticiens, grâce à sa rapidité et a sa simplicité.
Cette article vous montrera comment utiliser des commandes de base, diverses et de tout niveaux, afin de vous faciliter la vie .
Redirections et pipes
Le symbole >> (double supérieur) permet de rediriger le contenu d'un canal à la fin d'un fichier, ce fichier étant créé s'il n'existe pas :
Exemple
ls -la > /tmp/fichier.log; dmesg >> /tmp/fichier.log
Ce qui aura pour effet de placer le résultat de la commande ls -la dans /tmp/fichier.log et d'y ajouter le résultat de dmesg
ps -A | grep syslog
Cette commande demande quelques explications:
ps -aux affiche la liste des processus en cours, et grep permet de rechercher une chaine de caractère dans un fichier ,
donc cette commande affichera le résultat de la recherche par grep du processus nommé syslog parmi tous les autres processus
ps -A | grep syslog || echo "dommage"
Même commande que précédemment, sauf que si la première ne fonctionne pas (pas de syslog dans la liste des processus), eh bien on affiche : dommage
Il s'agit d'un double pipe
Droits sur un fichier
Vous venez de créer un script et surprise vous n'avez pas les droits nécessaires à son exécution:
chmod u+x fichier.sh
permettra de lancer votre script
Vous souhaitez modifier des droits non seulement sur un répertoire mais aussi à tout son contenu (fichiers et sous-répertoire)
chmod -R 755 rep/
est votre ami
chattr -i fichier.txt
empêche le fichier d'être modifié ou supprimé
Manipuler des fichiers
La commande file permet de déterminer le type de contenu du fichier
file windows.gif
windows.gif: GIF image data, version 89a, 69 x 66
la commande diff permet de comparer le contenu de deux fichiers ou deux répertoires et affiche les changements
tail -f /var/log/messages
permettra de mettre le fichier messages en surveillance, chaque ligne nouvelle apparaissant à l'écran, vous êtes
en mesure de surveiller en direct vos logs système
tar cvf archive.tar monrep
archivera le répertoire monrep en le nommant archive.tar
Pour compresser cette archive employez la commande
gzip archive.tar
ce qui donnera un fichier archive.tar.gz
tar cvfz permettra d'archiver et de zipper le fichier en une seule commande
Renommer par lots
Si vous disposez d'un grand nombre de fichiers à renommer , disons de pics en photo_de_famille-
la commande suivante devrait faire l'affaire :
for i in pics*; do mv $i `echo $i | sed "/^pics/$//photo_de_famille-/"`;done
Et pour changer l'extension des fichiers de jpeg à jpg
for i in *.jpeg; do mv $i `echo $i | sed "/.jpeg/s//.jpg/"`;done
Gestion des paquetages
Il est intéressant de savoir si le paquetage recherché est déjà installé:
rpm -q monpaquet
fera la recherche nécessaire
IL est tentant d'examiner la liste de tout ce que contient ce paquetage
rpm -ql monpaquet
Pour obtenir la liste des fichiers de configuration
rpm -qc monpaquet
Pour savoir a quel paquetage appartient un fichier
rpm -qf monfichier
Les services inutiles
Certains services sont inutiles selon ce que vous faites de votre machine , il est alors préférable de les désactiver.
alsa: pour gérer le son , inutile pour un système sans carte son
avahidaemon : permet de réaliser un type de réseau simplifié de type zeroconf
inutile si pas de réseau, ou bien en dhcp ou adresses fixes
hplip :inutile sans imprimante HP
messagebus : dbus, système de communication entre applications, de plus en plus de programmes l'emploient
donc à désactiver avec précaution
saslauthd : démon du serveur d'authentification SASL , à désactiver si non utilisé
Se connecter via ssh
Pour se connecter à une machine distante
ssh login@machinedist
ou la machine distante peut être le nom de la machine ou son adresse ip
Si vous avez le même login sur les deux machines , saisissez simplement:
ssh machinedist
Pour transférer des fichiers de la machine locale à la machine distante:
scp fichier1 fichier2 fichier3 machinedist:
et pour un répertoire
scp -r répertoire machinedist:
A présent, si vous voulez changer le nom du fichier en cours de route
scp fichier.txt machinedist:truc.txt
Pour transférer des fichiers de la machine distante à la machine locale:
scp machinedist:fichier.txt
Quelques commandes de pare-feu utiles
Voici quelques exemples de règles qui peuvent vous être utile
iptables -t nat -I PREROUTING -p tcp --dport ftp -j DNAT --to-destination 192.168.0.2
Le firewall filtre votre réseau et vous disposez d'une machine en réseau (192.168.0.2) ou tourne un serveur ftp
Pour rediriger les requêtes sur le firewall vers le PC interne.
iptables -I INPUT -p udp --dport 1234 -j REJECT
empêchera les connexions vers le port udp 1234 en entrée
Connaître sa configuration
La commande lspci -n permet de connaître pas mal d'informations sur vos cartes pci
lsusb permet d'obtenir la liste des périphériques usb
Pour filtrer la liste des processus ps -ef | grep
Pour tuer un processus gênant kill -9 numéro_du_processus trouvé avec la commande précédente
Problème de disque dur
La commande e2fsck -fvy permet de forcer la correction automatique des systèmes de fichier ext2 et ext3 pour une partition non montée (avec un livecd par exemple)
mke2fs -n /dev/xxxy
est utile en cas de problème de superblocs
Manipulations d'images
On peut facilement convertir des images en ligne de commande grâce à imageMagick
,par exemple pour convertir du format gif au png
convert image.gif image.png
et l'image d'origine n'est pas écrasée
mogrify -format png *.jpg
ceci convertira un lot d'images .jpg en png en conservant le nom de base
On peut aussi réduire des images ,par exemple pour une réduction de 80%
convert -resize 80% image.png image2.png
mogrify -resize x480 *.png
redimentionnera les images png aux dimensions indiquées
Source de l'article
|