walk-hoary

Archives pour la catégorie GNU/Linux

Créer et monter un volume qcow2

Pour quoi faire ?
Cela peut être utile si vous avez un système de fichier NTFS dans lequel vous souhaitez sauvegarder des données sans perdre les droits UNIX qui vont avec, pour le chiffrer, le transférer, monter une VM…
Création de l’image (ici 1.1G, format qcow2)
qemu-img create -f qcow2 datas.qcow2 1100M
Création du device et attachement du fichier
modprobe nbd max_part=8
qemu-nbd –connect=/dev/nbd0 datas.qcow2
Création de la partition et formatage ext4
cfdisk /dev/nbd0
mkfs.ext4 /dev/nbd0p1
Montage du la partition
mount /dev/nbd0p1 datas

Agenda et contacts android ? Ho oui avec Owncloud !

Retour d’utilisation Owncloud sur Android

Cet article va vous intéresser si vous souhaitez garder une certaine indépendance avec votre mobile android. J’utilisais depuis peu gmail pour synchroniser contact et calendrier car c’était complètement automatique, ouvert, accessible via un navigateur. Sauf que bon, autant j’apprécie google mais je préfère gérer mes données personnelles comme je le fait avec mes emails !

 

J’ai testé Owncloud, et je du coup il tourne depuis car il a été très simple à mettre en place chez moi. (Des simples scripts PHP). Il offre la synchronisation carddav et caldav que l’on attend, il permet de consulter/modifier son calendrier et ses contacts via l’interface web simplement. Mais j’ai bien aimé aussi qu’il puisse synchroniser des répertoires de mon pc un peu comme à la dropbox. En effet il existe plein de client pour avoir un backup ou un répertoire que vont considérez important et le synchroniser sur votre serveur (même sur android pour vos photos par exemples) . La copie de ce répertoire n’est pas chiffrée ; même si c’est votre serveur, j’aurais aimer y glisser un clé de chiffrement un peu comme Firefox le fait avec sa synchronisation de préférence. (Que vous pouvez aussi auto-héberger 😉 ).

 

Coté synchronisation Android, j’ai téléchargé Caldav et CardDav de Marten Gadja (+ les JBWorkaroud recommandés pour Androdi Jelly). Vous aurez alors des compte de synchronisation intégrés à votre android pour gérer calendrier et contacts. Ce sera à vous de faire le transfert de vos contact et calendrier en utilisant la fonction exporter sur gmail.com et le réporter via l’interface wbe de votre owncloud (cela se fait très facilement en format ics et card, formats ouverts et libre rappelons le !).

 

Voilà, j’ai testé Owncloud (quelques minutes pour l’installer) et comme ça marche très bien, je l’ai adopté. vous pouvez virer vos contacts et calendriers de chez votre ancien fournisseur mais il vous sera toujours utile pour accéder à google Play 😉

Mémo de compilation de kernel

Introduction

Il y a quelques années, il était assez fréquent de devoir recompiler son noyau linux pour pouvoir utiliser tel ou tel module… Aujourd’hui c’est très rare mais reste toujours instructif. Je vais donc détailler ici les étapes essentielles pour la compilation mais aussi l’installation d’un noyau compilé par vos petites main sous debian/ubuntu/linuxmint…

Pre-requis

Les sources

Les sources du noyau. On va prendre ceux de linuxmint, mais vous pouvez allez cherchez la version que vous voulez sur kernel.org. Ces deux moyens vont vous donner un fichier tar.gz que nous devons décompresser dans l’emplacement standard /usr/linux/src (Si vous prenez les sources depuis apt de votre distrib, il devrait se trouver dans /usr/src/). Vos sources sont à décompresser dans le répertoire universel /usr/src/linux/

Pour gérer les version, nous utilisons la méthode du lien symbolique en décompressant dans /usr/src/linux-source-3.0.2

sudo tar xvf MESSOURCES -C /usr/src/

Et Ferons un lien symbolique linux

sudo ln -s /usr/src/linux-source-3.0.2 /usr/src/linux

La configuration

Récupérer la configuration utilisé par le noyau de la distribution s’avère utile pour partir sur quelque chose qui marche. Ce n’est pas obligatoire si vous savez ce que vous faites. Vous trouverez ces config dans le répertoire /boot de votre système. (exemple /boot/config-3.2.0-30-generic)

sudo cp /boot/config-3.2.0-30-generic /usr/src/linux/.config

Outils

Pour compiler votre noyau, vous aurez besoin d’un compilateur, mais aussi d’un outil pour configurer et surement un autre pour packager car il est très utile d’en faire un .deb. Cela facilite la désinstallation par exemple ou sa distribution.

sudo aptitude install build-essential

Configurer

Rentrez dans le répertoire /usr/src/linux et lancez l’outil qui vous permettra de configurer votre kernel.

sudo make menuconfig ou sudo make xconfig si vous préférez une version graphique sous X

Oui faites pas comme moi, préférez compiler vos programme en tant qu’utilisateur ! 😉

Compilation et empacketage

sudo make-kpkg --initrd --revision=NumeroQueVousVoulez kernel_image kernel_headers modules_image

Cette commande va compiler et vous faire les 3 .deb qu’il vous faut pour installer votre kernel. Et c’est cette commande que j’oublie tout le temps 🙂 Vous connaissez sûrement la suite pour installer des .deb.



                      

Tags: , ,

Tester un serveur smtp

Il m’arrive souvent de devoir tester si un serveur est capable de relayer un email (ou l’inverse pour empecher l’open relay).

$telnet monserveur.exemple 25
helo nimportequoi
mail from: uneadresse@valide.exemple
rcpt to: uneautreadresse@valide.exemple
data
Tapez votre message
et terminez par une ligne comportant juste un point
quit

A chaque commande, le serveur doit vous répondre un code de retour et parfois une description. Ce code est standard, 2xx = ok (continuez), 4xx = erreur temporaire (ressayez plus tard), 5xx = erreur permanente (votre mail ne passera jamais)

Tags: , ,

Motion sous linux

Le logiciel motion sous GNU/Linux est un démon qui permet de faire des captures vidéo sur du long terme à partir d’une webcam.

Voici quelques fonctions sympas :

  • Créer une vidéo accéléré du ciel, d’une plante ou d’un escargot en accéléré
  • Capturer et envoyer sur un FTP l’image d’une webcam à intervalle régulière
  • Enregistrer les séquences de mouvement devant une webcam
  • Se connecter à motion via le web pour contrôler ou visualiser sa webcam
  • Avoir 8 webcams (ou plus) qui captent en même temps sur la même machine
  • Traquer et suivre avec une webcam motorisée les mouvements
  • Enregistrer les événements dans une base de données

Je vais vous préciser ici les options de base pour permettre les 3 fonctions ci dessous (Je pars de la config du paquet de Debian Squeeze) :

  1. Créer une image toute les 10s
  2. Créer un film d’une semaine de capture avec 1 minute capturée = 1 frame donc 1 journée capturée = 1 minutes de vidéo environ.
  3. Créer autant de séquences vidéo à 5 FPS que de détections de mouvement avec une image associée
# Pour le point 3 : On définit le framerate à 5FPS
framerate 5
# Je fixe la sensibilité à 1000 pixel pour la captation de mouvement
threshold 1000
# Je capture 3 frames de buffer avant une captation de mouvement
pre_capture 3
# Je clos les captation de mouvement 5 secondes si plus rien de bouge devant la webcam
gap 5
# Je décide d'avoir une image qui correspond aux premiers instant de detection de mouvement
output_normal first

# Point 2 : Je capture une frame toute les 60 secondes pour la vidéo en accélérée
ffmpeg_timelapse 60
# Je fait réinitialiser le film accéléré tout les lundi
ffmpeg_timelapse_mode weekly-monday
# Je fixe la qualité des vidéo à 15/31 (2 étant le plus fort)
ffmpeg_variable_bitrate 15
# Je définis la compression en mpeg4
ffmpeg_video_codec mpeg4

# Pour le point 1 : Je définis 1 capture image toutes les 10 secondes
snapshot_interval 10

Tags: , , ,

Ajouter la clé d’un dépôt à votre système APT

Parfois, il arrive de devoir ajouter des dépôts non officiels à la distribution. Pour cela, j’ai l’habitude d’éditer directement le fichier /etc/apt/sources.list

Et bien sûr cela provoque un message à chaque update du style :

W: Erreur de GPG : http://archives.unpaquetexemple.com squeeze Release : Les signatures suivantes n'ont pas pu être vérifiées car la clé publique n'est pas disponible : NO_PUBKEY 0123456789ABCDEF

Une solution simple est de l’ajouter comme cela (en ayant remplacé la clé donnée par le Warning ci précédant) :

gpg --keyserver pgpkeys.mit.edu --recv-key 0123456789ABCDEF
gpg -a --export C514AF8E4BA401C3 | apt-key add -

Tags: , , , ,

Booter en PXE via USB ou CD-ROM

Certaines cartes mère ne permettent pas le boot PXE. Une solution existe : GPXE.

GPXE est bootable sur de mutiples supports : USB, CD-ROM… et permet d’éffectuer un boot réseau.

  • Rendez vous sur la page http://rom-o-matic.net/gpxe/gpxe-1.0.1/contrib/rom-o-matic/build.php
  • Choisissez le type d’image souhaité (usb pour les clés, iso pour les cdrom)
  • Ajoutez les commandes suivantes (Adapatez l’ip à celui de votre serveur tftp)
dhcp net0
set next-server 10.9.0.1
set filename pxelinux.0
autoboot

Tags: , , ,

Limitation de bande passante

Aujourd’hui je vous ressort 2 outils qui peuvent bien dépanner : wondershaper et trickle.
Ils ont pour fonction de limiter la bande passante réseau ; le premier limite au niveau de l’interface, le second au niveau du programme.

Wondershaper

Il se contente juste de limiter le débit en kb/s d’une ou plusieurs de vos interfaces

Pour limiter à 10Mbps en download et 280Kbps en upload :
#wondershaper eth0 10000 280

Pour limiter à 56kbps (Rhaaa les bon vieux modem RTC…) :
#wondershaper eth0 56

Pour supprimer ces limites (Elle disparraissent au reboot) :
#wondershaper clear eth0

Trickle

Il s’agit d’un programme qui va lancer votre programme à votre place en limitant son débit réseau en Ko/s. Il n’est donc pas possible de limiter le débit avec twickle si votre programme est déjà lancé.

Effectuer un téléchargement à 30 Ko/s
$trickle -d 30 wget http://test-debit.free.fr/8192.rnd

Lancer firefox avec une connexion de 50Ko/s en download et 3Ko/s en upload
$trickle -u 3 -d 50 firefox

Lancer sans limitation initiale ; cela est pratique dans l’optique de changer le debit plus tard
$trickle firefox

Modifier le débit commun à chaque programme lancé par trickle avec tricked
$trickled -u 5 -d 20

Tags: , , ,

Quelques astuces bash

Il arrive souvent de vouloir manipuler des process par des petits scripts automatisés. J’ai condensé ici quelques mémos qui me servent occasionnelement.

Lancer mpd si celui ci n’est pas lancé :

if [ -z $(pidof mpd) ]; then
	mpd &
fi

Mettre en priorité CPU basse un programme déjà lancé (19 = la plus basse, -20 = la plus haute)

renice -n 19 -p $(pidof mpd)

Mettre en priorité IO basse un programme (7 = la plus basse, 0 = la plus haute)

ionice -n 7 -p $(pidof mpd)

Tags: , , ,

Lire une video en utilisant la carte graphique

Les pc actuels sont assez puissant pour ne pas avoir besoin d’aide à la décompression h264 mais parfois si.

Si vous avez une carte graphique acceleratrice, pour aurez peu être la chance de pouvoir décoder votre video h264.

Pour cela, il suffira de lancer votre video avec mplayer :

mplayer -vo vdpau -vc ffh264vdpau maVideo.mp4

Il vous faudra au préalable évidement utiliser un driver pour votre carte graphique (nvidia ou nouveau par exemple) et avoir la librairie libvdpau1.

 

Pour flash, j’ai du également forcer la décompression hardware dans le fichier /etc/adobe/mms.cfg (Il est à créer comme son répertoire) :

EnableLinuxHWVideoDecode=1
OverrideGPUValidation=0

Tags: , ,

Je n'aime pas les boîtes noires.