Как я могу исправить эту проблему с состоянием гонки с моим стартовым скриптом .sh?

Я на Ubuntu 16.04 Я пытаюсь использовать программу «Запуск приложений» для запуска сценария .sh для запуска кошелька «Vertcoin» v0.11.1.0

Я нашел ответ к аналогичной проблеме, чтобы получить скрипт для удаления .lock-файла. Я сделал это, но это ничего не влияет. Содержимое моего .sh-файла запускается при запуске «Startup Applications».

#!/bin/bash sleep 2 rm ~/.vertcoin/.lock gnome-terminal -e ./vert/vertcoin-qt

При перезапуске программы (которая является криптовым кошельком) отображается обычное окно запуска, но с ошибкой messege ... «Невозможно запустить HTTP-сервер. Подробнее см. В журнале отладки».

«Журнал отладки» говорит ...

Open database handle: wallet.dat/main Database handles still open at environment close Open database handle: wallet.dat/main Database handles still open at environment close Open database handle: wallet.dat/main Database handles still open at environment close

Я пробовал более сложные команды в. sh файл, такой как

#!/bin/bash rm ~/.vertcoin/.lock sleep 2 gnome-terminal -e ./vert/vertcoin-qt killall ./vert/vertcoin-qt sleep 2 ./vert/vertcoin-qt

Ввод «killall ./vert/vertcoin-qt», затем «./vert/vertcoin-qt» вручную запускает кошелек. Но он дает такую ​​же ошибку в сценарии .sh при запуске при запуске. Какой процесс должен быть убит или запущен в моем сценарии .sh, который позволит кошельку начать?

0
задан 9 February 2018 в 01:46

4 ответа

Открывает кошелек. Закрывает кошелек. Удаляет файл блокировки. Открывает кошелек. Запускает шахтер и пул.

#!/bin/bash sleep 10 gnome-terminal -e '/home/eagle/vert/vertcoin-qt' sleep 2 gnome-terminal -e 'killall /home/eagle/vert/vertcoin-qt' sleep 2 gnome-terminal -e 'rm .vertcoin/.lock' sleep 2 gnome-terminal -e '/home/eagle/vert/vertcoin-qt' sleep 15 gnome-terminal -e '/usr/bin/python /home/eagle/p2pool2/p2pool-vtc/run_p2pool.py --net vertcoin node <PASSWORD>' sleep 3 gnome-terminal -e '/home/eagle/ccminer/ccminer/ccminer -a lyra2v2 -i 20 -o stratum+tcp://127.0.0.1:9171/ -u VneboMA75nHf8HdBQxv36CRxy5xeK7n4nG -p miner'
0
ответ дан 17 July 2018 в 21:15

В сценариях, когда вы используете команду gnome-terminal -e для запуска команд в gnome-terminal, команды должны быть в той же строке, что и gnome-terminal.

Примеры:

gnome-terminal -e './vert/vertcoin-qt' gnome-terminal -e 'killall ./vert/vertcoin-qt'

Вышеуказанные команды откроют окно gnome-terminal и запустит внутри них killall и ./vert/vertcoin-qt.

Надеюсь, это поможет!

0
ответ дан 17 July 2018 в 21:15

Открывает кошелек. Закрывает кошелек. Удаляет файл блокировки. Открывает кошелек. Запускает шахтер и пул.

#!/bin/bash sleep 10 gnome-terminal -e '/home/eagle/vert/vertcoin-qt' sleep 2 gnome-terminal -e 'killall /home/eagle/vert/vertcoin-qt' sleep 2 gnome-terminal -e 'rm .vertcoin/.lock' sleep 2 gnome-terminal -e '/home/eagle/vert/vertcoin-qt' sleep 15 gnome-terminal -e '/usr/bin/python /home/eagle/p2pool2/p2pool-vtc/run_p2pool.py --net vertcoin node <PASSWORD>' sleep 3 gnome-terminal -e '/home/eagle/ccminer/ccminer/ccminer -a lyra2v2 -i 20 -o stratum+tcp://127.0.0.1:9171/ -u VneboMA75nHf8HdBQxv36CRxy5xeK7n4nG -p miner'
0
ответ дан 23 July 2018 в 21:54
  • 1
    Я не написал весь ответ, потому что у вас уже была эта информация. Ответ удален. Кроме того, именно я дал вам информацию, и мой ответ был там, чтобы помочь вам, а не переписывать весь ваш сценарий для вас. – Terrance 13 February 2018 в 20:19
  • 2
    Я получил это решение от пользователя Reddit Vertcoin и моей пробной версии и ошибки, а также проблемы, с которой столкнулся пользователь биткойн-кошелек. Не от вас. Кроме того, ваш ответ ничего не сделал для решения проблемы состояния гонки. Вопрос в ОП. – OneB Tonces 13 February 2018 в 22:02
  • 3
    Посмотрите мой комментарий на 8 февраля и ваш ответ 9 февраля в своем вопросе. Вы получили от меня одиночный гном-терминал. Вы сказали Спасибо, что это проблема – Terrance 13 February 2018 в 22:04
  • 4
    О, да. Эта полуплотность ';' символ не закончился. Я могу заставить его работать с каждой командой, как есть в этом ответе. Одна команда только после gnome-termianl -e. Возможно, потому что проблема состояния гонки должна быть решена с помощью сна между открытием, закрытием, удалением файла блокировки и повторным открытием. – OneB Tonces 13 February 2018 в 22:11
  • 5
    Если вы видите 9 февраля, я ответил, что вы указали половину проблемы, но это не было решением & quot; Он не допускает более одной команды в строке; подобный этому & quot; – OneB Tonces 13 February 2018 в 22:12

В сценариях, когда вы используете команду gnome-terminal -e для запуска команд в gnome-terminal, команды должны быть в той же строке, что и gnome-terminal.

Примеры:

gnome-terminal -e './vert/vertcoin-qt' gnome-terminal -e 'killall ./vert/vertcoin-qt'

Вышеуказанные команды откроют окно gnome-terminal и запустит внутри них killall и ./vert/vertcoin-qt.

Надеюсь, это поможет!

0
ответ дан 23 July 2018 в 21:54
  • 1
    Да. Закрыть. но условие гонки состояло в закрытии кошелька И удалении файла .lock. – OneB Tonces 13 February 2018 в 20:16
  • 2
    @OneBTonces Если вы посмотрите на мой комментарий в вопросе, я уже установил OP на правильный ответ. Уже решена. – Terrance 13 February 2018 в 20:18

Другие вопросы по тегам:

Похожие вопросы: