Forum Linux.livecd Compiler un live Linux minimal avec support NTFS

Posté par  (site web personnel) . Licence CC By‑SA.
Étiquettes :
0
23
nov.
2017

Bonsoir,
j'essaie d'obtenir un live USB Linux minimal qui soit rapide et léger et qui puisse monter des partitions NTFS.
J'ai trouvé ce script qui fonctionne bien pour compiler Linux mais quand je veux monter une partition NTFS:

mount -t ntfs /dev/sda1 /win

j'ai l'erreur

mount: mounting /dev/sda1 on /win failed: No such device

alors que /dev/sda1 existe bien.

Donc comment serait-il possible de monter une partition NTFS depuis ce live?
Je n'ai pas la possibilité d'installer un paquet (j'ai vu qu'il fallait ntfs-3g) là-dessus donc il faut forcément faire quelque chose pendant la compilation mais quoi?
Merci.

  • # Bonsoir

    Posté par  . Évalué à 3. Dernière modification le 24 novembre 2017 à 01:40.

    Donc comment serait-il possible de monter une partition NTFS depuis ce live?
    Je n'ai pas la possibilité d'installer un paquet (j'ai vu qu'il fallait ntfs-3g) là-dessus donc il faut forcément faire quelque chose pendant la compilation mais quoi?

    Avant de le savoir il faudrait trouver ton disque dur :)

    No such device

    Le support de NTFS devrait fonctionner s’il est inclus dans la configuration par défaut de Linux (pour le driver), et de celle de Busybox (pour l’userland). Là, comme ça de mémoire, je sais pas trop. Je vais pas m’avancer… je dirais juste : « ya des chances ».

    Que te donne un simple ls /dev depuis ton live ?

    Après, en changeant 'defconfig' par 'menuconfig' pour la compilation de Busybox et de Linux tu pourras, sinon modifier la configuration, au moins vérifier que le support de NTFS sera bien compilé pour les deux.

    • [^] # Re: Bonsoir

      Posté par  (site web personnel) . Évalué à 1.

      /dev/sda et /dev/sda1 existent bien, et fdisk reconnaît /dev/sda1 comme une partition de boot HPFS/NTFS de 8Go, de ce côté là ça marche.
      Je vais essayer de recompiler avec menuconfig alors.

    • [^] # Re: Bonsoir

      Posté par  (site web personnel) . Évalué à 1.

      J'ai une erreur en compilant busybox avec menuconfig:

      $ make distclean menuconfig
      In file included from scripts/kconfig/lxdialog/checklist.c:24:0:
      scripts/kconfig/lxdialog/dialog.h:31:20: fatal error: curses.h: Aucun fichier ou dossier de ce type
      #include CURSES_LOC
      compilation terminated.
      scripts/Makefile.host:120: recipe for target 'scripts/kconfig/lxdialog/checklist.o' failed
      make[3]: *** [scripts/kconfig/lxdialog/checklist.o] Error 1
      /home/tuxmain/minimal/busybox-1.24.2/scripts/kconfig/Makefile:14: recipe for target 'menuconfig' failed
      make[2]: *** [menuconfig] Error 2
      Makefile:443: recipe for target 'menuconfig' failed
      make[1]: *** [menuconfig] Error 2
      Makefile:423: recipe for target 'menuconfig' failed
      make: *** [menuconfig] Error 2

      Et la même chose pour linux:

      $ make mrproper menuconfig bzImage
      In file included from scripts/kconfig/mconf.c:23:0:
      scripts/kconfig/lxdialog/dialog.h:38:20: fatal error: curses.h: Aucun fichier ou dossier de ce type
      #include CURSES_LOC
      compilation terminated.
      scripts/Makefile.host:108: recipe for target 'scripts/kconfig/mconf.o' failed
      make[2]: *** [scripts/kconfig/mconf.o] Error 1
      Makefile:544: recipe for target 'menuconfig' failed
      make[1]: *** [menuconfig] Error 2
      Makefile:523: recipe for target '__build_one_by_one' failed
      make: *** [__build_one_by_one] Error 2

      • [^] # Re: Bonsoir

        Posté par  . Évalué à 2. Dernière modification le 24 novembre 2017 à 14:22.

        surement parce que ce n'est pas busybox qui propose l'option "menuconfig" mais le kernel

        c'est donc pendant la compilation du kernel qu'il faut faire le make menuconfig

        c'est d'ailleurs le cas dans le script cité en reference :

        # ici on rentre dans le dossier contenant les sources du noyau
        cd ../../linux-4.7.6
        # puis on lance la compilation de celui-ci avec l'option defconfig
        make mrproper defconfig bzImage
        • [^] # Re: Bonsoir

          Posté par  . Évalué à 4. Dernière modification le 24 novembre 2017 à 17:16.

          Busybox a aussi cette cible. Je l’ai compilé il y a pas longtemps et si la cible menuconfig n’existait pas il aurait un autre message d’erreur, genre : « la cible menuconfig n’existe pas »…

          Là son problème est lié au fait que ncurses n’est pas installé :

          scripts/kconfig/lxdialog/dialog.h:31:20: fatal error: curses.h: Aucun fichier ou dossier de ce type

          @tuxmain : Essaye en installant le package libncurses5-dev au préalable.

          • [^] # Re: Bonsoir

            Posté par  . Évalué à 2.

            yep c'est bien vu de la part de marotte

          • [^] # Re: Bonsoir

            Posté par  (site web personnel) . Évalué à 1.

            Après avoir installé curses ça compile bien, mais dans la config de busybox il n'y a que FEATURE_VOLUMEID_NTFS en rapport avec NTFS, et il était déjà activé.
            Dans celle de Linux NTFS write support était déjà activé mais pas NTFS debugging support donc je l'ai activé.

            Mais maintenant /dev/sda n'existe plus du tout et fdisk -l ne dit absolument rien.

            • [^] # Re: Bonsoir

              Posté par  . Évalué à 2.

              Dans celle de Linux NTFS write support était déjà activé mais pas NTFS debugging support donc je l'ai activé.

              avant d'avoir le write support, il faut deja avoir le read support,
              en gros dans ton menuconfig ton arbre NTFS est activé partout (sauf les options debug qui ne t'apporteront rien pour l'instant) ?

              tu as debranché/rebranché le disque pour que udev/systemd le redetecte ?

              • [^] # Re: Bonsoir

                Posté par  (site web personnel) . Évalué à 1.

                L'arbre NTFS ne contient que debug et write qui est activé.
                J'utilise QEMU pour l'émulation, c'est possible de débrancher/rebrancher à chaud une image disque?

                • [^] # Re: Bonsoir

                  Posté par  . Évalué à 2.

                  J'utilise QEMU pour l'émulation, c'est possible de débrancher/rebrancher à chaud une image disque?

                  c'est plus complexe en effet,

                  dans ton cas, vu que tu as recompilé, le plus simple ce serait de redemarrer la machine sur le nouveau noyau
                  mais bon, le noyau ne fait pas tout, il me semble qu'on a inventé udev (remplacé maintenant par systemd) pour remplir l'arborescence /dev/xxx automatiquement, sinon, ben faut le faire à la main avec des mknod X y ... me souviens plus des commandes, man mknod et quelques sites internet devraient pouvoir te renseigner.

        • [^] # Re: Bonsoir

          Posté par  . Évalué à 3.

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.