Linux Debian : problèmes divers et leurs solutions

Au démarrage, erreur « firmware: failed to load rtl_nic/rtl8168e-3.fw (-2) »

On peut également retrouver cette trace dans le fichier de log /var/log/kern.log

Cette erreur est provoquée par l’absence du driver Realtek. Pour la résoudre, il suffit d’ajouter le repository officiel Debian firmware-realtek dans votre fichier /etc/apt/sources.list, puis lancer l’installation du driver.

  • Ajouter les lignes suivantes à source.list :
    #realtek firmware
    deb http://ftp.de.debian.org/debian stretch main non-free
    deb-src http://ftp.de.debian.org/debian stretch main non-free

  • Lancer ensuite les commandes suivantes :
    sudo apt-get update
    sudo apt-get install firmware-realtek

sudo : commande introuvable

Avec Debian, sudo n’est pas installé par défaut.

  • Se logger en mode root :
    su -
  • Installer sudo :
    apt-get install sudo -y
  • Donner les droits sudo à un utilisateur :
    usermod -aG sudo yourusername

ifconfig commande introuvable

La commande ifconfig est contenue dans le paquet net-tools, qui par ailleurs contient aussi d’autres commandes intéressantes, parmi lesquelles : arp, netstat, nameif, route…

  • Installer net-tools avec la commande suivante :
    sudo apt-get install net-tools

FAT-fs (sda1): Volume was not properly unmounted. Some data may be corrupt. Please run fsck

Si vous voyez ce message de warming, vous pouvez régler le problème avec la commande suivante. Cette commande nécessite l’installation préalable du package dosfstools.

  • Installer dosfstools si non présent :
    apt-get install dosfstools
  • Lancer fsck avec les paramètres suivants :
    fsck.vfat -v -a -w /dev/sda1

radeon kernel modesetting for R600 or later requires firmware installed

Le driver Radeon fait partie des paquets « non-free », il faut donc modifier votre fichier /etc/apt/sources.list en conséquence.

  • Modifier la ligne suivante dans source.list pour y ajouter « contrib non-free »:
    deb http://deb.debian.org/debian buster main contrib non-free

  • Lancer ensuite la commande suivante :
    sudo apt-get install firmware-amd-graphics

Lancement nginx en erreur « port already in use »

Si vous avez déjà un serveur Apache actif, il est fort probable qu’il occupe déjà le port 80 configuré par défaut pour nginx.

Pour régler le souci, il suffit de changer ce port dans la configuration. Editer donc le fichier /etc/nginx/sites-enables/default :
sudo vi /etc/nginx/sites-enabled/default

Changez le 80 et 81 :

server { 
      listen 81 default_server; 
      listen [::]:81 default_server;

Enregistrez le fichier puis redémarrer nginx :
sudo systmctl restart nginx

Erreurs au démarrage et dans les logs type « WRITE FPDMA QUEUED »

Les disques durs SATA récents sont prévus pour fonctionner avec un débit de 6 Gb/s, quand tout va bien… Lorsque j’ai remplacé le disque dur de mon serveur par un SSD Samsung 870, j’ai commencé à avoir ce type d’erreur au démarrage et dans mon kern.log :

Nov 17 23:41:25 dodobian kernel: [   43.729344] ata1.00: exception Emask 0x10 SAct 0x380 SErr 0x0 action 0x6 frozen
Nov 17 23:41:25 dodobian kernel: [   43.729372] ata1.00: irq_stat 0x08000000, interface fatal error
Nov 17 23:41:25 dodobian kernel: [   43.729389] ata1.00: failed command: WRITE FPDMA QUEUED
Nov 17 23:41:25 dodobian kernel: [   43.729413] ata1.00: cmd 61/00:38:c0:f1:f9/0a:00:02:00:00/40 tag 7 ncq dma 1310720 ou
Nov 17 23:41:25 dodobian kernel: [   43.729413]          res 40/00:38:c0:f1:f9/00:00:02:00:00/40 Emask 0x10 (ATA bus error)
Nov 17 23:41:25 dodobian kernel: [   43.729425] ata1.00: status: { DRDY }
Nov 17 23:41:25 dodobian kernel: [   43.729431] ata1.00: failed command: WRITE FPDMA QUEUED
Nov 17 23:41:25 dodobian kernel: [   43.729442] ata1.00: cmd 61/10:40:b0:d5:7c/00:00:04:00:00/40 tag 8 ncq dma 8192 out
Nov 17 23:41:25 dodobian kernel: [   43.729442]          res 40/00:38:c0:f1:f9/00:00:02:00:00/40 Emask 0x10 (ATA bus error)
Nov 17 23:41:25 dodobian kernel: [   43.729453] ata1.00: status: { DRDY }
Nov 17 23:41:25 dodobian kernel: [   43.729458] ata1.00: failed command: WRITE FPDMA QUEUED
Nov 17 23:41:25 dodobian kernel: [   43.729470] ata1.00: cmd 61/40:48:c0:fb:f9/06:00:02:00:00/40 tag 9 ncq dma 819200 out
Nov 17 23:41:25 dodobian kernel: [   43.729470]          res 40/00:38:c0:f1:f9/00:00:02:00:00/40 Emask 0x10 (ATA bus error)
Nov 17 23:41:25 dodobian kernel: [   43.729480] ata1.00: status: { DRDY }
Nov 17 23:41:25 dodobian kernel: [   43.729490] ata1: hard resetting link
Nov 17 23:41:26 dodobian kernel: [   44.202819] ata1: SATA link up 3.0 Gbps (SStatus 123 SControl 300)

Dans mes recherches sur internet j’ai pu voir que je n’étais pas le seul à avoir le souci. J’ai donc essayé plusieurs solutions :
– Changer le câble SATA
– Changer les paramètres du BIOS pour le SATA entre IDE et AHCI
– Upgrader le BIOS
… rien à faire, l’erreur persistait.

Lorsque l’erreur survient, le kernel diminue automatiquement le débit de 6 Gb/s à 3 Gb/s. J’ai donc décidé de faire une croix sur le 6Gb/s au bénéfice de la stabilité. Pour ce faire, il est possible de forcer le débit à 3 Gb/s au démarrage avec les commandes suivantes (en mode root) :

  • Editer le fichier /etc/default/grub
    vi /etc/default/grub
  • Dans le fichier, modifier la ligne suivante pour ajouter le paramètre libata.force=3.0
    GRUB_CMDLINE_LINUX_DEFAULT="quiet libata.force=3.0"
  • Lancer la commande update-grub pour faire prendre en compte les modifications :
    update-grub
  • Redémarrer :
    reboot

Le problème peut aussi tout simplement venir d’une incompatibilité entre NCQ (Native Command Queueing) de Linux, et votre hardware. Voici le paramètre pour le désactiver :
libata.force=noncq

Si tout s’est bien passé, ces erreurs ne devraient plus apparaître.

Erreur « Type de système de fichiers exfat inconnu »

ExFat étant un système de fichier propriétaire Microsoft, il n’est pas embarqué par défaut dans les distributions Linux.

Pour l’installer, entrez la commande suivante :
sudo apt-get install exfat-fuse exfat-utils

Partager sur :
Étiquettes: