Top
БАТНИК ДЛЯ МАЙНИНГА CHIA, НАСТРОЙКА BAT ФАЙЛА ЧЕРЕЗ POWERSHELL - CrematedTV - все о майнинге - майним тихо
fade
3760
post-template-default,single,single-post,postid-3760,single-format-standard,eltd-core-1.2.1,extensive-vc-1.9,flow-ver-1.7,eltd-smooth-scroll,eltd-smooth-page-transitions,ajax,eltd-grid-1300,eltd-blog-installed,page-template-blog-standard,eltd-header-vertical,eltd-sticky-header-on-scroll-up,eltd-default-mobile-header,eltd-sticky-up-mobile-header,eltd-dropdown-default,evc-predefined-style,wpb-js-composer js-comp-ver-6.9.0,vc_responsive

БАТНИК ДЛЯ МАЙНИНГА CHIA, НАСТРОЙКА BAT ФАЙЛА ЧЕРЕЗ POWERSHELL

БАТНИК ДЛЯ МАЙНИНГА CHIA, НАСТРОЙКА BAT ФАЙЛА ЧЕРЕЗ POWERSHELL

Как запустить батники и плотинг не через GUI интерфейс Chia Blockchain, а с помощью Power Shell?

Как избежать бана во время плотинга для пулов не через Powershell?

  1. Режим харвестера.
  2. Плотинг через батника.

Мы рассмотрим второй вариант. Для создания батника придут на помощь команды c cайта Github https://github.com/Chia-Network/chia-blockchain/wiki/CLI-Commands-Reference.
Перейдя по ссылки вы сможете найти описание абсолютно каждой команды, каждого параметра в вашем батнике.

Приступим к созданию батника.

Открываем редактор команд Powershell (левая кнопка по меню “Пуск” — вводим текст PowerShell — открываем Windows PowerShell ISE).
Нажимаем кнопку “Показать область сценариев сверху”. Должно появится окошко Безымянный1.ps1. Если этого не произошло поочередно нажмите клавиши “Показать область сценариев сверху” и “Показать область сценариев справа”.

БАТНИК ДЛЯ МАЙНИНГА CHIA, НАСТРОЙКА BAT ФАЙЛА ЧЕРЕЗ POWERSHELL


Вводим первую команду по присвоению уникального имени Chia.exe исполняемому файлу. Именно этот файл будет запускать все батники в системе, чтобы не приходилось обращаться по директории нахождения этого файла. Вставляем следующий текст:

$addToProfile = '
$chiapath = (get-item "$env:LOCALAPPDATA\Chia-Blockchain\app-*\resources\app.asar.unpacked\daemon\").fullname

$env:Path =  $env:Path + "; $chiapath"
'

Add-Content -Path $profile.CurrentUserAllHosts -Value $addToProfile

Выполнение любой команды из данного окна происходит следующим образом: выделяются необходимые строки и нажимается кнопка “Выполнить выделенный фрагмент” или F8 на клавиатуре.

БАТНИК ДЛЯ МАЙНИНГА CHIA, НАСТРОЙКА BAT ФАЙЛА ЧЕРЕЗ POWERSHELL


Происходит присвоение имени в системе.
Проверку можно произвести в PowerShell (меню “Пуск” правой кнопкой — PowerShell). При введении в Powershell команды

chia.exe -h

подтягивается исполняемый файл с указанием пути его расположения.

Команды.

Для создания батника используется команда: chia plots create
Для демонстрации ваших ключей: chia keys show

Параметры

-k [size]: размер плота

-n [number of plots]: количество плотов, которое будет создаваться данной задачей.

-b [memory buffer size MiB]: количество выделяемой оперативной памяти

-f [farmer pk]: «Farmer Public Key» Используйте эту команду, если вы хотите создать плоты на других машинах, для которых вы не хотите предоставлять полный доступ к учетной записи chia.

-p [pool pk]: «Pool Public Key» Используйте эго, если вы хотите создать плоты на других машинах, для которых вы не хотите предоставлять полный доступ к учетной записи chia.

-a [fingerprint]: «Fingerprint» Используйте его, если хотите выбрать один ключ из нескольких ваших кошельков.Чтобы найти ключит Chia, используйте следующую команду: chia keys show в Power Shell (запускаем от имени администратора).

-t [tmp dir]: временная папка

-2 [tmp dir 2]: временная папка 2. Здесь происходит этап 3 (сжатие) и этап 4 (контрольные точки).

-d [final dir]: конечная директория.

-r [number of threads]: количество выделяемых от процессора потоков.

-u [number of buckets]: количество корзин.

-e [bitfield plotting]: отключение битового поля

Создание скрипта для плотинга в Windows PowerShell ISE

Открываем Windows PowerShell ISE;
Вставляем следующую команду:

param(
$parallel = 4,
$delay = 5400
)

for ($i = 1; $i -le $parallel;$i++){
$date = get-date -format dd-mm-yyyy-hh-mm
Start-Process -FilePath powershell.exe -ArgumentList "chia.exe plots create -n 1 -b 3390 -r 2 -t F:\ -d G:\ | Tee-Object -FilePath G:\Logs\$($date)_$($i).log"
Start-Sleep -Seconds $delay
}

Примечание: (что из себя представляет команда)
$parallel и $delay — две переменных. parallel — количество запусков плотинга.
$delay = 5400 — задержка перед запуском плотинга в данном случае 90 минут.
Запуск плотинга происходит через команду chia.exe plots create, где
-n 1 — количество плотов (в нашем случае 1);
-b 3390 -выделяемое количество оперативной памяти;
-r 2 — количество потоков процессора;
-t F:- временная директория;
-d G:\ — конечная директория;
G:\Logs\$($date)$($i).log» — место, где будут храниться log файлы. Эти файлы при создании будут именоваться следующим образом “дата создания и последовательный номер запущенных процессов плотинга”.
Start-Sleep -Seconds $delay — задержка и запуск снова до 4-х раз.

Корректируйте значение $parallel и $delay, ориентируясь на ваш ssd и время, которые у вас уходит на первую фазу. О том, как вычислить время, которое у вас уходит на первую фазу можно узнать, посмотрев данное видео: https://www.youtube.com/watch?v=j3FSyXKmLAQ

Сохраняем файл, называем так, как вам удобно. В моем случае название «Plotting».

Как запустить этот файл?

Для запуска одним файлом, никак не оптимизируя пространство на жестком диске, необходимо создать два подобных файла. Один будет запускаться с $delay 5400, второй с $delay — x2. Таким образом, ssd будет использоваться по максимуму. Если у вас несколько ssd, то создайте под каждый ssd отдельный исполняемый файл и меняете пути: постоянный путь и временной путь, а также указываете иную папку для хранения логов по второму ssd.

Варианты запуска данного скрипта.

Переходим в папку расположения скрипта и создаем текстовый документ со следующим текстом:

start powershell.exe -noexit -file .\Plotting.ps1 -parallel 4 -delay 5


Где -parallel — количество плотов, которые предстоит засеять, а в команде -delay — выставляем время отложенного запуска плотов.
При сохранении текстового документа в типе файлов выбираем “Все файлы” и и называем файл ВАШЕНАЗВАНИЕ.bat.


Открываем файл ВАШЕНАЗВАНИЕ.bat (автоматически открывается в PowerShell). Тут же начинается запуск плотинга 1 плота и через заданное время запускается 2 плот. И так далее до запуска последнего из выставленного количества плота.


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

Поделиться
CrematedTV
35 комментариев
  • darq

    Запускаю по примеру файл Plotting, окно выполнения скрипта открывается и тут же закрывается… ничего не могу понять, где ошибка?

    22.05.2021 at 18:35 Ответить
    • CrematedTV

      вероятно павершел не имеет прав запуска

      22.05.2021 at 18:40 Ответить
      • darq

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

        22.05.2021 at 18:46 Ответить
        • CrematedTV

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

          22.05.2021 at 19:17 Ответить
          • darq

            эта команда Set-ExecutionPolicy RemoteSigned, я ее ввел, но у меня другого хар-ра трабла)

            22.05.2021 at 19:22
          • darq

            Я разобрался, чтобы не проскакивало нужно создать папку логов по пути исходя из настроек скрипта: -FilePath G:Logs
            В моем случае на диске G не было папки Logs. После ее создания все завертелось.

            26.05.2021 at 16:42
        • alezz

          Если в ответ на команду
          Get-ExecutionPolicy
          получаете
          Restricted
          нужно выполнить
          Set-ExecutionPolicy unrestricted
          и подтвердить Y

          23.05.2021 at 12:04 Ответить
      • darq

        для наглядности
        https://www.youtube.com/watch?v=OSTuXtWT42k

        22.05.2021 at 19:12 Ответить
        • Alex

          Как успехи? у меня тоже самое, что делать?

          24.05.2021 at 03:04 Ответить
          • CrematedTV

            Если в ответ на команду
            Get-ExecutionPolicy
            получаете
            Restricted
            нужно выполнить
            Set-ExecutionPolicy unrestricted
            и подтвердить Y

            24.05.2021 at 06:44
          • Alex

            Get-ExecutionPolicy unrestricted у меня

            25.05.2021 at 17:42
        • Alex

          Разобрался. В конце скрипта надо добавить строку timeout 5. Скрипт закрывался, не успев запуститься я так понял.

          26.05.2021 at 08:29 Ответить
        • Evgeny

          А если выключить плоттинг не дождавшись 100%, то надо начинать сначала?

          02.06.2021 at 20:35 Ответить
  • Mosly

    Не совсем понял по поводу :
    * $delay 5400, второй с $delay — x2. * — т.е получается , если второй бантик запустить с х2 , то одновременно запуститься 3й плот с первого батника и 1й плот с 2го батника . И будут идти в паралели после .

    22.05.2021 at 21:29 Ответить
    • CrematedTV

      то будет запускаться 2 плота + 5400 1 плот + 5400 2 плота и тд

      23.05.2021 at 06:17 Ответить
  • Frol

    В самом блокчейне Чиа эти плоты будут отображаться или их нужно добавлять через интерфейс?

    23.05.2021 at 22:42 Ответить
  • Александр

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

    26.05.2021 at 01:27 Ответить
  • Леонид

    Не могу присвоить имя файла 🙁 Set-ExecutionPolicy не помогает

    Add-Content : Не удалось найти часть пути «C:UsersАдминистратор.SC0516919-01DocumentsWindowsPowerShellprofile.ps1».
    строка:7 знак:1
    + Add-Content -Path $profile.CurrentUserAllHosts -Value $addToProfile
    + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo : ObjectNotFound: (C:UsersАдмини…ellprofile.ps1:String) [Add-Content], DirectoryNotFoundException
    + FullyQualifiedErrorId : GetContentWriterDirectoryNotFoundError,Microsoft.PowerShell.Commands.AddContentCommand

    26.05.2021 at 18:12 Ответить
  • NikChest

    А я чет упустил, почему размер плота не указывается «-k 32»? Или оно по умолчанию такое выставляет, если не указать размер?

    27.05.2021 at 02:11 Ответить
    • NikChest

      Если у меня ssd m2 — 2tb, то я могу типа одновременно 6 плотов засеивать, и это надо:
      1. В скрипте прописать «-n 6»?
      или
      2. В скрипте прописать $parallel = 6, с $delay для своего проца?

      27.05.2021 at 02:43 Ответить
    • CrematedTV

      он по умолчанию 32

      27.05.2021 at 07:55 Ответить
  • Chiaminer

    Вечер добрый, не могли бы вы подсказать по Swarplotter вопросец.

    Собственно, установил через павершел. Отредактировал настройки. Запускаю его через павершел, во view отображается как запущенный, но не появляются плоты в списке плоттинга. Ума не приложу что делаю не так. Могу сбросить конфиг, если вы сможете посмотреть и подсказать, что я делаю не так.

    27.05.2021 at 22:19 Ответить
    • CrematedTV

      смотрите внимательно задержки и количество плотов, а так-же пути

      28.05.2021 at 08:48 Ответить
  • Alex

    Здравствуйте,
    Плотинг идёт, в программе Chia состояние плотинга не видно (
    Так и должно быть?

    29.05.2021 at 10:18 Ответить
  • DRONE_Zz

    Добрый день! Знатоки — есть ли пример батника с ключём -f для плотинка на других машинах без ввода фразы? и нужно ли как-то настраивать программу Chia для работы с этим ключем?

    29.05.2021 at 19:07 Ответить
  • JustIce

    Коллега, а подскажи, как сделать так, чтоб после окончания создания плота запускался автоматом следующий скрипт?

    01.06.2021 at 22:12 Ответить
  • Alex D

    Спасибо за подробную выкладку!
    У меня есть одна проблема при создании лог файла. Ни как не могу ее решить: Ни как не получается создать лог файл с индивидуальным именем в виде текущей даты и ID процесса. Пишу, так же как у вас указано: | Tee-Object -FilePath G:Logs$($date)_$($i).log . Но мне вместо этого создается лог файл в виде | Tee-Object -FilePath G:Logs.log . То есть не подставляет дату и ID процесса.
    почитав команды Powershell в итоге кое как добился вывода текущей даты в имени файла (правда несколько иным форматом в команде, чем у вас). Но вывод в имя файла ID процесса плоттинга задаваемого chia (например ID: 10b19f08037f6e54d04ebd3c66e65117fbf2b13947602590c9e78f85fce37aa) ну ни как не выходит.
    Подскажите, как вывести имя процесса в название формируемого лог файла ?

    06.06.2021 at 15:53 Ответить

Post a Comment