Quelques astuces pour Ubuntu et Linux en général

logo Ubuntu

Pourquoi cette page?

Si vous venez de Windows, alors un temps d'adaptation sera nécessaire. Il faudra trouver les astuces et fonctions spécifiques à Ubuntu et à GNU/Linux. J'ai donc créé cette page pour vous aider.
En tout cas, sachez qu'elle m'aide énormément à moi même, cette page.

Retour sommaire


Les raccourcis clavier

La plus part des raccourcis claviers sont communs à Ubuntu et à Windows, comme les plus communs :

Ceux-ci sont bien pratiques aussi :

(Note : sous Linux, le nom des fichiers cachés commencent par un point, rajouter ou supprimer un point en début de nom permet de rendre un fichier caché ou visible.)

Plein d'autres :

Ancre - Retour sommaire


Changer une adresse IP

Sous Linux, changer son adresse IP relève d'une simple ligne de commande :

Ancre - Retour sommaire


Créer et monter une image d'un CD

Depuis les nouvelles versions d'Ubuntu, il suffit de faire un clic droit sur le fichier ISO. C'est plus facile non ?

Pour créer une image à partir d'un CD : ouvrez un terminal et tapez :

dd if=/dev/hdd of=mycd.iso

En remplaçant hdd par le périphérique qui correspond (par exemple : "dvd", ou "cdrom"). Si vous n'êtes pas sûr, mettez l'un des éléments que retourne cette commande :

ls /dev/ | egrep "^dvd|^cd"

La création d'une image disque peut durer quelques minutes. À la fin, l'image se trouvera dans votre répertoire personnel, il portera le nom de "mycd.iso".

Pour la monter, il suffit de créer un répertoire "iso" dans le dossier "/media" ; puis de monter l'image du CD dedans :

sudo mkdir /media/iso
sudo mount -o loop -t iso9660 mycd.iso /media/iso

Bien sûr, vous pouvez monter une image CD dans un autre dossier de votre choix si vous voulez.

Pour le démonter, il suffit de faire :

sudo umount /media/iso

Ancre - Retour sommaire


Une liste détaillée de sa configuration

Parfois, il vous est bien pratique de connaître la liste complète des composants de son ordinateur (compatibilité… drivers…), cette commande la donne, et l'ouvre directement avec Firefox. (faut-il remplacer Firefox par Konqueror sous Kubuntu?) :

sudo lshw -html > maconfig.html && firefox maconfig.html

Le fichier se trouve dans votre dossier personnel sous le nom de maconfig.html

Ancre - Retour sommaire


Installer rapidement tous ses logiciels

Après une ré-installation, vient le moment d'installer tous ses logiciels. Vous pouvez utiliser le “Ajouter/supprimer” mais c'est long et c'est facile d'en oublier.

Encore une fois, la ligne de commande se révèle super pratique : pour installer un paquet :

sudo aptitude install nom_du_paquet

Et pour installer plusieurs logiciels en une seule ligne :

sudo aptitude install paquet1 paquet2 paquet3 …

Après une réinstallation du système, je met à jour le système puis je fais un copier coller de la liste de tous les logiciels qui me sont courants et je fais Entrée : les programmes sont téléchargés et installé, et pendent ce temps, on peut faire autre chose!

Ancre - Retour sommaire


Retrouver facilement les doubles fichiers

Au lieu de rechercher dans ses innombrables dossiers d'une infinité de fichiers où sont les doublons, sachez qu'il existe un logiciel qui permet de les trouver facilement : Fslint.

Installez le logiciel en utilisant la technique précédente.

Dans la fenêtre du logiciel, cliquez sur ajouter (en haut) puis choisissez un dossier et validez. Cochez la case en mode récursif? (pour inclure les sous dossiers). Mettez vous dans l'onglet Duplicates. Et cliquez ensuite sur rechercher. Le Logiciel analyse alors vos fichiers. (peut durer un moment suivant la taille de votre dossier).

Notez que les doublons sont détectés même si les fichiers ne sont pas dans le même dossier, et aussi s'ils ont un nom de fichier différent. Fslint fait alors une liste des doublons, qu'il vous suffit ensuite de trier

Ancre - Retour sommaire


Changer les droits sur une partition EXTn facilement

Si vous avez une partition en EXT/2/3/4, vous remarquerez que vous ne pourrez pas y écrire par manque de privilèges, et changer les permissions vous est également impossible sans ces privilèges… Ou presque : on va le faire tout de même : ouvrez un terminal et tapez :

gksudo nautilus

Cela ouvrira le dossier personnel de ROOT avec les droit administrateurs. Parcourez jusqu'à vous retrouver dans la racine du disque en EXT3, là, cliquez-droit sur un endroit dossier et faites propriétés. Choisissez l'onglet permission et au lieu de ROOT mettez votre compte dans propriétaire. Changez aussi la case accès au dossier en création et suppression de fichiers. Laissez le reste comme c'est (si vous le voulez) et ensuite cliquez sur "fermer".

Fermez la fenêtre du dossier, quittez le terminal.

Voilà ! Maintenant, le propriétaire du disque n'est plus root mais vous! Par conséquent, vous pouvez créer, modifier, supprimer ce que bon vous semble !

Ancre - Retour sommaire


Ouvrir un fichier .run

C'est certainement une des commandes des plus basiques, mais si comme moi, vous ne saviez pas comment on fait, vous avez l'air bien malin…

En fait, c'est tout simple, suffit de le savoir. Ouvrez un terminal, tapez :

sh nom_du_fichier.run

Le logiciel d'installation du fichier .run commence.

C'est simple, mais si on ne le sait pas…


Ancre - Retour sommaire

Voir les ports ouverts et les programmes associés

Si tout le monde connait la commande

netstats -taupe

qui affiche les programmes associés au ports ouverts, la commande suivante montre les ports associés aux logiciels (peut être plus simple à comprendre) :

lsof -i

Ancre - Retour sommaire

Ouvrir et fermer le lecteur CD en ligne de commande

eject		     # pour ouvrir le lecteur
eject -t	     # pour fermer le lecteur

Si vous voulez l'ouvrir et le refermer indéfiniment, créez un fichier script.sh et mettez-y :

#!/bin/sh
while [ 1 = 1 ]
do
	#ejecter le lecteur
	eject

	#le refermer
	eject -t
done


Exécutez ensuite le fichier :

bash /chemin/vers/le/fichier/script.sh

Je vous entend déjà : « Mais à quoi ça sert ? ». Bonne question… La réponse est là, en vidéo !


Ancre - Retour sommaire

Capturer d'écran en ligne de commande

L'outil de Gnome pour capturer l'écran est pratique, mais elle ne permet pas de capturer une zone de l'écran. La commande suivante permet de le faire :

import Bureau/Capture.png

Lancez-ça et sélectionnez à la souris la zone voulue. Dés que le clic sera relâché, l'image sera créée sur le Bureau.

Personnellement, j'ai fais un lanceur sur le tableau de bord avec la commande précédente. Pour capturer le bureau tout entier, il me suffit de cliquer, sans sélectionner


Ancre - Retour sommaire

Accéder à un partage réseau

Bien pratique l'outil de connexion à un serveur dans la menu Raccourcis. Sauf que je ne sais jamais quoi mettre où… Et comme j'ai une mauvaise mémoire, j'ai fait un mémo. Voilà :

PS : sous Windows, pour savoir votre adresse IP, faites WIN+R, tapez cmd puis faites OK. Dans l'invite de commande, tapez ipconfig :

C:\Documents and Settings\timo>ipconfig

Configuration IP de Windows

Carte Ethernet Connexion au réseau local:

        Suffixe DNS propre à la connexion :
        Adresse IP. . . . . . . . . . . . : 10.0.2.15
        Masque de sous-réseau . . . . . . : 255.255.255.0
        Passerelle par défaut . . . . . . : 10.0.2.2

C:\Documents and Settings\timo>

Ancre - Retour sommaire

Supprimer les paquets .deb du cache (et gagner des Mo)

Les système des dépôts de paquets est pratique, mais les fichier téléchargés, les « installers » si vous nous préférez, ne sont pas supprimés. Il prennent des centaines de Mo en place sur le disque dur. Voici comment gagner cette place.

Quand de nouveau paquets sont téléchargés, il peut arriver que le dossier où sont placé les téléchargements contiennent plusieurs versions d'un même paquet (les anciens + les nouvelles versions). La commande :

sudo aptitude autoclean     # supprime les vieilles versions de paquets
sudo aptitude clean         # supprime tous les paquets en cache

Notez que si les paquets sont conservés sur le disque, c'est en vue d'une ré-installation future. La première commande peut-être utilisé sans grande crainte. La seconde vide tout : donc pour une ré-installation d'un paquet, il faudra le re-télécharger depuis internet. Utilisez-là si vous pouvez facilement disposer d'une connexion internet.


Ancre - Retour sommaire

Lancer un script dans un terminal.

Le dossier ~/gnome2/nautilus-scripts contient les scriptes accessibles depuis le menu contextuel de Gnome. J'ai fais un script qui permet de lancer Optipng (pour nettoyer les images PNG pour les optimiser) et d'ouvrir un terminal. Le terminal reste ouvert à la fin.

#!/bin/sh
gnome-terminal -x bash -c 'optipng *.png && echo --- D0NE --- ; read'

(Et voilà un script qui permet de corriger un bug de touchpad sur mon ordi :

#!/bin/sh
while [ 1 = 1 ]
do
	synclient TapButton2=2 && synclient TapButton3=3 && 
	sleep 300
done

Ancre - Retour sommaire

Un bug avec mon iPod touch et Rhythmbox

Voilà plusieurs fois que mon iPod n'est plus affiché dans Rhythmbox. Pourtant Rhythmbox ET Gconf et tout le reste est bien configuré pour qu'il s'affiche. De plus, je remarque n'avoir aucun problème dans les autres sessions.

Je viens de résoudre tout ça en supprimant le dossier ~/.dbus

Pour ce faire déconnecter votre iPod, fermez Rhythmbox, ouvrez un terminal, et tapez :

mv ~/.dbus ~/.dbus.bakup

Ensuite, déconnectez vous de votre session puis reconnectez vous.
Une fois votre appareil branché, ça devrais de nouveau marcher. Chez moi, ça a fonctionné.

Ancre - Retour sommaire

Les programmes au démarrage

Dans Système > Préférences > Programmes au démarrage on peut ajouter des programmes à lancer au démarrage de la session.

Ils démarrent en même temps que Gnome, ce qui peut poser quelques problèmes. Voilà comment retarder le lancement des programmes :

mettez simplement :

sh -c "sleep 10 && (conky &)"

au lieu de :

conky

si c'est le logiciel Conky que vou svoulez lancer au démarrage, avec un retard de 10 secondes.

(source : erwan.me)

Ancre - Retour sommaire

Renommer des fichiers en masse

Y'a une commande Unix très simple pour ça : rename.

rename 's/asuprimer/aremplacer/' *.doc

On peut utiliser des regex et il faut donc « échapper » les méta-caractères, comme les points et les slashs.

Exemple, pour renommer les fichier "image-photoDC-1.JPG" "image-photoDC-2.JPG" "image-photoDC-3.JPG" en "image-1.jpg", "image-2.jpg", "image-3.jpg" faites :

rename 's/photoDC-//' *.JPG
rename 's/JPG/jpg/' *.JPG

Ancre - Retour sommaire

Restaurer le Grub (GRUB 1)

Si votre GRUB a été effacé, utilisez un live CD de linux et tapez ces commandes pour les restaurer. Ces commandes sont pour Grub1, donc si vous utilisez Ubuntu, c'est pour les versions antérieurs à Jaunty Jackalope 9.04 :

sudo grub

Ça ouvre un prompt de Grub : les commandes suivantes sont donc interprétés par Grub et non par le Bash/shell de linux :

find /boot/grub/stage1         # renvoie un disque, par exemple (hd0,1)
root (hd0,1)                   # utilisez évidement le disque que Grub vous a donné juste au dessus
setup (hd0)
quit

Normalement grub sera remis comme avant.

Ancre - Retour sommaire

booter si GRUB 2 est cassé…

J'ai déjà eu à faire à un ordinateur qui ne voulait pas démarrer et qui ne proposait que la ligne de commande de Grub2 au démarrage. Je m'en suis sorti ainsi :

ls                                  # pour lister les partitions : (hd0,1)… L'une est la bonne. Souvent, c'est (hd0,1)
set root=(hd0,1)
ls /                                # liste les fichier. Repérez vmlinuz et initrd dans la liste.
linux /vmlinuz root=/dev/sda1 ro    # en changeant le vmlinuz par le fichier trouvé ci dessus (possible que ce soit vmlinux-2.6.xxx…)
initrd /initrd.img
boot

Normalement ça bootera normalement. Reste ensuite à réparer le problème…

N'empêche que ça peut être un bon rempart au cas où votre ordinateur soit volé :D.

Ancre - Retour sommaire

Réparer un système Reiser FS…

J'utilise le système de fichier Reiser FS plutôt que EXT4. Il m'est déjà arrivé de devoir faire un redémarrage forcé et que le FS soit cassé. Je le répare depuis un Live CD ainsi :

reiserfsck /dev/sdax --rebuilt-tree

Ancre - Retour sommaire

Utiliser le terminal comme calculatrice basique

J'ai horreur de perdre du temps.
Quand je dois faire un calcul compliqué (1324÷45 par exemple), ouvrir la calculatrice de GNOME prend du temps (même avec Gnome-Do).

Du coup, j'utilise un terminal python pour faire ça :

$ python
>>> 1324./45

Mais pour un seul calcul, c'est encore trop long, donc j'ai décidé de faire mes calculs directement en BASH :

let a=1324./45;echo $a

Je pense améliorrer ça, avec un petit script prochainement.

Ancre - Retour sommaire

Timestamp dans la console

Le timestamp, c'est ce qui permet à un ordinateur actuel d'afficher l'heure. En fait, il compte le nombre de secondes écoulées depuis une date zéro. Cette date est le 01/01/1970, à 0h 0min 0s.

Pour afficher le timestamp actuel dans la console Linux, voici 3 solutions dans 3 langages selon vos besoins :

En Bash :

date +%s

Avec PHP, si il est installé :

php -r 'echo date("U")."\n";'        # ne pas oublier "\n"
echo `php -r 'echo date("U");'`      # pas besoin de "\n" ici

En Python :

python -c "import time ; print(time.time())"

Ancre - Retour sommaire

Tuer un processus en une seule commande sans connaitre son PID

Voici en une seule ligne comment tuer froidement une programme : (attention, le processus sera tué d'un coup, et les données non sauvés seront perdus)

En Bash :

kill -9 `ps -u $USER | grep 'nom-process' | cut -d ' ' -f 1`

Voir aussi :

pkill nom-process
kill -9 `pgrep nom-process`
killall -9 nom-process

Ancre - Retour sommaire

Générer des caractères aléatoires

Si vous voulez générer des données aléatoires, il y'a plusieurs solutions :

Pour une génération lente :

cat /dev/random

Pour la même chose en très rapide :

cat /dev/urandom

Pour un défilement de caractères alpha-numériques :

cat /dev/urandom | base64 - 0

Pour un défilement de caractères unicodes :

cat /dev/urandom | uuencode -
cat -v /dev/urandom

Pour un défilement en représentation hexadécimal :

xxd /dev/urandom

Pour un défilement de chiffres :

xxd -ps /dev/urandom

(pour arrêter tout ce WTF dans un terminal, faites simplement CtrlC)

Ancre - Retour sommaire

Lancer des commandes graphiques sur le PC depuis un iPod

Depuis un iPod, ou depuis un tout autre client SSH…

Ceci ne sert presque à rien, car sur l'ipod vous êtes dans un terminal et vous ne pourrez pas interagir sur le programme que vous aurez lancé, mais pour faire une blague, c'est pas mal :-).

Il s'agit ici bien d'utiliser le terminal sur le client pour lancer des applications graphiques sur le serveur et affichés sur le serveur.

Assurez vous que le serveur ssh est installé (paquet openssh-server). Sur l'iPod, connectez vous :

ssh utilisateur@IP-du-serveur

Puis amusez-vous :

DISPLAY=:0 programme

Me reste à trouver comment faire l'inverse, lancer depuis mon PC des choses sur l'iPod.

Ancre - Retour sommaire

Memo pour FFMpeg

FFMpeg est un encodeur/décodeur/convertisseur Audio/Video. Il supporte pratiquement tous les formats, codec, etc. C'est le couteau suisse de conversion vidéo.

Voici simplement quelques commandes que je met là en tant que memo, pour ne pas avoir à les retrouver à chaque fois, même si les pages "man" sont très bien fichues.

Ceci convertit en AVI (H264+MP3) un fichier d'entrée. Il récupère le passage de t=0 à t=2min23s

ffmpeg -i "infile.flv" -f avi -vcodec libx264 -acodec libmp3lame -ss 00:00:00 -t 00:02:23 -vpre normal "outfile.avi"

Ceci fait pareil mais sort un fichier MP3 (128 kpbs) :

ffmpeg -i "input.flv" -f mp3 -acodec libmp3lame -ab 128k -ss 00:00:00 -t 00:02:23 "out.mp3"

Ancre - Retour sommaire

Afficher un message à l'écran avec les notifications OSD

Ce sont les notifications assez class dans Ubuntu :

Un message simple :

notify-send "mon text ici"

Un message avec quelques options : (l'icone peut être un chemin vers une image. Attention : le temps est en millisecondes !!!!!)

notify-send --icon="info" "Titre" "Text of the message" --expire-time=5000

Ancre - Retour sommaire

Afficher un popup à l'écran

Dans le même genre que les alert() en javascript : zenity pour gnome.

Affiche un popup simple :

zenity --info --text "Ici mon text à afficher"

En utilisant par exemple "zenity --question" la boite de dialogue propose un choix entre Oui et Non. On peut évidement récupérer ces varibles dans les scriptes. Voici un exmeple de mon cru. Mais je pense qu'en fait, toute l'interface de Gnome est basée sur ce principe \o/ !

Ancre - Retour sommaire

Afficher la dernière ligne des log systèmes

Les log systèmes (fichier /var/log/syslog) contient tous les évennements systèmes. On peut afficher la dernière ligne, et faire en sorte de surveiller l'apparition d'un nouvelle ligne avec la commande suivante :

tail -n1 -f /var/log/syslog

À quoi ça sert ? À rien sinon pour la curiosité (affichage en continu sur le bureau, dans un conky…) ou pour la surveillance du système.

Ancre - Retour sommaire

Réduit en masse les dimension de vos photos

Avant tout, faites un double de vos photo. Cette commande efface les originaux par les images réduites.

Des photos de 14Mpx c'est bien beau, mais pas top pour envoyer sur la net. Cette commande permet de réduire la définition des images (par exemple 50% plus petit).

for i in *.JPG; do convert $i -resize 50% $(basename $i .JPG).JPG; done

La commande réduit ici de 50% les images *.JPG dans le dossier courant.

La commande convert permet plein de choses. Par exemple, pour supprimer les données EXIF (date de prise, marque de l'appareil, type d'objectif…) de vos images :

for i in *.JPG; do convert $i +profile "*" $(basename $i .JPG).JPG; done

Ancre - Retour sommaire

Effectuer un multiple chercher/remplacer dans plusieurs fichiers

La ligne de commande permet d’automatiser les tâches répétitives de façon simple, rapide et puissante.

Le code suivant remplace les termes « a_remplacer » par « remplacement » dans tous les fichiers en « *.txt » du dossier courant.

sed -i 's/a_remplacer/remplacement/g' *.txt

Ancre - Retour sommaire

Couper plusieurs images de façon identique

Si vous avez plein d’images similaires et que vous voulez en extraire une partie seulement, par exemple une fenêtre sur une série de captures d’écran, cette commande le fera pour vous en quelques secondes :

for i in *.png; do convert $i -crop 1024x768+318+70 $(basename $i .png).png; done

Le premier 1024x768 correspond à la taille de la fenêtre à couper, le +318+70 correspond au coordonnées du coin supérieur gauche où commencer à couper.

Ancre - Retour sommaire

Page créée en février 2009. Mis à jour le samedi 20 février 2014
Adresse de la page : http://lehollandaisvolant.net/linux/ubuntu_tips/