Apple File System APFS sur Linux
installation des dépendances :
sudo apt update
sudo apt install fuse libfuse-dev libicu-dev bzip2 libbz2-dev cmake clang git libattr1-dev libbz2-dev libfuse3-dev libz-dev
téléchargement des sources GIT :
git clone https://github.com/sgan81/apfs-fuse.git
cd apfs-fuse
git submodule init
git submodule update
Construction de fuse
mkdir build
cd build
cmake ..
make
Après la compilation, les binaires se trouvent dans le répertoire de construction. Je recommande de copier les outils apfs * dans un répertoire accessible dans le chemin, par exemple / usr / local / bin. Pour les copier, faites simplement ceci :
sudo cp apfs-* /usr/local/bin
Montage de la partition APFS
Nous devons maintenant savoir sur quelle partition de disque se trouve macOS. En utilisant la commande fdisk -l, vous pourrez voir la disposition du disque.
sudo fdisk -l
--- 8>--snipped the loop volumes--<8 ---
Disk /dev/sda: 465.9 GiB, 500277790720 bytes, 977105060 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disklabel type: gpt
Disk identifier: 6153AD88-FE14-4E88-8D9A-60E8AA465516
Device Start End Sectors Size Type
/dev/sda1 40 409639 409600 200M EFI System
/dev/sda2 409640 764593231 764183592 364.4G unknown
/dev/sda3 764594176 781570047 16975872 8.1G Microsoft basic data
/dev/sda4 781832192 976842751 195010560 93G Microsoft basic data
--- 8>--snipped the loop volumes--<8 ---
Vous pouvez voir dans mon exemple ci-dessus qu'il existe une partition inconnue de 364,4 Go. Je sais qu'il s'agit de ma partition macOS car je sais que la taille de ma partition macOS est de 365 Go. Cela signifie que l'identifiant de l'appareil est / dev / sda2, c'est donc ce que nous allons monter.
Vérifions-le et voyons si cela fonctionne….
sudo mkdir -p /media/$USERNAME/macos
sudo ./apfs-fuse -o allow_other /dev/sda2 /media/$USERNAME/macos
Si vous souhaitez que votre partition macos se monte automatiquement à chaque fois que vous démarrez votre ordinateur, vous devrez modifier la table de votre système de fichiers (fstab). Pour ce faire, nous devrons créer un lien symbolique vers l'outil de montage apfs, puis éditer le fstab (si vous n'avez pas nano, utilisez vim):
sudo ln -s /usr/local/bin/apfs-fuse /usr/sbin/mount.apfs
sudo nano /etc/fstab
Ajoutez une ligne au bas du fichier (le tout sur une seule ligne) qui dit ceci:
mount.apfs#/dev/sda2 /media/<your username>/macos/ fuse user,allow_other 0 0
Si vous voulez voir si cela fonctionne immédiatement, démontez simplement le disque (voir la section nettoyage ci-dessous). Tapez ensuite sudo mount -a pour monter le disque à partir du fstab.
Apprendre à connaître votre partition
Lorsque la partition est montée, vous verrez deux répertoires, private-dir et root. La racine du répertoire est celle que vous souhaitez. À l'intérieur se trouve le système de fichiers racine de votre mac. Vous trouverez vos informations dans le dossier "Utilisateurs".
Nettoyage (démontage)
Pour démonter correctement le répertoire macos, vous devez utiliser la commande fusermount:
2 commentaires
You couldn't configure it for fuse 2? In the build directory, do the following:
Execute cmake ..
Execute ccmake .
Navigate to USE_FUSE3, and if it is not set to OFF, hit enter
Press c to configure
Press g to generate Makefile and exit ccmake
Execute make
Tout d'abord, assurez-vous que hfsprogs est installé. Exemple de commande d'installation:
sudo apt-get install hfsprogs
Ensuite, montez ou remontez le lecteur HFS +; les commandes doivent être les suivantes:
sudo mount -t hfsplus -o force, rw / dev / sdXY / media / mntpoint
ou
sudo mount -t hfsplus -o remount, force, rw / mount / point
...
Enfin, si le lecteur n'a pas été correctement démonté ou est devenu partiellement corrompu, exécutez fsck.hfsplus ... en tant que tel:
sudo fsck.hfsplus -f / dev / sdXY