Redimensionner un disque dur virtuel VMware VMDK ayant une partition LVM

Attention ! Avant de commencer, il faut savoir que cette opération n’est pas sans risque car nous allons toucher à la structure du disque dur, des pertes de données sont donc possible. Cependant, la procédure décrite ci-dessous a été testée à plusieurs reprises sur des machines en production sans présenter de soucis.

Présentation

Mon disque dur virtuel VMDK de 4 Go dispose de l’organisation suivante :

  • Une seule et unique partition nommée « sda1 » occupant tout l’espace,
  • Un groupe LVM « vg0 » utilisant tout « sda1 »,
  • Deux volumes LVM nommés « lv_root » (3,72 Go) et « lv_swap » (280 Mo) sont présents sur « vg0 »

Partitionnement disque LVM

Procédure

Tout d’abord, il faut commencer par éteindre la machine virtuelle afin de pouvoir augmenter la taille du disque. Dans mon cas, j’ai édité les paramètres de ma machine virtuelle pour faire passer le disque dur de 4 Go à 8 Go. Il faut savoir que le disque ne peut dépasser une taille de 2 To, et qu’il est impossible de le réduire par la suite.

Nous pouvons à présent démarrer la machine virtuelle pour continuer le travail et commencer en utilisant l’outil « fdisk » pour modifier la table des partitions.

fdisk /dev/sda

  • p pour afficher la table des partitions
  • d et choisir la partition 1 et supprimer
  • n, p, 1 pour créer (ici il proposera de prendre tout l’espace disponible, 2x Entrée pour valider le secteur de début et de fin)
  • t, 8e changer type (LVM)
  • p pour afficher nouvelle table
  • w

A nouveau, une redémarrage pour que la machine prenne en compte totalement le changement de taille.

reboot

La commande « pvdisplay » doit pour le moment retourner une taille de 4 Go.

pvdisplay

On va demander à vg0 de prendre la taille de « sda1 ».

pvresize vg0 /dev/sda1

Cette fois, « pvdisplay » doit nous retourner une taille de 8 Go.

pvdisplay

Pour connaitre précisément la taille restante disponible, utilisez la commande suivante et relevez la valeur de la colonne « PFree ».

pvs

On peut maintenant étendre le volume « lv_root » à la taille voulue.

lvextend -L +4G /dev/vg0/lv_root

On demande au système de fichier de « lv_root » de prendre en compte sa nouvelle taille.

resize2fs /dev/vg0/lv_root

Enfin, on vérifie nos changements sur « lv_root ».

lvdisplay

Liens utiles

Mise en place d’un serveur d’impression AirPrint

Apple a lancé AirPrint, un système d’impression pour ses appareils mobiles fonctionnant sous iOS – soient les iPod touch, les iPhone et les iPad – ne nécessitant aucune configuration de la part de l’utilisateur. Il suffit juste de s’équiper d’une imprimante compatible – quelques modèles présents (environ une cinquantaine de modèles HP et Epson). Mais il est aussi possible de faire appel au monde du logiciel libre, car en mixant CUPS et Avahi, on peut transformer n’importe quelle imprimante en imprimante AirPrint !

Tout d’abord, il faut que CUPS soit en place et qu’au moins une imprimante soit configurée dessus. Si besoin, se référer à l’article suivant pour savoir comment faire.

Ajouter la ligne suivante dans le fichier « /etc/cups/cupsd.conf ». Dans mon cas j’ai mis cette ligne sous la directive « Listen ».
ServerAlias *

Avec l’arrivée d’iOS 6, il faut ajouter deux nouveaux fichiers pour que le serveur AirPrint soit visible sur les iDevices.

  • /usr/share/cups/mime/airprint.types
    #
    # "$Id: $"
    #
    # AirPrint type
    image/urf urf string(0,UNIRAST<00>)
    #
    # End of "$Id: $".
    #
  • /usr/share/cups/mime/airprint.convs
    #
    # "$Id: $"
    #
    # AirPrint
    # Updated list with minimal set 25 Sept
    image/urf application/pdf 100 pdftoraster
    #
    # End of "$Id: $".
    #

Pour prendre en compte cet ajout, il faut redémarrer le service CUPS.
service cups restart

Attaquons la partie touchant le service Avahi. Nous allons récupérer un script en Python écrit par Timothy J Fontaine permettant de déclarer automatiquement nos imprimantes auprès d’Avahi.

cd /tmp
wget -O airprint-generate.py --no-check-certificate https://raw.github.com/tjfontaine/airprint-generate/master/airprint-generate.py
chmod +x airprint-generate.py
./airprint-generate.py -d /etc/avahi/services

Nous pouvons aller vérifier que des fichiers sont apparus dans « /etc/avahi/services/ ». Voici dans mon cas le contenu du dossier.

root@airprint:~# ls -l /etc/avahi/services/
total 4
-rw-r--r-- 1 root root 891 déc.  26 19:02 AirPrint-LexmarkE320.service

Si le répertoire n’est pas vide, alors nous pouvons redémarrer le service Avahi.
service avahi-daemon restart

Nous allons pouvoir passer au test, mais tout d’abord, vérifier d’être connecté sur le même réseau que votre serveur d’impression. Ensuite, il faut trouver un document à imprimer, iOS vous proposera les imprimantes partagées sur votre réseau.

AirPrint

Lien utile

Discussion sur le site Apple

Mise en place d’un serveur d’impression CUPS

CUPS (Common Unix Printing System) est le serveur d’impression présent sur les machines Unix. Le service CUPS se gère au moyen d’un interface web – accessible uniquement en local en se rendant sur ici (ne pas hésiter à accepter le certificat SSL permettant de sécuriser le site).

Installation des paquets requis. Le paquet virtuel « printer-driver-all » permet d’avoir tous les drivers d’imprimantes reconnues par Debian. Pour les autres, il faudra fouiller sur le site constructeur à la recherche d’un paquet Debian/Ubuntu.
aptitude install cups printer-driver-all

Ici, travaillant sur un serveur dépourvu d’interface graphique, il a fallu que je modifie le fichier de configuration pour autoriser les autres ordinateurs de mon réseau à se connecter sur l’interface web.

Faire une sauvegarde du fichier de configuration
cp /etc/cups/cupsd.conf /etc/cups/cupsd.conf.old

Éditer le contenu de « /etc/cups/cupsd.conf » en modifiant les 4 lignes suivantes.

  • Ceci …
    Listen localhost:631
    Listen /var/run/cups/cups.sock

    … devient
    #Listen localhost:631
    Listen /var/run/cups/cups.sock
    Port 631
  • Ceci …
    <Location />
      Order allow,deny
    </Location>

    … devient
    <Location />
      Order allow,deny
      Allow from 127.0.0.1
      Allow from 192.168.1.0/24
    </Location>
  • Ceci …
    <Location /admin>
      Order allow,deny
    </Location>

    … devient
    <Location /admin>
      Order allow,deny
      Allow from 127.0.0.1
      Allow from 192.168.1.0/24
    </Location>
  • Ceci …
    <Location /admin/conf>
      AuthType Default
      Require user @SYSTEM
      Order allow,deny
    </Location>

    … devient
    <Location /admin/conf>
      AuthType Default
      Require user @SYSTEM
      Order allow,deny
      Allow from 127.0.0.1
      Allow from 192.168.1.0/24
    </Location>

Redémarrer le service pour prendre en compte nos modifications.
service cups restart

On peut maintenant se rendre sur l’interface web d’administration pour ajouter une imprimante. Dans mon cas ici. C’est au moyen du compte privilégié « root » que l’on pourra accéder à l’onglet d’administration. L’interface étant en français, il ne reste plus qu’à se laisser guider pour ajouter son imprimante et procéder à un test d’impression.

Renommer un nom de domaine Active Directory

Si un jour l’envie de renommer le nom de domaine Active Directory vous viens à l’idée, sachez que c’est possible. L’opération reste tout de même périlleuse, car si elle échoue, elle peut rendre le contrôleur de domaine inopérant et impacter les services l’utilisant …
Attention néanmoins si vous avez un serveur Microsoft Exchange, il semblerait que ce ne soit pas possible avec cette technique. N’ayant pas de serveur Exchange, je n’ai pas poussé les recherches, mais beaucoup de sites et de personnes mentionnent avoir rencontrés des problèmes de migration.

Rendom

Microsoft met à disposition un outil en ligne de commande pour nous faciliter la tâche dans cette migration, son nom : « rendom ». Il est déjà disponible dans les versions Windows Server 2008 et 2008 R2. Pour les autres, il faudra récupérer le fichier dans le CD d’installation de Windows Server 2003.

Fichiers Rendom

La commande qui suit a pour but de générer le fichier XML « Domainlist » suivant. Vous le trouverez dans le dossier indiqué par le prompt (dans mon cas « C:\Users\Administrateur\ »).
rendom /list

<?xml version ="1.0"?>
<Forest>
	<Domain>
		<!-- PartitionType:Application -->
		<Guid>90580e30-119d-4cc6-b7f9-1a0e2bf184dc</Guid>
		<DNSname>DomainDnsZones.entreprise.invalid</DNSname>
		<NetBiosName></NetBiosName>
		<DcName></DcName>
	</Domain>
	<Domain>
		<!-- PartitionType:Application -->
		<Guid>322ce353-89d9-41ea-ac9e-cf2abf0b1376</Guid>
		<DNSname>ForestDnsZones.entreprise.invalid</DNSname>
		<NetBiosName></NetBiosName>
		<DcName></DcName>
	</Domain>
	<Domain>
		<!-- ForestRoot -->
		<Guid>c9731862-a075-420c-8bee-f88e67474e9a</Guid>
		<DNSname>entreprise.invalid</DNSname>
		<NetBiosName>ENTREPRISE</NetBiosName>
		<DcName></DcName>
	</Domain>
</Forest>

Il faut remplacer toutes les occurrences mentionnant l’ancien nom de domaine par le nouveau (ici, j’ai remplacé « entreprise.invalid » par « entreprise.exemple »). Ceci fait, enregistrez le fichier et constater vos modifications via la commande suivante.
rendom /showforest

S’il y a bien concordance, nous allons pouvoir envoyer ce fichier au serveur.
rendom /upload

Nous préparons les contrôleurs de domaine pour le renommage. Chaque contrôleur servant le nom de domaine est contacté et mis en condition.
rendom /prepare

Lancement de la procédure de renommage.
rendom /execute

Le serveur va redémarrer automatiquement, laissez le faire.

Nous allons pouvoir terminer par réparer les liens des stratégies de groupe (GPOs) présents dans Active Directory …
gpfixup /olddns:entreprise.invalid /newdns:entreprise.exemple

… et si besoin la partie concernant NetBIOS si celui-ci change.
gpfixup /oldnb:entreprise.invalid/newnb:entreprise.exemple

Attention ! Cette ultime commande est à exécuter si et seulement si tous les postes ont pris en compte le changement ! Car elle a pour but de supprimer les redirecteurs de migration (« msDS-DnsRootAlias » et « msDS-UpdateScript ») de l’ancien domaine vers le nouveau listés dans Active Directory. Si cette commande est exécutée trop tôt, elle peut empêcher les postes d’ouvrir une session utilisateur, et il faudra refaire la jonction du poste au domaine …
rendom /clean

Vous pouvez maintenant aller dans la console de gestion DNS pour supprimer l’ancienne zone DNS devenue maintenant obsolète.

Liens utiles

Forcer un navigateur à récupérer un fichier Internet

Lors de la consultation de site sur Internet, le navigateur Internet (dit aussi « butineur ») met en cache des informations pour accélérer l’affichage d’un site lors d’une prochaine visite.
Il est aussi possible de toucher à la configuration de son serveur web (dans mon cas Apache) en activant et configurant le module « mod_expires ». Ce module permet de définir quel type de fichier est éligible à la mise en cache chez le client ainsi que la durée de conservation.

Oui mais voilà, malgré mes réglages côté serveur, la mise en cache se produit toujours de la même manière. Et n’est pas possible de toucher à la configuration côté client pour tout le monde …

Voici donc une petite alternative pour forcer le rechargement. Ici, on rajoute un morceau de chaine de caractères généré automatiquement au nom du fichier à télécharger. Le contenu du fichier restera le même, seule l’adresse va changer et passera de « http://127.0.0.1/mon_fichier.js » en « http://127.0.0.1/mon_fichier.js?ver=1338742725 ». Le numéro 1338742725 changera si une modification de contenu est faite sur le fichier, car la fonction PHP « filemtime » récupère la date de dernière modification du fichier.

Voici un exemple de mise en place de ce système dans une page PHP.

<!DOCTYPE html>

<html lang="fr">

	<head>
		<title>Exemple</title>
		<meta charset="utf-8" />
	</head>

	<body>
		<div>
			<h1>Mes fichiers</h1>
			<ul>
				<li><?php echo '<a href="mon_fichier.js?ver='.filemtime("./mon_fichier.js").'">'; ?>Mon fichier</a></li>
			</ul>
		</div>
	</body>

</html>

Reconfigurer le fuseau horaire d’une machine Debian

Pour redéfinir le fuseau horaire de sa machine tournant sous Debian, rien de plus simple, il faut reconfigurer le paquet « tzdata » à l’aide de la commande suivante.

dpkg-reconfigure tzdata

Répondez « Europe », puis « Paris », et constater le changement.

Current default time zone: 'Europe/Paris'
Local time is now:      Mon Jun  4 11:20:20 CEST 2012.
Universal Time is now:  Mon Jun  4 09:20:20 UTC 2012.

Pour recontrôler par la suite ces informations, il faut utiliser la commande « date ».
date

En retour, vous pourrez voir ceci. A noter la présence « (UTC+0200) » signifiant bien l’ajout de 2 heures par rapport au méridien de Greenwich.

root@debian:~# date
lundi 4 juin 2012, 11:24:28 (UTC+0200)

Synchronisation via Unison

Qui n’a jamais perdu des fichiers faute de sauvegardes ? Faire des sauvegardes directement sur le même disque dur de la machine n’est pas non plus la meilleure idée.

Heureusement des outils comme Unison existent ! Unison à la différence de du célèbre RSync permet la synchronisation de répertoires de façon bidirectionnelle.

La procédure suivante demande une seconde machine sur laquelle copier les fichiers. Le transit des données se fera via une connexion SSH.

Récupération de la liste des paquets.
aptitude update

Installation du paquet.
aptitude install unison

Création du répertoire pour le stockage des journaux d’évènements.
mkdir -p /var/log/unison

Création du répertoire contenant les fichiers de configurations des synchronisations. Dossier à créer à la racine du répertoire personnel (ici « /root », sinon dans « /home/nom_utilisateur »).
mkdir -p /root/.unison

Création d’un fichier de configuration à placer dans le répertoire précédemment créé. A noter que l’extension est « .prf ».

### Racines ###

# Premier répertoire racine accessible en local.
root = /home/

# Second répertoire racine accessible via SSH.
root = ssh://root@1.1.1.1//home/

### Chemins à synchroniser ###

path = rep1/
path = rep2/

### Options ###

# La directive 'silent' active le fonctionnement totalement auto-
# matique, sans aucun message console.
silent = true

# La directive 'fastcheck' active la création d'un fichier conte-
# nant des "pseudo inodes numériques" des fichiers, évitant l'
# analyse complète du contenu des fichiers à synchroniser.
fastcheck = true

# La directive 'times' active la synchronisation des date de mo-
# dification de fichier.
times = true

# La directive 'owner' active la synchronisation de l'utilisateur
# propriétaire.
#owner = true

# La directive 'group' active la synchronisation du groupe pro-
# priétaire.
#group = true

# La directive 'log' active la journalisation.
log = true

# La directive 'logfile' définit l'emplacement du chemin complet
# du fichier de journalisation.
logfile = /var/log/unison/home.log

Appel à synchronisation via notre script. Il est possible que le client SSH demande une confirme lors de la connexion pour savoir s’il peut ajouter l’empreinte SSH de la machine distante, si tel est le cas répondez oui. Si vous avez une « passphrase », elle vous sera demandé aussi. Si vous avez besoin de savoir comment créer une clé SSH pour ce genre de pratique, rendez-vous ici : Génération d’une clé privée et publique SSH.
unison nom_du_script.prf

Génération d’une clé privée et publique SSH

Génération de la paire de clés. Libre à vous de définir une « passphrase » pour ajouter une protection supplémentaire lors de l’utilisation des clés.
ssh-keygen -t dsa -b 1024

Le répertoire caché « .ssh » présent à la racine du répertoire personnel (ici « /root ») contient maintenant deux fichiers :

  • « id_dsa » ne devra jamais être transmis ! Il est personnel, c’est la clé privée
  • « id_dsa.pub » peut être transmis sans crainte à des tiers de confiances, c’est la clé publique

Pour transmettre votre clé aux clients désirés, nous allons utiliser le script « ssh-copy-id ». Ce script aura pour but d’ajouter notre clé publique dans le fichier « ~/.ssh/authorized_keys ». Pour les plus courageux, sachez qu’il est possible de le faire sans le script.
ssh-copy-id -i ~/.ssh/id_rsa.pub ip-machine-distante

Maintenant, vous pourrez vous connecter sur la machine distante sans avoir à connaitre le mot de passe de l’utilisateur.
ssh root@ip-machine-distante

Sécuriser les VirtualHosts d’Apache grâce à GnuTLS

Installation des paquets nécessaires.
aptitude install gnutls-bin libapache2-mod-gnutls

Commençons par la création d’un répertoire de stockage pour les certificats. Le répertoire est donné à titre d’exemple, libre à vous de le changer.

mkdir -p /etc/certs/gnutls
cd /etc/certs/gnutls

Génération de la clé Diffie-Hellman
certtool --generate-dh-params --outfile dh.key

Création du modèle pour signer la clé. Dans mon cas, il s’appellera « ca.tpl » et aura ce contenu.

# X.509 Certificate options
#
# DN options

# The organization of the subject.
organization = "Mon entreprise"

# The organizational unit of the subject.
#unit = ""

# The locality of the subject.
locality = MaVille

# The state of the certificate owner.
state = "Région"

# The country of the subject. Two letter code.
country = FR

# The common name of the certificate owner.
cn = "CA"

# A user id of the certificate owner.
#uid = "clauper"

# If the supported DN OIDs are not adequate you can set
# any OID here.
# For example set the X.520 Title and the X.520 Pseudonym
# by using OID and string pairs.
#dn_oid = "2.5.4.12" "Dr." "2.5.4.65" "jackal"

# This is deprecated and should not be used in new
# certificates.
# pkcs9_email = "none@none.org"

# The serial number of the certificate
serial = 2012013001

# In how many days, counting from today, this certificate will expire.
expiration_days = 1825

# X.509 v3 extensions

# A dnsname in case of a WWW server.
#dns_name = "*.societe.fr"

# An IP address in case of a server.
#ip_address = "192.168.1.1"

# An email in case of a person
#email = "none@none.org"

# An URL that has CRLs (certificate revocation lists)
# available. Needed in CA certificates.
crl_dist_points = "http://societe.fr/ca-crl.crt"

# Whether this is a CA certificate or not
ca

# Whether this certificate will be used for a TLS client
#tls_www_client

# Whether this certificate will be used for a TLS server
#tls_www_server

# Whether this certificate will be used to sign data (needed
# in TLS DHE ciphersuites).
#signing_key

# Whether this certificate will be used to encrypt data (needed
# in TLS RSA ciphersuites). Note that it is preferred to use different
# keys for encryption and signing.
#encryption_key

# Whether this key will be used to sign other certificates.
cert_signing_key

# Whether this key will be used to sign CRLs.
crl_signing_key

# Whether this key will be used to sign code.
#code_signing_key

# Whether this key will be used to sign OCSP data.
#ocsp_signing_key

# Whether this key will be used for time stamping.
#time_stamping_key

# Whether this key will be used for IPsec IKE operations.
#ipsec_ike_key

Génération de la clé d’autorité (CA). Cette clé est la plus importante et ne devra jamais être divulguée !

certtool --generate-privkey --outfile ca.key
certtool --generate-self-signed --load-privkey ca.key  --template ca.tpl --outfile ca.crt

Changement des droits sur la clé d’autorité.

chmod 600 ca.key
chown root:root ca.key

Génération du clé privée pour Apache.
certtool --generate-privkey --outfile apache.key

Création du modèle pour signer la clé. Dans mon cas, il s’appellera « apache.tpl » et aura ce contenu.

# X.509 Certificate options
#
# DN options

# The organization of the subject.
organization = "Mon entreprise"

# The organizational unit of the subject.
#unit = ""

# The locality of the subject.
locality = MaVille

# The state of the certificate owner.
state = "Région"

# The country of the subject. Two letter code.
country = FR

# The common name of the certificate owner.
cn = "Apache"

# A user id of the certificate owner.
#uid = "clauper"

# If the supported DN OIDs are not adequate you can set
# any OID here.
# For example set the X.520 Title and the X.520 Pseudonym
# by using OID and string pairs.
#dn_oid = "2.5.4.12" "Dr." "2.5.4.65" "jackal"

# This is deprecated and should not be used in new
# certificates.
# pkcs9_email = "none@none.org"

# The serial number of the certificate
serial = 2012013002

# In how many days, counting from today, this certificate will expire.
expiration_days = 1825

# X.509 v3 extensions

# A dnsname in case of a WWW server.
dns_name = "*.societe.fr"

# An IP address in case of a server.
#ip_address = "192.168.1.1"

# An email in case of a person
#email = "none@none.org"

# An URL that has CRLs (certificate revocation lists)
# available. Needed in CA certificates.
#crl_dist_points = "http://societe.fr/ca-crl.crt"

# Whether this is a CA certificate or not
#ca

# Whether this certificate will be used for a TLS client
#tls_www_client

# Whether this certificate will be used for a TLS server
tls_www_server

# Whether this certificate will be used to sign data (needed
# in TLS DHE ciphersuites).
#signing_key

# Whether this certificate will be used to encrypt data (needed
# in TLS RSA ciphersuites). Note that it is preferred to use different
# keys for encryption and signing.
#encryption_key

# Whether this key will be used to sign other certificates.
#cert_signing_key

# Whether this key will be used to sign CRLs.
#crl_signing_key

# Whether this key will be used to sign code.
#code_signing_key

# Whether this key will be used to sign OCSP data.
#ocsp_signing_key

# Whether this key will be used for time stamping.
#time_stamping_key

# Whether this key will be used for IPsec IKE operations.
#ipsec_ike_key

Génération du certificat pour les sites d’Apache. Normalement tout est automatisé, aucune interaction ne sera nécessaire.
certtool --generate-certificate --load-privkey apache.key --load-ca-certificate ca.crt --load-ca-privkey ca.key --template apache.tpl --outfile apache.crt

Génération du fichier de contrôle des certificats révoqués.
certtool --generate-crl --load-ca-privkey ca.key --load-ca-certificate ca.crt --outfile ca-crl.crt

Génération d’un certificat pour permettre l’importation plus facile dans un navigateur.
certtool -i --infile ca.crt --outder --outfile x509-ca.crt

Désactivation du module OpenSSL s’il est déjà actif, pour mettre GnuTLS à la place.

a2dismod ssl
a2enmod gnutls

Modifier le fichier de configuration d’un VirtualHost que l’on souhaite sécuriser. Voici le contenu d’un de mes fichiers.

<VirtualHost *:443>

	GnuTLSEnable on
	GnuTLSPriorities NORMAL:!DHE-RSA:!DHE-DSS:!AES-256-CBC:%COMPAT
	GnuTLSDHFile /etc/certs/gnutls/dh.key
	GnuTLSClientCAFile /etc/certs/gnutls/ca.crt
	GnuTLSCertificateFile /etc/certs/gnutls/apache.crt
	GnuTLSKeyFile /etc/certs/gnutls/apache.key

	ServerName test.societe.fr:443

	DocumentRoot /var/www/test

	<Directory /var/www/test>
		Options SymLinksIfOwnerMatch
		AllowOverride All
		Order Allow,Deny
		Allow from All
	</Directory>

	LogLevel warn
	ErrorLog ${APACHE_LOG_DIR}/error-test.log
	CustomLog ${APACHE_LOG_DIR}/access-test.log combined

</VirtualHost>

Il ne reste plus qu’à recharger le démon Apache pour prendre en compte nos modifications.
service apache2 reload

Restauration de la configuration d’usine d’un Thomson SpeedTouch 510v4

Le Thomson SpeedTouch 510v4 est un modem utilisé par un grand nombre de FAI comme Orange dans mon cas. C’est un modem disposant d’une prise RJ11 pour être connecté à la ligne téléphone et ayant une prise RJ45 pour être relié à un routeur ou directement à un PC. Il dispose d’une interface web pour le configurer, et c’est à partir de cette interface qu’il est possible de le remettre avec sa configuration d’usine. Au cas où le modem n’est pas accessible, il est impossible de remettre à zéro le système … Il ne dispose pas non plus d’un bouton dédié à ça … Mais comment faire alors ?

Petite manipulation pour retrouver une Thomson SpeedTouch 510v4 fonctionnel :

  1. Commencer par s’assurer que le Thomson SpeedTouch 510v4 est éteint
  2. Presser rapidement le bouton de la face avant (bouton power)
  3. Dès que la LED Power/System de couleur verte clignote, appuyer à nouveau sur le bouton power rapidement
  4. La LED Power/System LED va s’arrêter de clignoter pour devenir verte tout le temps. Après 6 secondes, la LED va se remettre à clignoter, presser à nouveau le bouton power brièvement.
  5. Toutes les LED vont devenir vertes à nouveau
  6. Le Thomson SpeedTouch 510v4 va alors redémarrer et devrait revenir dans sa configuration d’usine. Pour le reconfigurer, il faudra connecter un ordinateur sur le port RJ45 a l’aide d’un câble croisé (un câble droit devrait fonctionner aussi)