Saya tidak akan membahas legalitas penghapusan DRM, karena ini bervariasi di setiap negara - dalam beberapa hal itu jatuh di bawah penggunaan yang adil, di yang lain situasinya suram dan yang lain namun secara eksplisit ilegal.
Langkah-langkah berikut ini berhasil bagi saya, di Ubuntu 18.04.
Instal program yang diperlukan menggunakan manajer paket
sudo apt-get install wine64
sudo apt-get install calibre
# sudo apt-get install winetricks # this is optional — see below
Unduh program lain yang diperlukan
Plugin DeDRM
wget https://github.com/apprenticeharper/DeDRM_tools/releases/download/v6.6.3/DeDRM_tools_6.6.3.zip
Kindle untuk PC v 1.17
(Berdasarkan informasi dari FAQ resmi (snapshot) . Tautan ke versi terbaru .)
Untuk hasil terbaik, Anda memerlukan Kindle versi lama untuk PC (≤1.17). (Versi sedikit lebih baru (≥1.24) menggunakan format file KFX yang kurang optimal untuk buku yang diunduh, sementara versi yang lebih baru tidak dapat "dieksploitasi" oleh plugin DeDRM, sama sekali.)
Sayangnya, versi Kindle untuk PC itu tidak lagi tersedia dari situs web Amazon, jadi Anda perlu google / duckduckgo untuk nama file KindleForPC-installer-1.17.44170.exe
dan mengunduhnya dari beberapa situs web yang tidak lengkap. Untuk memastikan bahwa Anda telah mengunduh file "asli" (dan bukan versi yang dimodifikasi dengan malware bonus), Anda perlu memeriksa hash file tersebut. (MD5 "rusak" dan sha1 sebagian "rusak" jadi saya tidak merekomendasikan hanya mengandalkan mereka.)
sha256sum KindleForPC-installer-1.17.44170.exe | grep 14e0f0053f1276c0c7c446892dc170344f707fbfe99b6951762c120144163200
Jika Anda tidak mempercayai saya, orang acak di internet, untuk memberi tahu Anda hash yang benar, (Anda tidak punya alasan untuk), Anda dapat membuka FAQ resmi, di atas - setelah semua, Anda sudah mempercayai plugin DeDRM untuk tidak menjadi jahat. (Ada ruang di hash sha256, di FAQ, untuk beberapa alasan.)
winetricks
Kami tidak dapat menggunakan winetricks untuk Kindle untuk PC, karena menginstal versi 1.20, yang tidak sesuai.
Instal dan jalankan Kindle untuk PC
wine64 KindleForPC-installer-1.17.44170.exe
Masukkan detail akun amazon Anda, unduh buku-buku yang relevan ke "perangkat" (yaitu komputer Anda) dll.
Instal plugin DeDRM kaliber
unzip DeDRM_tools_6.6.3.zip
calibre-customize --add DeDRM_calibre_plugin/DeDRM_plugin.zip
Atau, setelah membuka ritsleting, Anda cukup menginstalnya melalui UI standar Calibre. (Preferensi> Tingkat Lanjut> Plugin> Muat plugin dari file.)
Ekstrak kunci kindle Anda
Jika Anda menggunakan WINE / Linux, plugin DeDRM tidak akan mengekstrak kunci-kunci itu dengan sendirinya "secara ajaib" tanpa sedikitpun mengutak-atik.
DeDRM_calibre_plugin/DeDRM_plugin_ReadMe.txt
berisi beberapa saran tentang cara melanjutkan. Mereka sebagian, tetapi tidak sepenuhnya bekerja untuk saya.
Pasang python (dalam anggur)
Untuk mengekstrak kunci DRM, skrip python (disediakan oleh plugin kaliber) harus dijalankan dalam anggur (idealnya) oleh plugin kaliber itu sendiri. Oleh karena itu, Anda perlu menginstal python dalam lingkungan anggur.
Ada dua alternatif di sini - gunakan winetricks atau instal secara manual dari situs resmi python.
Instalasi manual (saat ini direkomendasikan)
wget https://www.python.org/ftp/python/2.7.13/python-2.7.13.msi
msiexec /i python-2.7.13.msi ALLUSERS=1
Perhatikan bahwa ini berbeda dari instruksi saat ini DeDRM_calibre_plugin/DeDRM_plugin_ReadMe.txt
oleh penambahan penting ALLUSERS=1
.
Winetricks (tidak disarankan kecuali Anda memiliki winetricks versi baru)
Jika Anda menggunakan winetricks yang diinstal dari repositori Ubuntu, pada tanggal 18.04, maka sayangnya hanya python-2.6 (yang dapat Anda instal dengan winetricks python26
) tersedia. Karena plugin kaliber saat ini menyandikan lintasan ke instalasi standar python-2.7, itu kurang optimal. Oleh karena itu Anda perlu menambal plugin kaliber atau menjalankan skrip anggur python sendiri dan menyalin kunci dekripsi.
Jika Anda memiliki versi winetricks yang lebih baru, Anda dapat menginstal python-2.7.
winetricks python27
Apakah skrip anggur python dijalankan
Agar plugin kaliber menjalankan skrip, Anda harus memberi tahu lokasi pemasangan anggur Anda (yang disebut "WINEPREFIX"). Secara default, wineprefix adalah ~/.wine/
. Anda dapat memberi tahu plugin kaliber AndaWINEPREFIX
, di Calibre, dengan masuk ke Preferences> Advanced> Plugins> Plugins jenis file> DeDRM> Kustomisasi plugin> Kindle untuk PC dan Adobe Digital Editions. Anda dapat meminta jalannya skrip dengan menekan tombol "+" - jika tidak skrip akan dijalankan ketika Anda pertama kali mencoba menambahkan buku dengan Kindle DRM.
Seharusnya itu - ketika Anda menambahkan buku ke kaliber, mereka akan secara otomatis dihapus dari DRM. Atau, Anda dapat melihat (hampir) versi cli, di bawah ini, yang tidak menyertakan sebagian besar penjelasan verbose saya.
(Hampir) versi baris perintah murni
Jangan hanya menyalin-tempel semua ini sekaligus, karena tidak akan berhasil - beberapa langkah membutuhkan partisipasi manusia.
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"