Nie zamierzam zajmować się legalnością usuwania DRM, ponieważ różni się ona w zależności od kraju - w niektórych przypadkach jest dozwolony, w innych sytuacja jest mroczna, aw innych jest wyraźnie nielegalna.
Poniższe kroki działały dla mnie na Ubuntu 18.04.
Zainstaluj niezbędne programy za pomocą menedżera pakietów
sudo apt-get install wine64
sudo apt-get install calibre
# sudo apt-get install winetricks # this is optional — see below
Pobierz inne niezbędne programy
Wtyczka DeDRM
wget https://github.com/apprenticeharper/DeDRM_tools/releases/download/v6.6.3/DeDRM_tools_6.6.3.zip
Kindle na PC v 1.17
(Ściśle oparte na informacjach z oficjalnego FAQ (migawka) . Link do najnowszej wersji .)
Aby uzyskać najlepsze wyniki, potrzebujesz starej wersji Kindle na PC (≤1,17). (Nieco nowsze wersje (≥1,24) używają nieoptymalnego formatu pliku KFX dla pobranych książek, podczas gdy nawet nowsze wersje nie mogą być w ogóle „wykorzystywane” przez wtyczkę DeDRM.)
Niestety, ta wersja Kindle na PC nie jest już dostępna na stronach Amazon, więc musisz znaleźć google / duckduckgo dla nazwy pliku KindleForPC-installer-1.17.44170.exe
i pobrać go ze szkicowej strony. Aby upewnić się, że pobrałeś „oryginalny” plik (a nie zmodyfikowaną wersję z dodatkowym złośliwym oprogramowaniem), musisz sprawdzić skrót pliku. (md5 jest „zepsuty”, a sha1 jest częściowo „zepsuty”, więc nie polecam polegać wyłącznie na nich).
sha256sum KindleForPC-installer-1.17.44170.exe | grep 14e0f0053f1276c0c7c446892dc170344f707fbfe99b6951762c120144163200
Jeśli mi nie ufasz, przypadkowa osoba w Internecie, która powie ci właściwy skrót (nie masz powodu), możesz przejść do oficjalnego FAQ, powyżej - w końcu już ufasz wtyczce DeDRM nie być złośliwym. (Z jakiegoś powodu w haszu sha256 jest spacja w FAQ.)
Winetricks
Nie możemy używać Winetricks do Kindle na PC, ponieważ instaluje to wersję 1.20, która nie jest tak odpowiednia.
Zainstaluj i uruchom Kindle na PC
wine64 KindleForPC-installer-1.17.44170.exe
Wprowadź dane konta amazon, pobierz odpowiednie książki na „urządzenie” (tj. Komputer) itp.
Zainstaluj wtyczkę DeDRM kalibru
unzip DeDRM_tools_6.6.3.zip
calibre-customize --add DeDRM_calibre_plugin/DeDRM_plugin.zip
Alternatywnie, po rozpakowaniu możesz po prostu zainstalować go za pomocą standardowego interfejsu Calibre. (Preferencje> Zaawansowane> Wtyczki> Załaduj wtyczkę z pliku.)
Wyciągnij swoje klucze rozpałkowe
Jeśli korzystasz z WINE / Linux, wtyczka DeDRM nie wyodrębni kluczy sama w sobie „automatycznie”, bez zbędnego manipulowania.
DeDRM_calibre_plugin/DeDRM_plugin_ReadMe.txt
zawiera kilka wskazówek, jak postępować. Częściowo, ale nie do końca działały dla mnie.
Zainstaluj python (w wine)
Aby wyodrębnić klucze DRM, skrypt Pythona (dostarczony przez wtyczkę kalibru) będzie musiał zostać uruchomiony w wine (najlepiej) przez samą wtyczkę kalibru. Dlatego musisz zainstalować Pythona w środowisku wina.
Istnieją dwie alternatywy - użyj winetricks lub zainstaluj ręcznie z oficjalnej strony Pythona.
Instalacja ręczna (obecnie zalecana)
wget https://www.python.org/ftp/python/2.7.13/python-2.7.13.msi
msiexec /i python-2.7.13.msi ALLUSERS=1
Zauważ, że różni się to od instrukcji obecnie DeDRM_calibre_plugin/DeDRM_plugin_ReadMe.txt
kluczowym dodatkiem ALLUSERS=1
.
Winetricks (niezalecane, chyba że masz nową wersję winetricks)
Jeśli korzystasz z Winetricks zainstalowanych z repozytoriów Ubuntu, w dniu 18.04, to niestety dostępny jest tylko Python-2.6 (który możesz zainstalować winetricks python26
). Ponieważ wtyczka kalibru obecnie sztywno koduje ścieżkę do standardowej instalacji Pythona-2.7, to nie jest optymalne. W związku z tym musisz albo załatać wtyczkę kaliber, albo sam uruchomić skrypt Python Wine i skopiować klucze odszyfrowujące.
Jeśli masz nowszą wersję Winetricks, możesz zainstalować Python-2.7.
winetricks python27
Uruchom skrypt Python Wine
Aby wtyczka kalibru mogła uruchomić skrypt, musisz powiedzieć mu, gdzie znajduje się instalacja wina (tak zwany „WINEPREFIX”). Domyślnie prefiks wine to ~/.wine/
. Możesz powiedzieć wtyczce WINEPREFIX
Calibre swoją , w Calibre, przechodząc do Preferencji> Zaawansowane> Wtyczki> Wtyczki typu pliku> DeDRM> Dostosuj wtyczkę> Kindle na PC i Adobe Digital Editions. Możesz poprosić o uruchomienie skryptu, naciskając przycisk „+” - w przeciwnym razie zostanie on uruchomiony przy pierwszej próbie dodania książki za pomocą Kindle DRM.
To powinno być to - kiedy dodasz książki do kalibru, zostaną one automatycznie pozbawione DRM. Alternatywnie, możesz spojrzeć na (prawie) wersję cli, poniżej, która jest pozbawiona większości moich pełnych wyjaśnień.
(Prawie) wersja czysto komendowa
Nie kopiuj i wklej to wszystko za jednym razem, ponieważ to nie zadziała - kilka kroków wymaga udziału człowieka.
sudo apt-get install wine64
sudo apt-get install calibre
mkdir -p ~/Downloads/kindle_dedrm/
cd ~/Downloads/kindle_dedrm/
# somehow get KindleForPC-installer-1.17.44170.exe
# check its hash
sha256sum KindleForPC-installer-1.17.44170.exe | grep 14e0f0053f1276c0c7c446892dc170344f707fbfe99b6951762c120144163200
wine64 ~/Downloads/kindle_dedrm/KindleForPC-installer-1.17.44170.exe &
# Enter your amazon account details, download your relevant books to the device etc.
wget https://github.com/apprenticeharper/DeDRM_tools/releases/download/v6.6.3/DeDRM_tools_6.6.3.zip
unzip DeDRM_tools_6.6.3.zip
# Install plugin (could also use Calibre's GUI)
calibre-customize --add DeDRM_calibre_plugin/DeDRM_plugin.zip
wget https://www.python.org/ftp/python/2.7.13/python-2.7.13.msi
msiexec /i python-2.7.13.msi ALLUSERS=1
# Configure the calibre dedrm plugin with the correct wineprefix
# (could also use Calibre's GUI)
# (could also save it to a file and run, say,
# python add_wine_prefix_to_dedrm_config.py #)
python -c '
import json
import os
home = os.path.expanduser("~")
file = open(home + "/.config/calibre/plugins/dedrm.json", "r+")
dedrm_config = json.load(file)
dedrm_config["kindlewineprefix"] = home + "/.wine/"
file.seek(0)
json.dump(dedrm_config, file)
file.truncate()
file.close()
'
# Add all your Kindle books to the Calibre Library for automatic processing
calibredb add ~/Documents/My\ Kindle\ Content/*.azw --with-library="Calibre Library"
## (Optionally) list your books
# calibredb list --with-library="Calibre Library"
## (Optionally) export the first book
# calibredb export 1 --with-library="Calibre Library"
## (Optionally) export all your books
# calibredb export --all --with-library="Calibre Library"