GNU/Linux >> Znalost Linux >  >> Linux

Jak připojit diskové svazky macOS APFS v Linuxu

V roce 2017 Apple změnil výchozí souborový systém na svém macOS (High Sierra a vyšší) na APFS, on Apple File System. Nahradil HFS+.

Funguje na principu použití kontejnerů, spíše než oddílů. Má dobrou účinnost klonování, lepší šifrování, podporu snímků a také několik dalších výhod.

Obsah

Proprietární žvanění

Stejně jako všechny nedávné věci ve světě Apple neradi sdílejí věci. I když by to mohlo negativně ovlivnit jejich podnikání. Vezměte si například FaceTime. Pokud by tuto platformu učinili agnostickou, což znamená, že by ji mohli používat lidé na platformách Windows, Android a možná i Linux/Web, pak je sporné, že by FaceTime vzal velkou část podílu na trhu takovým, jako je Skype. APFS se neliší. Apple rozhraní API nesdílel, takže spoléhá na lidi, kteří provádějí určitý rozsah odhadů, podrobný výzkum a určité reverzní inženýrství. To vše není nikdy dobré, když pracujete na systémech, které se starají o integritu vašich souborů!

Pro ty z vás, kteří používají Linux na počítači Mac a stále potřebují příležitostně přistupovat k souborům na oddílu Mac na pevném disku, to může být výzva. Pokud máte jakoukoli verzi macOS starší než 10.3 (High Sierra), váš mac bude používat HFS+. Podívejte se na našeho komplexního průvodce používáním Linuxu na počítači Mac o tom, jak připojit oddíl HFS+ jako čtení/zápis.

Jak to zprovozním?

Pro novější uživatele APFS můžete naštěstí nyní použít ovladač s názvem apfs-fuse pro přístup k APFS disku vašeho mac. Upozorňujeme, že tento ovladač není součástí vaší distribuce Linuxu a budete jej muset sestavit ze zdrojového kódu. Tento krátký průvodce vám ukáže, jak na to.

Škoda, pouze pro čtení...

Bohužel, alespoň prozatím, máte omezený přístup pouze pro čtení. Výsledkem toho je, že žádná data nemohou být poškozena žádnými chybami, které mohou existovat v tomto experimentálním softwaru. Přidružený montážní nástroj ovladače také neprovede transparentní dekompresi LZFSE. Tento nástroj používám několik týdnů na svém počítači macOS ‚Mojave‘ a funguje dobře.

Vybavte se

Nejprve bych rád řekl, že se jedná o zcela nový návod, ale při této příležitosti je to všechno práce na Terminálu. Nebojte se příliš, pokud nejste zvyklí pracovat na příkazovém řádku, pokyny můžete bezpečně zkopírovat a vložit.

Nejprve potřebujeme mít vhodné nástroje, abychom mohli sestavit ovladač APFS-Fuse. Otevřete aplikaci Terminal a zadejte tyto příkazy:

sudo apt update
sudo apt install libicu-dev bzip2 cmake libz-dev libbz2-dev fuse3 libfuse3-3 libfuse3-dev clang git libattr1-dev

On older versions of Ubuntu, you may need to use the following: sudo apt install fuse libfuse-dev libicu-dev bzip2 cmake libz-dev libbz2-dev clang git libattr1-dev

Nyní si můžeme stáhnout (klonovat) zdrojový kód ovladače pomocí git:

git clone https://github.com/sgan81/apfs-fuse.git
cd apfs-fuse
git submodule init
git submodule update

Poté, co je hotovo, je čas zkompilovat stažený zdrojový kód:

mkdir build
cd build
cmake ..
make

Po kompilaci jsou binární soubory umístěny v adresáři sestavení. Doporučuji zkopírovat nástroje apfs* do adresáře, který je přístupný v cestě, například /usr/local/bin. Chcete-li je zkopírovat, jednoduše postupujte takto:

sudo cp apfs-* /usr/local/bin

Nyní musíme zjistit, na kterém diskovém oddílu je macOS zapnutý. Pomocí příkazu fdisk -l budete moci vidět rozložení disku.

$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 ---

V mém příkladu výše můžete vidět, že existuje neznámý oddíl o velikosti 364,4 GB. Vím, že toto je můj oddíl macOS, protože vím, že velikost mého oddílu macOS je 365 GB. To znamená, že identifikátor zařízení je /dev/sda2, takže to připojíme.

Pojďme se na to podívat a uvidíme, jestli to funguje….

sudo mkdir -p /media/$USERNAME/macos
sudo ./apfs-fuse -o allow_other /dev/sda2 /media/<your userame>/macos

Doufejme, že vše půjde dobře, v tuto chvíli neobdržíte žádné chybové zprávy. Pokud ano, pak může soubor README poskytnout určité osvícení.

Aby to drželo

Pokud chcete, aby se váš oddíl macos automaticky připojoval při každém spuštění počítače, budete muset provést úpravy v tabulce souborového systému (fstab). K tomu budeme muset vytvořit symbolický odkaz na nástroj pro připojení apfs a poté upravit soubor fstab (pokud nemáte nano, použijte vim):

sudo ln -s /usr/local/bin/apfs-fuse /usr/sbin/mount.apfs
sudo nano /etc/fstab

Přidejte řádek na konec souboru (vše na jeden řádek), který říká:

mount.apfs#/dev/sda2    /media/<your username>/macos/    fuse    user,allow_other        0       0

Pokud chcete zjistit, zda to funguje okamžitě, odpojte disk (viz část čištění níže). Poté zadejte sudo mount -a pro připojení disku z fstab.

Seznámení se s oddílem

Když je oddíl připojen, uvidíte dva adresáře, private-dir a root. Kořenový adresář je ten, který chcete. Uvnitř je kořenový souborový systém vašeho mac. Své věci najdete ve složce „Uživatelé“.

Čištění (odpojení)

Chcete-li správně odpojit adresář macos, měli byste použít příkaz fusermount:

fusermount -u /media/<your username>/macos

Doufám, že vám to pomohlo získat přístup k souborům vašeho počítače Mac. Sdílejte prosím tento článek a dejte mi vědět, jak se vám daří, v sekci komentářů níže.


Linux
  1. Jak připojit USB disk v UNIX nebo Linux

  2. Jak zálohovat operační systém Linux pomocí příkazu „dd“.

  3. Jak připojit soubor iso v Linuxu

  1. Jak rozdělit disk v Linuxu

  2. Jak použít fdisk k rozdělení disku v Linuxu

  3. Jak připojit zařízení v Linuxu?

  1. Jak připojit obraz disku s více oddíly v Linuxu?

  2. Jak připojit soubor ISO v Linuxu?

  3. Jak připojit nový oddíl na red hat linux