-
Notifications
You must be signed in to change notification settings - Fork 7
Running ION
There are two variations of the ION program available; one with a graphical user interface (usually referred to as just ION), and a 'headless' version (called iond). They are completely compatible with each other, and take the same command-line arguments, read the same configuration file, and read and write the same data files. You can run one copy of either ION or iond on your system at a time (if you accidently try to launch another, the copy will let you know that ION or iond is already running and will exit).
- Linux Quickstart
- Command-line arguments
- Ion.conf Configuration File
- Sample Ion.conf
- Platforms
- See Also
The simplest way to start from scratch with the command line client, automatically syncing blockchain and creating a wallet, is to just run this command (without arguments) from the directory containing your iond binary:
./iond
To run with the standard GUI interface:
./ion-qt
These commands are accurate as of ION Core version v3.1.99.0-f1309bf.
| Command | Description | |
|---|---|---|
| -? | Print this help message and exit | |
| -version | Print version and exit | |
| -alertnotify= | Execute command when a relevant alert is received or we see a really long fork (%s in cmd is replaced by message) | |
| -alerts | Receive and display P2P network alerts (default: 1) | |
| -blocknotify= | Execute command when the best block changes (%s in cmd is replaced by block hash) | |
| -checkblocks= | How many blocks to check at startup (default: 500, 0 = all) | |
| -conf= | Specify configuration file (default: ioncoin.conf) | |
| -datadir= |
Specify data directory | |
| -dbcache= | Set database cache size in megabytes (4 to 4096, default: 100) | |
| -loadblock= | Imports blocks from external blk000??.dat file on startup | |
| -maxreorg= | Set the Maximum reorg depth (default: 100) | |
| -maxorphantx= | Keep at most unconnectable transactions in memory (default: 100) | |
| -par= | Set the number of script verification threads (-8 to 16, 0 = auto, <0 = leave that many cores free, default: 0) | |
| -pid= | Specify pid file (default: iond.pid) | |
| -reindex | Rebuild block chain index from current blk000??.dat files on startup | |
| -reindexaccumulators | Reindex the accumulator database on startup | |
| -reindexmoneysupply | Reindex the ION and xION money supply statistics on startup | |
| -resync | Delete blockchain folders and resync from scratch on startup | |
| -sysperms | Create new files with system default permissions, instead of umask 077 (only effective with disabled wallet functionality) | |
| -txindex | Maintain a full transaction index, used by the getrawtransaction rpc call (default: 1) | |
| -forcestart | Attempt to force blockchain corruption recovery on startup | |
| Connection options: | ; | |
| -addnode= | Add a node to connect to and attempt to keep the connection open | |
| -banscore= | Threshold for disconnecting misbehaving peers (default: 100) | |
| -bantime= | Number of seconds to keep misbehaving peers from reconnecting (default: 86400) | |
| -bind= | Bind to given address and always listen on it. Use [host]:port notation for IPv6 | |
| -connect= | Connect only to the specified node(s) | |
| -discover | Discover own IP address (default: 1 when listening and no -externalip) | |
| -dns | Allow DNS lookups for -addnode, -seednode and -connect (default: 1) | |
| -dnsseed | Query for peer addresses via DNS lookup, if low on addresses (default: 1 unless -connect) | |
| -externalip= | Specify your own public address | |
| -forcednsseed | Always query for peer addresses via DNS lookup (default: 0) | |
| -listen | Accept connections from outside (default: 1 if no -proxy or -connect) | |
| -listenonion | Automatically create Tor hidden service (default: 1) | |
| -maxconnections= | Maintain at most connections to peers (default: 125) | |
| -maxreceivebuffer= | Maximum per-connection receive buffer, *1000 bytes (default: 5000) | |
| -maxsendbuffer= | Maximum per-connection send buffer, *1000 bytes (default: 1000) | |
| -onion=ip:port | Use separate SOCKS5 proxy to reach peers via Tor hidden services (default: -proxy) | |
| -onlynet= | Only connect to nodes in network (ipv4, ipv6 or onion) | |
| -permitbaremultisig | Relay non-P2SH multisig (default: 1) | |
| -peerbloomfilters | Support filtering of blocks and transaction with bloom filters (default: 1) | |
| -port= | Listen for connections on (default: 12700 or testnet: 27170) | |
| -proxy=<ip:port> | Connect through SOCKS5 proxy | |
| -proxyrandomize | Randomize credentials for every proxy connection. This enables Tor stream isolation (default: 1) | |
| -seednode= | Connect to a node to retrieve peer addresses, and disconnect | |
| -timeout= | Specify connection timeout in milliseconds (minimum: 1, default: 5000) | |
| -torcontrol=ip:port | Tor control port to use if onion listening enabled (default: 127.0.0.1:9051) | |
| -torpassword= | Tor control port password (default: empty) | |
| -upnp | Use UPnP to map the listening port (default: 0) | |
| -whitebind= | Bind to given address and whitelist peers connecting to it. Use [host]:port notation for IPv6 | |
| -whitelist= | Whitelist peers connecting from the given netmask or IP address. Can be specified multiple times. Whitelisted peers cannot be DoS banned and their transactions are always relayed, even if they are already in the mempool, useful e.g. for a gateway | |
| Wallet options: | ; | |
| -createwalletbackups= | Number of automatic wallet backups (default: 10) | |
| -disablewallet | Do not load the wallet and disable wallet RPC calls | |
| -keypool= | Set key pool size to (default: 1000) | |
| -paytxfee= | Fee (in ION/kB) to add to transactions you send (default: 0.0001) | |
| -rescan | Rescan the block chain for missing wallet transactions on startup | |
| -salvagewallet | Attempt to recover private keys from a corrupt wallet.dat on startup | |
| -sendfreetransactions | Send transactions as zero-fee transactions if possible (default: 0) | |
| -spendzeroconfchange | Spend unconfirmed change when sending transactions (default: 0) | |
| -disablesystemnotifications | Disable OS notifications for incoming transactions (default: 0) | |
| -txconfirmtarget= | If paytxfee is not set, include enough fee so transactions begin confirmation on average within n blocks (default: 1) | |
| -maxtxfee= | Maximum total fees to use in a single wallet transaction, setting too low may abort large transactions (default: 1.00) | |
| -upgradewallet | Upgrade wallet to latest format on startup | |
| -wallet= | Specify wallet file (within data directory) (default: wallet.dat) | |
| -walletnotify= | Execute command when a wallet transaction changes (%s in cmd is replaced by TxID) | |
| -windowtitle= | Wallet window title | |
| -zapwallettxes= | Delete all wallet transactions and only recover those parts of the blockchain through -rescan on startup (1 = keep tx meta data e.g. account owner and payment request information, 2 = drop tx meta data) | |
| ZeroMQ notification options: | ; | |
| -zmqpubhashblock= | Enable publish hash block in | |
| -zmqpubhashtx= | Enable publish hash transaction in | |
| -zmqpubhashtxlock= | Enable publish hash transaction (locked via SwiftX) in | |
| -zmqpubrawblock= | Enable publish raw block in | |
| -zmqpubrawtx= | Enable publish raw transaction in | |
| -zmqpubrawtxlock= | Enable publish raw transaction (locked via SwiftX) in | |
| Debugging/Testing options: | ; | |
| -debug= | Output debugging information (default: 0, supplying is optional). If is not supplied, output all debugging information. can be: addrman, alert, bench, coindb, db, lock, rand, rpc, selectcoins, tor, mempool, net, proxy, ion, (obfuscation, swiftx, masternode, mnpayments, mnbudget, zero), qt. | |
| -gen | Generate coins (default: 0) | |
| -genproclimit | Set the number of threads for coin generation if enabled (-1 = all cores, default: 1) | |
| -help-debug | Show all debugging options (usage: --help -help-debug) | |
| -logips | Include IP addresses in debug output (default: 0) | |
| -logtimestamps | Prepend debug output with timestamp (default: 1) | |
| -minrelaytxfee= | Fees (in ION/Kb) smaller than this are considered zero fee for relaying (default: 0.0001) | |
| -printtoconsole | Send trace/debug info to console instead of debug.log file (default: 0) | |
| -shrinkdebugfile | Shrink debug.log file on client startup (default: 1 when no -debug) | |
| -testnet | Use the test network | |
| -litemode= | Disable all ION specific functionality (Masternodes, Zerocoin, SwiftX, Budgeting) (0-1, default: 0) | |
| Staking options: | ; | |
| -staking= | Enable staking functionality (0-1, default: 1) | |
| -reservebalance= | Keep the specified amount available for spending at all times (default: 0) | |
| Masternode options: | ; | |
| -masternode= | Enable the client to act as a masternode (0-1, default: 0) | |
| -mnconf= | Specify masternode configuration file (default: masternode.conf) | |
| -mnconflock= | Lock masternodes from masternode configuration file (default: 1) | |
| -masternodeprivkey= | Set the masternode private key | |
| -masternodeaddr= | Set external address:port to get to this masternode (example: 128.127.106.235:12700) | |
| -budgetvotemode= | Change automatic finalized budget voting behavior. mode=auto: Vote for only exact finalized budget match to my generated budget. (string, default: auto) | |
| Zerocoin options: | ; | |
| -enablezeromint= | Enable automatic Zerocoin minting (0-1, default: 1) | |
| -zeromintpercentage= | Percentage of automatically minted Zerocoin (10-100, default: 10) | |
| -preferredDenom= | Preferred Denomination for automatically minted Zerocoin (1/5/10/50/100/500/1000/5000), 0 for no preference. default: 0) | |
| -backupxion= | Enable automatic wallet backups triggered after each xIon minting (0-1, default: 1) | |
| SwiftX options: | ; | |
| -enableswifttx= | Enable SwiftX, show confirmations for locked transactions (bool, default: true) | |
| -swifttxdepth= | Show N confirmations for a successfully locked transaction (0-9999, default: 5) | |
| Node relay options: | ; | |
| -datacarrier | Relay and mine data carrier transactions (default: 1) | |
| -datacarriersize= | Maximum size of data in data carrier transactions we relay and mine (default: 83) | |
| Block creation options: | ; | |
| -blockminsize= | Set minimum block size in bytes (default: 0) | |
| -blockmaxsize= | Set maximum block size in bytes (default: 750000) | |
| -blockprioritysize= | Set maximum size of high-priority/low-fee transactions in bytes (default: 50000) | |
| RPC server options: | ; | |
| -server | Accept command line and JSON-RPC commands | |
| -rest | Accept public REST requests (default: 0) | |
| -rpcbind= | Bind to given address to listen for JSON-RPC connections. Use [host]:port notation for IPv6. This option can be specified multiple times (default: bind to all interfaces) | |
| -rpcuser= | Username for JSON-RPC connections | |
| -rpcpassword= | Password for JSON-RPC connections | |
| -rpcport= | Listen for JSON-RPC connections on (default: 12705 or testnet: 27171) | |
| -rpcallowip= | Allow JSON-RPC connections from specified source. Valid for are a single IP (e.g. 1.2.3.4), a network/netmask (e.g. 1.2.3.4/255.255.255.0) or a network/CIDR (e.g. 1.2.3.4/24). This option can be specified multiple times | |
| -rpcthreads= | Set the number of threads to service RPC calls (default: 4) | |
| -rpckeepalive | RPC support for HTTP persistent connections (default: 1) | |
| UI Options: | ; | |
| -choosedatadir | Choose data directory on startup (default: 0) | |
| -lang= | Set language, for example "de_DE" (default: system locale) | |
| -min | Start minimized | |
| -rootcertificates= | Set SSL root certificates for payment request (default: -system-) | |
| -splash | Show splash screen on startup (default: 1) |
Many of the boolean options can also be set to off by specifying them with a "no" prefix: e.g. -nodnseed.
All command-line options (except for -conf) may be specified in a configuration file, and all configuration file options may also be specified on the command line. Command-line options override values set in the configuration file.
The configuration file is a list of setting=value pairs, one per line, with optional comments starting with the '#' character.
An empty configuration file is automatically created on first run. By default, ION (or iond) will look for a file named 'ioncoin.conf' in the ION data directory, but both the data directory and the configuration file path may be changed using the -datadir and -conf command-line arguments.
| Operating System | Default ION datadir | Typical path to configuration file |
|---|---|---|
| Windows | %APPDATA%\Ioncoin\ | C:\Users\username\AppData\Roaming\Ioncoin\ioncoin.conf |
| Linux | $HOME/.ioncoin/ | /home/username/.ioncoin/ioncoin.conf |
| Mac OSX | $HOME/Library/Application Support/Ioncoin/ | /Users/username/Library/Application Support/Ioncoin/ioncoin.conf |
Note: if running ION in testnet mode, the sub-folder "testnet" will be appended to the data directory automatically.
See ioncoin.conf examples for an up-to-date sample.
To configure the ION client to start automatically:
You might use the configuration-file, or the GUI-Settings:
Settings -> Options
then mark the checkbox titled:
- Start ION on system startup
To work with batch, you have to start the daemon (iond.exe). The iond.exe run with option "-server" will respond with GUI-messages you are not able to process its answers.
Builds
HOW TO: Compile iond Daemon from source
HOW TO: Compile the ION QT wallet on Ubuntu
Snapcraft installs
Upgrade
ION Masternodes
HOW TO: ION 5.0 Masternode Quickstart Guide
HOW TO: Setup ION 5.0 remote Masternode with Ubuntu remote and local QT wallet(DASH-Rebase)
ION coincore QT wallet ELECTRON MINING
Mining ION coin ELECTRON tokens with Proof of Work
ionomy Sharenodes
ionomy Zendesk hosted Sharenodes and dedicated Masternodes FAQ
ION Chain Token System
Atomic Token Protocol (ATP) Overview
ION Token system Basic Operations
UseCases tokens Create-New-Token
UseCases tokens Send-tokens
UseCases tokens Token-balance
UseCases tokens View-token-information
Testing ION tokens on regtest
UseCases regtest Start-regtest
UseCases regtest Access Token Management Key
ION Token group management
UseCases tokens Key-rotation-with-token-authorities
Create and distribute the XDM token according to the IEO
UseCases tokens Create-Management-Tokens
UseCases tokens Drop-token-mint-capability
UseCases tokens Find-token-authorities
General FAQ
How to backup my wallet and its data
How to: backup ION coin blockchain database
HOW TO: Export Private Keys from ION QT
HOW TO: Import private key to ION 3.0 Wallet
How to generate an onion privacy address
Multisend
User-Documentation
Accounts-Explained
ION-coin-Data-Directory
Raw-Transactions
Running-ION
Gitian
Gitian Building
Gitian-building-create-VM-Debian
Gitian-building-create-Debian-VMware
Gitian-building-create-VM-Fedora
Gitian-building-setup-Gitian-Debian
Gitian-building-setup-Gitian-Debian-Google-Console
Gitian-building-setup-Gitian-Debian-Google-Console-Create-instance-template
Gitian-building-setup-Gitian-Debian-Google-Console-Create-VM-from-template
Gitian-building-setup-Gitian-Fedora
Zerocoin
HOW TO: Convert Zerocoin xION to ION
How to: Backup and restore xION Zerocoin private seed
Developer-Documentation
API-Calls-List
API-Reference-JSON-RPC
Weekly Play to Win ION coin mobile gaming tournaments
How do I get involved
ionomy extra info
XDM DarkMatter IEO
ionomy Support Help Centre
ionomy web links and info
ION coin Technical Whitepaper
ion coin Bounty Procedures
ionomy Bounty Information
ionomy ION current events