How to install BFGminer on Linux Mint 18.3
To install BFGminer on Linux Mint 18.3
The BFGminer is a Bitcoin miner software which is multi-threaded multi-pool GPU, FPGA and ASIC mining support. Bitcoins are a digital currency, exchanged freely against all other currencies. This tutorial explains the installation procedure of BFGminer on Linuxmint. It is so simple to install BFGminer on Linux Mint 18.3
Installing BFGminer
To start the installation process, add the repo to your system by executing the following command.
linuxhelp ~ # add-apt-repository ppa:eugenesan/ppa
This repository contains collection of customized, updated, ported and backported
packages for two last LTS releases and latest pre-LTS release.
Packages for older releases relocated to ppa:eugenesan/archive or deleted.
+-------------------------------------------------------------------------------------+
| Disclaimer:
+-------------------------------------------------------------------------------------+
* Packages in this a nd related PPAs are for personal use only.
.
.
* Sync trusty -> utopic
* Sort, Review and Archive un-maintained packages
* Update gwoffice
* Report bug on mdadm bug with 0.90 arrays on 2TB+0.90 on 64bit systems
* Report HeandBreak on amd64
More info: https://launchpad.net/~eugenesan/+archive/ubuntu/ppa
Press Enter to continue or Ctrl+C to cancel
Executing: /tmp/tmp.fCtUq7t8Vm/gpg.1.sh --keyserver
hkp://keyserver.ubuntu.com:80
--recv-keys
8313A596
gpg: requesting key 8313A596 from hkp server keyserver.ubuntu.com
gpg: key 8313A596: public key " Launchpad synergy+" imported
gpg: Total number processed: 1
gpg: imported: 1 (RSA: 1)
And then, update your system of repo packages with the help of the following command.
linuxhelp ~ # apt-get update
Hit:1 http://archive.ubuntu.com/ubuntu xenial InRelease
Get:2 http://archive.canonical.com/ubuntu xenial InRelease [11.5 kB]
Ign:3 http://packages.linuxmint.com sylvia InRelease
Get:4 http://ppa.launchpad.net/eugenesan/ppa/ubuntu xenial InRelease [17.5 kB]
Get:5 http://archive.canonical.com/ubuntu xenial/partner amd64 Packages [3,128 B]
Get:6 http://archive.canonical.com/ubuntu xenial/partner i386 Packages [3,116 B]
Get:7 http://packages.linuxmint.com sylvia Release [24.2 kB]
.
.
Get:33 http://security.ubuntu.com/ubuntu xenial-security/universe i386 Packages [284 kB]
Get:34 http://archive.ubuntu.com/ubuntu xenial-backports/universe i386 Packages [7,060 B]
Get:35 http://archive.ubuntu.com/ubuntu xenial-backports/universe Translation-en [3,812 B]
Get:36 http://security.ubuntu.com/ubuntu xenial-security/universe Translation-en [122 kB]
Get:37 http://security.ubuntu.com/ubuntu xenial-security/multiverse amd64 Packages [3,208 B]
Get:38 http://security.ubuntu.com/ubuntu xenial-security/multiverse i386 Packages [3,376 B]
Fetched 5,647 kB in 9s (607 kB/s)
Reading package lists... Done
You should then install the BFGminer package using the following command .
linuxhelp ~ # apt-get install bfgminer -y
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following additional packages will be installed:
libbase58-0 libblkmaker-0.1-6 libjansson4 libmicrohttpd10
Recommended packages:
ocl-icd-libopencl1 opencl-icd
The following NEW packages will be installed:
bfgminer libbase58-0 libblkmaker-0.1-6 libjansson4 libmicrohttpd10
0 upgraded, 5 newly installed, 0 to remove and 292 not upgraded.
Need to get 580 kB of archives.
After this operation, 1,749 kB of additional disk space will be used.
Get:1 http://archive.ubuntu.com/ubuntu xenial/universe amd64 libbase58-0 amd64 0.1.4-1 [8,312 B]
Get:2 http://archive.ubuntu.com/ubuntu xenial/main amd64 libjansson4 amd64 2.7-3 [26.9 kB]
Get:3 http://archive.ubuntu.com/ubuntu xenial/universe amd64 libblkmaker-0.1-6 amd64 0.5.2-1 [16.8 kB]
.
.
Processing triggers for man-db (2.7.5-1) ...
Setting up libbase58-0:amd64 (0.1.4-1) ...
Setting up libjansson4:amd64 (2.7-3) ...
Setting up libblkmaker-0.1-6:amd64 (0.5.2-1) ...
Setting up libmicrohttpd10 (0.9.44+dfsg-1ubuntu2) ...
Setting up bfgminer (5.2.0+dfsg-1build1) ...
Processing triggers for libc-bin (2.23-0ubuntu9) ..
For using the package, execute the following command, it will list the options that can be used in BFGminer.
linuxhelp ~ # bfgminer --help
bfgminer 5.2.0
Lowlevel: ftdi pci pci:uio pci:vfio spi usb vcom
Drivers: antminer avalon avalonmm bfx bifury bigpic bitforce bitforce:pci bitfury cairnsmore cointerra drillbit dualminer erupter gridseed hashbusterusb hashfast icarus klondike littlefury modminer opencl opencl:adl opencl:sensors proxy proxy:getwork proxy:stratum rockminer twinfury x6500 zeusminer ztex
Algorithms: SHA256d scrypt
Options: ncurses5
Usage: bfgminer
Options for both config file and command line:
--api-allow < arg> Allow API access only to the given list of [G:]IP[/Prefix] addresses[/subnets]
--api-description < arg> Description placed in the API status header, default: BFGMiner version
--api-groups < arg> API one letter groups G:cmd:cmd[,P:cmd:*...] defining the cmds a groups can use
--api-listen Enable API, default: disabled
--api-mcast Enable API Multicast listener, default: disabled
--api-mcast-addr < arg> API Multicast listen address (default: " 224.0.0.75" )
--api-mcast-code < arg> Code expected in the API Multicast message, don' t use ' -' (default: " FTW" )
--api-mcast-des < arg> Description appended to the API Multicast reply, default: ' '
--api-mcast-port < arg> API Multicast listen port (default: 4028)
--api-network Allow API (if enabled) to listen on/for any address, default: only 127.0.0.1
--api-port < arg> Port number of miner API (default: 4028)
--balance Change multipool strategy from failover to even share balance
--benchmark Run BFGMiner in benchmark mode - produces no shares
--benchmark-intense Run BFGMiner in intensive benchmark mode - produces no shares
--bfl-range Use nonce range on bitforce devices if supported
--chroot-dir < arg> Chroot to a directory right after startup
--cmd-idle < arg> Execute a command when a device is allowed to be idle (rest or wait)
--cmd-sick < arg> Execute a command when a device is declared sick
--cmd-dead < arg> Execute a command when a device is declared dead
--coinbase-sig < arg> Set coinbase signature when possible
--compact Use compact display without per device statistics
--debug|-D Enable debug output
--debuglog Enable debug logging
--device-protocol-dump Verbose dump of device protocol-level activities
--device|-d < arg> Enable only devices matching pattern (default: all)
--disable-rejecting Automatically disable pools that continually reject shares
--http-port < arg> Port number to listen on for HTTP getwork miners (-1 means disabled) (default: -1)
--expiry < arg> Upper bound on how many seconds after getting work we consider a share from it stale (w/o longpoll active)
(default: 120)
--expiry-lp < arg> Upper bound on how many seconds after getting work we consider a share from it stale (with longpoll active)
(default: 3600)
--failover-only Don' t leak work to backup pools when primary pool is lagging
--failover-switch-delay < arg> Delay in seconds before switching back to a failed pool (default: 300)
--force-dev-init Always initialize devices when possible (such as bitstream uploads to some FPGAs)
--generate-to < arg> Set an address to generate to for solo mining
--gpu-platform < arg> Select OpenCL platform ID to use for GPU mining (default: -1)
--gpu-map < arg> Map OpenCL to ADL device order manually, paired CSV (e.g. 1:0,2:1 maps OpenCL 1 to ADL 0, 2 to 1)
--gpu-reorder Attempt to reorder GPU devices according to PCI Bus ID
--kernel-path < arg> Specify a path to where bitstream and kernel files are (default: " /usr/share/bfgminer" )
--klondike-options < arg> Set klondike options clock:temptarget
--load-balance Change multipool strategy from failover to quota based balance
--log|-l < arg> Interval in seconds between log output (default: 20)
--log-file|-L < arg> Append log file for output messages
--log-microseconds Include microseconds in log output
--monitor|-m < arg> Use custom pipe cmd for output messages
--net-delay Impose small delays in networking to avoid overloading slow routers
--no-adl Disable the ATI display library used for monitoring and setting GPU parameters
--no-gbt Disable getblocktemplate support
--no-getwork Disable getwork support
--no-hotplug Disable hotplug detection
--no-local-bitcoin Disable adding pools for local bitcoin RPC servers
--no-longpoll Disable X-Long-Polling support
--no-pool-redirect Ignore pool requests to redirect to another server
--no-restart Do not attempt to restart devices that hang
--no-stratum Disable Stratum detection
--no-submit-stale Don' t submit shares if they are detected as stale
--noncelog < arg> Create log of all nonces found
--pass|-p < arg> Password for bitcoin JSON-RPC server
--per-device-stats Force verbose mode and output per-device statistics
--userpass|-O < arg> Username:Password pair for bitcoin JSON-RPC server
--pool-goal < arg> Named goal for the previous-defined pool
--pool-priority < arg> Priority for just the previous-defined pool
--pool-proxy|-x < arg> Proxy URI to use for connecting to just the previous-defined pool
--protocol-dump|-P Verbose dump of protocol-level activities
--queue|-Q < arg> Minimum number of work items to have queued (0+) (default: 1)
--quiet|-q Disable logging output, display status and errors
--quit-summary < arg> Summary printed when you quit: none/devs/procs/detailed
--quota|-U < arg> quota URL combination for server with load-balance strategy quotas
--real-quiet Disable all output
--request-diff < arg> Request a specific difficulty from pools (default: 1.000000)
--retries < arg> Number of times to retry failed submissions before giving up (-1 means never) (default: -1)
--rotate < arg> Change multipool strategy from failover to regularly rotate at N minutes (default: 0)
--round-robin Change multipool strategy from failover to round robin on failure
--scan|-S < arg> Configure how to scan for mining devices
--scan-time < arg> Upper bound on time spent scanning current work, in seconds (default: 60)
--sched-start < arg> Set a time of day in HH:MM to start mining (a once off without a stop time)
--sched-stop < arg> Set a time of day in HH:MM to stop mining (will quit without a start time)
--scrypt Use the scrypt algorithm for mining (non-bitcoin)
--set-device|--set < arg> Set default parameters on devices eg, NFY:osc6_bits=50
--setuid < arg> Username of an unprivileged user to run as
--sharelog < arg> Append share log to file
--shares < arg> Quit after mining 2^32 * N hashes worth of shares (default: unlimited)
--show-processors Show per processor statistics in summary
--skip-security-checks < arg> Skip security checks sometimes to save bandwidth only check 1/< arg> th of the time (default: never skip)
--socks-proxy < arg> Set socks proxy (host:port)
--stratum-port < arg> Port number to listen on for stratum miners (-1 means disabled) (default: -1)
--submit-threads < arg> Minimum number of concurrent share submissions (default: 64) (default: 64)
--syslog Use system log for output messages (default: standard error)
--temp-hysteresis < arg> Set how much the temperature can fluctuate outside limits when automanaging speeds (default: 3)
--text-only|-T Disable ncurses formatted screen output
--url|-o < arg> URL for bitcoin JSON-RPC server
--user|-u < arg> Username for bitcoin JSON-RPC server
--verbose Log verbose output to stderr as well as status output
--weighed-stats Display statistics weighed to difficulty 1
--coinbase-check-addr < arg> A list of address to check against in coinbase payout list received from the previous-defined pool, separated by
' ,'
--coinbase-check-total < arg> The least total payout amount expected in coinbase received from the previous-defined pool
--coinbase-check-percent < arg> The least benefit percentage expected for the sum of addr(s) listed in --cbaddr argument for previous-defined pool
--worktime Display extra work time debug information
Options for command line only:
--config|-c < arg> Load a JSON-format configuration file
See example.conf for an example configuration.
--no-default-config Inhibit loading default config file
--default-config Always load the default config file
--help|-h Print this message
--version|-V Display version and exit
You can also remove the package from your system, execute the following command .
linuxhelp ~ # apt-get remove bfgminer -y
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages were automatically installed and are no longer required:
libbase58-0 libblkmaker-0.1-6 libjansson4 libmicrohttpd10
Use ' sudo apt autoremove' to remove them.
The following packages will be REMOVED:
bfgminer
0 upgraded, 0 newly installed, 1 to remove and 292 not upgraded.
After this operation, 1,441 kB disk space will be freed.
(Reading database ... 219681 files and directories currently installed.)
Removing bfgminer (5.2.0+dfsg-1build1) ...
Processing triggers for man-db (2.7.5-1) ...
With this tutorial comes to an end.