Author

Topic: хранение блоков на внешнем носителе? (Read 2588 times)

LZ
legendary
Activity: 1722
Merit: 1072
P2P Cryptocurrency
объясните плиз подробно что делает каждая команда?

Все команды выполняйте от имени пользователя, под которым запускаете Bitcoin.
Не запускайте под пользователем root (в том числе через запрос прав sudo и su).

Code:
kill -s SIGTERM $(pidof bitcoin bitcoin-qt bitcoind)
Первым делом убеждаемся, что Bitcoin точно закрыт, чтоб не повредить кошелек.

Code:
su -mc 'umount ~/.bitcoin/'
Отмонтируем ~/.bitcoin от внешнего жесткого диска с запросом пароля root.
Не переходим к следующему этапу, пока пароль не будет принят - повторяем.

Code:
pushd /media/usb_hdd/
mkdir .bitcoin/
Переходим в дирикторию /media/usb_hdd/ и создаем .bitcoin дирикторию.
Основная проблема в том, что у Вас файлы Bitcoin расположены в корне раздела.

Code:
mv -v blk*.dat debug.log db.log .bitcoin/
Переносим цепочку блоков и логи с корня внешнего HDD в поддирикторию.

Code:
cp -vpL ./wallet.dat .bitcoin/
[ -f .bitcoin/wallet.dat ] && shred -fuvz ./wallet.dat
Копируем файл wallet.dat и затем уничтожаем файл с его старого места.

Code:
for file in database/log.00* __db.0??; do shred -fuz $file; done
rmdir database/
rm -f .lock
Уничтожаем временные файлы базы данных кошелька (но не сам кошелек).

Code:
[ -d ~/.bitcoin/ ] && mv -v ~/.bitcoin/ ~/.bitcoin.old/
ln -s /media/usb_hdd/.bitcoin/ ~/.bitcoin
popd; sync
Делаем симлинк /media/usb_hdd/.bitcoin/ в дирикторию пользователя.

их все в терминале выполнять однократно или прописывать где-нибудь?
Выполнить один раз под тем же пользователем что и Bitcoin без прав root.

это хороший способ?
Нормальный. Так много команд получилось, потому что у Вас файлы
прямо в корне внешнего HDD, а не в поддириктории. Так-то было
бы команды три всего. Я сначала было не учел этот момент выше.
И да... Команда shred необратимо уничтожает файлы, осторожнее.

какой способ лучше? кто как отделяет блоки от системного раздела?
Думаю, лучше создать отдельный раздел или non-sparse файл, отформатировать
в любую шуструю файловую систему и прописать монтирование в /etc/fstab файле.
newbie
Activity: 28
Merit: 0
объясните плиз подробно что делает каждая команда? их все в терминале выполнять однократно или прописывать где-нибудь?
это хороший способ?
какой способ лучше? кто как отделяет блоки от системного раздела?
LZ
legendary
Activity: 1722
Merit: 1072
P2P Cryptocurrency
Симлинк - это запись в файловой системе. Если это жесткий диск, а не ОЗУ, то не пропадет.

Code:
Команды стер, так как нашел логическую ошибку. Исправленный вариант распишу ниже.
newbie
Activity: 28
Merit: 0
насчет второго варианта все понятно

насчет первого варианта: разве симлинк будет действовать после перезагрузки? надо тоже прописывать в /etc/rc.local?
LZ
legendary
Activity: 1722
Merit: 1072
P2P Cryptocurrency
1 вариант: слинковать дирикторию .bitcoin на нужный накопитель
2 вариант: прописать команду монтирования в файле /etc/rc.local
newbie
Activity: 28
Merit: 0
использую ubuntu

перед первым запуском bitcoin, возможно задать такую команду:

mount --bind /media/usb_hdd /home/user_folder/.bitcoin

после которой все блоки начинают записываться на внешний носитель usb_hdd

но проблема в том что эта команда действует только до первой перезагрузки

как навсегда перенаправить запись блоков на внешний носитель?
Jump to: