Bug Réseau Windows 10

Si votre PC en Windows 10 n’a plus accès à internet soudainement, cela vient généralement d’une mise à jour problématique qu’il est assez simple à solutionner :

  1. Le plus simple est de faire un redémarrage complet de l’ordinateur. Pour se faire, cliquer sur le bouton Démarrer –> Marche/Arrêt –> Redémarrer

    N/B : Il est important de ne pas faire Arrêter et ensuite le rallumer car l’effet produit ne sera pas identique à cette procédure. Si le problème persiste, passez à l’étape 2
  2. Cliquez sur le bouton Démarrer et tapez : cmd
    Faites un clic doit sur la commande est choisissez : Exécuter en tant qu’Administrateur :

    Dans la fenêtre noir qui s’ouvre, tapez ces deux commandes suivie par la touche ENTER entre elles :

    netsh winsock reset catalog
    netsh int ipv4 reset reset.log

    Redémarrez enfin votre ordinateur et le soucis est normalement réglé.

Installer Windows 10 sur un nouvel ordi ou reformater complètement sa machine

Dans cet article, nous allons voir comme effectuer une installation complète de dernier système d’exploitation en date de Microsoft, que se soit sur un tout nouvel ordinateur en reformatant le vôtre. Dans le cas d’un reformatage, veillez à effectuer une sauvegarde complète de vos données au préalable car tout le contenu de l’ordinateur sera effacé.

Si vous ne disposez pas d’un média d’installation, voici comment l’obtenir.

S’il vous faut une licence Windows 10, vous pouvez en trouver ici : Licences Windows 10

Commençons :

Allumez votre ordinateur et insérez votre média d’installation (Clé USB ou DVD). Après quelques instants, l’écran de bienvenue ce présente comme suit :
Windows 10 x64-2015-10-17-11-19-23
Choisissez votre pays, votre clavier et cliquez sur suivant.

Ensuite, sur installer maintenant :
Windows 10 x64-2015-10-17-11-21-37

Introduisez votre clé de licence Windows 10, si vous n’en n’avez pas mais que votre machine exécutait déjà une version de Windows 10 officielle (comme, par exemple, suite à la mise à jour gratuite depuis Windows 7 ou Windows 8), cliquez sur ignorer :
Windows 10 x64-2015-10-17-11-22-52

Acceptez ensuite le contrat de licence et cliquez sur suivant :
Windows 10 x64-2015-10-17-11-25-50

Sélectionnez le type d’installation « Personnalisée » car nous allons effectuer une nouvelle installation et non une mise à niveau :
Windows 10 x64-2015-10-17-11-26-57

Choisissez ensuite le disque dur qui va accueillir votre nouveau système d’exploitation. Si vous disposez déjà de Windows, il faudra supprimer les partitions présentes avant de choisir le disque. Cliquez ensuite sur suivant pour commencer la copie des fichiers :
Windows 10 x64-2015-10-17-11-28-27

L’opération prendra un certain temps, dépendant de la puissance de votre ordinateur. Il redémarrera plusieurs fois :
Windows 10 x64-2015-10-17-11-32-05
Pour plus de facilité à l’étape suivante, si vous ne désirez pas créer un compte Microsoft mais préférez disposé d’un identifiant de session local simple, comme c’était le cas avec Windows 7 et antérieur, débranchez votre câble internet maintenant.

A nouveau, reportez l’encodage de votre clé de licence, si vous ne la connaissez pas (elle se mettra toute seul plus tard via internet si vous avez déjà effectué la migration vers Windows 10 précédemment) :
Windows 10 x64-2015-10-17-11-52-53

Choisissez la configuration rapide :
Windows 10 x64-2015-10-17-11-54-15
Sur certaines machines, après avoir cliquer ici, l’ordinateur redémarre et pose à nouveau les mêmes questions, répondez par les mêmes réponse, cela n’arrive qu’une fois.

Créez votre compte utilisateur local, votre mot de passe (optionnel), et cliquez sur suivant :
Windows 10 x64-2015-10-17-11-57-26
Laisser ensuite la configuration se terminer, vous pouvez rebrancher votre câble internet.

L’installation est terminée !
Windows 10 x64-2015-10-17-12-21-39

Obtenir le média d’installation de Windows 10

Si vous ne disposez pas d’un disque ou d’un clé usb d’installation, vous pouvez vous en procurer un en allant sur ce site web de Microsoft . Il vous faudra alors soir une clé usb vierge de 8 GB ou plus (son contenu sera effacé), soit un dvd vierge (et un graveur de dvd).

S’il vous faut une licence Windows 10, vous pouvez en trouver ici : Licences Windows 10

Téléchargez l’outil correspondant à votre version de Windows :

down win10

Exécutez-le et choisissez la création d’un nouveau support :
new win10 media

Après avoir cliquer sur suivant, sélectionnez l’édition et la langue souhaitée :
choice win10 version

Pour terminer, choisissez le média de destination :
win10 choice media

En fonction de la vitesse de votre ligne internet, la création du média sera plus ou moins longue. Vous pourrez ensuite commencer votre installation.

 

Remplacer le menu démarrer de Windows 10

Voici comment récupérer un environnement plus « professionnel » dans votre nouveau Windows, afin de passer de çà :

Start M Win10

à ceci :

Start M Win10 Classic Shell

Pour y arriver, nous utiliserons l’excellent programme  » Classic Shell  » qui, contrairement aux autres alternatives, est entièrement gratuit et traduit en français.

Rendez vous sur le site de Classic Shell pour télécharger votre nouveau menu démarrer : http://www.classicshell.net et cliquez sur  » Download Now  »

Down Classic Shell

Laissez les options par défaut lors de l’installation (il n’y a pas de publicités fournies avec ce programme). Une fois le logiciel installé, cliquez sur le menu démarrer et choisissez vos préférences (personnellement, j’ai opté pour le stype  » Windows 7  » et le skins  » Windows Aero « .

Configuration d’un poste client diskless

Dans ce tuto, je vais expliquer comment préparer un poste client diskless afin de le rendre accessible via un serveur netboot. Je me suis aidé du logiciel VirtualBox où j’ai, dans un premier temps, installé Linux Mint 17 Mate 32 bits, fait toutes les mises à jours, créé les comptes d’utilisateurs nécessaires. Il s’agit de la même méthode dans le cas d’une distribution Ubuntu 14.04.

Je me suis largement inspiré de ce tuto pour la suite des événements : http://shitwefoundout.com/wiki/Diskless_ubuntu

Pour la partie serveur, c’est ici.

Voici pour la configuration du client (à faire en root, sudo su -) :

Empêcher que la carte réseau soit gérée par networkmanager, en éditant /etc/network/interfaces :

iface eth0 inet manual

Mise en place de aufs et génération du ramdisk de démarrage :

Editer /etc/initramfs-tools/initramfs.conf et modifier ces paramètres :

MODULES=netboot
BOOT=nfs

Ajouter ceci à la fin du fichier /etc/initramfs-tools/modules :

aufs

Créez le dossier suivant et copiez-y le module de aufs :

mkdir /etc/initramfs-tools/scripts/modules
cp /lib/modules/$(uname -r)/kernel/ubuntu/aufs/aufs.ko /etc/initramfs-tools/scripts/modules/

Editez ce fichiers : /etc/initramfs-tools/scripts/init-bottom/00_aufs_init

#!/bin/sh -e

case $1 in
  prereqs)
    exit 0
    ;;
esac

for x in $(cat /proc/cmdline); do
  case $x in
    root=*)
      ROOTNAME=${x#root=}
      ;;
    aufs=*)
      UNION=${x#aufs=}
        case $UNION in
          LABEL=*)
            UNION="/dev/disk/by-label/${UNION#LABEL=}"
            ;;
          UUID=*)
            UNION="/dev/disk/by-uuid/${UNION#UUID=}"
            ;;
        esac
      ;;
  esac
done

echo "Union=$UNION"

if [ -z "$UNION" ]; then
    exit 0
fi

modprobe -b aufs && echo "OK: modprobe -b aufs" || echo "ERR: modprobe -b aufs"

# make the mount points on the init root file system
mkdir /aufs /ro /rw && echo "OK: mkdir /aufs /ro /rw" || echo "ERR: mkdir /aufs /ro /rw"

# mount read-write file system
if [ "$UNION" = "tmpfs" ]; then
  mount -t tmpfs rw /rw -o noatime,mode=0755 && echo "OK:  mount -t tmpfs rw /rw -o noatime,mode=0755 " ||
echo "ERR:  mount -t  tmpfs rw /rw -o noatime,mode=0755"
else
  mount $UNION /rw -o noatime
fi

# move real root out of the way
mount --move ${rootmnt} /ro && echo "OK: mount --move ${rootmnt} /ro" || echo "ERR: mount --move ${rootmnt} /ro"

mount -t aufs aufs /aufs -o noatime,dirs=/rw:/ro=ro && echo "OK: mount -t aufs aufs /aufs -o noatime,dirs=/rw:/ro=ro" ||
echo  "ERR: mount -t aufs aufs /aufs -o noatime,dirs=/rw:/ro=ro"

# test for mount points on union file system
[ -d /aufs/ro ] || mkdir /aufs/ro
[ -d /aufs/rw ] || mkdir /aufs/rw

mount --move /ro /aufs/ro && echo "OK: mount --move /ro /aufs/ro" || echo "ERR: mount --move /ro /aufs/ro"
mount --move /rw /aufs/rw && echo "OK: mount --move /rw /aufs/rw" || echo "ERR: mount --move /rw /aufs/rw"

# strip fstab off of root partition
grep -v $ROOTNAME /aufs/ro/etc/fstab > /aufs/etc/fstab

mount --move /aufs /root && echo "OK: mount --move /aufs /root" || echo "ERR: mount --move /aufs /root"

exit 0

Et attribuez-lui les bonnes permissions :

chmod 0775 /etc/initramfs-tools/scripts/init-bottom/00_aufs_init

Créons maintenant le nouveau ramdisk en le plaçant dans /root :

update-initramfs -k $ (uname -r) -c -b /root/

Adaptons ensuite /etc/fstab : (Lisez cet article pour le swap diskless)

# Pour le boot :
proc        /proc    proc    defaults    0    0
/dev/nfs    /        nfs     defaults    0    0

# Pour le swap :
/dev/nbd0   none     swap    sw          0    0

# Pour les mises à jour futur de l'image :
/       /mnt/os      none       bind        0     0

Copions maintenant l’installation complète sur le serveur netboot :

mkdir /mnt/os
mount /mnt/os
rsync -avP /mnt/os/* 192.168.8.3:/srv/linuxmint/.

Voilà. La dernière commande peux-être utilisée à tout moment par la suite pour effectuer une mise à jour / adaptation de la distribution stockée dans le serveur.

Configuration d’un serveur linux netboot pour clients diskless

Dans cet article, je vais vous expliquer comment j’ai mis en place un serveur Debian 7 Wheezy permettant de démarrer des stations diskless (130 dans mon cas) en Linux Ubuntu 14.04 et Linux Mint 17

Sur mon serveur (ip 192.168.8.3/24) j’ai installé les paquets suivants :

apt-get install isc-dhcp-server tftpd-hpa nfs-kernel-server syslinux

Configuration du serveur dhcp ( /etc/dhcp/dhcpd.conf ), ajouter ceci à la fin (dans mon cas, réseau 192.168.8.0/24, router 192.168.8.1, dns 192.168.8.3, netboot 192.168.8.3) :

# cnet.local
subnet 192.168.8.0 netmask 255.255.255.0 {
authoritative;
option domain-name-servers 192.168.8.3;
option domain-name "cnet.local";
option broadcast-address 192.168.8.255;
option subnet-mask 255.255.255.0;
option routers 192.168.8.1;
max-lease-time 172800;
default-lease-time 86400;
range 192.168.8.100 192.168.8.199;
next-server 192.168.8.3;
filename = "pxelinux.0";
}

Configuration du serveur de netbook tftpd ( /etc/default/tftpd-hpa ) :

# /etc/default/tftpd-hpa
TFTP_USERNAME="tftp"
TFTP_DIRECTORY="/srv/boot"
TFTP_ADDRESS="0.0.0.0:69"
TFTP_OPTIONS="--secure"

Créer le répertoire de stockage et lui donner les bons droits :

mkdir -p /srv/boot
chown nobody:nogroup /srv/boot
chmod 777 /srv/boot

Mise en place de syslinux :

cp /usr/lib/syslinux/pxelinux.0 /srv/boot/.
cp /usr/lib/syslinux/menu.c32 /srv/boot/.
mkdir /srv/boot/pxelinux.cfg

Création du menu de démarrage ( /srv/boot/pxelinux.cfg/default ) :

DEFAULT menu.c32
TIMEOUT 100
ONTIMEOUT Ubuntu14
PROMPT 0
MENU TITLE PXE Boot
ALLOWOPTIONS 1
menu width 80
menu rows 15
MENU TABMSGROW 24
MENU MARGIN 10
NOESCAPE 1

LABEL BootLocal
localboot 0
TEXT HELP
Boot to local hdd
ENDTEXT

LABEL Ubuntu14
MENU LABEL Ubuntu 14.04 (32-bit) DISKLESS
KERNEL ubuntu14/vmlinuz-3.13.0-37-generic
APPEND boot=nfs root=/dev/nfs nfsroot=192.168.8.3:/srv/ubuntu_14.04,ro initrd=ubuntu14/initrd.img-3.13.0-37-generic ip=dhcp aufs=tmpfs quiet splash
TEXT HELP
Boot Ubuntu 14.04 DISKLESS
ENDTEXT

LABEL Mint17
MENU LABEL Linux Mint 17 DISKLESS
KERNEL mint/vmlinuz-3.13.0-24-generic
APPEND boot=nfs root=/dev/nfs nfsroot=192.168.8.3:/srv/linuxmint,ro initrd=mint/initrd.img-3.13.0-24-generic ip=dhcp aufs=tmpfs
TEXT HELP
Boot Mint 17 DISKLESS
ENDTEXT

Préparation du stockage des installations clientes :

mkdir /srv/ubuntu_14.04
mkdir /srv/boot/ubuntu14
mkdir /srv/linuxmint
mkdir /srv/boot/mint

Configuration du serveur nfs ( /etc/exports ) :

/srv/ubuntu_14.04 *(ro,async,no_root_squash,no_subtree_check,no_all_squash)
/srv/linuxmint *(ro,async,no_root_squash,no_subtree_check,no_all_squash)

A ce stade, je vous conseil un reboot du serveur car le serveur tftpd ne se relance pas convenablement suite au changement de la configuration.

Il ne reste plus qu’au suivre l’article sur la mise en place d’un poste client…

Mise en place d’une swap par le réseau en nbd

Dans le cadre d’une configuration d’un réseau de 130 postes en diskless Ubuntu 14.04  bootant à partir d’un serveur NFS et PXE en Debian Wheezy, voici comment j’ai mis en place un serveur swap via le protocol NBD en m’inspirant très largement du projet ltsp.

1. Côté serveur :
Debian 7, ip 192.168.8.169

Installation du serveur NBD :

apt-get install nbd-serveur

Fichier de configuration /etc/nbd-server/conf.d/swap.conf :

[swap]
 exportname = /tmp/nbd-swap/%s
 prerun = nbdswapd %s
 postrun = rm -f %s

Créer le fichier /usr/bin/nbdswapd (largement inspiré mais modifié de celui de base fourni par le paquet lstp-server-standalone)

# Generates a swap file to be exported with nbd-server.
 #
 # When called with no parameters, it assumes that it was ran from inetd,
 # and it launches nbd-server in order to serve it.
 # An inetd configuration line like the following is needed in that case:
 # 9572 stream tcp nowait nobody /usr/sbin/tcpd /usr/sbin/nbdswapd
 #
 # When called with one parameter, it assumes that it was ran from nbd-server,
 # so it just creates the specified swap file and exits.
 # The nbd-server configuration section is expected to look similar to this:
 # [swap]
 # exportname = /tmp/nbd-swap/%s
 # prerun = nbdswapd %s
 # postrun = rm -f %s
 # Fail on error, to notify nbd-server that the swap file wasn't created.
 set -e
 # Default sparse swapfile size, in MB
 SIZE=512
 # Default to running mkswap
 RUN_MKSWAP=true
 # Allow overriding the defaults from a configuration file
 if [ -f /etc/ltsp/nbdswapd.conf ]; then
 . /etc/ltsp/nbdswapd.conf
 fi
 # Abort if liveimg
 if grep -q "liveimg" /proc/cmdline; then
 exit 1
 fi
 SWAP="$1"
 SWAPDIR=/tmp/nbd-swap
 test -d "$SWAPDIR" || mkdir -p "$SWAPDIR"
 # generate the swap file
 dd if=/dev/zero of="$SWAP" bs=1M count=0 seek="$SIZE" 2> /dev/null
 chmod 600 "$SWAP"
 if [ "$RUN_MKSWAP" = "true" ]; then
 mkswap "$SWAP" > /dev/null
 fi

On le rend exécutable :

chmod +x /usr/bin/nbdswapd

La partie serveur est terminée. Par défaut, les fichiers swap se trouverons dans /tmp/nbd-swap/ip.du.client et feront une taille de 512 mb. Si vous désirez des autres paramètres, il suffira d’adapter le fichier /usr/bin/nbdswapd

2. Côté client

Installer le client nbd :

apt-get install nbd-client

Configuration du fichier client ( /etc/nbd-client ) , modif en rouge :

# If you don't want to reconfigure this package after installing, uncomment
 # the following line:
 #AUTO_GEN="n"
 # If you don't want the init script to kill nbd-client devices that aren't
 # specified in this configuration file, set the following to "false":
 KILLALL="false"
 # Note that any statical settings in this file will be preserved
 # regardless of the setting of AUTO_GEN, so its use is only recommended
 # if you set things in a dynamical way (e.g., through a database)
 #
 # Name of the first used nbd /dev-entry:
 NBD_DEVICE[0]=/dev/nbd0
 #
 # Type; s=swap, f=filesystem (with entry in /etc/fstab), r=raw (no other setup
 # than to run the client)
 NBD_TYPE[0]=s
 #
 # The host on which the nbd-server process is running
 NBD_HOST[0]=192.168.8.169
 # (IP du serveur)
 # The port on which this client needs to connect. Optional for
 # new-style exports (which use a single port, and export names).
 NBD_PORT[0]=
 #
 # The name of the export. Required for new-style exports.
 NBD_NAME[0]=swap
 #
 # Any extra parameters you would want to specify
 NBD_EXTRA[0]=-persist
 # The second networked block device could look like:
 # NBD_DEVICE[1]=/dev/nbd1
 # NBD_TYPE[1]="f"
 # NBD_HOST[1]="localhost"
 # NBD_NAME[1]="disk1"
 #
 # You can add as many as you want, but don't skip any number in the variable
 # names, or the initscript will fail.

Il faut également ajouter ceci dans le fichier /etc/fstab (afin que le reboot / shutdown se passe correctement ) :

/dev/nbd0   none     swap    sw          0    0

Un reboot plus tard, tout devrais fonctionner…