Astuces Debian
Le 20-11-10 à 21:04 , par Cyril PawelkoPermalien.
dans Linux.
Définir le hostname du client DHCP :
Contrairement à Windows ou à une Fedora Core, un client DHCP Debian n'indique pas son nom d'hôte au serveur DHCP, qui ne peut donc pas créer l'enregistrement DNS correspondant.
Pour y remédier, ajouter la ligne suivante dans le fichier /etc/dhclient.conf ou /etc/dhcp3/dhclient.conf pour une ubuntu
send host-name "monpc";
Relancer le réseau pour prendre en compte les changements:
/etc/init.d/networking restart
Adresses IP multiples:
Pour affecter plusieurs adresses IP à une même interface, il suffit de déclarer les adresses supplémentaires dans /etc/network/interfaces, en utilisant le nom de l'interface, suivi de ":0" (ou ":1", ":2", etc...)
Exemple:
auto eth0
iface eth0 inet static
address 192.168.3.90
netmask 255.255.255.0
gateway 192.168.3.1
auto eth0:0
iface eth0:0 inet static
address 192.168.3.91
netmask 255.255.255.0
gateway 192.168.3.1
Redémarrer ensuite le réseau avec la commande /etc/init.d/networking restart
Source
Compiler un paquet à partir du fichier .dsc
Télécharger le fichier .dsc
dget http://mentors.debian.net/debian/pool/main/s/spice-protocol/spice-protocol_0.6.3-1.dsc
Extraire le fichier téléchargé
dpkg-source -x celt051_0.5.1.3-1.dsc
cd celt051-0.5.1.3/
Vérifier les dépendances
dpkg-checkbuilddeps
Compiler si toutes les dépendances sont résolues
dpkg-buildpackage
Compiler en ignorant les dépendances non résolues
dpkg-buildpackage -d
Installer les packages compilés
cd..
dpkg -i libcelt051-0_0.5.1.3-1_amd64.deb libcelt051-dev_0.5.1.3-1_amd64.deb
Astuces Exim
Le 18-02-09 à 21:27 , par Cyril PawelkoPermalien.
dans Linux.
Simuler le routage d'un mail :
exim -bt cyril@domain.com
Voir la file d'attente
exim -bp
Supprimer un mail donné:
exim -Mrm id_mail
Débloquer un mail donné:
exim -M id_mail
Utiliser un smarthost:
Certaines listes de spam (notamment spamhaus) considèrent les IP résidentielles comme source de spam, et blacklistent donc ces adresses IP : "This IP range has been identified by Spamhaus as not meeting our policy for IPs which should deliver 'direct-to-mx' mail to PBL users."
La solution la plus simple consiste à renvoyer les mails à destination des domaines concernés vers le smtp du FAI, ce dernier n'étant pas (toujours) blacklisté
Ajouter dans exim4.conf, au début de la section "begin routers"
send_to_smarthost:
driver = manualroute
domains = gmail.com : netcourrier.com
transport = remote_smtp
route_list = * smtp.free.fr
Astuces Ubuntu
Le 13-10-06 à 19:13 , par Cyril PawelkoPermalien.
dans Linux.
Byte order is not compatible
Le 11-04-10 à 18:43 , par Cyril PawelkoPermalien.
dans Linux.
After migrating awstats data from debian i386 to debian amd64, awstat gives me the following error:
/usr/lib/cgi-bin/awstats.pl -config=awstats -update Update for config "/etc/awstats/awstats.conf" With data in log file "/var/log/apache2/access.log"... Warning: Error while retrieving hashfile: Byte order is not compatible at ../../lib/Storable.pm (autosplit into ../../lib/auto/Storable/_retrieve.al) line 331, at (eval 5) line 1
Explanation is here : hashes are not stored in the same way by Perl Storable on debian 32 bit and 64 bit. The workaround is pretty simple: delete all hashes files, awstats will rebuild them
rm /var/lib/awstats/*.hash
Choisir un serveur ntp
Le 06-11-06 à 15:15 , par Cyril PawelkoPermalien.
dans Linux.
Pour être sûr que son ordinateur reste à l'heure, la méthode universelle consiste à le synchroniser à un serveur de temps en utilisant le protocole ntp. De nombreux serveurs ntp publics existent, une liste est disponible ici, mais les règles d'utilisation sont assez strictes.
La solution, car elle existe, est apportée par le projet pool.ntp.org : elle consiste à utiliser le nom dns pool.ntp.org, qui est un enregistrement renvoyant sur un des serveurs ntp enregistrés auprès du projet. Il est possible d'utiliser d'autres enregistrements dns qui ne renverront que des serveurs présents dans une zone géographique donnée, par exemple europe.pool.ntp.org ou fr.pool.ntp.org.
Quand on monte son propre serveur ntp, il est conseillé d'utiliser 3 serveurs différents, il suffit donc de choisir par exemple 0.pool.ntp.org, 1.pool.ntp.org et 2.pool.ntp.org. Facile !
Compiling rpcapd for linux
Le 08-12-10 à 23:13 , par Cyril PawelkoPermalien.
dans Linux.
Several years ago, I compiled rpcapd for linux. To achieve it, I had to comment the win32 specific code, so it compiled on linux.
I recently tried to compile the latest version, and it doesn't need modifications anymore to successfully compile.
Here is a quick howto, based on debian 5:
Install the required tools
apt-get install bison flex
Download and unzip winpcap
wget http://www.winpcap.org/install/bin/WpcapSrc_4_1_2.zip unzip WpcapSrc_4_1_2.zip cd winpcap/wpcap/libpcap chmod +x configure runlex.sh
Configure libpcap to compile statically...
CFLAGS=-static ./configure
...and compile
make cd rpcapd/
edit the Makefile and add -static to CFLAGS, and finally
make
Downloads:
amd64: rpcapd-4.1.2-amd64.gz i386: rpcapd-4.1.2-i386.gz
Configuration mpd sur debian pour écoute sur iphone
Le 13-09-11 à 22:35 , par Cyril PawelkoPermalien.
dans Linux.
Objectif : Pouvoir écouter sur mon iPhone 3G la musique stockée sur mon serveur linux, sans devoir passer par l'ignoble iTunes, et sans dupliquer les données. La solution existe, il s'agit de mpd (music player daemon) pour la partie serveur, et MPoD pour la partie cliente. L'installation sur une debian squeeze et le manque de doc m'ont incité à partager cette expérience. Configuration validée:
- iPhone 3G
- iOS 4
- MPoD 1.6
- Debian Squeeze amd64
- mpd 0.15.12
Avertissement
Ces manipulations ont été réalisées sur une squeeze installée originellement il y a plus de 7 ans, il manque donc peut-être certaines opérations. Afin de bien montrer que ce n'est pas parfait, toutes les opérations seront réalisées en tant que root ;-)
Recompilation mpd
La version debian de mpod n'inclut pas le support lame, il faut donc recompiler le paquet. Tout d'abord, activer le dépôt Debian Multimédia comme indiqué ici Installer lame
# apt-get install libmp3lame # apt-get install build-essentials # cd /usr/local/src/
Télécharger les sources du paquet, et installer les dépendances nécessaires
# apt-get source mpd # apt-get build-dep mpd
Se rendre dans le répertoire, et activer le support lame
# cd mpd-0.15.12/ # vi debian/rules
Sur la ligne DEB_CONFIGURE_USER_FLAGS, remplacer --disable-lame par --enable-lame Puis lancer la compilation
# dpkg-buildpackage
Une fois terminé, remonter au répertoire parent puis installer le fichier deb ainsi créé
# dpkg -i mpd_0.15.12-1.1_amd64.deb
Configuration de mpd
Editer le fichier /etc/mpd.conf et définir les paramètres suivants:
music_directory "/mnt/data/musique/"
bind_to_address "0.0.0.0"
audio_output {
type "httpd"
name "My HTTP Stream"
encoder "lame" # optional, vorbis or lame
port "8000"
# quality "5.0" # do not define if bitrate is defined
bitrate "128" # do not define if quality is defined
format "44100:16:1"
}
Enregistrer et démarrer le service mpd
La partie iPhone
Installer MPoD Aller dans les réglages de l'application et ajouter manuellement un serveur:
- Connection mode: On the go
- Serveur: IP/nom du serveur
- Port: 6600
- Stream: http://(serveur):8000
Une fois connecté (Status: Connected), retourner dans le menu préférences. Sélectionner "Update database" pour demander à mpd de lister les fichiers disponibles Vérifier dans la partie "Outputs" que "My HTTP Stream" soit bien sélectionné
Et si ça ne fonctionne pas
Quelques pistes...
- Vérifier que mpd fonctionne, en utilisant un autre client que l'iPhone
- Essayer d'écouter le flux http://(serveur):8000 avec vlc ou un navigateur web
- Vérifier les connexions réseaux, en lançant la commande
# watch -n 1 "netstat -apn | grep /mpd" tcp 0 0 0.0.0.0:6600 0.0.0.0:* LISTEN 14046/mpd tcp 0 0 0.0.0.0:8000 0.0.0.0:* LISTEN 14046/mpd tcp 0 15334 192.168.3.9:8000 192.168.3.64:49954 ESTABLISHED 14046/mpd
On voit ici:
- Que mdp fonctionne bien et écoute bien sur le port 6600 (le service est lancé)
- Que mdp écoute sur le port 8000 (uniquement lorsqu'une lecture est en cours)
- Que l'iphone est connecté sur le port 8000 et "reçoit" le flux audio
Bonus
Profitez maintenand de MPoD, qui a en plus la bonne idée d'aller chercher tout seul les pochettes chez Amazon
Copie de disque via un fifo
Le 07-03-07 à 22:33 , par Cyril PawelkoPermalien.
dans Linux.
Voici la copie d'un message que j'ai posté sur gentoo-user-fr il y a quelques années :
>J ai deux serveurs avec le meme materiel (exactement) >sur l un il y a gentoo sur l autre rien > >comment puis-je au mieux repliquer, l installation, de l un vers l autre > >Merci d avance > >bernhard@... > >-- >gentoo-user-fr@g.o mailing list >
Salut, La procédure que j'utilise est la suivante : Je mets les deux disques durs dans le même PC. Soit hda le disque avec la gentoo et hdb le disque vide. Je monte le disque vide dans /mnt/vide Je créée un fifo : mkfifo /tmp/fifo Je lance un en arrière plan "tar" de la gentoo existante vers le fifo, en lui disant de conserver les permissions et d'omettre /mnt/vide : tar cvp / -X /mnt/vide > /tmp/fifo& Je vais dans /mnt/vide : cd /mnt/vide Je détarre le contenu de fifo : tar xvp < /tmp/fifo A la fin, je supprime /tmp/fifo Ainsi j'ai exactement la même chose sur les deux disques. L'option -X de tar permet d'exclure des répertoires, comme /tmp , /var/log, /var/tmp Comme il est préférable qu'il n'y ait pas de fichiers ouverts, il est possible d'effectuer cette opération en bootant sur un livecd (celui de la gentoo ou une knoppix). Il faut ensuite penser à changer au moins le hostname sur la seconde machine.
Enabling Wake on Lan on DLink DFE-538TX
Le 30-12-07 à 13:23 , par Cyril PawelkoPermalien.
dans Linux.
I've installed a D-Link DFE 538 TX network card (via rhine chipset) in my computer but wake on lan didn't seem to work. I discovered that I could (and I had) to enable it at each reboot, using ethtool
root@ale:~# ethtool eth1
Settings for eth1:
Supported ports: [ TP MII ]
Supported link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
Supports auto-negotiation: Yes
Advertised link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
Advertised auto-negotiation: Yes
Speed: 100Mb/s
Duplex: Full
Port: MII
PHYAD: 8
Transceiver: internal
Auto-negotiation: on
Supports Wake-on: pumbg
Wake-on: d
Current message level: 0x00000001 (1)
Link detected: yes
According to ethtool's man page :
wol p|u|m|b|a|g|s|d...
Set Wake-on-LAN options. Not all devices support this.
The argument to this option is a string of characters specifying
which options to enable.
p Wake on phy activity
u Wake on unicast messages
m Wake on multicast messages
b Wake on broadcast messages
a Wake on ARP
g Wake on MagicPacket(tm)
s Enable SecureOn(tm) password for MagicPacket(tm)
d Disable (wake on nothing). This option clears all previous options.
So wake on lan is disabled each time I turn on my computer. To enable all wake-on-lan options:
ethtool -s eth1 wol pumbg
And to enable them at each system startup :
echo "/usr/sbin/ethtool -s eth1 wol pumbg" | tee -a /etc/rc.local
I can now use wakeonlan to wake up my computer... And it's written in dmesg :
via-rhine: Woke system up. Reason: Magic packet.
Grub error 15 when adding new hard disk
Le 08-03-08 à 00:18 , par Cyril PawelkoPermalien.
dans Linux.
I have a Asus M2N-MX motherboard, with an single SATA disk, and grub correctly configured:
/boot/grub/device.map
(hd0) /dev/sda
When I tried adding an IDE disk, grub refused to boot with "error 15", which means "file not found".
Obviously, grub was detecting disks in a wrong order, and was trying to load stage 1.5 from the IDE disk. To be clear, since the boot disk defined in the BIOS was the SATA, it had to be presented to grub as the first disk. So it's a buggy BIOS.
This seems to be a common behavior when mixing IDE and SATA disks. I googled about this error, but founded nothing really helpful. Changing boot order or activating onboard RAID didn't solve this error.
Then I upgraded from bios 0701 to 0903, and the problem was gone.
TIP: To upgrade Asus motherboard bios on a linux-only computer, you don't need to create a DOS bootable floppy. Recent Asus motherboard include a feature called "EZ-Flash", which is an BIOS upgrade utility included ... in the BIOS.
- Download BIOS update from Asus Website
- Unzip it and extract the .ROM file (for me M2NX0907.ROM)
- Rename this file with the motherboard model name (for me M2N-MX.ROM)
- Install mtools on your distro
- Insert a blank floppy
- Format the floppy
mformat a: - Copy the rom on the floppy
mcopy M2N-MX.ROM a: - Reboot
- During POST, press Alt-F2 to launch EZ-Update
- The BIOS upgrade procedure will start

