Python script for managing crypto miner instance under Linux OS.
- Casing Fan speed management calculated from average|highest total GPU temperature.
- GPU Fan speed management
- GPU Core speed level control
- GPU Power level control
- GPU Memory level control
- Systemd monitoring for rebooting server when GPU crashed
- Notification system for sending json data to designated server
- Notification to Slack
- Casing and GPU fan control with curve mode
- Detect hash rate value and reboot the machine (or just reboot the miner) when it is low
- xmrrig : AMD, Nvidia and CPU
- ccminer
- claymore : ETH, XMR and ZEC
- cpuminer
- ethminer
- ewbf
- sgminer
- cast-xmr
- avermore
- trex
- cryptodredge
- teamredminer
- wildrig
- Nvidia driver installed
- Nvidia-smi installed
- AMDGPU pro driver with compute mode enabled
- OpenCL and/or CUDA properly installed
- Kernel driver for motherboard fan header control installed
- Systemd installed
- Tuning up the server for proper mining machine (eg. large page files for CPU mining)
- Miner software installed in
/usr/local/bin
folder - Python installed
- Install dependencies via apt:
sudo apt install libsystemd-dev
sudo apt install python-nfqueue
- Install python dependencies via requirement.txt:
sudo pip install -r requirement.txt
- Install the deb
sudo dpkg -i python-jxminer-VERSION.deb
The configuration files will be placed under /etc/jxminer folder
, at the minimum you must change
the /etc/jxminer/config/coins.ini
to enter your own wallet address and the /etc/jxminer/config/machine.ini
to set what coin to mine.
The server has several command line arguments that can be used to modify the default value:
jxminer -m|-h|-v|-s|-p|-c
-m Run the program as daemon, logging will be minimized
-h Prints the help message
-v Prints the server version
-s Specify the host this server should bind to, by default it will bind to 127.0.0.1 which can only be
accessed from local loop
-p Specify the port to bind to
-c Path to configuration files directory
By default, the python-jxminer-VERSION.deb
will install the script as a systemd service, then to monitor the script activity
you can use systemd by invoking:
sudo journalctl -u jxminer.service -f
You can use JXClient to monitor and control JXMiner via CLI
Monitoring a miner progress:
jxclient -a monitor:gpu:0
Monitoring server logs:
jxclient -a monitor:server
You can use JXMonitor to monitor JXMiner via TUI interface
jxmonitor
Use a single column only for monitoring multiple server instance
jxmonitor -s
You can use JXDashboard to monitor JXMiner via GUI interface, Working Xserver is required to use GUI on Linux OS
jxdashboard
Patch or pull request for ironing out the todo list is welcomed.
To test and iron out bugs for :
- Test Dual mining with claymore
- Test trully dual GPU miner running at once
- Test running mixed AMD and Nvidia GPU in the same box
- Test with more GPU variant (1080ti, 1050ti, RXVega etc)
- Test with different kind of motherboard
Future improvement :
- Add more miner such as xmr-stak
if you found this program useful, consider to donate for the development fund.
Send donation to: Monero : 49qh7jAS1Tt9C7rcmirWPNbg8p6eon24FQ7K5mTFE1i9ScRUSYDVuWw3MDcadcybhD8uBEhvJtymx4NpYNBSP3Tm5RHxhuY
- Jason Xie - Initial work - VicTheme.com
This project is licensed under the GNU General Public License - see the LICENSE file for details