Как установить другой каталог данных в Mist?

С биткойнами и другими вы можете использовать --datadirопцию, чтобы указать, где сохраняются блокчейн, хранилище ключей и т. д. Но не работает с туманом.

Из официальной вики:

Чтобы настроить расположение каталога данных, можно указать параметр --datadir. Дополнительные сведения см. в разделе Параметры CLI.

Я запускаю Mist так, но не работает. все равно все пишет%APPDATA%\Ethereum

R:\Ethereum\bin\Ethereum-Wallet.exe --datadir "R:\Ethereum\data\"

Кроме того, что это за материал под : %AppData%\Roaming\Mist? В нем есть какая-то конфиденциальная информация?

Почему бы не хранить все в одном месте и не сделать его настраиваемым? Это уже давно является стандартной практикой для всех остальных монет (чтобы их было легко размещать на съемных или зашифрованных дисках, в идеале на обоих).

Ответы (6)

Ethereum-Wallet поставляется в комплекте с geth.exe, программным обеспечением узла блокчейна Ethereum. Вот листинг из файла Ethereum-Wallet-win64-0-5-2.zip, загруженного с https://github.com/ethereum/mist/releases :

$ unzip -tv Ethereum-Wallet-win64-0-5-2.zip  | grep geth
testing: Ethereum-Wallet-win64-0-5-2/resources/node/geth/   OK
testing: Ethereum-Wallet-win64-0-5-2/resources/node/geth/geth.exe   OK

Когда вы запускаете Ethereum-Wallet.exe, он автоматически запускает geth.exe, если не обнаруживает, что он уже запущен.

Если вы вручную запустите R:\Ethereum\bin\Ethereum-Wallet.exe\resources\node\geth\geth.exe с опцией --datadir "R:\Ethereum\data\", geth.exe будет использовать указанный вами каталог для данных блокчейна и информации о хранилище ключей.

После запуска geth.exe запустите Ethereum-Wallet.exe, и он свяжется с geth.exe, который использует указанный вами каталог.

Только что попробовал это, и это не сработало, используя linux64-0-8-1. Вместо того, чтобы подключиться к работающему geth, он просто пожаловался, что не может запустить geth, потому что уже запущен другой geth.
Инструкции выше предназначены для Windows. Попробуйте ethereum.stackexchange.com/a/5806/1268 для Linux. Эта проблема связана с файлом IPC, который используется Mist для связи с geth. Вы должны установить файл IPC в $HOME/.ethereum/geth.ipc . По умолчанию файл IPC будет создан в {datadir}/geth.ipc.
Поскольку у Mist есть способ переключать сети из меню, он действительно должен делать это сам, добавляя соответствующий каталог данных.

Я не знаком с этим исполняемым файлом, и на самом деле я даже не уверен, что это eth, так что я думаю, что вы думаете, что используете eth, хотя на самом деле это не так.

eth -hбудет отображаться в конце:

General Options:
    -d,--db-path,--datadir <path>  Load database from path (default: /home/YOURUSER/.ethereum).
Этот ответ был предоставлен, когда в вопросе ошибочно/сбивчиво упоминается eth.

Используя geth и большинство других реализаций, вы можете указать приложению желаемое местоположение данных. В гете:

 geth --datadir "/home/youruser/.ethereum"

В вашем случае укажите его на точку монтирования вашего внешнего диска.

См. параметры командной строки geth

Кроме того, если вы хотите, чтобы Mist работал, вам нужно добавить --ipcpath ~/.ethereumфлаг при использовании каталога данных не по умолчанию.
не совсем уверен, что он делает .. при настройке --ipcpath ~/.ethereum Mist читает хранилище ключей с ПК. Когда я оставляю его по умолчанию, он может читать хранилище ключей с внешнего диска. Хотя до сих пор не могу найти способ переместить данные приложения Mist на внешний диск.

Должен ли я использовать символическую ссылку?

Потому что вы создали в Vista и позже в Windows, если с правами администратора.

С правами администратора запустите cmd.exe

cd C:\Users\[User Name]\AppData\Roaming
mklink /D Ethereum "[Data Dir Absolute Path]"
mklink /D Mist "[Mist Data Dir Absolute Path]"
Это хорошо работает даже с chaindataподпапкой в Ethereum​​, которая содержит больше всего данных. Таким образом, вы можете безопасно хранить свое хранилище ключей в папке профиля и хранить данные блокчейна, например, на жестком диске USB. Для этого вам нужно запустить кошелек один раз, чтобы каталог под C:\Users\[User Name]\AppData\Roaming\Ethereumсуществовал, затем переместить подкаталог chaindataв нужное место (например R:\Ethereum\chaindata) и, наконец, сделать ссылку: mklink /D C:\Users\[User Name]\AppData\Roaming\Ethereum\chaindata R:\Ethereum\chaindata.

Используйте geth --datadir или, если вы используете систему *nix как Linux или osX, вы можете создать ссылку symbolinc из вашего ~/ethereum на ссылку на вашем жестком диске.

Это было самое простое решение для меня (с использованием Linux). Просто переместите данные и символическую ссылку. Работает как шарм

перемещение %userprofile%\AppData\Roaming\Ethereum = geth.exe --datadir ".\MyEthDataFolder"

%userprofile%\AppData\Roaming\Mist = ???????

разъяснение того, что я считаю частью исходного вопроса

Пожалуйста, используйте кнопку Опубликовать ответ только для фактических ответов. Когда у вас будет больше репутации , вы сможете отредактировать вопрос, чтобы добавить дополнительную информацию. Если вместо этого у вас есть НОВЫЙ вопрос, задайте его, нажав кнопку « Задать вопрос» .