Utilisateur:Pierre Brial/Astuces Linux

SYSTEME

modifier

Réinstaller Grub

modifier

La réinstallation de Windows a effacé Grub sur le MBR (Master Boot Record).

Cas n°1 - avec un CD Knoppix
modifier

Le MBR se trouve sur le disque hda. L'installation de linux et les fichiers de paramétrage de Grub sont sur le disque hdd1.
Procédure :

  • Demarrer sur un CD Knoppix
  • Monter hda1 et hdd1.
  • Autoriser la lecture/écriture sur ces disques (clic droit → actions → change read/write mode)
  • Ouvrir une console :
$su
#grub-install /dev/hda --root-directory=/mnt/hdd1
  • Redémarrer.
Cas n°2 - avec un CD GParted
modifier

Le MBR se trouve sur le disque sda. Windows est sur sda1. Linux et les fichiers de paramétrage de Grub sont sur sda2.
Procédure :

  • Demarrer sur un CD Gparted
  • Ouvrir une console
  • Monter la partition linux :
# mkdir /mnt/sda2
# mount -t ext3 /dev/sda2 /mnt/sda2
  • Restaurer Grub :
# grub-install /dev/sda --root-directory=/mnt/sda2
  • Redémarrer.

Mot de passe dans Grub

modifier

Ubuntu crée dans le menu de Grub une ligne appelée :

Ubuntu, kernel 2.6.15-26-386 (recovery mode)

Cette ligne permet un accès direct à une console root, sans demande de mot de passe, ce qui est passablement dangereux. Pour vérouiller cet accès :

  • Dans menu.lst, au début : password xxxx
  • Puis mettre lock sous la ligne recovery

GRUB 2 est un truc de geek.
La personnalisation de GRUB 2 s'effectue par l'édition des fichiers de scripts situés dans /etc/grub.d
La prise en compte de ces paramètres s'effectue en lançant la commande suivante dans /boot/grub :

 grub-mkconfig -o grub.cfg

Sysv update error

modifier

forums.linuxmint

Tableau des codes pour le paramètre « vga »

modifier

Il existe deux type de codes — décimaux ou hexadécimaux — qui peuvent l’un comme l’autre être passés au noyau via le paramètre « vga ». Dans le menu.lst de Grub, ce paramètre s'inscrit à la fin de la ligne kernel : kernel /boot/vmlinuz-2.6.18p3.01 root=/dev/hda1 ro

Voici le tableau des numéros à mettre dans « vga=xxx » en fonction de la résolution que vous désirez avoir :

Couleurs 640x480 800x600 1024x768 1280x1024
256 769 771 773 775
32768 784 787 790 793
65536 785 788 791 794
16.7 million 786 789 792 795

[1]

Définition Affichage 8 bits Affichage 16 bits Affichage 24 bits
Taille Nom Ratio décimal hexa. décimal hexa. décimal hexa.
640 × 480 VGA 1.33 769 0x301 785 0x311 786 0x312
800 × 600 SVGA 1.33 771 0x303 788 0x314 789 0x315
1024 × 768 XGA 1.33 773 0x305 791 0x317 792 0x318
1152 × 864 XGA+ 1.33 353 ? 0x161 355 ? 0x163 356 ? 0x164
1280 × 960 SXGA 1.33 ? ? ? ? ? ?
1400 × 1050 SXGA+ 1.33 ? ? 834 0x342 835 0x343
1600 × 1200 UXGA 1.33 796 0x31c 798 0x31e 799 0x31f
2048 × 1536 QXGA 1.33 ? ? ? ? ? ?
3200 × 2400 QUXGA 1.33 ? ? ? ? ? ?
1280 × 800 WXGA 1.60 ? ? ? ? ? ?
1440 × 900 WXGA+ 1.60 ? ? ? ? ? ?
1680 × 1050 WSXGA+ 1.60 ? ? ? ? ? ?
1920 × 1200 WUXGA 1.60 ? ? ? ? ? ?
1280 × 1024 SXGA 1.25 775 0x307 794 0x31a 795 0x31b
2560 × 2048 QSXGA 1.25 ? ? ? ? ? ?
1280 × 720 WXGA 1.77 ? ? ? ? ? ?
1600 × 1024 WSXGA 1.56 ? ? ? ? ? ?

Le code 836 (0x344) semble être utilisé pour 32 bits.[2]

Lancement de programmes au démarrage

modifier
  • Au lancement de Linux :

fichier /etc/init.d/rcS. Exemple : inscrire dans le fichier setterm -foreground 2 -store fait passer la couleur de l'affichage en vert

  • Au niveau des profils utilisateurs :

Communs : fichier /etc/profile ⇒ exemple : alias x='startx' Utilisateur : fichier /home/nom/.bashrc ⇒ exemple : mettre startx à la fin du fichier lance X automatiquement après la saisie du mot de passe

Administration

modifier

Information

modifier

Voir les différents fichiers du répertoire /proc avec la commande cat. Par exemple cat cpuinfo donne des informations sur le microprocesseur.

Processus

modifier
  • Voir tous les processus en cours : ps aux
  • Tuer un processus : kill numéro-de-processus (kill -9 pour forcer)
  • Quel processus utilise un périphérique : lsof /dev/...

Commandes utiles

modifier
  • apt-get autoremove : supprime les paquets inutiles
  • cd : sans argument, va au répertoire /home/user
  • df -h : Capacité et occupation des partitions
  • dmidecode : informations détaillées sur la carte mère
  • dpkg-reconfigure tzdata : Changer de fuseau horaire
  • find -name *expression* : cherche le fichier dont le nom contient « expression » dans le répertoire courant et ses sous-répertoires
  • grep expression ./* : cherche « expression » dans les fichiers du répertoire courant
  • grep -R expression ./* : cherche « expression » dans les fichiers du répertoire courant et ses sous-répertoires
  • host : recherche dns. Utilisation : host adresse_ip ou host nom_de_domaine
  • ifup ethx, ifdown ethx
  • isoinfo -l -i fichier : liste (-l) le contenu d'un fichier iso
  • less : visualiser un fichier comme man
  • ln -s fichier lien : crée un lien symbolique nommé "lien" vers "fichier", qui peut être un fichier, un répertoire, ou une commande
  • loadkeys fr : passage au clavier francais (faire en root)
  • md5sum : comparaison : echo $[0x`md5sum fichier1|cut -f 1 -d " "`-0x`md5sum fichier2|cut -f 1 -d " "`]
  • mount -o loop monimage.iso /mnt/iso : monter une image iso
  • mount -t iso9660 monimage.iso /mnt/iso : monter une image iso
  • tar -cvjf toto.tar.bz2 toto/ : Crée (c) l'archive toto.tar.bz2 et y comprime en bz2 (j) le contenu (f=file) du répertoire toto ('v' pour verbose).
  • tar -xvjf toto.tar.bz2 : extrait (x) le contenu de l'archive toto.tar.bz2

Arrêt du système

modifier

Le menu arréter d'Ubuntu s'apelle avec la commande : gnome-session-save --kill Elle se paramètre avec gconf, clés dans gnome-session\options

Pour activer les boutons éteindre et redémarrer pour un utilisateur normal : Installer le paquet sudo. Dans le fichier /etc/sudoers ajouter :

 monlogin ALL=NOPASSWD:/usr/sbin/xfsm-shutdown-helper

Gestion des droits

modifier

Sudoers

modifier

L'attribution d'un NOPASSWD à une commande dans sudoers n'a aucun effet. La raison en est la suivante :

Le fichiers /etc/sudoers est lu en une seule fois par le système, donc l'ordre des lignes a une importance. Quand on met la commande sous # User privilege specification, elle est "écrasée" par la commande %admin ALL=(ALL) ALL, qui va donc donner les droits d'utiliser sudo pour n'importe quelle commande, mais avec le mot de passe. Pour régler ça, il faut mettre la ligne user ALL=NOPASSWD: commande à la fin du fichier, ou au moins après la ligne %admin.

Policykit

modifier

Gère les droits sur certaines actions (monter les clés USB, shutdown, etc...)

Les fichiers sont sous /usr/share/polkit-1/actions

En cas de problème de droits pour ces actions, on peut mettre "yes" à allow_inactive et allow_any

cf Policykit

Installation de programmes

modifier

Créer un dépot local

modifier
# aptitude install dpkg-dev
# mkdir /usr/local/debian
# mv /some/where/package.deb /usr/local/debian
# cd /usr/local/debian
# dpkg-scanpackages . /dev/null | gzip > Packages.gz
# echo "deb file:/usr/local/debian ./" >> /etc/apt/sources.list

Télécharger des paquets

modifier

Pour télécharger des paquets sans les installer, même s'ils sont déjà présents :

apt-get install -d --reinstall

Les paquets sont copiés dans /var/cache/apt/archives

Installation d'une Debian Testing sur un Sony Vaio VGN-TX2HP

modifier
  • Paquets installés : mc pciutils x-window-system-core synaptic gcc libc6-dev make module-assistant build-essential libgl1-mesa-dri file-roller(pour gnome)
  • Rétroéclairage, boutons : modules sonypi et sony_acpi [3]
  • Wifi : récupérer le firmware de la carte ipw2200 [4] et l'installer dans /lib/firmware/

Pour indiquer à Linux si l’horloge du matériel est réglée en UTC ou en local, éditer le fichier /etc/default/rcS : UTC=yes indique que l’horloge matérielle est en heure locale.

Au démarrage de votre ordinateur vous obtenez le message suivant : select() to /dev/rtc to wait for clock tick timed out

Voici le résultat que j'obtiens lorsque j'exécute la commande /etc/init.d/hwclockfirst.sh start Cette commande s'exécute également au démarrage de l'ordinateur

# /etc/init.d/hwclockfirst.sh start
Setting the system clock.
select() to /dev/rtc to wait for clock tick timed out
* Unable to set System Clock to: lundi 26 novembre 2007, 16:07:43 (UTC+0100)
#

Voici une solution, peut-être pas la solution parfaite mais en tout cas elle fonctionne sous Debian Lenny.

Editez le fichier /etc/modprobe.d/pnp-hotplug

Remplacer la ligne :

alias pnp:dPNP0b00 rtc

par

alias pnp:dPNP0b00 genrtc

Au prochain redémarrage, le message d'erreur disparait et l'horloge système est mise à jour

Gestion d'Energie

modifier

Console

modifier

Désactiver la mise en veille de l'écran en console :

 setterm -powersave off

et si ça ne marche pas :

 setterm -blank

pour désactiver la veille :

 xset [-display :0 s on] -dpms

pour réactiver la veille :

 xset [-display :0 s on] +dpms

Voir aussi Option "DPMS" "off" dans xorg.conf

Supports de Stockage

modifier

Analyse de disques

modifier

Smartmontools : http://doc.ubuntu-fr.org/smartmontools

Forcer la vérification d'un disque

modifier
 e2fsck -f -C 0 /dev/sdb6

L'option C 0 affiche une barre de progression. L'option -c -c effectue un test de lecture-ecriture non destructif et marque les blocs défectueux.

Vérification d'un disque DOS

modifier
 dosfsck -rtvV /dev/sdc1

Fréquence de vérification du disque dur (Maximum mount count)

modifier

Passer à 50 démarrage la fréquence de vérification de hdd1 par fsck :

 tune2fs -c 50 /dev/hdd1

Vérification :

 tune2fs -l /dev/hdd1

Formater une disquette DOS

modifier

Formatage de bas niveau avec vérification, suivi de la création d'une partition DOS :

 fdformat /dev/fd0
 mkdosfs -cv /dev/fd0

Détection de Clé USB (noyau 2.6.8)

modifier

Si la détection de la clé USB ne marche plus :

  • Réinstaller hotplug

et si ça ne marche toujours pas

  • Charger les modules suivant, et copier les dans /etc/modules :

scsi_mod, usb-storage, sg, sd_mod

Montage automatique sous Xfce

modifier
  • Installer le paquet ivman et ses dépendances
  • Mettre un lien vers ivman dans ~/.config/autostart
  • Désactiver le lancement automatique de ivman au boot à l'aide de sysv-rc-conf (décocher la case ivman dans la colonne n°2)

Shell Bash

modifier

Repertoire du script

modifier
 dirname $0
  • grep avec deux motifs (motif 1 ou motif 2) : grep -E 'motif1|motif2'

Redirections

modifier
  • Copier la sortie standard vers un fichier : echo toto | tee fichier
  • Ne pas afficher les messages d'erreur : ajouter en fin de ligne : 2>/dev/null

Raccourcis clavier

modifier
  • C-c : interromps une commande
  • C-z : suspend une commande
  • fg : reprend une commande

Edition de la ligne de commande

modifier
  • C-u : efface du curseur au début de ligne
  • C-k : efface du curseur à la fin de la ligne
  • C-t : transpose le caractère sous le curseur et le caractère précédent
  • C-a : va au début de ligne
  • C-e : va à la fin de la ligne
  • C-l : clear screen

Séparateur de liste

modifier

Le séparateur de liste est la variable IFS (Internal Field Separator). Par défaut, cette valeur est réglée sur newline, tab et space. Si l'on veut lire le contenu d'un fichier avec "for i in $(< fichier)", i prendra toutes les valeurs séparées par un espace, une tabulation, ou une nouvelle ligne. Afin de pouvoir affecter à i des lignes entières, il faut régler l'IFS sur newline uniquement, en faisant IFS=$'\n'. Il est à noter que IFS peut prendre n'importe quelle valeur. Par exemple, si l'on pose IFS = azert , les lettres a,z,e,r,t seront individuellement utilisées comme séparateurs de liste.

Test sur les chaînes

modifier

L'égalité entre une variable et une chaines peut être testée des deux façons suivantes :

 if [ "$i" = az ]
 if test "$i" = az

Ne pas oublier les espaces de part et d'autre de '[' et '=' et devant ']'

Opérations

modifier

Soustraction :

 echo $[7-6]
 echo $[0xa-6]

Séquences d'échappement

modifier

Exemple d'utilisation d'une séquence d'échappement à l'intérieur d'une chaîne :

$ echo toto
toto
$ echo to\nto
tonto
$ echo to\\nto
to\nto
$ echo to'\n'to
to\nto
$ echo to$'\n'to
to
to
$ echo to$\nto
to$nto
$ echo to$'\t'to
to      to
  • Pages de manuel joliement présentées : Alt+F2 pour appeler une ligne de commande, puis man:commande pour avoir la page de commande
  • apropos mot : affiche la liste des pages de manuel contenant mot
  • Perte de l'aide dans Gnome : réinstaller yelp

Compilation de nouveaux modules

modifier
   * Installer le paquet linux-source-2.6.x : celui-ci est copié dans /usr/src sous forme de fichier compressé
   * # cd /usr/src
   * # tar xvjf linux-source-2.6.x.tar.bz2 : création du répertoire linux-source-2.6.x, contenant les sources
   * cd linux-source-2.6.x
   * make menuconfig : choisir les modules en les marquant par <M>
   * make modules
   * make modules_install

Outils de compilation : apt-get install gcc libc6-dev

Clavier

modifier

Préferer le point comme séparateur décimal :

modifier

Dans le fichier ~/.profile mettre :

 export LC_NUMERIC=C

Pour modifier l'agencement du clavier en console :

modifier
 dpkg-reconfigure console-data

changer l'affectation des touches

modifier
  • Mettre les signes < et > sur la touche windows :
 xmodmap -e "keycode 133 = less greater
  • Mettre un tilde mort sur la touche ² :
 xmodmap -e "keycode  49 = twosuperior dead_tilde twosuperior asciitilde notsign notsign notsign notsign twosuperior asciitilde notsign notsign twosuperior asciitilde notsign notsign"

Il est possible de mettre les expressions dans un fichier, et le lancer par xmodmap fichier.

INTERFACE GRAPHIQUE

modifier

Gestionnaire de fenêtres par défaut

modifier

Dans la distribution Debian 2.0, celui-ci était déterminé par le fichier /etc/X11/window-managers: il contenait une liste de gestionnaires disponibles4.1 qui était parcourue dans l'ordre jusqu'au premier qui démarrait.

Depuis la version 2.2, Debian est revenue à une méthode de sélection plus traditionnelle : s'il existe, le fichier .xinitrc exécute le gestionnaire désiré, sinon xinit se sert de la redirection de /etc/alternative/x-window-manager. Exemples :

kde : startkde
xfce4 : xfwm4

Tout ceci est remis en question si vous utilisez xdm ou un équivalent (wdm, kdm) pour afficher au démarrage une invite de connexion graphique: dans le cas de xdm et aussi de wdm, c'est le fichier .xsession qui est exécuté (si vous choisissez le gestionnaire de fenêtre dit «par défaut»). Une astuce simple consiste à faire:

 $ ln -s ~/.xinitrc ~/.xsession

Source : [5]

Fichiers de configuration

modifier

xinitrc : contient les commandes shell exécutées au démarrage d'une session X.

Drivers

modifier
Rage IIC 8 Mo ati
Rage 128 pro 32 Mo r128
SIS6236 8 Mo sis

Multiplication des fichiers .serverauth

modifier

Au lancement de X, le système crée dans le répertoire utilisateur des fichiers .serverauth.* dont l'utilité m'est inconnue, et qui ne sont pas toujours effacés ensuite. Ceci provoque une accumulation de ces fichiers. Afin de remédier à ce problème, il faut éditer le fichier /usr/bin/startx, et trouver la ligne :

 xserverauthfile=$HOME/.serverauth.$$

La commenter (#) et la remplacer par :

 xserverauthfile=$XAUTHORITY

Raccourcis clavier

modifier

Alt-home ouvre le dossier personnel

modifier

Pour éditer le menu Xfce4, créer des fichiers desktop pour chaque nouvelle entrée dans /usr/share/applications/

IMPRESSION

modifier

Gros fichiers

modifier

Pour éviter le blocage de cups pour une impression de gros fichiers pour une imprimante donnée, il faut ajouter le paramètre mx#0 dans le fichier /etc/printcap :

 SHARP_AR-M236|SHARP AR-M236:rm=vaio:rp=SHARP_AR-M236:mx#0:

Puis redémarrer Cups.

POLICES

modifier

Problème d’accents circonflexe et tréma sous Openoffice

modifier

Dans le fichier /etc/X11/xorg.conf, et dans la section InputDevice concernant le clavier, commenter (#) ou supprimer l’option "XkbVariant" "latin9"

Utilisation de polices TTF par les programmes X11

modifier

Dans le fichier /etc/X11/xorg.conf, dans la section "Module", indiquer "freetype", et dans la section "Files", indiquer le chemin contenant les polices. Par exemple :

 Section "Module"
   Load	"bitmap"
   Load	"dri"
   Load	"extmod"
   Load	"freetype"
   Load	"glx"
   Load	"int10"
   Load	"vbe"
 EndSection
 
 Section "Files"
   FontPath "/home/utilisateur/.fonts"
 EndSection

Dans le répertoire contenant les polices, faire :

 $ mkfontdir
 $ mkfontscale

Ces deux commandes peuvent peut-être être remplacées par fc-cache (à vérifier).

Supprimer le lissage des polices dans Firefox

modifier

cf http://forum.ubuntu-fr.org/viewtopic.php?id=352294

Modem Analogique

modifier

Problème de connection sous KDE A régler :

auth -> noauth dans /etc/ppp/options
décommenter noauth dans /etc/ppp/peers

Se connecter à distance

modifier

Bluetooth

modifier

Transfert de fichiers via Obex

modifier

Recherche de GSM bluetooth :

 hcitool scan

Liste des services :

 sdptool browse adresse

Vérifier l'existence d'un service OBEXFileTransfer Listing de la racine :

 obexftp -b adresse -c / -l

Récupérer un fichier :

 obexftp -b adresse -c /répertoire -g fichier

Envoyer un fichier :

 obexftp -b adresse -c /répertoire -p fichier

Utiliser un GSM comme modem

modifier

Configuration : voir fichier /etc/bluetooth/hcid.conf Clé de liaison : /etc/bluetooth/pin

Configuration d'une connection internet via un téléphone portable bluetooth :

L'objectif est d'accéder à internet avec un ordinateur portable Sony Vaio VGN-TX2HP, en utilisant comme modem un téléphone portable Sony Ericsson T630, via une liaison bluetooth. Le réseau est SFR GPRS sur l'île de la Réunion.

  • Paquetages installés :
gnome-bluetooth - GNOME Bluetooth tools.
grml-btnet - Programs to quickly build a bluetooth network
obexftp - file transfer utility for devices that use the OBEX protocol
obexserver - Receive files with OBEX protocol
python2.4-libbtctl - Python bindings for libbtctl Bluetooth library
bluez-pcmcia-support - PCMCIA support files for BlueZ 2.0 Bluetooth tools
bluez-pin - Bluetooth PIN helper with D-BUS support
bluez-utils - Bluetooth tools and daemons
libbluetooth1 - Library to use the BlueZ Linux Bluetooth stack
libbtctl2 - GObject Bluetooth library
libgnomebt0 - GNOME Bluetooth library
gnome-ppp - modem internet connection tool for GNOME

Ces programmes ne sont peut-être pas tous indispensables pour ce que je souhaite faire, mais c'est ce qui est actuellement installé sur mon poste, et comme ça marche, je ne touche plus à rien :-)

  • Rechercher le code pin de l'ordinateur (en général c'est 1234) :
 $ sudo cat /etc/bluetooth/pin
 Password: *****
 1234

S’il n’y a pas de fichier pin : Editer /etc/bluetooth/hcid.conf : security auto Relancer bluetooth : /etc/init.d/bluetooth restart

  • Apparier le téléphone et le PC à partir du téléphone.
  • Rechercher l'adresse bluetooth du téléphone sur le PC :
 $ hcitool scan
 Scanning ...
 00:0E:07:30:6B:78       T630
  • sdptool donne la liste des services d'un périphérique bluetooth donné. Rechercher dans la liste qui apparaît le service "Dial-up Networking" :
 $ sdptool browse 00:0e:07:30:6b:78
 Browsing 00:0E:07:30:6B:78 ...
 Service Name: Dial-up Networking
 Service RecHandle: 0x10000
 Service Class ID List:
 "Dialup Networking" (0x1103)
 "Generic Networking" (0x1201)
 Protocol Descriptor List:
 "L2CAP" (0x0100)
 "RFCOMM" (0x0003)
 Channel: 1
 Profile Descriptor List:
 "Dialup Networking" (0x1103)
 Version: 0x0100

Noter le canal (ici 1)

  • Créer un périphérique correspondant au téléphone avec rfcomm :

La syntaxe est : connect <n°périph. à créer> [addresse du périph.bluetooth] [canal]

 $ rfcomm connect 0 00:0E:07:30:6B:78 1
 Connected /dev/rfcomm0 to 00:0E:07:30:6B:78 on channel 1
 Press CTRL-C for hangup

En cas d'erreur, remplacer rfcomm connect 0 par rfcomm connect 1. rfcomm crée le périphérique /dev/rfcomm0 (ou 1), qui devra être mentionné dans la configuration du modem.

  • Dans /etc/ppp/options, désactiver lcp-echo-interval et lcp-echo-failure en ajoutant un # en début de ligne. Sinon, la connection risque d'être instable.
 # If this option is given, pppd will send an LCP echo-request frame to the
 # peer every n seconds. Normally the peer should respond to the echo-request
 # by sending an echo-reply. This option can be used with the
 # lcp-echo-failure option to detect that the peer is no longer connected.
 #lcp-echo-interval 30
 
 # If this option is given, pppd will presume the peer to be dead if n
 # LCP echo-requests are sent without receiving a valid LCP echo-reply.
 # If this happens, pppd will terminate the connection.  Use of this
 # option requires a non-zero value for the lcp-echo-interval parameter.
 # This option can be used to enable pppd to terminate after the physical
 # connection has been broken (e.g., the modem has hung up) in
 # situations where no hardware modem control lines are available.
 #lcp-echo-failure 4
  • Configuration de gnome-ppp :

Voir avec l'opérateur mobile pour les identifiants et numéro de téléphone. Pour une connection GPRS, les chaines d'initialisation peuvent être supprimées. La connection sera plus rapide.

Problèmes avec gvfs-fuse

modifier

Si le répertoire ~/.gvfs reste vide, vérifier que le paquet gvfs-fuse est installé, et s'ajouter au groupe fuse.

Monter une partition SSH

modifier

Le paquet sshfs doit être installé sur le poste client.

 mount -t fuse sshfs#toto@192.168.1.10:repertoire_sous_toto /mnt/toto

Voir aussi la page SSHFS.

Monter une partition Samba

modifier

En théorie :

 mount -t smbfs //nom_du_domaine/nom_de_l_ordinateur /mnt/point_de_montage \
 -ousername=utilisateur_distant,password=mot_de_passe,uid=utilisateur_linux,gid=groupe_linux

avec : . username : nom de l'utilisateur du poste distant . password : son mot de passe . uid : nom de l'utilisateur linux auquel on désire affecter la partition . gid : nom du groupe linux auquel on désire affecter la partition

Dans mon fstab :

 //PIII/C        /mnt/audrey     smbfs   rw,user,auto,password=NULL,fmask=777,dmask=777  0       0

avec : . rw (read-write) : montage en lecture-écriture . user : tous les ustilisateurs peuvent monter la partition (mais voir ci-dessous*) . auto : montage automatique au boot . password : mot de passe de l'utilisateur du poste distant . fmask (file mask) : droits sur les fichiers montés . dmask (directory mask) : droits sur les répertoires montés . 0 : pas de sauvegarde à l'appel de dump (?) . 0 : pas de contrôle avec fsck


  • Si on obtient le message d'erreur suivant avec smbmount ou smbumount :
 "smbmnt must be installed suid root for direct user mounts"

Alors il faut faire :

 chmod 4755 /usr/bin/smbmnt

Cela revient à activer l'option "Executer avec l'ID propr." dans la fonction chmod de mc. La valeur octale des permissions de ces fichiers passe alors de 100755 à 104755.

Veillez aussi à ce que le point de montage appartienne à l’utilisateur.

Configuration du serveur

modifier

Après une nouvelle installation du serveur, éditer le fichier /etc/jabber/jabber.xml, et repérer la ligne :

 <host><jabberd:cmdline flag="h">localhost</jabberd:cmdline></host>

et remplacer localhost par l'adresse du serveur, par exemple :

 <host><jabberd:cmdline flag="h">192.168.0.5</jabberd:cmdline></host>

Modifier le fichier /etc/default/jabberd14 en commentant PARAMS :

 #PARAMS="-h $HOSTNAME -s $SPOOL"

Puis redémarrer le serveur pour que la modification soit prise en compte :

 dpkg-reconfigure jabberd14

Recherche de réseau :

 iwlist eth1 scan

Sécurité

modifier
  • nmap adresse_ip : scanne les ports sur l'adresse ip indiquée
  • nmap -sP 192.168.0.1-254|grep Host : liste les ordinateurs connectés sur le sous réseau 192.168.0.x (utiliser en root !)
  • tcpdump -i eth0 : affiche les trames passant devant la carte eth0
  • netstat -taupe : indique l'état des connexions réseau en cours

Connection via Internet

modifier
  • Récuperer l'adresse IP publique du réseau sur lequel se trouve l'ordinateur cible. Sur cet ordinateur faire :
 curl ifconfig.me

Il s'agit de l'adresse donnant accès au routeur. A partir du routeur, il faut ouvrir un port de l'ordinateur cible (22 pour les connections ssh).

  • Sur la page web du routeur :

Applications & Port Range Forwarding :

    • Application : donner un nom quelconque
    • Start : 22
    • End : 22
    • Protocol : Both
    • IP Address : 192.168.0.xx
    • Enable : checked

Puis cliquer sur "Save Settings"

Réseau sur liveCD Knoppix

modifier

Créer le fichier /ramdisk/etc/resolv.conf et y mettre les serveurs de nom Activer l'interface : ifconfig eth1 192.168.0.1 up Activer la passerelle : route add default gw 192.168.0.9

dans /etc/rc2.d/S13xdmcp :

 X -query 192.168.0.5 -once
 shutdown -h -t 15 now

INTERNET

modifier

Problème d'accès internet via ADSL au cours de l'installation Debian

modifier

Symptôme : le concentrateur est détecté et pppoeconf se configure correctement, mais impossible d'accéder au réseau. A essayer au préalable :

poff -a
ifconfig lo down
ifconfig eth0 down
ifconfig eth0 up
pon dsl-provider

Si celà ne marche pas : Enlever la carte ethernet, installer Debian, réinstaller la carte, démarrer linux, charger le driver de la carte (exemple : modprobe 8139too), lancer pppoeconf. Tester avec ping orange.fr

Iptables : les bases du pare feux Linux

modifier

Principe

modifier

Le Pare-feux Linux est divisé en sections appelées "Tables". Il y a trois tables :

  • Filter : filtre les paquets réseau
  • NAT : Network Adresse Translation : gère la passerelle vers internet
  • Mangle : Marque les paquets transitant par le réseau

Pour controller les regles en cours s'appliquant, par exemple, à la table NAT : iptables -t nat -L

Ouverture de port

modifier
  • Controller si un port est ouvert :

Vérifier si le port 12 est ouvert sur 192.168.1.1 :

 nmap -P0 -sS  -v -v  -p12 192.168.1.1
  • Ouvrir un port :
 iptables -A INPUT -i eth1 -p tcp --dport 443 -j ACCEPT
 iptables -A INPUT -p tcp --dport XX -j ACCEPT
 iptables -A INPUT -p udp --dport XX+3 -j ACCEPT
 iptables -A INPUT -p udp --dport YY -j ACCEPT

Partage de Connexion Internet avec une machine Windows

modifier

La machine linux 192.168.0.1 est connecté sur le net, et veut partager sa connexion avec la machine Windows 192.168.0.3.

  • Linux : en root, taper :
 iptables -t nat -A POSTROUTING -o ppp0 -s 192.168.0.3 -j MASQUERADE

avec :

-t nat : t=table : la table nat
-A POSTROUTING : A=Add : Ajouter la chaine POSTROUTING (qui concerne les pacquet sortant)
-o ppp0 : o=output : les paquets sont envoyés vers l'interface ppp0
-s 192... : s=source : source d'ou proviennent les paquets devant être traités.
-j MASQUERADE : j=jump : spécifie comment traiter le paquet. Ici, la passerelle est masquée.
  • Windows : paramètres réseaux, TCP/IP, propriétés :
    • Passerelle : 192.168.0.1
    • DNS : activer le DNS et rentrer les adresses du fournisseur d'accès. Par exemple pour Orange.fr :
  • Pour supprimer le partage de connection :

• iptables -t nat --line-numbers -L pour avoir le numéro de la règle • iptables -t nat -D POSTROUTING n pour détruire (-D) la chaine n

Exemple de réseau Linux

modifier

Voici le schéma du réseau :

Laptop
eth0 192.168.1.2
eth2 192.168.1.1
PC
eth1 192.168.0.1
Modem
192.168.0.9
internet

Le PC sert de passerelle entre les sous-réseaux 192.168.1.0 et 192.168.0.0, et le modem sert de passerelle vers internet.

Les /etc/network/interfaces doivent être configurés ainsi :

Portable : sous iface eth0, rajouter :

   gateway 192.168.1.1

Ceci indique au portable que la passerelle est le PC.

PC : sous iface eth1, rajouter :

 gateway 192.168.0.9
 up echo "1" > /proc/sys/net/ipv4/ip_forward

La première ligne indique que la passerelle est le modem, et la seconde active le transfert d'adresse ip par le PC (merci Marcel !)

Il faut ensuite relancer les réseaux (/etc/init.d/networking stop puis start). Mais ça ne marche toujours pas à cause du pare-feux. Il faut donc ajouter la règle iptable :

 iptables -t nat -A POSTROUTING -o eth1 -s 192.168.1.0/24 -j MASQUERADE

Ceci autorise les paquets provenant du sous-réseau 192.168.1 à être transférés vers l'interface eth1.

Aspirateur de sites

modifier

httrack www.gogol.fr -O websites/ : réalise une copie du site www.gogol.fr dans le répertoire local websites

Liens utiles

modifier
  • Moteur de recherche Linux : www.google.com/linux
  • Documentation Linux : www.tldp.org (tldp : The Linux Documentation Project)

MULTIMEDIA

modifier

Graver un CD

modifier
 wodim -raw speed=0 image.iso

Extraction de CD

modifier

- Extraction et encodage en flac avec compression maximale :

abcde -x -o flac:"-8"

Pour n'avoir que les pistes 1, 5 et 8 à 12

abcde -x -o flac:"-8" 1 5 8-12

- Extraire une image ISO

 dd if=/dev/sr0 of=cd.iso

Vidéos Flash

modifier

Rechercher des vidéos flash :

 find ~/.mozilla/ -exec ls -sh {} \; -exec file {} \;|grep Video

Mencoder

modifier

Extraire une partie d'une video

modifier
 mencoder -ss 0:24:00 -endpos 0:05:00 -oac copy -ovc copy -o sortie.avi video.avi

-endpos : durée

Redimensionner une vidéo

modifier

Exemple à 640x480 :

 mencoder input.mov -ovc lavc -lavcopts vcodec=mpeg4:mbd=2:trell -oac pcm -vf scale=640:480 -o output.avi

Cropper, exemple xvid

modifier
 mencoder -vf crop=750:410 -ovc xvid -oac copy -xvidencopts pass=1 -o radar2.avi radar.avi

Extraire de la musique d’une vidéo

modifier
mplayer -ao pcm:file=musique.wav -af volnorm video.mov
oggenc -q 6 musique.wav

- voir aussi :

 mplayer -dumpaudio nodame_theme.flv -dumpfile nodame_theme.mp3

- du chapitre 12 de la piste 8 d’un dvd :

 mplayer -ao pcm:file=musique.wav -af volnorm -dvd-device /dev/hdc dvd://8 -chapter 12

Extraire un fichier video d'une vidéo, et réencoder avec un fichier son différent ("muxer")

modifier
 mencoder -idx -ovc copy -nosound VideoIn.flv -o VideoNoSound.avi
 mencoder -oac copy -ovc copy -audiofile 001.mp3 -o VideoOut.avi VideoNoSound.avi

(ne marche pas avec les fichiers ogg)

Encodage x264

modifier

Meilleure qualité :

 mencoder -oac mp3lame -ovc x264 -x264encopts pass=2:subq=6:partitions=all:8x8dct:me=umh:frameref=5:bframes=3:b_pyramid=normal:weight_b -o sortie.avi entree.avi

Modification de l'image :

 mencoder -ovc x264 -x264encopts pass=1:subq=6:partitions=all:8x8dct:me=umh:frameref=5:bframes=3:b_pyramid=normal:weight_b -nosound -vf eq2=1:2:0:1:1.1:1.1:1 -o sortie.avi entree.avi

<0.1-10> initial gamma value (default: 1.0)

<-2-2> initial contrast, where negative values result in a negative image (default: 1.0)

<-1-1> initial brightness (default: 0.0)

<0-3> initial saturation (default: 1.0)

<0.1-10> gamma value for the red component (default: 1.0)

<0.1-10> gamma value for the green component (default: 1.0)

<0.1-10> gamma value for the blue component (default: 1.0)

<0-1> The weight parameter can be used to reduce the effect of a high gamma value on bright image areas, e.g. keep them from getting overamplified and just plain white. A value of 0.0 turns the gamma correction all the way down while 1.0 leaves it at its full strength (default: 1.0).

Rotation

modifier

180° :

 -vf mirror,flip

Autres / XVid / High Quality full size, VBR,...

Encodage MP3

modifier
 lame -q 0 musique.wav

Encodage faac (m4a) pour Nintendo DS

modifier
 faac -w -b 320 -c 48000 musique.wav

Traitement Video

modifier
  • Lecture d’un camescope par port DV : dvgrab --size 0
  • Edition et sauvegarde en avi ou mpeg : kino (Autres / XVid / High Quality full size, VBR,... )
  • Conversion d’un mpeg en fichiers DVD video : dvdauthor -o mondvd -x mondvd.xml
  • Extraction d’un DVD video : dvdbackup
  • Création d’une image iso de DVD vidéo à partir des fichiers video_ts : mkisofs -dvd-video -o mondvd.iso mondvd/
  • Copie de DVD : lxdvdrip, dvd95
  • Encodage de DVD : acidrip

Concaténer deux PDF

modifier
 pdftk pdf1.pdf pdf2.pdf cat output pdf-final.pdf

Réduction de format de fichiers PDF images

modifier
pdfimages source.pdf ./
mogrify -crop 1300x2200+535+523 *.pbm
convert *.pbm cible.tif
tiff2pdf cible.tif > cible.pdf

Extraction d'images d'un PDF

modifier
 pdftoppm source.pdf cible

Extraction des images situées de la page 10 à la page 12, et enregistrement au format png avec une résolution de 300dpi (le défaut est 150) :

 pdftoppm -f 10 -l 12 -r 300 -png source.pdf cible

Transformation d’images jpg en un pdf

modifier
 convert *.jpg cible.tif
 tiff2pdf -z -o cible.pdf cible.tif

tiff2pdf est inclu dans le paquet libtiff-tools. L'option "z" active la compression d'image. Un bug constaté dans la version 3.9.4-5 de libtiff-tools génère un fichier corrompu lorsque les images sont compressées en jpg. Dans ce cas utiliser la procédure suivante :

 convert -compress LZW *.jpg cible.tif
 tiff2pdf -z -o cible.pdf cible.tif

Si celà ne marche pas bien, essayer via tiff2ps :

 tiff2ps -a cible.tif> cible.ps
 ps2pdf cible.ps cible.pdf

Modifier un lot d’image

modifier
mogrify -[options] *.*
-monitor : indique la progression de l’opération en pourcentage
-verbose : indique ce qui est fait
-resize 800x600 : redimensionne aux valeurs maximales indiquées. La proportion de l’image est respectée
-resize 800 : même chose avec une largeur maximale de 800 pixels
-resize x600 : même chose avec une hauteur maximale de 600 pixels
-modulate x,y,z : modifie luminosité/saturation/teinte en pourcentage (y puis z optionnel)
-quality 95 : comprime un jpeg à 95 %

Exemple :

 mogrify -monitor -format png -resize 1355x1355 *.tif
Transforme un lot d’image tif en png avec un taux de compression maximale, et réduites à 1355 pixels.

VIRTUALISATION

modifier

Usage excessif du Swap par VMWare

modifier

Normalement, la mémoire Swap devient active lorsque 60 % de la RAM est utilisée :

 # cat /proc/sys/vm/swappiness
 60

Dans le fichier/etc/sysctl.conf, ajouter :

 vm.swappiness=0

De cette façon, la Swap ne sera utilisée que lorsque la mémoire vide sera pleine.

Erreurs diverses

modifier

Failed to lock the file :

supprimer les fichier *.lck et *.LOCKfile dans /var/lib/vmware/Virtual\ Machines/Nom_de_la_machine/

VMWare Player empèche l'installation de paquets Debian

modifier

Use /etc/insserv/overrides. Do the following :

Create /etc/insserv/overrides/vmware with the following :

 ### BEGIN INIT INFO
 # Provides:          vmware
 # Required-Start:    $remote_fs $syslog
 # Required-Stop:     $remote_fs $syslog
 # Default-Start:     2 3 5
 # Default-Stop:      2 3 5
 # Short-Description: VMware VMX service for virtual machines
 # Description:       Allows running of VMware virtual machines.                                    
 ### END INIT INFO

Create /etc/insserv/overrides/vmware-USBArbitrator with the following :

 ### BEGIN INIT INFO
 # Provides:          vmware-USBArbitrator
 # Required-Start:    $remote_fs $syslog vmware
 # Required-Stop:     $remote_fs $syslog vmware
 # Default-Start:     2 3 5
 # Default-Stop:      2 3 5
 # Short-Description: Start daemon when vmware starts
 # Description:       Enable service provided by daemon.
 ### END INIT INFO

Then run :

 chmod +x /etc/insserv/overrides/vmware*