├── README.md └── ironfish-script.sh /README.md: -------------------------------------------------------------------------------- 1 | # Iron Fish一键脚本(二开版) 2 | 基于推特用户 @Daniel_eth2 的开源脚本进行功能的增加
3 | 原作Github: https://github.com/8hfq
4 | 二开作者推特:https://twitter.com/L4ttIc3

5 | 新增功能List: 6 | - 测试网挖矿 7 | - 发送转账 8 | - 创建/设置/导出钱包 9 | 10 | **此脚本完全免费开源,欢迎关注,如有收费请勿上当受骗。** 11 | 12 | **喜欢的朋友可以点个 Star** 13 | -------------------------------------------------------------------------------- /ironfish-script.sh: -------------------------------------------------------------------------------- 1 | Crontab_file="/usr/bin/crontab" 2 | Green_font_prefix="\033[32m" 3 | Red_font_prefix="\033[31m" 4 | Green_background_prefix="\033[42;37m" 5 | Red_background_prefix="\033[41;37m" 6 | Font_color_suffix="\033[0m" 7 | Info="[${Green_font_prefix}信息${Font_color_suffix}]" 8 | Error="[${Red_font_prefix}错误${Font_color_suffix}]" 9 | Tip="[${Green_font_prefix}注意${Font_color_suffix}]" 10 | check_root() { 11 | [[ $EUID != 0 ]] && echo -e "${Error} 当前非ROOT账号(或没有ROOT权限),无法继续操作,请更换ROOT账号或使用 ${Green_background_prefix}sudo su${Font_color_suffix} 命令获取临时ROOT权限(执行后可能会提示输入当前账号的密码)。" && exit 1 12 | } 13 | 14 | install_docker(){ 15 | check_root 16 | curl -fsSL https://get.docker.com | bash -s docker 17 | sudo systemctl daemon-reload 18 | sudo systemctl restart docker 19 | echo "docker 安装完成" 20 | } 21 | 22 | install_ironfish(){ 23 | read -p " 请输入节点名字(跟官方注册的一样):" name 24 | echo "你输入的节点名字是 $name" 25 | read -r -p "请确认输入的节点名字正确,正确请输入Y,否则将退出 [Y/n] " input 26 | case $input in 27 | [yY][eE][sS]|[yY]) 28 | echo "继续安装" 29 | ;; 30 | 31 | *) 32 | echo "退出安装..." 33 | exit 1 34 | ;; 35 | esac 36 | docker pull ghcr.io/iron-fish/ironfish:latest 37 | docker run -itd --name node --net host --volume /root/.node:/root/.ironfish ghcr.io/iron-fish/ironfish:latest start 38 | sleep 5 39 | docker exec -it node bash -c "ironfish config:set blockGraffiti ${name}" 40 | docker exec -it node bash -c "ironfish config:set enableTelemetry true" 41 | echo "启动成功!" 42 | } 43 | 44 | run_ironfish(){ 45 | docker start $(docker ps -a | grep node | awk '{ print $1}') 46 | echo "启动成功!" 47 | echo "请使用检查状态功能确保正常运行" 48 | echo "假如没正常启动,请运行命令 'docker ps -a 显示的CONTAINER ID' " 49 | echo "再运行命令 'docker start 显示的CONTAINER ID' " 50 | } 51 | 52 | stop_ironfish(){ 53 | docker exec -it node bash -c "ironfish stop" 54 | sleep 5 55 | echo "停止成功!" 56 | } 57 | 58 | mine_ironfish(){ 59 | echo "开始挖矿,此功能只能挂机请务关闭或退出" 60 | echo "需要退出请使用键盘按键 ctrl+c" 61 | docker exec -itd node bash -c "ironfish miners:start" 62 | } 63 | 64 | send_ironfish(){ 65 | echo "发送转账请在节点同步完后进行,否则会提示错误" 66 | echo "流程请参考https://ironfish.network/docs/onboarding/send-receive-iron-fish-transactions" 67 | docker exec -it node bash -c "ironfish wallet:send" 68 | } 69 | 70 | creat_ironfish(){ 71 | echo "正在创建钱包" 72 | docker exec -it node bash -c "ironfish wallet:create" 73 | echo "新钱包创建成功,挖矿时请记得更改为你需要使用的钱包" 74 | } 75 | 76 | set_ironfish(){ 77 | echo "正在导出所有的本地钱包名字↓" 78 | docker exec -it node bash -c "ironfish wallet:accounts" 79 | read -p " 请输入你想使用的钱包名字(如上):" name 80 | docker exec -it node bash -c "ironfish wallet:use ${name}" 81 | echo "设置成功!挖矿和转账所使用的钱包已更改为 ${name}" 82 | } 83 | 84 | export_ironfish(){ 85 | echo "正在导出所有的本地钱包名字↓" 86 | docker exec -it node bash -c "ironfish wallet:accounts" 87 | read -p " 请输入你想导出的钱包名字(如上):" name 88 | docker exec -it node bash -c "ironfish wallet:export ${name}" 89 | echo "成功导出 ${name} 钱包,请备份" 90 | } 91 | 92 | import_ironfish(){ 93 | echo "请输入导入的 钱包名字 和 spendingKey (这些信息在导出时提供)" 94 | docker exec -it node bash -c "ironfish wallet:import" 95 | } 96 | 97 | balance_ironfish(){ 98 | echo "正在显示钱包余额,请确保节点已同步完成并领水...." 99 | docker exec -it node bash -c "ironfish wallet:balance" 100 | } 101 | 102 | 103 | read_ironfish(){ 104 | echo "正在检查实时状态,如需退出请按 CTRL+C" 105 | docker exec -it node bash -c "ironfish status -f" 106 | } 107 | 108 | update_ironfish(){ 109 | echo "开始升级,请耐心等待" 110 | echo "请注意,更新之后老版本钱包将会无法导入(导出格式不同,意味着领的水也会丢失得重新领取),然后要重新同步节点" 111 | sleep 5 112 | docker exec -it node bash -c "ironfish stop" 113 | docker rm $(docker ps -a | grep node | awk '{ print $1}') 114 | rm -rf .node/ 115 | read -p " 请输入节点名字(跟官方注册的一样):" name 116 | echo "你输入的节点名字是 $name" 117 | read -r -p "请确认输入的节点名字正确,正确请输入Y,否则将退出 [Y/n] " input 118 | case $input in 119 | [yY][eE][sS]|[yY]) 120 | echo "继续更新" 121 | ;; 122 | 123 | *) 124 | echo "退出更新..." 125 | exit 1 126 | ;; 127 | esac 128 | docker pull ghcr.io/iron-fish/ironfish:latest 129 | docker run -itd --name node --net host --volume /root/.node:/root/.ironfish ghcr.io/iron-fish/ironfish:latest start 130 | sleep 5 131 | docker exec -it node bash -c "ironfish config:set blockGraffiti ${name}" 132 | docker exec -it node bash -c "ironfish config:set enableTelemetry true" 133 | echo "启动成功!升级完成" 134 | } 135 | 136 | faucet_ironfish(){ 137 | echo "请在下方输入注册账号的邮箱,领水需要排队" 138 | echo "请过段时间和同步完节点的后再查询钱包余额" 139 | docker exec -it node bash -c "ironfish faucet" 140 | } 141 | 142 | mintAsset(){ 143 | echo "正在铸造资产...." 144 | echo "Mint成功后就是链上资产,可以用于燃烧和转账到官方地址" 145 | echo "下方asset name和metadata必须跟账号名字一样" 146 | echo "mint amount比例是10000:0.00000001IRON,数值填写10000即可" 147 | docker exec -it node bash -c "ironfish wallet:mint" 148 | 149 | } 150 | 151 | burnAsset(){ 152 | echo "正在燃烧资产...." 153 | docker exec -it node bash -c "ironfish wallet:burn" 154 | } 155 | 156 | transferAsset(){ 157 | echo "正在转账资产到官方地址...." 158 | docker exec -it node bash -c "ironfish wallet:send --to dfc2679369551e64e3950e06a88e68466e813c63b100283520045925adbe59ca" 159 | } 160 | 161 | echo && echo -e " ${Red_font_prefix}IronFish 一键脚本${Font_color_suffix} by \033[1;35mLattice\033[0m 162 | 此脚本完全免费开源,由推特用户 ${Green_font_prefix}@L4ttIc3${Font_color_suffix} 二次开发并升级, 163 | 升级增加 ${Red_font_prefix}IronFish第三阶段测试网完整功能${Font_color_suffix} 功能 164 | 欢迎关注,如有收费请勿上当受骗。 165 | ——————————————————————— 166 | ${Green_font_prefix} 1.安装 docker ${Font_color_suffix} 167 | ${Green_font_prefix} 2.安装并运行 Ironfish ${Font_color_suffix} 168 | -----节点功能------ 169 | ${Green_font_prefix} 3.运行 Ironfish 节点 ${Font_color_suffix} 170 | ${Green_font_prefix} 4.停止 Ironfish 节点 ${Font_color_suffix} 171 | -----挖矿功能------ 172 | ${Red_font_prefix}(功能5必须在节点运行下使用)${Font_color_suffix} 173 | ${Green_font_prefix} 5.开始 Ironfish 挖矿 ${Font_color_suffix} 174 | -----转账功能------ 175 | ${Red_font_prefix}(功能6必须同步完节点后使用)${Font_color_suffix} 176 | ${Green_font_prefix} 6.发送 Ironfish 转账 ${Font_color_suffix} 177 | -----钱包功能------ 178 | ${Green_font_prefix} 7.创建 Ironfish 钱包 ${Font_color_suffix} 179 | ${Green_font_prefix} 8.设置 Ironfish 钱包 ${Font_color_suffix} 180 | ${Green_font_prefix} 9.导出 Ironfish 钱包 ${Font_color_suffix} 181 | ${Green_font_prefix} 10.导入 Ironfish 钱包 ${Font_color_suffix} 182 | ${Green_font_prefix} 11.查询 Ironfish 钱包余额 ${Font_color_suffix} 183 | -----其他功能------ 184 | ${Green_font_prefix} 12.检查 Ironfish 状态 ${Font_color_suffix} 185 | ${Green_font_prefix} 13.升级 Ironfish 版本 ${Font_color_suffix} 186 | ${Green_font_prefix} 14.请求 Ironfish 领水 ${Font_color_suffix} 187 | -----第三阶段测试网功能------ 188 | ${Red_font_prefix}(以下必须在同步完节点和领水后使用)${Font_color_suffix} 189 | ${Green_font_prefix} 15.Mint An Asset 铸造资产${Font_color_suffix} 190 | ${Green_font_prefix} 16.Burn An Asset 燃烧资产${Font_color_suffix} 191 | ${Green_font_prefix} 17.Send An Asset 转账资产到官方地址${Font_color_suffix} 192 | ———————————————————————" && echo 193 | read -e -p " 请输入数字 [1-17]:" num 194 | case "$num" in 195 | 1) 196 | install_docker 197 | ;; 198 | 2) 199 | install_ironfish 200 | ;; 201 | 3) 202 | run_ironfish 203 | ;; 204 | 4) 205 | stop_ironfish 206 | ;; 207 | 5) 208 | mine_ironfish 209 | ;; 210 | 6) 211 | send_ironfish 212 | ;; 213 | 7) 214 | creat_ironfish 215 | ;; 216 | 8) 217 | set_ironfish 218 | ;; 219 | 9) 220 | export_ironfish 221 | ;; 222 | 10) 223 | import_ironfish 224 | ;; 225 | 11) 226 | balance_ironfish 227 | ;; 228 | 12) 229 | read_ironfish 230 | ;; 231 | 13) 232 | update_ironfish 233 | ;; 234 | 14) 235 | faucet_ironfish 236 | ;; 237 | 15) 238 | mintAsset 239 | ;; 240 | 16) 241 | burnAsset 242 | ;; 243 | 17) 244 | transferAsset 245 | ;; 246 | 247 | *) 248 | echo 249 | echo -e " ${Error} 请输入正确的数字" 250 | ;; 251 | esac 252 | --------------------------------------------------------------------------------