rootwait
et rootdelay
sont utilisés dans des situations où le système de fichiers n'est pas immédiatement disponible, par exemple s'il est détecté de manière asynchrone ou monté via USB. Le fait est que cela devrait être évident d'après le root
bootarg si c'est le cas ou non, alors pourquoi le noyau ne peut-il pas réaliser automatiquement qu'il doit attendre que le système de fichiers apparaisse? Y a-t-il des contraintes techniques empêchant cette automatisation de se mettre en place?
23
/dev/sda1
s'agit d'un périphérique USB et que vous avez attendu un moment ou qu'il/dev/sda1
s'agit d'un système scsi qui doit numériser?Réponses:
Parfois, le système d'exploitation ne peut pas distinguer un périphérique qui est lent à répondre d'un périphérique qui n'est pas là ou complètement arrosé. L'exemple le plus évident est un système de fichiers racine provenant du réseau (TFTP, NFS) où une liaison réseau lente ou un serveur surchargé sont difficiles à distinguer d'une liaison réseau coupée ou d'un serveur en panne. Un timeout indique au noyau quand abandonner.
Cela peut également se produire avec des disques qui tournent lentement, des matrices RAID qui doivent être vérifiées, etc.
rootdelay
indique au noyau de ne pas abandonner immédiatement si le périphérique n'est pas disponible. Le noyau ne peut pas savoir si un lecteur SCSI est un disque local ou une sorte de baie RAID.rootwait
est prévu d'attendre indéfiniment. Ce n'est pas toujours souhaitable, par exemple, un système peut vouloir revenir à un autre système de fichiers racine si le système normal prend trop de temps pour répondre.la source