Difference between revisions of "Divers"

From Hugo Villeneuve
Jump to: navigation, search
 
(85 intermediate revisions by 2 users not shown)
Line 1: Line 1:
'''Pour capturer les données sur le réseau:'''
+
=Pour capturer les données sur le réseau=
 
<nowiki>tcpdump -X -n -t -s 0 src 192.168.0.45</nowiki>
 
<nowiki>tcpdump -X -n -t -s 0 src 192.168.0.45</nowiki>
   
'''Pour afficher une image en arrière-plan (X-Windows):'''
+
=Pour afficher une image en arrière-plan (X-Windows)=
 
<nowiki>wmsetbg --center --workspace 0 image.jpeg</nowiki>
 
<nowiki>wmsetbg --center --workspace 0 image.jpeg</nowiki>
   
  +
=Email=
==Sylpheed==
 
   
  +
==Sylpheed==
'''Configuration du naviguateur'''
 
<nowiki>opera -newpage %s</nowiki>
 
   
'''Configuration du serveur LDAP'''
+
===Configuration du serveur LDAP===
   
 
LDAP search string:
 
LDAP search string:
 
(&(mail=*)(cn=*%s*))
 
(&(mail=*)(cn=*%s*))
   
  +
===Effacer le compte local MH===
'''Configuration du client Email dans Opera'''
 
<nowiki> sylpheed --compose [mailto:%t][?subject=%s]</nowiki>
 
   
  +
Sélectionner le compte local MH, et faire 'File - Mailbox - Remove mailbox'
'''Setup French Canadian (old ca_enhanced) layout'''
 
   
  +
=Démarrage Linux sans authentification=
With Xorg7, "ca_enhanced" is no more. You have to do a little trick to get the same layout that you are used to: Switch the old:
 
Option "XkbLayout" "ca_enhanced"
 
 
To:
 
Option "XkbLayout" "ca"
 
Option "XkbVariant" "fr"
 
 
'''Démarrage Linux sans authentification'''
 
   
 
Dans le fichier /etc/inittab, remplacer cette ligne:
 
Dans le fichier /etc/inittab, remplacer cette ligne:
Line 49: Line 40:
 
exit $?
 
exit $?
   
'''Affichage des fichiers avec majuscule en premier'''
+
=Affichage des fichiers avec majuscule en premier=
 
set LC_COLLATE=C
 
set LC_COLLATE=C
   
'''How to do a search and replace over multiple files?'''
+
=How to do a search and replace over multiple files?=
 
 
 
You could use find and sed, but I find that this little line of perl works nicely:
 
You could use find and sed, but I find that this little line of perl works nicely:
Line 74: Line 65:
 
<nowiki>perl -pi -w -e 's/\.\.\/includes\/style\.css/admin\.css/g;' *.php</nowiki>
 
<nowiki>perl -pi -w -e 's/\.\.\/includes\/style\.css/admin\.css/g;' *.php</nowiki>
   
'''Installation de style file latex:'''
+
=Installation de style file latex=
   
 
Éxécuter la commande:
 
Éxécuter la commande:
Line 80: Line 71:
   
 
après avoir installé le fichier .sty
 
après avoir installé le fichier .sty
  +
  +
=Supprimer un "/" à la fin=
  +
  +
DIR="/usr/local/bin/"
  +
echo ${DIR%/}
  +
  +
=Effacer plusieurs fichiers avec find=
  +
  +
find . -name .svn -exec rm -rf {} \;
   
 
=LFS: Comment sauver de l'espace disque=
 
=LFS: Comment sauver de l'espace disque=
   
'''/usr/share/zoneinfo'''
+
==/usr/share/zoneinfo==
 
If you copy your timezone to /etc/localtime instead of making the
 
If you copy your timezone to /etc/localtime instead of making the
 
normal symbolic link, all of /usr/share/zoneinfo can be removed.
 
normal symbolic link, all of /usr/share/zoneinfo can be removed.
   
'''/usr/share/locale and /usr/lib/locale'''
+
==/usr/share/locale and /usr/lib/locale==
 
If you don't use NLS, you can remove all the locale info in /usr/share/locale and /usr/lib/locale.
 
If you don't use NLS, you can remove all the locale info in /usr/share/locale and /usr/lib/locale.
   
'''/usr/share/man'''
+
==/usr/share/man==
Les répertoires /usr/share/man{cs,de,es,fi,fr,hu,id,it,ja,ko} etc peuvent être enlevés.
+
Les répertoires /usr/share/man{cs,de,es,fi,fr,sauver de l'espace disquehu,id,it,ja,ko} etc peuvent être enlevés.
  +
  +
=Comment synchroniser deux répertoires=
  +
Le répertoire dest va devenir un miroir de src:
  +
$> rsync -av --delete src/* dest
  +
  +
=Installation CUPS-PDF=
  +
Sur le serveur (web admin interface, port 631, http://localhost:631/), cliquer sur "Find New Printer"
  +
  +
Sélectionner "Generic Make"
  +
  +
Model: Sélectionner "Generic CUPS-PDF Printer (en)"
  +
  +
=tar avec SSH=
  +
tar jcvf - directory | ssh user@host "cat > directory.tar.bz2"
  +
  +
=Syntax highlighting MediaWiki=
  +
  +
Ajouter à la fin de /etc/mediawiki/LocalSettings.php:
  +
  +
<source lang=ini>
  +
wfLoadExtension('SyntaxHighlight_GeSHi');
  +
</source>
  +
  +
Replace in skins/monobook/main.css:
  +
  +
<source lang=css>
  +
pre {
  +
padding: 1em;
  +
border: 1px dashed #2f6fab;
  +
color: black;
  +
background-color: #f9f9f9;
  +
line-height: 1.1em;
  +
</source>
  +
  +
With:
  +
  +
<source lang=css>
  +
pre {
  +
padding: 1em !important;
  +
border: 1px dashed #2f6fab !important;
  +
color: black;
  +
background-color: #f9f9f9 !important;
  +
line-height: 1.1em !important;
  +
</source>
  +
  +
=Lecture température disque dur=
  +
$> hddtemp /dev/sda
  +
  +
=SMART Disk Monitoring Daemon=
  +
  +
$> apt-get install smartmontools
  +
$> smartctl -t long /dev/sda [wait until test completes, then]
  +
$> smartctl -l selftest /dev/sda
  +
  +
=Changement du mot de passe usager=
  +
  +
Si vous avez ce message d'erreur:
  +
  +
password for ' null ' gnome keyring
  +
  +
Il faut éxécuter:
  +
  +
$> rm ~/.gnome2/keyrings/login.keyring
  +
  +
=Combiner plusieurs documents PDF en un seul=
  +
  +
$> gs -dBATCH -dNOPAUSE -q -sDEVICE=pdfwrite -sOutputFile=output.pdf file1.pdf file2.pdf
  +
  +
Si les sources sont des images, on peut utiliser ImageMagick:
  +
  +
$> convert *.gif foo.pdf
  +
  +
  +
=Changer l'orientation d'un document PDF=
  +
  +
$> gs -sDEVICE=pdfwrite -sOutputFile=output.pdf -dNOPAUSE -dBATCH -dEPSCrop -c "<</Orientation 2>> setpagedevice" -f file1.pdf
  +
  +
$> pdf90
  +
  +
=RTC=
  +
  +
Pour que Linux ajuste automatiquement son horloge selon le RTC au démarrage, il faut:
  +
  +
Ne pas sélectionner "Enhanced Real-time clock Support" dans "Device Drivers ---> Character devices --->"
  +
Sélectionner (built-in ,pas modulaire) "Device Drivers ---> Real Time Clock ---> Set system time from RTC on startup and resume"
  +
  +
Avec ça, plus besoin du script /etc/rc.d/init.d/setclock
  +
  +
=Recherche dans un répertoire de Subversion=
  +
  +
==grep==
  +
  +
Utiliser cette commande pour avoir la colorisation avec les pipes, et pour ne pas afficher les résultats contenant le texte 'svn':
  +
grep -rn --color=always -e STRING * | grep -v svn | less -R
  +
  +
Cette version est plus efficace car elle élimine la recherche dans les répertoires '.svn':
  +
grep --color=always -rn STRING $(find . -type f | grep -v '\.svn') | less -R
  +
  +
Encore mieux: 'less' quitte si le texte peut être affiché entièrement à l'écran:
  +
grep --color=always -rn STRING $(find . -type f | grep -v '\.svn') | less -RF
  +
  +
Encore encore mieux: 'less' n'efface pas l'écran:
  +
grep --color=always -rn STRING $(find . -type f | grep -v '\.svn') | less -RFX
  +
  +
==ack==
  +
  +
Alternative à grep:
  +
http://betterthangrep.com/
  +
  +
Exemple:
  +
ack STRING --pager="less -RFX"
  +
  +
ack est intéressant car recherche les répertoires récursivement par défaut et ignore les répertoires '.svn', 'CVS' et autres similaires.
  +
  +
  +
=Capture d'écran=
  +
  +
import screenshot.png
  +
  +
=Permettre d'éteindre l'appareil sans être authentifié=
  +
  +
Enlever le '-a' de la ligne shutdown dans /etc/inittab
  +
  +
=Deleting files on mounted partitions in PcManFM gives error messge=
  +
  +
Error message:
  +
Some files cannot be moved to trash can because the underlying file systems don't support this operation...
  +
  +
Fix by creating a trash folder on the partition root:
  +
mkdir .Trash-1004
  +
chown -R 1004:1000 .Trash-1004/
  +
chmod 700 .Trash-1004/
  +
  +
=Encrypter un fichier=
  +
gpg -c filename
  +
  +
cat file | gpg -c -o file.gpg
  +
  +
=Désactivation SSH strict checking=
  +
  +
Pratique quand on a le message d'erreur:
  +
  +
  +
<source lang=text>
  +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
  +
@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @
  +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
  +
IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
  +
Someone could be eavesdropping on you right now (man-in-the-middle attack)!
  +
It is also possible that a host key has just been changed.
  +
</source >
  +
  +
$> ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no user@machine
  +
  +
  +
=Monter une partition VFAT avec caractères accentués dans les noms de fichiers=
  +
  +
$> mount -o codepage=850,iocharset=iso8859-1,utf8 /dev/sdx1 mount-point
  +
  +
=Vérifier si un disque est en mode actif ou pas=
  +
  +
$> hdparm -C /dev/sdb
  +
  +
=2 moniteurs avec Debian =
  +
  +
Modifier:
  +
  +
$> /etc/gdm3/Init/Default
  +
  +
et ajouter la ligne:
  +
  +
<source lang=text>
  +
xrandr --output DVI-0 --auto --output VGA-0 --auto --left-of DVI-0
  +
</source >
  +
  +
=Configurer Debian pour rouler les applications X remote=
  +
  +
Ajouter dans /etc/gdm3/daemon.conf:
  +
  +
<source lang=text>
  +
[security]
  +
DisallowTCP=false
  +
</source >
  +
  +
Et faire:
  +
  +
$> xhost +
  +
  +
=OpenWRT=
  +
  +
Luci install:
  +
  +
$> opkg update
  +
$> opkg install luci
  +
ou
  +
$> opkg install luci-ssl
  +
  +
Luci start:
  +
  +
/etc/init/uhttpd start
  +
  +
Configure to start automatically:
  +
  +
/etc/init.d/uhttpd enable
  +
  +
  +
=Effacer une ligne dans un fichier=
  +
  +
sed -i -e '/#include "header.h"/d' main.c
  +
  +
for f in *.{c,h}; do sed -i '/#include "header.h"/d' ${f} ;done
  +
  +
=Comment se débarrasser du répertoire "Trash" dans INBOX sur serveur IMAP Dovecot=
  +
  +
Effacer les noms de répertoires indésirables dans le fichier ".subscriptions" sur le serveur.
  +
  +
= Xresources =
  +
  +
Pour voir la configuration actuelle:
  +
  +
$> xrdb -query -all
  +
  +
  +
  +
= .xsessionrc =
  +
  +
<source lang=bash>
  +
#!/bin/bash
  +
  +
# Nécessaire car lightdm ne lit pas /etc/profile (not a login shell):
  +
if [ -f /etc/profile ]; then
  +
. /etc/profile
  +
fi
  +
  +
if [ -f ${HOME}/.profile ]; then
  +
. ${HOME}/.profile
  +
fi
  +
  +
# Disable bell
  +
xset -b
  +
  +
xscreensaver -no-splash &
  +
  +
# Load resources
  +
xrdb -merge .Xresources
  +
  +
DBUS_SESSION_BUS_ADDRESS="" dropbox start &
  +
</source >
  +
  +
= Niveau de zoom dans Evince =
  +
  +
the maximal zoom is constrained by page cache size so by setting higher value you should be able to get higher zoom:
  +
  +
gsettings set org.gnome.Evince page-cache-size 200
  +
  +
= Bug NFS Debian =
  +
  +
Message d'erreur:
  +
...blkmapd[278]: open pipe file /run/rpc_pipefs/nfs/blocklayout failed: No such file or directory...
  +
  +
Solution:
  +
$> sudo systemctl disable nfs-blkmap

Latest revision as of 19:27, 11 April 2022

Contents

Pour capturer les données sur le réseau

 tcpdump -X -n -t -s 0 src 192.168.0.45

Pour afficher une image en arrière-plan (X-Windows)

 wmsetbg --center --workspace 0 image.jpeg

Email

Sylpheed

Configuration du serveur LDAP

LDAP search string:

 (&(mail=*)(cn=*%s*))

Effacer le compte local MH

 Sélectionner le compte local MH, et faire 'File - Mailbox - Remove mailbox'

Démarrage Linux sans authentification

Dans le fichier /etc/inittab, remplacer cette ligne:

 1:12345:respawn:/sbin/agetty 38400 tty1

par celle-ci:

 1:12345:respawn:/sbin/agetty -n -l /bin/bootdisk-login 38400 tty1

et créez le script /bin/bootdisk-login:

 #! /bin/sh
 export HOME=/root
 export PS1='\u:\w\$ '
 export PATH=/bin:/usr/bin:/sbin:/usr/sbin
 cd ${HOME}
 /bin/bash --login
 exit $?

Si vous voulez démarrer X sans authentification pour un usager en particulier, voici le script à utiliser:

 #! /bin/sh
 su <usager> -c /usr/X11R6/bin/startx
 exit $?

Affichage des fichiers avec majuscule en premier

 set LC_COLLATE=C

How to do a search and replace over multiple files?

You could use find and sed, but I find that this little line of perl works nicely:

   perl -pi -w -e 's/search/replace/g;' *.php 
 -e means execute the following line of code.
 -i means edit in-place
 -w write warnings
 -p loop

Example I had the following style sheet in a section:

 <link rel="stylesheet" type="text/css" href="../includes/style.css">

and I wanted the following instead:

 <link rel="stylesheet" type="text/css" href="admin.css">

As each expression is a regular expression you've got to escape the special characters such as forward slash and .

 \.\.\/includes\/style\.css

So the final line of code ends up as

 perl -pi -w -e 's/\.\.\/includes\/style\.css/admin\.css/g;' *.php

Installation de style file latex

Éxécuter la commande:

 mktexlsr

après avoir installé le fichier .sty

Supprimer un "/" à la fin

DIR="/usr/local/bin/"
echo ${DIR%/}

Effacer plusieurs fichiers avec find

find . -name .svn -exec rm -rf {} \;

LFS: Comment sauver de l'espace disque

/usr/share/zoneinfo

If you copy your timezone to /etc/localtime instead of making the normal symbolic link, all of /usr/share/zoneinfo can be removed.

/usr/share/locale and /usr/lib/locale

If you don't use NLS, you can remove all the locale info in /usr/share/locale and /usr/lib/locale.

/usr/share/man

Les répertoires /usr/share/man{cs,de,es,fi,fr,sauver de l'espace disquehu,id,it,ja,ko} etc peuvent être enlevés.

Comment synchroniser deux répertoires

Le répertoire dest va devenir un miroir de src:

 $> rsync -av --delete src/* dest

Installation CUPS-PDF

 Sur le serveur (web admin interface, port 631, http://localhost:631/), cliquer sur "Find New Printer"
 Sélectionner "Generic Make"

 Model: Sélectionner "Generic CUPS-PDF Printer (en)"

tar avec SSH

 tar jcvf - directory | ssh user@host "cat > directory.tar.bz2"

Syntax highlighting MediaWiki

Ajouter à la fin de /etc/mediawiki/LocalSettings.php:

wfLoadExtension('SyntaxHighlight_GeSHi');

Replace in skins/monobook/main.css:

pre {
	padding: 1em;
	border: 1px dashed #2f6fab;
	color: black;
	background-color: #f9f9f9;
	line-height: 1.1em;

With:

pre {
	padding: 1em !important;
	border: 1px dashed #2f6fab !important;
	color: black;
	background-color: #f9f9f9 !important;
	line-height: 1.1em !important;

Lecture température disque dur

 $> hddtemp /dev/sda

SMART Disk Monitoring Daemon

 $> apt-get install smartmontools
 $> smartctl -t long /dev/sda [wait until test completes, then]
 $> smartctl -l selftest /dev/sda

Changement du mot de passe usager

Si vous avez ce message d'erreur:

 password for ' null ' gnome keyring

Il faut éxécuter:

 $> rm ~/.gnome2/keyrings/login.keyring

Combiner plusieurs documents PDF en un seul

 $> gs -dBATCH -dNOPAUSE -q -sDEVICE=pdfwrite -sOutputFile=output.pdf file1.pdf file2.pdf

Si les sources sont des images, on peut utiliser ImageMagick:

 $> convert *.gif foo.pdf


Changer l'orientation d'un document PDF

 $> gs -sDEVICE=pdfwrite -sOutputFile=output.pdf -dNOPAUSE -dBATCH -dEPSCrop -c "<</Orientation 2>> setpagedevice" -f file1.pdf
 $> pdf90

RTC

Pour que Linux ajuste automatiquement son horloge selon le RTC au démarrage, il faut:

 Ne pas sélectionner "Enhanced Real-time clock Support" dans "Device Drivers  ---> Character devices  --->"
 Sélectionner (built-in ,pas modulaire) "Device Drivers  ---> Real Time Clock  ---> Set system time from RTC on startup and resume"

Avec ça, plus besoin du script /etc/rc.d/init.d/setclock

Recherche dans un répertoire de Subversion

grep

Utiliser cette commande pour avoir la colorisation avec les pipes, et pour ne pas afficher les résultats contenant le texte 'svn':

 grep -rn --color=always -e STRING * | grep -v svn | less -R

Cette version est plus efficace car elle élimine la recherche dans les répertoires '.svn':

 grep --color=always -rn STRING $(find . -type f | grep -v '\.svn') | less -R

Encore mieux: 'less' quitte si le texte peut être affiché entièrement à l'écran:

 grep --color=always -rn STRING $(find . -type f | grep -v '\.svn') | less -RF

Encore encore mieux: 'less' n'efface pas l'écran:

 grep --color=always -rn STRING $(find . -type f | grep -v '\.svn') | less -RFX

ack

Alternative à grep:

 http://betterthangrep.com/

Exemple:

 ack STRING --pager="less -RFX"

ack est intéressant car recherche les répertoires récursivement par défaut et ignore les répertoires '.svn', 'CVS' et autres similaires.


Capture d'écran

 import screenshot.png

Permettre d'éteindre l'appareil sans être authentifié

Enlever le '-a' de la ligne shutdown dans /etc/inittab

Deleting files on mounted partitions in PcManFM gives error messge

Error message:

 Some files cannot be moved to trash can because the underlying file systems don't support this operation...

Fix by creating a trash folder on the partition root:

 mkdir .Trash-1004
 chown -R 1004:1000 .Trash-1004/
 chmod 700 .Trash-1004/

Encrypter un fichier

 gpg -c filename
 cat file | gpg -c -o file.gpg

Désactivation SSH strict checking

Pratique quand on a le message d'erreur:


@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@    WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!     @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
Someone could be eavesdropping on you right now (man-in-the-middle attack)!
It is also possible that a host key has just been changed.
 $> ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no user@machine


Monter une partition VFAT avec caractères accentués dans les noms de fichiers

 $> mount -o codepage=850,iocharset=iso8859-1,utf8 /dev/sdx1 mount-point

Vérifier si un disque est en mode actif ou pas

 $> hdparm -C /dev/sdb

2 moniteurs avec Debian

Modifier:

 $>  /etc/gdm3/Init/Default

et ajouter la ligne:

  xrandr --output DVI-0 --auto --output VGA-0 --auto --left-of DVI-0

Configurer Debian pour rouler les applications X remote

Ajouter dans /etc/gdm3/daemon.conf:

  [security]
  DisallowTCP=false

Et faire:

 $> xhost +

OpenWRT

Luci install:

 $> opkg update
 $> opkg install luci

ou

 $> opkg install luci-ssl

Luci start:

 /etc/init/uhttpd start

Configure to start automatically:

 /etc/init.d/uhttpd enable


Effacer une ligne dans un fichier

 sed -i -e '/#include "header.h"/d' main.c
 for f in *.{c,h}; do sed -i '/#include "header.h"/d' ${f} ;done

Comment se débarrasser du répertoire "Trash" dans INBOX sur serveur IMAP Dovecot

Effacer les noms de répertoires indésirables dans le fichier ".subscriptions" sur le serveur.

Xresources

Pour voir la configuration actuelle:

 $> xrdb -query -all


.xsessionrc

#!/bin/bash

# Nécessaire car lightdm ne lit pas /etc/profile (not a login shell):
if [ -f /etc/profile ]; then
    . /etc/profile
fi

if [ -f ${HOME}/.profile ]; then
    . ${HOME}/.profile
fi

# Disable bell
xset -b

xscreensaver -no-splash &

# Load resources
xrdb -merge .Xresources

DBUS_SESSION_BUS_ADDRESS="" dropbox start &

Niveau de zoom dans Evince

the maximal zoom is constrained by page cache size so by setting higher value you should be able to get higher zoom:

 gsettings set org.gnome.Evince page-cache-size 200

Bug NFS Debian

Message d'erreur:

   ...blkmapd[278]: open pipe file /run/rpc_pipefs/nfs/blocklayout failed: No such file or directory...

Solution:

   $> sudo systemctl disable nfs-blkmap