1 votes

Qu'est-ce que le fichier "fstab" par défaut dans Android ?

Comme je le sais, dans Android 9, system y vendor sont montés dans la première phase de init en analysant fstab de l'arborescence. Mais il existe un autre fstab analysé dans init de l'entreprise, il est device default fstab qui est analysé par ReadDefaultFstab ci-dessous. Je suis confronté à une erreur " failed to find device default fstab " dans le journal de démarrage. Quelqu'un peut-il m'expliquer ce problème ? default fstab fichier ? Qu'est-ce que c'est et quel est son rôle ?

// Loads the fstab file and combines with fstab entries passed in from device tree.
bool ReadDefaultFstab(Fstab* fstab) {
    Fstab dt_fstab;
    ReadFstabFromDt(&dt_fstab, false);

    *fstab = std::move(dt_fstab);

    std::string default_fstab_path;
    // Use different fstab paths for normal boot and recovery boot, respectively
    if (access("/system/bin/recovery", F_OK) == 0) {
        default_fstab_path = "/etc/recovery.fstab";
    } else {  // normal boot
        default_fstab_path = GetFstabPath();
    }

    Fstab default_fstab;
    if (!default_fstab_path.empty()) {
        ReadFstabFromFile(default_fstab_path, &default_fstab);
    } else {
        LINFO << __FUNCTION__ << "(): failed to find device default fstab";
    }

    for (auto&& entry : default_fstab) {
        fstab->emplace_back(std::move(entry));
    }

    return !fstab->empty();
}

0voto

Irfan Latif Points 16863

Il peut s'agir / (ramdisk), /odm/etc/ ou /vendor/etc/ .

Stockage Android Configuration :

Pour les versions 4.3 et ultérieures d'Android, les différents fichiers fstab utilisés par init, vold et recovery ont été unifiés dans le fichier /fstab.<device> fichier

Le changement suivant s'est produit avec Treble lorsque le code spécifique au vendeur/SoC a été séparé du code générique AOSP. Ainsi, le code de l'AOSP a été séparé du code générique. fstab a été déplacée à /odm ou /vendor .

default_fstab_path lit GetFstabPath() :

// Identify path to fstab file. Lookup is based on pattern fstab.<hardware>,
// fstab.<hardware.platform> in folders /odm/etc, /vendor/etc, or /.

Engagement États :

fstab contient des informations spécifiques aux périphériques et aux sociétés qui doivent se trouver dans le répertoire /odm ou /vendor. Cette modification permet de rechercher dans le fichier fstab.${ro.hardware} dans /odm/etc, /vendor/etc et /, puis utilise le premier fichier trouvé.

fstab contient des entrées pour tous les systèmes de fichiers à monter au démarrage ou lors de la récupération à partir de partitions, y compris system , vendor , userdata , cache , misc , persist , modem , dsp etc. Voir les détails dans Partitions et systèmes de fichiers Android .

Certaines des entrées de fstab sont déplacés vers la DTB. Voir "OÙ SE TROUVE FSTAB ? en Comment désactiver dm-verity sur Android ?

androidalle.com

AndroidAlle est une communauté de androiders où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X