/etc/nsswitch la structure a besoin d'un nettoyage

Résolu/Fermé
pa.zorro
Messages postés
13
Date d'inscription
mercredi 4 mars 2020
Statut
Membre
Dernière intervention
9 mai 2021
- Modifié le 5 mai 2021 à 00:04
mamiemando
Messages postés
31045
Date d'inscription
jeudi 12 mai 2005
Statut
Modérateur
Dernière intervention
14 mai 2022
- 17 mai 2021 à 12:00
Bonjour à tous,

Je veux accéder à mon dossier
/etc
pour modifier quelque chose, mais quand je veux l'ouvrir ce message d'erreur apparaît :

nsswitch: la structure a besoin d'un nettoyage


J'ai beaucoup cherché, j'ai essayé avec
fsck
mais cela n'a pas marché... Auriez-vous une solution s'il vous plaît ?...

Merci d'avance

7 réponses

mamiemando
Messages postés
31045
Date d'inscription
jeudi 12 mai 2005
Statut
Modérateur
Dernière intervention
14 mai 2022
7 342
5 mai 2021 à 00:04
Bonjour,

Merci de soigner l'orthographe et de copier/coller les messages d'erreur exact. Effectivement cette erreur semble révéler un problème de système de fichier (filesystem) et du coup
fsck
(filesystem check) semble indiqué. Il se peut aussi que ce soit le disque dur sous-jacent qui est en train de mourir.
  • Quelle commande
    fsck
    as-tu lancé ?
  • Quelle est ta table des partition
    sudo parted -l
    ?
  • Quel résultat a-t'elle retourné ?


Voir cette discussion.

Bonne chance
0
pa.zorro
Messages postés
13
Date d'inscription
mercredi 4 mars 2020
Statut
Membre
Dernière intervention
9 mai 2021

Modifié le 5 mai 2021 à 16:32
Mon orthographe??

J'ai essayé un fsck automatique pour réparer la partition ainsi qu'unf fsck -a

Voici ce que me retourne la commande sudo parted -l :

Model: Mass Storage Device (scsi)
Disk /dev/sda: 128GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Disk Flags: 

Number  Start   End     Size    Type     File system  Flags
 1      1049kB  4385MB  4384MB  primary  fat32        boot, lba
 2      4385MB  128GB   123GB   primary  ext3


Model: ATA LITEON CV8-8E128 (scsi)
Disk /dev/sdb: 128GB
Sector size (logical/physical): 512B/4096B
Partition Table: gpt
Disk Flags: 

Number  Start   End     Size    File system  Name                          Flags
 1      1049kB  525MB   524MB   fat32        EFI system partition          boot, esp
 2      525MB   660MB   134MB                Microsoft reserved partition  msftres
 3      660MB   91,9GB  91,3GB  ntfs         Basic data partition          msftdata
 4      91,9GB  128GB   36,1GB  ntfs         Basic data partition          msftdata
0
mamiemando
Messages postés
31045
Date d'inscription
jeudi 12 mai 2005
Statut
Modérateur
Dernière intervention
14 mai 2022
7 342
Modifié le 5 mai 2021 à 16:37
Bonjour,

Deux choses me surprennent :
  • tu n'as pas reporté le résultat de
    fsck -a
    .
  • on dirait que tu as installé linux sur une unique partition (
    /dev/sda2
    ) et que tu n'as pas créé de swap. Est-ce bien le cas ?


Voici ce que retourne
sudo parted -l
chez moi:

Model: ATA Micron_1100_MTFD (scsi)
Disk <bold>/dev/sda</bold>: 512GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags: 

Number  Start   End    Size    File system     Name                          Flags
 1      1049kB  274MB  273MB   fat32           EFI system partition          boot, esp
 2      274MB   290MB  16,8MB                  Microsoft reserved partition  msftres
 3      290MB   257GB  256GB   ntfs            Basic data partition          msftdata
 4      257GB   258GB  903MB   ntfs                                          hidden, diag
 5      258GB   262GB  4000MB  linux-swap(v1)  swap                          swap
 6      262GB   312GB  50,0GB  ext4            root
 7      312GB   512GB  200GB   ext4            home


Ici, on voit que ma partition
/
correspond à
/dev/sda6
, chose qu'on peut vérifier avec la commande
mount
. Voici ce qu'elle retourne chez moi :

sysfs on /sys type sysfs (rw,nosuid,nodev,noexec,relatime)
proc on /proc type proc (rw,nosuid,nodev,noexec,relatime)
udev on /dev type devtmpfs (rw,nosuid,noexec,relatime,size=3990596k,nr_inodes=997649,mode=755)
devpts on /dev/pts type devpts (rw,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=000)
tmpfs on /run type tmpfs (rw,nosuid,nodev,noexec,relatime,size=803056k,mode=755)
/dev/sda6 on / type ext4 (rw,relatime,errors=remount-ro)
...


Enfin, pour que ta commande
fsck
soit effective, il faut l'appliquer à une partition montée en lecture seule. Dans ton cas la partition concernée est celle qui contient
/etc
, et il semblerait donc que ce soit
/dev/sda3
.

Pour faire ton
fsck
, deux approches sont possibles :
  • soit tu démarres sur un live USB (e.g. le shell de l'installeur debian), et de là, tu lances la commande
    fsck
    appliqué à ta partition
    /
    .


sudo fsck /dev/sda3
  • soit tu redémarres normalement, en choisissant dans grub un démarrage en mode de récupération (recovery mode). ensuite, tu remontes la partition
    /
    en lecture seule (read only), et tu lances la commande
    fsck
    sur le device approprié :


sudo mount -o remount,ro /
sudo fsck /dev/sda3
sudo reboot
0
pa.zorro
Messages postés
13
Date d'inscription
mercredi 4 mars 2020
Statut
Membre
Dernière intervention
9 mai 2021

Modifié le 6 mai 2021 à 15:41
Bonjour,

en fait je suis sur une clé en live persistence et c'est donc sûrement ma seule partition...
Je n'ai effectivement pas créé de swap.

Voici tout simplement la réponse de fsck -a : fsck from util-linux 2.36.1

On dirait que je n'ai pas de sda3...
La commande sudo fsck /dev/sda3 me renvoie :

fsck from util-linux 2.36.1
e2fsck 1.46.2 (28-Feb-2021)
fsck.ext2: Aucun fichier ou dossier de ce type while trying to open /dev/sda3
Possibly non-existent device?


et la commande mount :

sysfs on /sys type sysfs (rw,nosuid,nodev,noexec,relatime)
proc on /proc type proc (rw,nosuid,nodev,noexec,relatime)
udev on /dev type devtmpfs (rw,nosuid,noexec,relatime,size=1873904k,nr_inodes=468476,mode=755)
devpts on /dev/pts type devpts (rw,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=000)
tmpfs on /run type tmpfs (rw,nosuid,nodev,noexec,relatime,size=383536k,mode=755)
/dev/sda1 on /run/live/persistence/sda1 type vfat (rw,noatime,fmask=0022,dmask=0022,codepage=437,iocharset=ascii,shortname=mixed,utf8,errors=remount-ro)
/dev/loop0 on /run/live/rootfs/filesystem.squashfs type squashfs (ro,noatime)
tmpfs on /run/live/overlay type tmpfs (rw,noatime,mode=755)
/dev/sda2 on /run/live/persistence/sda2 type ext3 (rw,noatime)
overlay on / type overlay (rw,noatime,lowerdir=/run/live/rootfs/filesystem.squashfs/,upperdir=/run/live/persistence/sda2/rw,workdir=/run/live/persistence/sda2/work)
tmpfs on /usr/lib/live/mount type tmpfs (rw,nosuid,nodev,noexec,relatime,size=383536k,mode=755)
/dev/loop0 on /usr/lib/live/mount/rootfs/filesystem.squashfs type squashfs (ro,noatime)
/dev/sda1 on /usr/lib/live/mount/persistence/sda1 type vfat (rw,noatime,fmask=0022,dmask=0022,codepage=437,iocharset=ascii,shortname=mixed,utf8,errors=remount-ro)
tmpfs on /usr/lib/live/mount/overlay type tmpfs (rw,noatime,mode=755)
/dev/sda2 on /usr/lib/live/mount/persistence/sda2 type ext3 (rw,noatime)
securityfs on /sys/kernel/security type securityfs (rw,nosuid,nodev,noexec,relatime)
tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev)
tmpfs on /run/lock type tmpfs (rw,nosuid,nodev,noexec,relatime,size=5120k)
cgroup2 on /sys/fs/cgroup type cgroup2 (rw,nosuid,nodev,noexec,relatime,nsdelegate,memory_recursiveprot)
pstore on /sys/fs/pstore type pstore (rw,nosuid,nodev,noexec,relatime)
efivarfs on /sys/firmware/efi/efivars type efivarfs (rw,nosuid,nodev,noexec,relatime)
none on /sys/fs/bpf type bpf (rw,nosuid,nodev,noexec,relatime,mode=700)
systemd-1 on /proc/sys/fs/binfmt_misc type autofs (rw,relatime,fd=29,pgrp=1,timeout=0,minproto=5,maxproto=5,direct,pipe_ino=2543)
hugetlbfs on /dev/hugepages type hugetlbfs (rw,relatime,pagesize=2M)
debugfs on /sys/kernel/debug type debugfs (rw,nosuid,nodev,noexec,relatime)
tracefs on /sys/kernel/tracing type tracefs (rw,nosuid,nodev,noexec,relatime)
mqueue on /dev/mqueue type mqueue (rw,nosuid,nodev,noexec,relatime)
fusectl on /sys/fs/fuse/connections type fusectl (rw,nosuid,nodev,noexec,relatime)
configfs on /sys/kernel/config type configfs (rw,nosuid,nodev,noexec,relatime)
sunrpc on /run/rpc_pipefs type rpc_pipefs (rw,relatime)
tmpfs on /tmp type tmpfs (rw,nosuid,nodev,relatime)
binfmt_misc on /proc/sys/fs/binfmt_misc type binfmt_misc (rw,nosuid,nodev,noexec,relatime)
tmpfs on /run/user/1000 type tmpfs (rw,nosuid,nodev,relatime,size=383536k,nr_inodes=95884,mode=700,uid=1000,gid=1000)
gvfsd-fuse on /run/user/1000/gvfs type fuse.gvfsd-fuse (rw,nosuid,nodev,relatime,user_id=1000,group_id=1000)



Je n'arrive pas à trouver la partition qui contient etc pour la réparer...
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
mamiemando
Messages postés
31045
Date d'inscription
jeudi 12 mai 2005
Statut
Modérateur
Dernière intervention
14 mai 2022
7 342
Modifié le 6 mai 2021 à 15:50
Bonjour,

Dans ton cas ta partition / correspond au device "overlay" :

overlay on / type overlay (rw,noatime,lowerdir=/run/live/rootfs/filesystem.squashfs/,upperdir=/run/live/persistence/sda2/rw,workdir=/run/live/persistence/sda2/work)


Je ne suis pas spécialiste de ce genre d'installation (je n'ai jamais testé) donc ce qui suit est à prendre avec réserve.

Visiblement, on dirait qu'overlay est un système de fichiers spécial (voir cette page, dans ton cas construit au dessus de
/run/live/persistence/sda2/work
qui semblerait donc correspondre en réalité à
/dev/sda2
.

Du coup, faire un
fsck
sur
/dev/sda2
pourrait peut-être marcher (mais il faudrait alors le remonter en ro). Une manière plus simple serait peut être de réparer cette partition par le biais d'un autre live si tu as deux ports USB et deux clés USB (ainsi, tu pourras directement monter en read only la partition incriminée).
0
pa.zorro
Messages postés
13
Date d'inscription
mercredi 4 mars 2020
Statut
Membre
Dernière intervention
9 mai 2021

9 mai 2021 à 11:52
Bonjour,

merci beaucoup de m'aider c'est très gentil de votre part,
le fsck /dev/sda2 ne fonctionne malheuresement pas...

Je ne suis pas non plus expert et du coup je m'excuse mais xomment puis le faire via une autre clé usb?
J'ai bien 2 ports USB et une autre usb que celle en persistence qui ne me sert pas..

Je dois y installer le live kali dessus?
0
mamiemando
Messages postés
31045
Date d'inscription
jeudi 12 mai 2005
Statut
Modérateur
Dernière intervention
14 mai 2022
7 342
17 mai 2021 à 12:00
Bonjour,

Merci beaucoup de m'aider c'est très gentil de votre part, le fsck /dev/sda2 ne fonctionne malheureusement pas...

Sans message d'erreur, ça ne m'avance pas beaucoup...

Je ne suis pas non plus expert et du coup je m'excuse mais xomment puis le faire via une autre clé usb?

Effectivement, car si j'ai bien compris ton problème, tu as installé linux sur une clé USB et c'est le système de fichiers associé à cette clé USB qui est cassé. Si c'est cela, deux solutions sont possibles :

Solution 1 : tu copies les documents actuellement stockés sur ta clé USB et que tu veux conserver et tu recrées ta clé (ça a le mérite de la simplicité)

Solution 2 : tu prépares un autre live USB (peu importe la distribution) à partir duquel tu feras les fsck sur les partitions de la clé défectueuse. Cela oblige bien entendu à avoir deux ports USBs et une seconde clé USB

La solution 1 a le mérite de la simplicité, vu que tu sembles débuter, c'est à mon avis la plus appropriée.

Je dois y installer le live kali dessus?

Si tu optes pour la solution 2, n'importe quel live (kali ou autre) fera l'affaire. Note que vu que tu sembles indiquer que tu débutes sous linux, une distribution comme ubuntu serait sans doute plus indiquée pour commencer. Kali ne fait rien de plus que n'importe quelle autre distribution (ubuntu comprise). Officiellement conçue pour faire des tests de pénétration, le fond de commerce de cette distribution officieux est peu reluisant.

Donc pour moi la bonne solution serait la solution 3 : préparer un live persistant USB sous ubuntu et de là, rapatrier les documents de la clé défectueuse.

Bonne chance
0