l'auto-hébergement c'est pour les warriors de l'internet \o/
Le cloud caymal
J'ai dépoussiéré un client léger (HP t5000) que j'avais en stock, on enlève la puce du contrôleur audio et on lui greffe un disque dur de faible ampérage sur le port 44 pin.
Le faible ampérage est indispensable pour que le client léger puisse booter sur le disque dur.
Thread original sur hardware.fr
On utilise une Debian Stable, Squeeze ici, en NetInstall
Téléchargement
On pourrait très bien faire une installation entièrement par le réseau, mais par commodité j'ai utilisé un live-usb.
Connaitre le nom de la clé
Connectez votre clé USB et tapez la commande suivante pour savoir comment le système la nomme :
ls -l /dev/disk/by-id/*usb* lrwxrwxrwx 1 root root 9 28 sept. 19:59 /dev/disk/by-id/usb-Sony_Storage_Media_2A08072252121-0:0 -> ../../sdd lrwxrwxrwx 1 root root 10 28 sept. 19:59 /dev/disk/by-id/usb-Sony_Storage_Media_2A08072252121-0:0-part1 -> ../../sdd1
Dans ce cas, la clé sera donc /dev/sdd et elle possède une partition nommée sdd1 “Démonter” la clé et y écrire les données
ATTENTION, les instructions suivantes vont détruires TOUTES les données sur votre clé USB. Démontez le disk avec la commande umount : Remplacez CLE par le nom de votre clé (trouvé a l'étape précédente et démontez les partitions qu'elle contient)
umount /media/CLEx
x représente les numéros de partition. Répétez l'opération si votre clé en contient plusieurs. Exécutez la commande suivante (en root ou avec sudo) pour copier l'ISO sur la clé USB Remplacez /dev/sdX avec le nom de la clé trouvé au point 2 (/dev/sdd dans l'exemple) et remplacez le crunchbang_version.iso par le nom de votre fichier. Ne vous trompez pas de lettre pour sdX sinon vous risquez d'effacer une partition sur un de vos disques.
sudo dd if=crunchbang_version.iso of=/dev/sdX bs=4M;sync
voir tuto
on définit un nom, nom domaine
on retire la clé usb et on reboot
repasser par le bios pour enlever le boot via usb
quand tout les services se sont lancés on se log en root
Pour cela éditer le fichier /etc/bash.bashrc puis ajouter ou décommenter
les lignes suivantes :
if [ -f /etc/bash_completion ]; then . /etc/bash_completion fi
et avec la commande sudo
if [ "$PS1" ]; then complete -cf sudo fi
source .bashrc
ca va mieux mv /etc/motd /etc/motd.old openssh sudo root ALL=(ALL) ALL utilisateur ALL=(ALL) ALL
Defaults timestamp_timeout=0 Defaults:utilisateur tty_tickets
On va maintenant désactiver le compte root car nous n’en avons plus besoin.
passwd -l root
Si besoin on peut réactiver le compte root
passwd -u root
au préalble créer une adresse chez noip
on a besoin de make et gcc pour compiler le client no-ip disponible ici https://www.noip.com/downloads.php?page=linux
apt-get install make gcc
make
sudo make install
autoconfiguration proposée
email/login
mdp
liste des hosts trouvés
Do you wish to have them all updated?[N] (y/N) N
Do you wish to have host [chezmoi.no-ip.org] updated?[N] (y/N) y
Please enter an update interval:[30] 30
Do you wish to run something at successful update?[N] (y/N) N
~$ sudo apt-get install lighttpd
~$ sudo apt-get install php5-cgi
~$ sudo apt-get install mysql-server mysql-client
~$ sudo apt-get install php5 php5-mysql
~$ sudo apt-get install vsftpd
~$ sudo nano /etc/vsftpd.conf
On installe lm-sensors pour récupérer les informations des capteurs
:~$ sudo apt-get install lm-sensors
On teste
:~$ sensors vt8231-isa-6000 Adapter: ISA adapter in0: +2.08 V (min = -0.03 V, max = +2.63 V) in1: +2.14 V (min = -0.03 V, max = +2.63 V) in2: +2.55 V (min = -0.03 V, max = +2.63 V) in3: +0.68 V (min = -0.03 V, max = +2.63 V) +3.3V: +3.33 V (min = -0.05 V, max = +4.18 V) fan1: 0 RPM (min = 2570 RPM, div = 2) ALARM fan2: 0 RPM (min = 2570 RPM, div = 2) ALARM temp1: +111.0°C (high = +161.0°C, hyst = +0.0°C) temp6: +0.8°C (high = -0.0°C, hyst = +2.6°C)
Le BIOS ne me renseigne pas sur les capteurs, mais pour moi il y a un soucis au niveau des températures et les voltages me semblent faibles.
J'ai tenté la détection avec sudo sensors-detect, mais rien ne change.
J'ai fouillé chez l'éditeur, et quelques personnes parlent du chipset vt8231-isa-6000, ici, ici et là.
Donc j'ai créé un autre fichier de configuration
:~$ sudo nano /etc/sensors.conf
Où je désactive les informations relatives aux ventilateurs vu qu'il n'y en a pas et je convertis temp1 en degré, 111°F = 43.88°C, ce qui paraît plus plausible, le processeur n'étant pas un foudre de guerre et en mettant la main sur le radiateur passif on ne se brule pas…
chip "vt1211-*" "vt8231-*" set config 12 ignore fan1 ignore fan2 compute temp1 (@ - 32) * 5 / 9, (@ * 5 / 9) + 32
Et on renomme/déplace l'ancienne configuration
:~$ sudo mv /etc/sensors3.conf /etc/sensors3.conf.old
On vérifie
:~$ sensors vt8231-isa-6000 Adapter: ISA adapter in0: +2.08 V (min = -0.03 V, max = +2.63 V) in1: +2.14 V (min = -0.03 V, max = +2.63 V) in2: +2.55 V (min = -0.03 V, max = +2.63 V) in3: +0.68 V (min = -0.03 V, max = +2.63 V) in5: +3.33 V (min = -0.05 V, max = +4.18 V) temp1: +43.9°C (high = +71.7°C, hyst = -17.8°C) temp6: +0.8°C (high = -0.0°C, hyst = +2.6°C)
C'est déjà plus potable, par contre si quelqu'un a un patch officiel ça m’intéresse.
On installe hddtemp pour récupérer les températures du disque dur
:~$ sudo apt-get install hddtemp
On accepte la configuration par défaut proposée lors de l'installation, notamment: les droits super-utilisateur et l'écoute du démon sur 127.0.0.1:7634. Du coup, il faut être root pour exécuter hddtemp
:~$ sudo hddtemp /dev/sda /dev/sda: ST9120822A: 30°C
On pourrait changer les droits d’exécution de hddtemp, mais c'est déconseillé pour des raisons de sécurité, on peut à la place utiliser
:~$ nc localhost 7634 |/dev/sda|ST9120822A|29|C|
http://www.monitorix.org/
Ajout dépôt d'Izzysoft: http://apt.izzysoft.de/ubuntu/dists/generic/
:~$ echo "deb http://apt.izzysoft.de/ubuntu generic universe" | sudo tee -a /etc/apt/sources.list.d/izzisoft.list
Ajout de la clef du dépôt
:~$ wget -q http://apt.izzysoft.de/izzysoft.asc -O- | sudo apt-key add -
On rafraichit la liste des paquets
:~$ sudo apt-get update
Et on installe
:~$ sudo apt-get install monitorix
Le fichier de configuration de Monitorix se trouve dans /etc/monitorix.conf
On relance Monitorix pour prendre en compte la nouvelle configuration
:~$ sudo /etc/init.d/monitorix restart
On ajoute dans la configuration de Nginx
# on a besoin du module cgi, on le rajoute dans le bloc server.modules server.modules = ( ... "mod_cgi", ) # on définit un alias pour monitorix alias.url += ( "/monitorix-cgi" => "/usr/share/monitorix/cgi-bin/", "/monitorix" => "/usr/share/monitorix/", ) $HTTP["url"] =~ "/monitorix-cgi/" { cgi.assign = ( ".cgi" => "/usr/bin/perl", ) # si par défaut le mimetype des fichiers sans extension est text/plain, on ajoute une exception pour monitorix mimetype.assign = ( "" => "application/octet-stream" ) }
On relance Nginx
:~$ sudo /etc/init.d/lighttpd restart
http://rk4an.github.com/phpsysinfo/
PhpSysInfo est un script PHP permettant d'afficher les informations du système.
On récupère la dernière version et on l'extrait dans le dossier qui va bien
:~$ wget --no-check-certificate https://github.com/rk4an/phpsysinfo/archive/v3.1.0.tar.gz :~$ tar -xvf v3.0.20.tar.gz -C www/sysinfo
On édite le fichier de configuration que l'on enregistre en phpsysinfo.ini
:~$ nano www/sysinfo/phpsysinfo.ini.new
liste des modifs apportées on laisse en debug j'ai 2 erreurs:
find_program(lsb_release) ... find_program(lsscsi) program not found on the machine ...
lsb_release est une commande que l'on trouve chez Ubuntu qui permet d'avoir les infos de la release elle équivaut à un cat /etc/issue sur Debian.
lsscsi permet de récupérer des informations sur les périphériques en SCSI.
on pourrait s'amuser à patcher quelques fichiers PHP dans les includes pour changer/éviter la commande, mais à refaire à chaque mise à jour.
Par facilité j'installe les 2 utilitaires
:~$ rsudo apt-get install lsb-release lsscsi
On supprimer l'archive téléchargée
:~$ rm -rf v3.1.0.tar.gz
Voir page snippets