Как урезать Bitcoin Core кошелек?

Раздел: Деньги
Написано: 17.03.2017
Автор: Antonio

Недавно в комментариях к статье Bitcoin долгая синхронизация кошелька у меня спросили как быть, если жесткий диск маленького размера и весь блокчейн биткоина, а он уже больше 110Гб, не помещается?

Тут я вспомнил, что недавно вышла новая версия Bitcoin Core 0.14.0, которая содержит ряд улучшений.

bitcoin core улучшения


В Bitcoin Core 0.14.0

Улучшена производительность IBD

Одним из главных нововведений релиза стало улучшение производительности начальной загрузки блоков (IBD). Узел, запущенный в первый раз, теперь может проверять все блоки гораздо быстрее. Подобное нововведение было необходимо из-за постоянно возрастающего размера блокчейна. Теперь пользователи могут не хранить весь блокчейн, который сейчас имеет размер более 110 Гб – достаточно иметь его урезанную версию с минимальным размером в 550 Мб.

В предыдущих версиях была предусмотрена обрезка блокчейна до 2 Гб и хранением блоков примерно за две недели. Теперь даже полные узлы могут только обрабатывать блоки, но не хранить их, записывая изменение балансов адресов в таблицу UTXO (неистраченных выходов). Несмотря на некоторые уступки в плане безопасности, такой механизм значительно ускоряет работу кошелька и снижает требования к аппаратным ресурсам.

Ускоренная проверка новых блоков

Это нововведение особенно порадует майнеров. Для многоядерных процессов был обновлен кэш подписей – тест, проведенный на системе с 16 ядрами показал 40% увеличение скорости обработки нового блока. Внедрение функции BIP152 Compact Blocks позволит передавать некоторые блоки еще до того, как они были полностью подтверждены, позволяя этим блокам быстрее чем раньше распространяться по сети peer-to-peer (P2P).

Код для обмена данными в сети P2P также был реорганизован, чтобы позволить нескольким действиям выполняться одновременно, а также увеличить пропускную способность, устраняя потенциальные задержки в обработке новых блоков. Помимо этого, неподтверждённые транзакции в памяти узла (mempool) теперь могут быть сохранены и восстановлены с диска при перезапуске Bitcoin Core.

Обновленный расчет комиссий

Кошелек Bitcoin Core теперь позволяет пользователям при желании отправлять транзакции при помощи функции replace-by-fee (RBF). Это значит, что пользователь может увеличить комиссию за транзакцию даже после того, как была отправлена в сеть более ранняя версия транзакции. Данная функция не включена по умолчанию. Разработчики надеются, что это нововведение побудит майнеров к более быстрой обработке новых версий транзакций.

Помимо перечисленных основных изменений, существуют также и другие нововведения — возможность включения и выключения сетевой активности, новый эффективный метод импорта множественных ключей или адресов watch only, а также новые предупреждения и сообщения, информирующие пользователей о правильном использовании продукта.

Разработчики Bitcoin Core позаботились о людях, которых хотят использовать оригинальный кошелек для биткоинов, однако при этом не имеют большого быстрого диска.

Уменьшаем необходимое место на диске для клиента Bitcoin

Для того чтобы использовать усеченный блокчейн нужно использовать опцию -prune=600

Указывать опцию пруне необходимо при старте bitcoin-qt.exe, для этого можно создать ярлык для запуска кошелька и в строке Объект в свойствах ярлыка дописать опцию.

Выглядеть это будет примерно так

C:\Data\bitcoin-0.14.0\bin\bitcoin-qt.exe -datadir=store -prune=600

В данном случае я использую две опции при запуске Bitcoin wallet:

-datadir=store эта опция говорит кошельку, что блокчейн и wallet.dat находится в подкаталоге store каталога программы, вы можете не указывать эту опцию, и каталог с базой данных транзакций и файлом кошелька будет размещаться по-умолчанию в C:\Users\[имя вашего пользователя в Windows]\AppData\Roaming\Bitcoin

-prune=600 — Уменьшить размер хранилища за счёт обрезания (удаления) старых блоков. Будет разрешён вызов RPC метода pruneblockchain для удаления определённых блоков и разрешено автоматическое обрезание старых блоков, если указан целевой размер в Мб. Этот режим несовместим с -txindex и -rescan. Внимание: переключение этой опции обратно потребует полной загрузки цепи блоков. (по умолчанию: 0 = отключить обрезание блоков, 1 = разрешить ручное обрезание через RPC, >550 = автоматически обрезать файлы блоков, чтобы они были меньше указанного размера в Мб)

Смотрим help по командам, запускаем bitcoin-qt.exe /help

Получаем список опций командой строки Bitcoin Core
Из справки становится понятно, что можно указывать минимальное значение prune=551.

Создаем ярлык для запуска Bitcoin Core c опциями datadir и prune и их значениями.

Поделиться с друзьями или в соц.сетях (спасибо)
Ещё похожие заметки:

48 комментариев

Витя
Мар 22, 2017 20:11

А куда команду вводить?

 
Antonio
Мар 22, 2017 21:35

Сорри, никак не допишу нормально статью.
Добавил скриншот.
Нужно создать ярлык для запуска Bitcoin Core и добавить в ярлыке, там где путь к файлу, который запускать, команду

-prune=600

как на картинке

 
Roman
Мар 28, 2017 15:04

Работает ли эта команда на убунту ? и можна ли ее запускать при первом запуске коре и старте кошелька

 
Antonio
Мар 28, 2017 15:06

Roman, на Убунту не пробовал.
Да, можно при первичном, можно и на существующей базе.

 
Витя
Апр 10, 2017 13:59

Скачал Bitcoin Core 0.14.0 заново. Вроде сгенерированный адрес на который отправил деньги там опять появился. Но в созданном ярлыке команду добавляю к имени файла, а он не запускается, выдает имя конечного файла задано неверно.

 
Antonio
Апр 10, 2017 14:44

Витя, в том же каталоге, где находится bitcoin-qt.exe, делаем ярлык на bitcoin-qt.exe, дальше открываем свойства ярлыка и там где Объект, как на картинке добавляем -prune=600, нажимаем Ок и все должно работать.

Проверено не один раз!

 
максим
Апр 11, 2017 15:04

Здравствуйте . Загружается кор уже третий день.поторопился создал номер на который закинули деньги. Как можно их получить не дожидаясь синхронизации?

 
максим
Апр 11, 2017 15:06

Если есть возможность. По подробнее ,я не очень соображаю в технике

 
Antonio
Апр 11, 2017 16:06

Максим, нужно дождаться синхронизации,
можете урезать блокчейн командой -prune=600
на обычном компьютере обычно за ночь проходит полная синхронизация.

 
максим
Апр 11, 2017 16:40

Пожалуйста. Напишите пошагово как это сделать. И при этом я не потеряю деньги на счету?

 
Antonio
Апр 11, 2017 16:45

Главное сделайте резервную копию wallet.dat
Пошагово, я описывал Вите, пару комментариев выше, два действия, никаких сложностей не должно быть.

 
максим
Апр 11, 2017 17:11

Спасибо.

 
максим
Апр 11, 2017 17:16

А я могу не потеряв кошелек синхронизировать на другом компьюторе?

 
Antonio
Апр 11, 2017 17:18

Конечно, можно запустить синхронизацию на другом компьютере, а потом заменить wallet.dat на том компьютере своим и должен появиться баланс.

 
максим
Апр 11, 2017 17:28

Что такое wallet.dat ? Где он ?

 
Antonio
Апр 11, 2017 21:56

Это самый важный файл, собственно кошелек.

Без этого файла или без пароля к нему, если он запаролен, не видать денежек.

 
Antonio
Апр 11, 2017 21:56

А где он, можно найти поиском.

 
Александр
Авг 6, 2017 19:40

Спасибо!!!

 
Игорь
Авг 21, 2017 15:51

Запустил с ключем -prune=600… дальше качает весь блокчейн
0.14.2 версия биткоин коре :( :( :(

 
Андрей
Авг 23, 2017 02:31

Написано: «Несмотря на некоторые уступки в плане безопасности»
Как бы оценить насколько менее безопасно с опцией -prune=600?

 
Antonio
Авг 24, 2017 22:25

Наверное довольно безопасно, ведь можно проверить баланс и сделки в блокчейне, через любой специализированный сайт.

Игорь, наверное как-то не так запустили, удалите каталог блокчейна, сохранив перед этим wallet.dat и попробуйте заново.
И качать он будет тоже много, просто сохранять меньше и быстрее это все произойдет.

 
Евгений
Сен 23, 2017 17:41

Возникла проблема с флагом prune.

Появилась ошибка: «Вам необходимо пересобрать базу данных с помощью -reindex. Произойдет полная перезагрузка блоков».

Попробовал решить через перетыкивание флага, сначала ошибка оставалась, потом все блоки стали скачиваться опять заново. Придется месяц, наверно, опять скачивать все)

Что нужно делать, чтобы не было повторения такой ситуации в будущем?

Спасибо

 
Александр
Окт 8, 2017 22:33

Не подскажите как урезать bitcoin core кошелек на Mac OS ?

 
Antonio
Окт 15, 2017 23:54

Евгений, пруне правильно работает только если запускать с нею первый раз на чистую, если что-то пошло не так с базой, то проще очистить все, кроме валлет.дат и оно пересоздаст.

Возможно вы некорректно выключили кошелек. Или был сбой компьютера — из-за этого повреждается база и нужно пересканирование. А так как база не полная, то пересканирование сделать не может.

В любом случае это намного быстрее чем полная синхронизация и занимает в 50 раз меньше места.

 
Antonio
Окт 15, 2017 23:55

Александр, про МАК не подскажу, возможно точно так же. Посмотрите хелп по ключам.

 
Вера
Дек 8, 2017 14:28

Доброго времени. На версии 0.15.1 работает данная команда?

 
Antonio
Дек 8, 2017 16:14

Доброго,
работает

 
Konstantin
Дек 21, 2017 11:28

Добрый день!

Спасибо за статью!

Потратил на синхронизацию дней 5 наверное, только когда это дело в конец надоело, начал искать решение. Нашел вначале копию вашей статьи — потому вышел на оригинал. (Вероятно у вас копируют тексты).

Спасибо за совет.

 
Николай
Дек 22, 2017 13:58

а если при установке указал каталог данных в той же папке где установлен сам клиент, как правильно написать «-datadir=» ? еще и название папки на русском языке, так и писать -datadir=d:\Название папки\Bitcoin\ -prune=600 ?

 
Антон
Апр 9, 2018 11:51

Т.е. если у меня база лежит на диске D и я не укажу опцию -datadir=store , то база переместится в папку по умолчание на диск С ?

 
Antonio
Апр 13, 2018 18:54

да, если не указать, будет создан каталог по-умолчанию в папке текущего пользователя

 
Аноним
Июл 12, 2018 16:46

wallet.dat в другом кошельке возможно запустить? На легком

 
sergei
Июл 12, 2018 20:36

в новой версии работает?

 
sergei
Июл 12, 2018 20:40

в новой

 
Antonio
Июл 12, 2018 23:49

Sergei,
похоже работает и в новой версии.

Аноним, так просто wallet.dat, насколько я знаю, запустить нельзя, как вариант сделать экспорт приватного ключа для каждого вашего адреса и импортировать в легкий кошелек.

Для этого не нужно качать весь блокчейн, достаточно запустить bitcoin core, перейти в консоль и выполнить команду экспорт приватного ключа для определенного адреса, например так

dumpprivkey 3BGV9gbKLApUghYfaUairwXXr919uWfTHo

 
sergei
Июл 14, 2018 00:42

подскажите если с торрента скачать все блоки и вставить свой wallet.dat ,запустится или нет?

 
sergei
Июл 14, 2018 00:44

что то не получается урезать ,все равно качает все по новой,какие только не подставлял команды

 
Antonio
Июл 15, 2018 00:24

sergei,
оно и должно качать все, просто это будет немного быстрее и не занимает много места.

Самое простое — нужен легкий кошелек и импортировать туда приваткей. Как это сделать я писал вышел.

Или может есть какой-нибудь web wallet, но это риск.

 
Antonio
Июл 15, 2018 00:25

Если скачать правильно с торрента, то должен запуститься, но это все морока, и скорее всего будет рескан делать, а это тоже не быстро, если медленный HDD.

 
vvv
Дек 18, 2018 18:25

Подскажите пожалуйста, в чем моя ошибка?
по умолчанию в свойствах ярлыка кошелька путь указан был (с кавычками):
«C:\Program Files\Bitcoin\bitcoin-qt.exe»

Для смены каталога и обрезки блоков в поле «Объект» ярлыка кошелька изменяю так:
«C:\Program Files\Bitcoin\bitcoin-qt.exe -prune=600»
при этом ошибка:
Имя конечно файла задано неправильно!

 
Antonio
Дек 18, 2018 19:28

Скорее всего связано с пробелом в Program Files
попробуйте скопировать в другую папку, чтобы в пути не было пробела.

Или как сказано на одном из сайтов
«C:\Program Files (x86)\Bitcoin\bitcoin-qt.exe» -datadir=d:\BitcoinData

путь и название файла возьмите в кавычки, а prune как параметр вынесите

 
vvv
Дек 30, 2018 16:33

Да, действительно. Я также нашел информацию об этом в других источниках.
Но все равно, спасибо за оперативный ответ.
Ошибка была в кавычках.
Указал:
«C:\Program Files\Bitcoin\bitcoin-qt.exe» -datadir=D:\BTC -prune=600
все получилось.
Только скорость скачивания (по сравнению с версией блокчейна без обрезки) нисколько не уменьшилась. Объем только уменьшился базы, а скорость синхронизации, по-моему, стала даже меньше (может за счет дополнительной операции по обрезке файлов), хотя с другой стороны мЕньшие по объему файлы должны копироваться быстрее…

 
Стас
Янв 6, 2019 17:50

Это какой-то кошмар) 3й день колдую с этим кошельком. Хочу сохранить только секретный ключ и все, чтобы без всяких флэшек. Но оказывается это сделать крайне сложноо, ведь в кошельке несколько адресов, на одном чуть чуть битка, на друугом еще немного, + еще другие кошельки ДЛЯ ОТПРАВКИ. Какая-то полная каша. Попробовал вытащить приват ключ с самого «жирного» адреса, полчилось, загрузил его, баланс верный. Но вот вопросы есть:
1. Как перекинуть биткоин с других адресов?
2. Что будет если на адрес с приватключем отправить деньги, не перекинуться ли они на какой-нибудь другой адрес с изначального кошелька?
3. Как вообще корректно заиметь приватный ключ от четкого одного адреса, на который можно прислать биткоин и отправить с него, с ОДНОГО АДРЕСА?

 
Antonio
Янв 6, 2019 19:48

Стас, там ничего хитрого если знать :-)
Чтобы вытащить приватник не обязательно синхронизировать весь блокчейн, достаточно подсунуть файл кошелька и запустить bitcoin core. Дальше из консоли вытащить приватник, а потом этот приватный ключ можно импортировать в легкий кошелек типа Electrum.
Чтобы перекинуть с других адресов, нужно импортировать и их и перекинуть с каждого всю сумму одной транзакцией на один новый кошель.

Посмотрите мой комментарий от Июл 12, 2018 at 23:49 для ответа на третий вопрос.

 
vvv
Фев 21, 2019 13:21

Здравствуйте, Antonio!
Помогите, пожалуйста, разобраться.
Ранее имел НЕурезанный блокчейн, на котором появилась так называемая «неустранимая ошибка» при закрытии уведомления о которой — окно кошелька также закрывалось. До появления ошибки — баланс отображался корректно.
По этой причине, а также для экономии места на диске решил удалить старый блокчейн и загрузить новый — но уже УРЕЗАННЫЙ. Сделал (на разных этапах) копии кошелька и начала скачивать урезанный блокчейн.
На сегодняшний день еще не докачал до конца урезанный кошелек (скорость на оставшихся 40 неделе сильно упала), но уже перешел дату получения ранее отображавшихся на кошельке своих транзакций, так вот в УРЕЗАННОМ блокчейне (со старым файлом кошелька — с НЕУРЕЗАННОГО блокчейна) баланс не показывается :-(.
В чем может быть причина? Дождаться полной синхронизации? Или баланс УЖЕ должен был показаться (после пересечения даты старых транзакций)?

 
Antonio
Фев 21, 2019 19:04

Добрый день, vvv.
По-идее баланс должен появится, но лучше дождаться окончания, в любом случае проверить если ли средства можно в блокчейн-эксплорере в интернете, введя адрес кошелька.

 
Pavel
Май 11, 2020 17:20

Добрый день . Подскажите пожалуйста как мне делать следующий запуск кошелька Bitcoin Core , после того как я Запустил его с командой Reindex ( D:\Bitcoin\bitcoin-qt.exe -reindex ). С командой
(D:\Bitcoin\bitcoin-qt.exe -prune = 550 ) ?

 
Antonio
Май 14, 2020 23:09

Pavel, реиндекс делает реиндексацию по всем загруженным блокам, а пруне нужно, чтобы их не хранить, если на диске мало места. В общем если нужно пруне, то нет смысла реиндексировать, так как это долго. Можете удалить все блоки и сразу запускать с пруне, но качать все равно придется, просто не будет хранить.

Возможно проще использовать легкий кошелек, если компьютер не очень мощный, иначе это затянется на долго.

 

Написать

Копирование информации с сайта возможно только с указанием прямой ссылки - https://nemcd.com