объясните плиз подробно что делает каждая команда?
Все команды выполняйте от имени пользователя, под которым запускаете Bitcoin.
Не запускайте под пользователем root (в том числе через запрос прав sudo и su).
kill -s SIGTERM $(pidof bitcoin bitcoin-qt bitcoind)
Первым делом убеждаемся, что Bitcoin точно закрыт, чтоб не повредить кошелек.
su -mc 'umount ~/.bitcoin/'
Отмонтируем
~/.bitcoin от внешнего жесткого диска с запросом пароля root.
Не переходим к следующему этапу, пока пароль не будет принят - повторяем.
pushd /media/usb_hdd/
mkdir .bitcoin/
Переходим в дирикторию
/media/usb_hdd/ и создаем
.bitcoin дирикторию.
Основная проблема в том, что у Вас файлы Bitcoin расположены в корне раздела.
mv -v blk*.dat debug.log db.log .bitcoin/
Переносим цепочку блоков и логи с корня внешнего HDD в поддирикторию.
cp -vpL ./wallet.dat .bitcoin/
[ -f .bitcoin/wallet.dat ] && shred -fuvz ./wallet.dat
Копируем файл
wallet.dat и затем уничтожаем файл с его старого места.
for file in database/log.00* __db.0??; do shred -fuz $file; done
rmdir database/
rm -f .lock
Уничтожаем временные файлы базы данных кошелька (но не сам кошелек).
[ -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 файле.