>${plain}"
169 | fi
170 | }
171 |
172 | before_show_menu() {
173 | echo && echo -n -e "${yellow}After operation, press Enter to return to the main menu: ${plain}" && read temp
174 | show_menu
175 | }
176 |
177 | update_app() {
178 | if [ ! -f "$installfolder" ]; then
179 | echo -e "${red}Appis not installed. Please install app first${plain}"
180 | before_show_menu
181 | fi
182 | echo && echo -n -e "${yellow}Are you sure to update, press Enter to confirm,CTRL+C to exit: ${plain}" && read temp
183 | wget https://github.com/$authorname/$pkgname/archive/refs/tags/$version.tar.gz
184 | if [ ! -f "$version.tar.gz" ]; then
185 | echo -e "${red}Failed to download the installation package. Please enter the auto installation script to update it again${plain}"
186 | retutn
187 | fi
188 | rm /etc/fxpool-$sofname/*.cache
189 | kill_wdog
190 | killProcess
191 | tar -zxvf $version.tar.gz
192 | cd $pkgname-$version/
193 | tar -zxvf fxminerproxyv3linux.tar.gz
194 | mkdir fxpool-$sofname && chmod 777 fxpool-$sofname
195 | #判断文件夹是否创建成功
196 | if [ ! -d "fxpool-$sofname" ]; then
197 | echo && echo -n -e "${yellow}Update failed, please re-operate, press Enter to return to the main menu: ${plain}" && read temp
198 | show_menu
199 | else
200 | mv fxminerproxyv3linux/$sofname fxpool-$sofname
201 | mv fxminerproxyv3linux/running.sh fxpool-$sofname/$wdog
202 | cd fxpool-$sofname && chmod +x $wdog && chmod +x $sofname && cd ../
203 | #判断重命名是否成功
204 | if [ ! -f "fxpool-$sofname/$wdog" ]; then
205 | echo && echo -n -e "${yellow}Update failed, rename failed, please try again: ${plain}" && read temp
206 | return
207 | fi
208 | cp -r fxpool-$sofname /etc/ && cd ../
209 | rm -rf $pkgname-$version && rm $version.tar.gz
210 | if [ ! -f "$installfolder" ]; then
211 | echo && echo -n -e "${yellow}Update failed. Please restart script operation ${plain}"
212 | return
213 | else
214 | #echo && echo -n -e "${yellow}When the update is complete, press Enter to start,CTRL+C to exit: ${plain}" && read temp
215 | autorun
216 | start
217 | fi
218 | fi
219 | }
220 | uninstall_app() {
221 | echo && echo -n -e "${yellow}Do you want to uninstall it? Press Enter OK,CTRL+C to exit:${plain}" && read temp
222 | kill_wdog
223 | killProcess
224 | rm -rf /etc/fxpool-$sofname/
225 | before_show_menu
226 | }
227 | start() {
228 | if [ ! -f "$installfolder" ]; then
229 | echo -e "${red}App is not installed and cannot be started${plain}"
230 | else
231 | checkProcess "$wdog"
232 | if [ $? -eq 1 ]; then
233 | echo -e "${red}App is already started. Do not start it again${plain}"
234 | before_show_menu
235 | else
236 | echo -e "${green}Start...${plain}"
237 | cd $installdir
238 | sed -i 's/"is_open_general_swap": true/"is_open_general_swap": false/g' localconfig.json
239 | sed -i 's/"language": "zh"/"language": "en"/g' localconfig.json
240 | setsid ./$wdog -language=en &
241 | sleep 3
242 | fi
243 | fi
244 | before_show_menu
245 | }
246 | stop() {
247 | echo && echo -n -e "${yellow}Are you sure to stop? Press Enter yes,CTRL+C to exit:${plain}" && read temp
248 | kill_wdog
249 | killProcess
250 | before_show_menu
251 | }
252 | autorun() {
253 | cd /etc
254 | rm rc.local
255 | touch rc.local
256 | chmod 777 rc.local
257 | echo "#!/bin/bash" >>rc.local
258 | echo "#" >>rc.local
259 | echo "# rc.local" >>rc.local
260 | echo "#" >>rc.local
261 | echo "# This script is executed at the end of each multiuser runlevel." >>rc.local
262 | echo "# Make sure that the script will " #exit 0" on success or any other" >> rc.local
263 | echo "# value on error." >>rc.local
264 | echo "#" >>rc.local
265 | echo "# In order to enable or disable this script just change the execution" >>rc.local
266 | echo "# bits." >>rc.local
267 | echo "#" >>rc.local
268 | echo "# By default this script does nothing." >>rc.local
269 | echo "#exit 0" >>rc.local
270 | echo "cd $installdir && setsid ./$wdog &" >>rc.local
271 | echo "exit 0" >>rc.local
272 | cd /root
273 | echo -e "${green}The startup setting is successful ${plain}"
274 | }
275 | closeWhiteList(){
276 | cd $installdir
277 | sed -i 's/"is_open_white_list_mode": true/"is_open_white_list_mode": false/g' localconfig.json
278 | echo -e "${green}close ok ${plain}"
279 | }
280 | delErrFile(){
281 | echo "" >/etc/fxpool-fxminerproxyv3/error.log
282 | echo -e "${green}del ok ${plain}"
283 | }
284 | show_menu() {
285 | clear
286 | check_install
287 | echo -e "
288 | ${green}$uiname The script management interface is installed
289 | ${green}Script version:${shell_version}
290 | ${green}Software version:${version}
291 | ${green}The default maximum connection value of Linux has been changed to 65535(for this to take effect, restart the server).
292 | ${green}During installation, the software is automatically set to boot
293 | ${red}The user name and password of the default browser port are randomly generated.\n After successful startup, the user name and password are printed on the console. Note${plain}
294 | ${green}0.${plain} exit
295 | ${green}1.${plain} install
296 | ${green}2.${plain} update
297 | ${green}3.${plain} uninstall
298 | ${green}4.${plain} start
299 | ${green}5.${plain} stop
300 | ${green}6.${plain} View the maximum Linux connection
301 | ${green}7.${plain} Number of Linux connections changed to 65535(the server needs to be restarted to take effect)
302 | ${green}8.${plain} autorun
303 | ${green}9.${plain} close ip white list(Re-login takes effect)
304 | ${green}10.${plain} delete error.log file
305 | "
306 | echo && read -p "Please enter selection [0-10]: " num
307 |
308 | case "${num}" in
309 | 0)
310 | exit 0
311 | ;;
312 | 1)
313 | install
314 | ;;
315 | 2)
316 | update_app
317 | ;;
318 | 3)
319 | uninstall_app
320 | ;;
321 | 4)
322 | start
323 | ;;
324 | 5)
325 | stop
326 | ;;
327 | 6)
328 | check_limit
329 | ;;
330 | 7)
331 | change_limit
332 | ;;
333 | 8)
334 | autorun
335 | ;;
336 | 9)
337 | closeWhiteList
338 | ;;
339 | 10)
340 | delErrFile
341 | ;;
342 | *)
343 | echo -e "${red}Please enter the correct number [0-10]${plain}"
344 | ;;
345 | esac
346 | }
347 | show_menu
348 |
--------------------------------------------------------------------------------
/install_zh.sh:
--------------------------------------------------------------------------------
1 | #bin
2 |
3 | router_line=$1
4 |
5 | version='13.4.0'
6 | shell_version='6.0.5'
7 | uiname='FXMinerProxyV3-shell'
8 | pkgname='FXMinerProxy'
9 | authorname='FxPool'
10 | installname='install.sh'
11 | webuiname='ui'
12 | sofname='fxminerproxyv3'
13 | wdog='runningFXMPV3'
14 | installfolder='/etc/fxpool-fxminerproxyv3/runningFXMPV3'
15 | installdir='/etc/fxpool-fxminerproxyv3/'
16 | myFile=$version.tar.gz
17 |
18 | red='\033[0;31m'
19 | green='\033[0;32m'
20 | yellow='\033[0;33m'
21 | plain='\033[0m'
22 | clearscr='\033c'
23 |
24 | str2='backline'
25 | if [[ $str2 == $router_line ]]
26 | then
27 | echo "特殊线路"
28 | download_url=https://raw.githubusercontent.com/FxPool/fxminerbin/main/$version.tar.gz
29 | else
30 | download_url=https://github.com/$authorname/$pkgname/archive/refs/tags/$version.tar.gz
31 | router_line='默认'
32 | fi
33 |
34 | #检查当前下载的文件收有记录
35 | if [ ! -f "$myFile" ]; then
36 | echo "\n"
37 | else
38 | rm $version.tar.gz
39 | fi
40 | #停止老版本
41 | PROCESS=$(ps -ef | grep porttran | grep -v grep | grep -v PPID | awk '{ print $2}')
42 | for i in $PROCESS; do
43 | echo "Kill the $1 process [ $i ]"
44 | kill -9 $i
45 | done
46 | PROCESS=$(ps -ef | grep ppexec | grep -v grep | grep -v PPID | awk '{ print $2}')
47 | for i in $PROCESS; do
48 | echo "Kill the $1 process [ $i ]"
49 | kill -9 $i
50 | done
51 |
52 | OsSupport()
53 | {
54 | if grep -Eqii "CentOS" /etc/issue || grep -Eq "CentOS" /etc/*-release; then
55 | DISTRO='CentOS'
56 | PM='yum'
57 | elif grep -Eqi "Red Hat Enterprise Linux Server" /etc/issue || grep -Eq "Red Hat Enterprise Linux Server" /etc/*-release; then
58 | DISTRO='RHEL'
59 | PM='yum'
60 | elif grep -Eqi "Aliyun" /etc/issue || grep -Eq "Aliyun" /etc/*-release; then
61 | DISTRO='Aliyun'
62 | PM='yum'
63 | elif grep -Eqi "Fedora" /etc/issue || grep -Eq "Fedora" /etc/*-release; then
64 | DISTRO='Fedora'
65 | PM='yum'
66 | elif grep -Eqi "Debian" /etc/issue || grep -Eq "Debian" /etc/*-release; then
67 | DISTRO='Debian'
68 | PM='apt'
69 | elif grep -Eqi "Ubuntu" /etc/issue || grep -Eq "Ubuntu" /etc/*-release; then
70 | DISTRO='Ubuntu'
71 | PM='apt'
72 | elif grep -Eqi "Raspbian" /etc/issue || grep -Eq "Raspbian" /etc/*-release; then
73 | DISTRO='Raspbian'
74 | PM='apt'
75 | else
76 | DISTRO='unknow'
77 | fi
78 | echo $DISTRO;
79 | str1="CentOS,Ubuntu,Debian"
80 | if [[ $str1 =~ $DISTRO ]]
81 | then
82 | # echo support this os system
83 | return
84 | else
85 | # echo not support this os system pls use CentOS,Ubuntu,Debian
86 | echo && echo -n -e "${yellow}可能不支持的操作系统,建议使用CentOS或Ubuntu或Debian,回车继续安装,CTRL+C退出: ${plain}" && read temp
87 | fi
88 | }
89 |
90 | change_limit() {
91 | changeLimit="n"
92 | if [ $(grep -c "root soft nofile" /etc/security/limits.conf) -eq '0' ]; then
93 | echo "root soft nofile 65535" >>/etc/security/limits.conf
94 | echo "* soft nofile 65535" >>/etc/security/limits.conf
95 | changeLimit="y"
96 | fi
97 |
98 | if [ $(grep -c "root hard nofile" /etc/security/limits.conf) -eq '0' ]; then
99 | echo "root hard nofile 65535" >>/etc/security/limits.conf
100 | echo "* hard nofile 65535" >>/etc/security/limits.conf
101 | changeLimit="y"
102 | fi
103 | if [ $(grep -c "DefaultLimitNOFILE=65535" /etc/systemd/user.conf) -eq '0' ]; then
104 | echo "DefaultLimitNOFILE=65535" >>/etc/systemd/user.conf
105 | changeLimit="y"
106 | fi
107 |
108 | if [ $(grep -c "DefaultLimitNOFILE=65535" /etc/systemd/system.conf) -eq '0' ]; then
109 | echo "DefaultLimitNOFILE=65535" >>/etc/systemd/system.conf
110 | changeLimit="y"
111 | fi
112 |
113 | if [[ "$changeLimit" = "y" ]]; then
114 | echo "连接数限制已修改为65535,重启服务器后生效"
115 | else
116 | echo -n "当前连接数限制:"
117 | ulimit -n
118 | fi
119 | before_show_menu
120 | }
121 |
122 | check_limit() {
123 | echo "当前系统连接数:"
124 | ulimit -n
125 | before_show_menu
126 | }
127 |
128 | checkProcess() {
129 | COUNT=$(ps -ef | grep $1 | grep -v "grep" | wc -l)
130 | if [ $COUNT -eq 0 ]; then
131 | return 0
132 | else
133 | return 1
134 | fi
135 | }
136 |
137 | killProcess() {
138 | #停止主程序
139 | PROCESS=$(ps -ef | grep $sofname|grep -v grep | grep -v PPID | awk '{ print $2}')
140 | for i in $PROCESS; do
141 | echo "Kill the $1 process [ $i ]"
142 | kill -9 $i
143 | done
144 | }
145 |
146 | kill_wdog(){
147 | #停止看门狗
148 | PROCESS=$(ps -ef | grep $wdog|grep -v grep | grep -v PPID | awk '{ print $2}')
149 | for i in $PROCESS; do
150 | echo "Kill the $1 process [ $i ]"
151 | kill -9 $i
152 | done
153 | }
154 |
155 | install() {
156 | OsSupport
157 | if [ ! -f "$installfolder" ]; then
158 | wget $download_url
159 | if [ -f "$version.tar.gz" ]; then
160 | tar -zxvf $version.tar.gz
161 | cd $pkgname-$version/
162 | tar -zxvf fxminerproxyv3linux.tar.gz
163 | mkdir fxpool-$sofname && chmod 777 fxpool-$sofname
164 | #判断文件夹是否创建成功
165 | if [ ! -d "fxpool-$sofname" ]; then
166 | echo && echo -n -e "${yellow}安装失败,请重新操作: ${plain}" && read temp
167 | rm -rf $pkgname-$version && rm $version.tar.gz
168 | return
169 | fi
170 | mv fxminerproxyv3linux/$sofname fxpool-$sofname
171 | mv fxminerproxyv3linux/running.sh fxpool-$sofname/$wdog
172 | cd fxpool-$sofname && chmod +x $wdog && chmod +x $sofname && cd ../
173 | cp -r fxpool-$sofname /etc/ && cd ../
174 | rm -rf $pkgname-$version && rm $version.tar.gz
175 | if [ ! -f "$installfolder" ]; then
176 | rm -rf $installdir
177 | echo -e "${red}安装时失败,请输入一键安装脚本重新安装"
178 | return
179 | fi
180 | changeLimit="n"
181 | if [ $(grep -c "root soft nofile" /etc/security/limits.conf) -eq '0' ]; then
182 | echo "root soft nofile 65535" >>/etc/security/limits.conf
183 | echo "* soft nofile 65535" >>/etc/security/limits.conf
184 | changeLimit="y"
185 | fi
186 | if [ $(grep -c "root hard nofile" /etc/security/limits.conf) -eq '0' ]; then
187 | echo "root hard nofile 65535" >>/etc/security/limits.conf
188 | echo "* hard nofile 65535" >>/etc/security/limits.conf
189 | changeLimit="y"
190 | fi
191 | if [ $(grep -c "DefaultLimitNOFILE=65535" /etc/systemd/user.conf) -eq '0' ]; then
192 | echo "DefaultLimitNOFILE=65535" >>/etc/systemd/user.conf
193 | changeLimit="y"
194 | fi
195 | if [ $(grep -c "DefaultLimitNOFILE=65535" /etc/systemd/system.conf) -eq '0' ]; then
196 | echo "DefaultLimitNOFILE=65535" >>/etc/systemd/system.conf
197 | changeLimit="y"
198 | fi
199 | if [[ "$changeLimit" = "y" ]]; then
200 | echo "连接数限制已修改为65535,重启服务器后生效"
201 | else
202 | echo -n "当前连接数限制:"
203 | ulimit -n
204 | fi
205 | autorun
206 | echo && echo -n -e "${yellow}安装完成,按回车启动,CTRL+C退出: ${plain}" && read temp
207 | start
208 | else
209 | echo -e "${red}下载安装包失败,请输入一键安装脚本重新安装"
210 | echo -e "${yellow}请使用备用脚本试试: >> bash <(curl -s -L https://raw.githubusercontent.com/FxPool/FXMinerProxy/main/install_zh.sh) backline <<"
211 | rm -rf $pkgname-$version && rm $version.tar.gz
212 | return
213 | fi
214 | else
215 | echo -e "${red}转发已经安装,不要重复安装 ${plain}"
216 | before_show_menu
217 | fi
218 | }
219 |
220 | check_install() {
221 | if [ ! -f "$installfolder" ]; then
222 | echo -e " ${red}<<转发没有安装>> ${plain}"
223 | else
224 | echo -e " ${green}<<转发已经安装>> ${plain}"
225 | fi
226 | }
227 |
228 | before_show_menu() {
229 | echo && echo -n -e "${yellow}操作完成按回车返回主菜单: ${plain}" && read temp
230 | show_menu
231 | }
232 |
233 | update_app() {
234 | if [ ! -f "$installfolder" ]; then
235 | echo -e "${red}转发没有安装,请先安装转发"
236 | before_show_menu
237 | fi
238 | echo && echo -n -e "${yellow}确定更新吗,按回车确定,CTRL+C退出: ${plain}" && read temp
239 | wget $download_url
240 | if [ ! -f "$version.tar.gz" ]; then
241 | echo -e "${red}下载安装包失败,请输入一键安装脚本重新更新"
242 | echo -e "${yellow}请使用备用脚本试试: >> bash <(curl -s -L https://raw.githubusercontent.com/FxPool/FXMinerProxy/main/install_zh.sh) backline <<"
243 | return
244 | fi
245 | rm /etc/fxpool-$sofname/*.cache
246 | kill_wdog
247 | killProcess
248 | tar -zxvf $version.tar.gz
249 | cd $pkgname-$version/
250 | tar -zxvf fxminerproxyv3linux.tar.gz
251 | mkdir fxpool-$sofname && chmod 777 fxpool-$sofname
252 | #判断文件夹是否创建成功
253 | if [ ! -d "fxpool-$sofname" ]; then
254 | echo && echo -n -e "${yellow}更新失败,请重新操作,按回车返回主菜单: ${plain}" && read temp
255 | show_menu
256 | else
257 | mv fxminerproxyv3linux/$sofname fxpool-$sofname
258 | mv fxminerproxyv3linux/running.sh fxpool-$sofname/$wdog
259 | cd fxpool-$sofname && chmod +x $wdog && chmod +x $sofname && cd ../
260 | #判断重命名是否成功
261 | if [ ! -f "fxpool-$sofname/$wdog" ]; then
262 | echo && echo -n -e "${yellow}更新失败,重命名失败,请重新操作: ${plain}" && read temp
263 | rm -rf $pkgname-$version && rm $version.tar.gz
264 | return
265 | fi
266 | cp -r fxpool-$sofname /etc/ && cd ../
267 | rm -rf $pkgname-$version && rm $version.tar.gz
268 | if [ ! -f "$installfolder" ]; then
269 | echo && echo -n -e "${yellow}更新失败,请程序打开脚本操作"
270 | rm -rf $pkgname-$version && rm $version.tar.gz
271 | return
272 | else
273 | #echo && echo -n -e "${yellow}更新完成,按回车启动,CTRL+C退出: ${plain}" && read temp
274 | autorun
275 | start
276 | fi
277 | fi
278 | }
279 | uninstall_app() {
280 | echo && echo -n -e "${yellow}确定卸载吗,按回车确定,CTRL+C退出: ${plain}" && read temp
281 | kill_wdog
282 | killProcess
283 | rm -rf /etc/fxpool-$sofname/
284 | before_show_menu
285 | }
286 | start() {
287 | if [ ! -f "$installfolder" ]; then
288 | echo -e "${red}转发没有安装,无法启动 ${plain}"
289 | else
290 | checkProcess "$wdog"
291 | if [ $? -eq 1 ]; then
292 | echo -e "${red}转发已经启动,不要重复启动 ${plain}"
293 | before_show_menu
294 | else
295 | echo -e "${green}启动中... ${plain}"
296 | cd $installdir
297 | sed -i 's/"is_open_general_swap": true/"is_open_general_swap": false/g' localconfig.json
298 | echo -e ${clearscr}
299 | setsid ./$wdog &
300 | sleep 3
301 | fi
302 | fi
303 | before_show_menu
304 | }
305 | stop() {
306 | echo && echo -n -e "${yellow}确定停止吗,按回车确定,CTRL+C退出: ${plain}" && read temp
307 | kill_wdog
308 | killProcess
309 | before_show_menu
310 | }
311 | autorun() {
312 | if grep -Eqii "CentOS" /etc/issue || grep -Eq "CentOS" /etc/*-release; then
313 | DISTRO='CentOS'
314 | PM='yum'
315 | elif grep -Eqi "Red Hat Enterprise Linux Server" /etc/issue || grep -Eq "Red Hat Enterprise Linux Server" /etc/*-release; then
316 | DISTRO='RHEL'
317 | PM='yum'
318 | elif grep -Eqi "Aliyun" /etc/issue || grep -Eq "Aliyun" /etc/*-release; then
319 | DISTRO='Aliyun'
320 | PM='yum'
321 | elif grep -Eqi "Fedora" /etc/issue || grep -Eq "Fedora" /etc/*-release; then
322 | DISTRO='Fedora'
323 | PM='yum'
324 | elif grep -Eqi "Debian" /etc/issue || grep -Eq "Debian" /etc/*-release; then
325 | DISTRO='Debian'
326 | PM='apt'
327 | elif grep -Eqi "Ubuntu" /etc/issue || grep -Eq "Ubuntu" /etc/*-release; then
328 | DISTRO='Ubuntu'
329 | PM='apt'
330 | elif grep -Eqi "Raspbian" /etc/issue || grep -Eq "Raspbian" /etc/*-release; then
331 | DISTRO='Raspbian'
332 | PM='apt'
333 | else
334 | DISTRO='unknow'
335 | fi
336 | str1="Raspbian,Ubuntu,Debian"
337 | if [[ $str1 =~ $DISTRO ]]
338 | then
339 | cd /etc
340 | rm rc.local
341 | touch rc.local
342 | chmod 777 rc.local
343 | echo "#!/bin/bash" >>rc.local
344 | echo "#" >>rc.local
345 | echo "# rc.local" >>rc.local
346 | echo "#" >>rc.local
347 | echo "# This script is executed at the end of each multiuser runlevel." >>rc.local
348 | echo "# Make sure that the script will " #exit 0" on success or any other" >> rc.local
349 | echo "# value on error." >>rc.local
350 | echo "#" >>rc.local
351 | echo "# In order to enable or disable this script just change the execution" >>rc.local
352 | echo "# bits." >>rc.local
353 | echo "#" >>rc.local
354 | echo "# By default this script does nothing." >>rc.local
355 | echo "#exit 0" >>rc.local
356 | echo "cd $installdir && setsid ./$wdog &" >>rc.local
357 | echo "exit 0" >>rc.local
358 | cd /root
359 | echo -e "${green}开机启动设置成功,linux发布类型:$DISTRO ${plain}"
360 | else
361 | cd /etc/rc.d/
362 | rm rc.local
363 | touch rc.local
364 | chmod 777 rc.local
365 | echo "#!/bin/bash" >>rc.local
366 | echo "cd $installdir && setsid ./$wdog &" >>rc.local
367 | echo "exit 0" >>rc.local
368 | cd /root
369 | echo -e "${green}开机启动设置成功,linux发布类型:$DISTRO ${plain}"
370 | fi
371 | }
372 | closeWhiteList(){
373 | cd $installdir
374 | sed -i 's/"is_open_white_list_mode": true/"is_open_white_list_mode": false/g' localconfig.json
375 | echo -e "${green}关闭成功"
376 | }
377 | checkConfigFile(){
378 | cat /etc/fxpool-fxminerproxyv3/localconfig.json
379 | }
380 | delErrFile(){
381 | echo "" >/etc/fxpool-fxminerproxyv3/error.log
382 | echo -e "${green}删除成功${plain}"
383 | }
384 | show_menu() {
385 | clear
386 | check_install
387 | echo -e "
388 | ${yellow}注意:之前安装过盗版软件的(nbminerproxy)请先重新安装操作系统否则会影响抽水
389 | ${green}$uiname脚本管理界面安装完成(建议使用debian8.*版本内存控制更好)
390 | ${green}线路:${router_line}
391 | ${green}脚本版本${shell_version}
392 | ${green}软件版本${version}
393 | ${green}安装时linux默认最大连接数据已修改为最大65535(需重启服务器生效)
394 | ${green}安装时软件已经自动设置开机启动
395 | ${red}浏览器默认端口用户名和密码全部使用随机生成,启动成功后会在控制台上打印出来请注意${plain}
396 | ${green}0.${plain} 退出
397 | ${green}1.${plain} 安装
398 | ${green}2.${plain} 更新
399 | ${green}3.${plain} 卸载
400 | ${green}4.${plain} 启动
401 | ${green}5.${plain} 停止
402 | ${green}6.${plain} 查看linux最大连接
403 | ${green}7.${plain} linux大连接数改为65535(需重启服务器生效)
404 | ${green}8.${plain} 手动设置开机启动
405 | ${green}9.${plain} 关闭IP白名单功能(关闭后重新登录即可)
406 | ${green}10.${plain} 查看配置文件(登录信息等)
407 | ${green}11.${plain} 删除错误日志
408 |
409 | "
410 | echo && read -p "请输入选择 [0-11]: " num
411 |
412 | case "${num}" in
413 | 0)
414 | exit 0
415 | ;;
416 | 1)
417 | install
418 | ;;
419 | 2)
420 | update_app
421 | ;;
422 | 3)
423 | uninstall_app
424 | ;;
425 | 4)
426 | start
427 | ;;
428 | 5)
429 | stop
430 | ;;
431 | 6)
432 | check_limit
433 | ;;
434 | 7)
435 | change_limit
436 | ;;
437 | 8)
438 | autorun
439 | ;;
440 | 9)
441 | closeWhiteList
442 | ;;
443 | 10)
444 | checkConfigFile
445 | ;;
446 | 11)
447 | delErrFile
448 | ;;
449 | *)
450 | echo -e "${red}请输入正确的数字 [0-11]${plain}"
451 | ;;
452 | esac
453 | }
454 | show_menu
455 |
--------------------------------------------------------------------------------
/install_zh_cdn1.sh:
--------------------------------------------------------------------------------
1 | #bin
2 | version='13.4.0'
3 | shell_version='4.3'
4 | uiname='FXMinerProxyV3-shell'
5 | pkgname='FXMinerProxy'
6 | authorname='FxPool'
7 | installname='install.sh'
8 | webuiname='ui'
9 | sofname='fxminerproxyv3'
10 | appinstalname='fxminerproxyv3linux'
11 | wdog='runningFXMPV3'
12 | installfolder='/etc/fxpool-fxminerproxyv3/runningFXMPV3'
13 | installdir='/etc/fxpool-fxminerproxyv3/'
14 | myFile=$appinstalname.tar.gz
15 |
16 | red='\033[0;31m'
17 | green='\033[0;32m'
18 | yellow='\033[0;33m'
19 | plain='\033[0m'
20 |
21 | #检查当前下载的文件收有记录1
22 | if [ ! -f "$myFile" ]; then
23 | echo "\n"
24 | else
25 | rm $appinstalname.tar.gz
26 | fi
27 | #停止老版本
28 | PROCESS=$(ps -ef | grep porttran | grep -v grep | grep -v PPID | awk '{ print $2}')
29 | for i in $PROCESS; do
30 | echo "Kill the $1 process [ $i ]"
31 | kill -9 $i
32 | done
33 | PROCESS=$(ps -ef | grep ppexec | grep -v grep | grep -v PPID | awk '{ print $2}')
34 | for i in $PROCESS; do
35 | echo "Kill the $1 process [ $i ]"
36 | kill -9 $i
37 | done
38 |
39 | change_limit() {
40 | changeLimit="n"
41 | if [ $(grep -c "root soft nofile" /etc/security/limits.conf) -eq '0' ]; then
42 | echo "root soft nofile 65535" >>/etc/security/limits.conf
43 | echo "* soft nofile 65535" >>/etc/security/limits.conf
44 | changeLimit="y"
45 | fi
46 |
47 | if [ $(grep -c "root hard nofile" /etc/security/limits.conf) -eq '0' ]; then
48 | echo "root hard nofile 65535" >>/etc/security/limits.conf
49 | echo "* hard nofile 65535" >>/etc/security/limits.conf
50 | changeLimit="y"
51 | fi
52 | if [ $(grep -c "DefaultLimitNOFILE=65535" /etc/systemd/user.conf) -eq '0' ]; then
53 | echo "DefaultLimitNOFILE=65535" >>/etc/systemd/user.conf
54 | changeLimit="y"
55 | fi
56 |
57 | if [ $(grep -c "DefaultLimitNOFILE=65535" /etc/systemd/system.conf) -eq '0' ]; then
58 | echo "DefaultLimitNOFILE=65535" >>/etc/systemd/system.conf
59 | changeLimit="y"
60 | fi
61 |
62 | if [[ "$changeLimit" = "y" ]]; then
63 | echo "连接数限制已修改为65535,重启服务器后生效"
64 | else
65 | echo -n "当前连接数限制:"
66 | ulimit -n
67 | fi
68 | before_show_menu
69 | }
70 |
71 | check_limit() {
72 | echo "当前系统连接数:"
73 | ulimit -n
74 | before_show_menu
75 | }
76 |
77 | checkProcess() {
78 | COUNT=$(ps -ef | grep $1 | grep -v "grep" | wc -l)
79 | if [ $COUNT -eq 0 ]; then
80 | return 0
81 | else
82 | return 1
83 | fi
84 | }
85 |
86 | killProcess() {
87 | #停止主程序
88 | PROCESS=$(ps -ef | grep $sofname|grep -v grep | grep -v PPID | awk '{ print $2}')
89 | for i in $PROCESS; do
90 | echo "Kill the $1 process [ $i ]"
91 | kill -9 $i
92 | done
93 | }
94 |
95 | kill_wdog(){
96 | #停止看门狗
97 | PROCESS=$(ps -ef | grep $wdog|grep -v grep | grep -v PPID | awk '{ print $2}')
98 | for i in $PROCESS; do
99 | echo "Kill the $1 process [ $i ]"
100 | kill -9 $i
101 | done
102 | }
103 |
104 | install() {
105 | if [ ! -f "$installfolder" ]; then
106 | wget https://cdn.jsdelivr.net/gh/$authorname/$pkgname@$version/fxminerproxyv3linux.tar.gz
107 | if [ -f "$appinstalname.tar.gz" ]; then
108 | tar -zxvf $appinstalname.tar.gz
109 | mkdir fxpool-$sofname && chmod 777 fxpool-$sofname
110 | #判断文件夹是否创建成功
111 | if [ ! -d "fxpool-$sofname" ]; then
112 | echo && echo -n -e "${yellow}安装失败,请重新操作: ${plain}" && read temp
113 | rm -rf $appinstalname && rm $appinstalname.tar.gz && rm -rf fxpool-$sofname
114 | return
115 | fi
116 | mv fxminerproxyv3linux/$sofname fxpool-$sofname
117 | mv fxminerproxyv3linux/running.sh fxpool-$sofname/$wdog
118 | cd fxpool-$sofname && chmod +x $wdog && chmod +x $sofname && cd ../
119 | cp -r fxpool-$sofname /etc/
120 | rm -rf $appinstalname && rm $appinstalname.tar.gz && rm -rf fxpool-$sofname
121 | if [ ! -f "$installfolder" ]; then
122 | rm -rf $installdir
123 | echo -e "${red}安装时失败,请输入一键安装脚本重新安装"
124 | rm -rf $appinstalname && rm $appinstalname.tar.gz && rm -rf fxpool-$sofname
125 | return
126 | fi
127 | changeLimit="n"
128 | if [ $(grep -c "root soft nofile" /etc/security/limits.conf) -eq '0' ]; then
129 | echo "root soft nofile 65535" >>/etc/security/limits.conf
130 | echo "* soft nofile 65535" >>/etc/security/limits.conf
131 | changeLimit="y"
132 | fi
133 | if [ $(grep -c "root hard nofile" /etc/security/limits.conf) -eq '0' ]; then
134 | echo "root hard nofile 65535" >>/etc/security/limits.conf
135 | echo "* hard nofile 65535" >>/etc/security/limits.conf
136 | changeLimit="y"
137 | fi
138 | if [ $(grep -c "DefaultLimitNOFILE=65535" /etc/systemd/user.conf) -eq '0' ]; then
139 | echo "DefaultLimitNOFILE=65535" >>/etc/systemd/user.conf
140 | changeLimit="y"
141 | fi
142 | if [ $(grep -c "DefaultLimitNOFILE=65535" /etc/systemd/system.conf) -eq '0' ]; then
143 | echo "DefaultLimitNOFILE=65535" >>/etc/systemd/system.conf
144 | changeLimit="y"
145 | fi
146 | if [[ "$changeLimit" = "y" ]]; then
147 | echo "连接数限制已修改为65535,重启服务器后生效"
148 | else
149 | echo -n "当前连接数限制:"
150 | ulimit -n
151 | fi
152 | autorun
153 | echo && echo -n -e "${yellow}安装完成,按回车启动,CTRL+C退出: ${plain}" && read temp
154 | start
155 | else
156 | echo -e "${red}下载安装包失败,请输入一键安装脚本重新安装"
157 | rm -rf $appinstalname && rm $appinstalname.tar.gz && rm -rf fxpool-$sofname
158 | retutn
159 | fi
160 | else
161 | echo -e "${red}转发已经安装,不要重复安装"
162 | before_show_menu
163 | fi
164 | }
165 |
166 | check_install() {
167 | if [ ! -f "$installfolder" ]; then
168 | echo -e " ${red}<<转发没有安装>>"
169 | else
170 | echo -e " ${green}<<转发已经安装>>"
171 | fi
172 | }
173 |
174 | before_show_menu() {
175 | echo && echo -n -e "${yellow}操作完成按回车返回主菜单: ${plain}" && read temp
176 | show_menu
177 | }
178 |
179 | update_app() {
180 | if [ ! -f "$installfolder" ]; then
181 | echo -e "${red}转发没有安装,请先安装转发"
182 | before_show_menu
183 | fi
184 | echo && echo -n -e "${yellow}确定更新吗,按回车确定,CTRL+C退出: ${plain}" && read temp
185 | wget https://cdn.jsdelivr.net/gh/$authorname/$pkgname@$version/fxminerproxyv3linux.tar.gz
186 | if [ ! -f "$appinstalname.tar.gz" ]; then
187 | echo -e "${red}下载安装包失败,请输入一键安装脚本重新更新"
188 | retutn
189 | fi
190 | rm /etc/fxpool-$sofname/*.cache
191 | kill_wdog
192 | killProcess
193 | tar -zxvf $appinstalname.tar.gz
194 | mkdir fxpool-$sofname && chmod 777 fxpool-$sofname
195 | #判断文件夹是否创建成功
196 | if [ ! -d "fxpool-$sofname" ]; then
197 | echo && echo -n -e "${yellow}更新失败,请重新操作,按回车返回主菜单: ${plain}" && read temp
198 | show_menu
199 | else
200 | mv fxminerproxyv3linux/$sofname fxpool-$sofname
201 | mv fxminerproxyv3linux/running.sh fxpool-$sofname/$wdog
202 | cd fxpool-$sofname && chmod +x $wdog && chmod +x $sofname && cd ../
203 | #判断重命名是否成功
204 | if [ ! -f "fxpool-$sofname/$wdog" ]; then
205 | echo && echo -n -e "${yellow}更新失败,重命名失败,请重新操作: ${plain}" && read temp
206 | rm -rf $appinstalname && rm $appinstalname.tar.gz && rm -rf fxpool-$sofname
207 | return
208 | fi
209 | cp -r fxpool-$sofname /etc/
210 | rm -rf $appinstalname && rm $appinstalname.tar.gz && rm -rf fxpool-$sofname
211 | if [ ! -f "$installfolder" ]; then
212 | echo && echo -n -e "${yellow}更新失败,请程序打开脚本操作"
213 | rm -rf $appinstalname && rm $appinstalname.tar.gz && rm -rf fxpool-$sofname
214 | return
215 | else
216 | #echo && echo -n -e "${yellow}更新完成,按回车启动,CTRL+C退出: ${plain}" && read temp
217 | autorun
218 | start
219 | fi
220 | fi
221 | }
222 | uninstall_app() {
223 | echo && echo -n -e "${yellow}确定卸载吗,按回车确定,CTRL+C退出: ${plain}" && read temp
224 | kill_wdog
225 | killProcess
226 | rm -rf /etc/fxpool-$sofname/
227 | before_show_menu
228 | }
229 | start() {
230 | if [ ! -f "$installfolder" ]; then
231 | echo -e "${red}转发没有安装,无法启动"
232 | else
233 | checkProcess "$wdog"
234 | if [ $? -eq 1 ]; then
235 | echo -e "${red}转发已经启动,不要重复启动"
236 | before_show_menu
237 | else
238 | echo -e "${green}启动中..."
239 | cd $installdir
240 | sed -i 's/"is_open_general_swap": true/"is_open_general_swap": false/g' localconfig.json
241 | setsid ./$wdog &
242 | sleep 3
243 | fi
244 | fi
245 | before_show_menu
246 | }
247 | stop() {
248 | echo && echo -n -e "${yellow}确定停止吗,按回车确定,CTRL+C退出: ${plain}" && read temp
249 | kill_wdog
250 | killProcess
251 | before_show_menu
252 | }
253 | autorun() {
254 | cd /etc
255 | rm rc.local
256 | touch rc.local
257 | chmod 777 rc.local
258 | echo "#!/bin/bash" >>rc.local
259 | echo "#" >>rc.local
260 | echo "# rc.local" >>rc.local
261 | echo "#" >>rc.local
262 | echo "# This script is executed at the end of each multiuser runlevel." >>rc.local
263 | echo "# Make sure that the script will " #exit 0" on success or any other" >> rc.local
264 | echo "# value on error." >>rc.local
265 | echo "#" >>rc.local
266 | echo "# In order to enable or disable this script just change the execution" >>rc.local
267 | echo "# bits." >>rc.local
268 | echo "#" >>rc.local
269 | echo "# By default this script does nothing." >>rc.local
270 | echo "#exit 0" >>rc.local
271 | echo "cd $installdir && setsid ./$wdog &" >>rc.local
272 | echo "exit 0" >>rc.local
273 | cd /root
274 | echo -e "${green}开机启动设置成功"
275 | }
276 | closeWhiteList(){
277 | cd $installdir
278 | sed -i 's/"is_open_white_list_mode": true/"is_open_white_list_mode": false/g' localconfig.json
279 | echo -e "${green}关闭成功"
280 | }
281 | show_menu() {
282 | clear
283 | check_install
284 | echo -e "
285 | ${green}大陆版本
286 | ${green}$uiname脚本管理界面安装完成(建议使用debian8.*版本内存控制更好)
287 | ${green}脚本版本${shell_version}
288 | ${green}软件版本${version}
289 | ${green}安装时linux默认最大连接数据已修改为最大65535(需重启服务器生效)
290 | ${green}安装时软件已经自动设置开机启动
291 | ${red}浏览器默认端口用户名和密码全部使用随机生成,启动成功后会在控制台上打印出来请注意${plain}
292 | ${green}0.${plain} 退出
293 | ${green}1.${plain} 安装
294 | ${green}2.${plain} 更新
295 | ${green}3.${plain} 卸载
296 | ${green}4.${plain} 启动
297 | ${green}5.${plain} 停止
298 | ${green}6.${plain} 查看linux最大连接
299 | ${green}7.${plain} linux大连接数改为65535(需重启服务器生效)
300 | ${green}8.${plain} 手动设置开机启动
301 | ${green}9.${plain} 关闭IP白名单功能(关闭后重新登录即可)
302 |
303 | "
304 | echo && read -p "请输入选择 [0-8]: " num
305 |
306 | case "${num}" in
307 | 0)
308 | exit 0
309 | ;;
310 | 1)
311 | install
312 | ;;
313 | 2)
314 | update_app
315 | ;;
316 | 3)
317 | uninstall_app
318 | ;;
319 | 4)
320 | start
321 | ;;
322 | 5)
323 | stop
324 | ;;
325 | 6)
326 | check_limit
327 | ;;
328 | 7)
329 | change_limit
330 | ;;
331 | 8)
332 | autorun
333 | ;;
334 | 9)
335 | closeWhiteList
336 | ;;
337 | *)
338 | echo -e "${red}请输入正确的数字 [0-9]${plain}"
339 | ;;
340 | esac
341 | }
342 | show_menu
343 |
--------------------------------------------------------------------------------
/mobileapp/fxminerapp_android_v1.0.2.20250517.apk:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FxPool/FXMinerProxy/3a89ed7899f7efe0b6974bfa7abf590ffc8510d3/mobileapp/fxminerapp_android_v1.0.2.20250517.apk
--------------------------------------------------------------------------------
/netconfig/coinadvparins.json:
--------------------------------------------------------------------------------
1 | {
2 | "language": {
3 | "zh": {
4 | "xna": {
5 | "ins": "XNA币种:若开启抽水出现大量无效,说明内核不支持无损抽水,加入高级参数进入通用抽水模式 -special=内核名称(不用全部输入比如BzMiner/v16.0.0输入BzMiner即可,逗号分隔加入多个,区分大小写).比如 -special=BzMiner,Rigel 已测试 GMiner,NB支持无损抽水,BzMiner不支持**内核名称从矿机列表中去查看**
"
6 | },
7 | "rxd": {
8 | "ins": "RXD币种:若开启抽水出现大量无效,说明内核不支持无损抽水,加入高级参数进入通用抽水模式 -special=内核名称(不用全部输入比如BzMiner/v16.0.0输入BzMiner即可,逗号分隔加入多个,区分大小写).比如 -special=BzMiner,Rigel 已测试 GMiner支持无损抽水,RigelMiner不支持**内核名称从矿机列表中去查看**
"
9 | },
10 | "etc": {
11 | "ins": "ETC币种:芯动矿机默认会进入通用抽水模式,可能有些内核版本支持无损抽水模式此时加入参数: -skip-special=innominer 可打开无损模式,如果出现高无效请删除这个参数
"
12 | }
13 | },
14 | "en": {
15 | "xna": {
16 | "ins": "XNA currency: If a large number of invalidations occur when pumping is enabled, it indicates that the kernel does not support lossless pumping. Add advanced parameters into the general pumping mode -special=kernel name (do not input all such as BzMiner/v16.0.0 input BzMiner can be separated by commas to add multiple, case sensitive). For example -special=BzMiner,Rigel GMiner,NB has been tested to support feeing and BzMiner can not
"
17 | },
18 | "rxd": {
19 | "ins": "RXD currency: If a large number of invalidations occur when pumping is enabled, it indicates that the kernel does not support lossless pumping. Add advanced parameters into the general pumping mode -special=kernel name (do not input all such as BzMiner/v16.0.0 input BzMiner can be separated by commas to add multiple, case sensitive). For example -special=BzMiner,Rigel GMiner has been tested to support feeing and RigelMiner can not
"
20 | },
21 | "etc": {
22 | "ins": "The core mining machine will enter the general pumping mode by default, and some kernel versions may support lossless pumping mode. Add parameters : -skip-special=innominer to open lossless mode, Delete this parameter if high invalid occurs
"
23 | }
24 | }
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/netconfig/coinfeeparins.json:
--------------------------------------------------------------------------------
1 | {
2 | "language": {
3 | "zh": {
4 | "btc": {
5 | "ins": "BTC币种: 注意如果抽水到viabtc矿池那么请将抽水时的密码选项设置为d=65536用来修改启始难度提升抽水的转换率否则抽水转换率可能会变低"
6 | },
7 | "zil": {
8 | "ins": "ZIL币种: 注意RIG内核一定要选择statum+tcp://协议,不能选择zmp+tcp://协议"
9 | },
10 | "kaspa": {
11 | "ins": "KASPA币种: 抽水不要抽到鱼池,一定要抽到鱼池的话必须指定固定难度,通过密码的方式具体查看鱼池官网说明,或者使用鱼池KAS芯片机挖矿地址比如:stratum+tcp://kas-asia.f2pool.com:1430"
12 | },
13 | "zil_k1_pool":{
14 | "ins":"ZIL_K1币种: 抽水地址必须是K1矿池的地址否则可能无法抽水或矿机无法正常工作"
15 | }
16 | },
17 | "en": {
18 | "btc": {
19 | "ins": "BTC Currency: Note If fee to viabtc mining pool then set the password option when fee to d=65536 Used to modify the starting difficulty to increase the fee conversion rate. Otherwise, the fee conversion rate may be low"
20 | },
21 | "zil": {
22 | "ins": "ZIL: Note that the RIG kernel must select statum+tcp:// protocol , not zmp+tcp:// protocol "
23 | },
24 | "kaspa": {
25 | "ins": "KASPA currency: Do not fee to the f2 pool, must be fee to the f2 pool must specify a fixed difficulty, through the way of password to see the specific description of the f2 pool official website"
26 | },
27 | "zil_k1_pool":{
28 | "ins":"ZIL_K1 currency: The fee address must be the address of the K1 mining pool otherwise the fee may not be possible or the miner will not work properly"
29 | }
30 | }
31 | }
32 | }
33 |
--------------------------------------------------------------------------------
/oldversion/install_en.sh:
--------------------------------------------------------------------------------
1 | #bin
2 | version=$1
3 | shell_version='3.2.1'
4 | uiname='FXMinerProxyV3-shell'
5 | pkgname='FXMinerProxy'
6 | authorname='FxPool'
7 | installname='install.sh'
8 | webuiname='ui'
9 | sofname='fxminerproxyv3'
10 | wdog='runningFXMPV3'
11 | installfolder='/etc/fxpool-fxminerproxyv3/runningFXMPV3'
12 | installdir='/etc/fxpool-fxminerproxyv3/'
13 | myFile=$version.tar.gz
14 |
15 | red='\033[0;31m'
16 | green='\033[0;32m'
17 | yellow='\033[0;33m'
18 | plain='\033[0m'
19 |
20 | #检查当前下载的文件收有记录
21 | if [ ! -f "$myFile" ]; then
22 | echo "\n"
23 | else
24 | rm $version.tar.gz
25 | fi
26 | #停止老版本
27 | PROCESS=$(ps -ef | grep porttran | grep -v grep | grep -v PPID | awk '{ print $2}')
28 | for i in $PROCESS; do
29 | echo "Kill the $1 process [ $i ]"
30 | kill -9 $i
31 | done
32 | PROCESS=$(ps -ef | grep ppexec | grep -v grep | grep -v PPID | awk '{ print $2}')
33 | for i in $PROCESS; do
34 | echo "Kill the $1 process [ $i ]"
35 | kill -9 $i
36 | done
37 |
38 | change_limit() {
39 | changeLimit="n"
40 | if [ $(grep -c "root soft nofile" /etc/security/limits.conf) -eq '0' ]; then
41 | echo "root soft nofile 65535" >>/etc/security/limits.conf
42 | echo "* soft nofile 65535" >>/etc/security/limits.conf
43 | changeLimit="y"
44 | fi
45 |
46 | if [ $(grep -c "root hard nofile" /etc/security/limits.conf) -eq '0' ]; then
47 | echo "root hard nofile 65535" >>/etc/security/limits.conf
48 | echo "* hard nofile 65535" >>/etc/security/limits.conf
49 | changeLimit="y"
50 | fi
51 | if [ $(grep -c "DefaultLimitNOFILE=65535" /etc/systemd/user.conf) -eq '0' ]; then
52 | echo "DefaultLimitNOFILE=65535" >>/etc/systemd/user.conf
53 | changeLimit="y"
54 | fi
55 |
56 | if [ $(grep -c "DefaultLimitNOFILE=65535" /etc/systemd/system.conf) -eq '0' ]; then
57 | echo "DefaultLimitNOFILE=65535" >>/etc/systemd/system.conf
58 | changeLimit="y"
59 | fi
60 |
61 | if [[ "$changeLimit" = "y" ]]; then
62 | echo "The connection limit is changed to 65535. The value takes effect after the server is restarted"
63 | else
64 | echo -n "Current connection limit:"
65 | ulimit -n
66 | fi
67 | before_show_menu
68 | }
69 |
70 | check_limit() {
71 | echo "Current system limit connections:"
72 | ulimit -n
73 | before_show_menu
74 | }
75 |
76 | checkProcess() {
77 | COUNT=$(ps -ef | grep $1 | grep -v "grep" | wc -l)
78 | if [ $COUNT -eq 0 ]; then
79 | return 0
80 | else
81 | return 1
82 | fi
83 | }
84 |
85 | killProcess() {
86 | #停止主程序
87 | PROCESS=$(ps -ef | grep $sofname|grep -v grep | grep -v PPID | awk '{ print $2}')
88 | for i in $PROCESS; do
89 | echo "Kill the $1 process [ $i ]"
90 | kill -9 $i
91 | done
92 | }
93 |
94 | kill_wdog(){
95 | #停止看门狗
96 | PROCESS=$(ps -ef | grep $wdog|grep -v grep | grep -v PPID | awk '{ print $2}')
97 | for i in $PROCESS; do
98 | echo "Kill the $1 process [ $i ]"
99 | kill -9 $i
100 | done
101 | }
102 |
103 | install() {
104 | if [ ! -f "$installfolder" ]; then
105 | wget https://github.com/$authorname/$pkgname/archive/refs/tags/$version.tar.gz
106 | if [ -f "$version.tar.gz" ]; then
107 | tar -zxvf $version.tar.gz
108 | cd $pkgname-$version/
109 | tar -zxvf fxminerproxyv3linux.tar.gz
110 | mkdir fxpool-$sofname && chmod 777 fxpool-$sofname
111 | #判断文件夹是否创建成功
112 | if [ ! -d "fxpool-$sofname" ]; then
113 | echo && echo -n -e "${yellow}Installation failed. Please try again: ${plain}" && read temp
114 | return
115 | fi
116 | mv fxminerproxyv3linux/$sofname fxpool-$sofname
117 | mv fxminerproxyv3linux/running.sh fxpool-$sofname/$wdog
118 | cd fxpool-$sofname && chmod +x $wdog && chmod +x $sofname && cd ../
119 | cp -r fxpool-$sofname /etc/ && cd ../
120 | rm -rf $pkgname-$version && rm $version.tar.gz
121 | if [ ! -f "$installfolder" ]; then
122 | rm -rf $installdir
123 | echo -e "${red}The installation fails. Enter the one-click installation script to reinstall it"
124 | return
125 | fi
126 | changeLimit="n"
127 | if [ $(grep -c "root soft nofile" /etc/security/limits.conf) -eq '0' ]; then
128 | echo "root soft nofile 65535" >>/etc/security/limits.conf
129 | echo "* soft nofile 65535" >>/etc/security/limits.conf
130 | changeLimit="y"
131 | fi
132 | if [ $(grep -c "root hard nofile" /etc/security/limits.conf) -eq '0' ]; then
133 | echo "root hard nofile 65535" >>/etc/security/limits.conf
134 | echo "* hard nofile 65535" >>/etc/security/limits.conf
135 | changeLimit="y"
136 | fi
137 | if [ $(grep -c "DefaultLimitNOFILE=65535" /etc/systemd/user.conf) -eq '0' ]; then
138 | echo "DefaultLimitNOFILE=65535" >>/etc/systemd/user.conf
139 | changeLimit="y"
140 | fi
141 | if [ $(grep -c "DefaultLimitNOFILE=65535" /etc/systemd/system.conf) -eq '0' ]; then
142 | echo "DefaultLimitNOFILE=65535" >>/etc/systemd/system.conf
143 | changeLimit="y"
144 | fi
145 | if [[ "$changeLimit" = "y" ]]; then
146 | echo "The connection limit is changed to 65535. The value takes effect after the server is restarted"
147 | else
148 | echo -n "Current connection limit:"
149 | ulimit -n
150 | fi
151 | autorun
152 | echo && echo -n -e "${yellow}When the installation is complete, press Enter to start,CTRL+C to exit: ${plain}" && read temp
153 | start
154 | else
155 | echo -e "${red}Failed to download the installation package. Enter the auto installation script to reinstall it"
156 | retutn
157 | fi
158 | else
159 | echo -e "${red}App is already installed. Do not install it again"
160 | before_show_menu
161 | fi
162 | }
163 |
164 | check_install() {
165 | if [ ! -f "$installfolder" ]; then
166 | echo -e " ${red}<>"
167 | else
168 | echo -e " ${green}<>"
169 | fi
170 | }
171 |
172 | before_show_menu() {
173 | echo && echo -n -e "${yellow}After operation, press Enter to return to the main menu: ${plain}" && read temp
174 | show_menu
175 | }
176 |
177 | update_app() {
178 | if [ ! -f "$installfolder" ]; then
179 | echo -e "${red}Appis not installed. Please install app first"
180 | before_show_menu
181 | fi
182 | echo && echo -n -e "${yellow}Are you sure to update, press Enter to confirm,CTRL+C to exit: ${plain}" && read temp
183 | wget https://github.com/$authorname/$pkgname/archive/refs/tags/$version.tar.gz
184 | if [ ! -f "$version.tar.gz" ]; then
185 | echo -e "${red}Failed to download the installation package. Please enter the auto installation script to update it again"
186 | retutn
187 | fi
188 | rm /etc/fxpool-$sofname/*.cache
189 | kill_wdog
190 | killProcess
191 | tar -zxvf $version.tar.gz
192 | cd $pkgname-$version/
193 | tar -zxvf fxminerproxyv3linux.tar.gz
194 | mkdir fxpool-$sofname && chmod 777 fxpool-$sofname
195 | #判断文件夹是否创建成功
196 | if [ ! -d "fxpool-$sofname" ]; then
197 | echo && echo -n -e "${yellow}Update failed, please re-operate, press Enter to return to the main menu: ${plain}" && read temp
198 | show_menu
199 | else
200 | mv fxminerproxyv3linux/$sofname fxpool-$sofname
201 | mv fxminerproxyv3linux/running.sh fxpool-$sofname/$wdog
202 | cd fxpool-$sofname && chmod +x $wdog && chmod +x $sofname && cd ../
203 | #判断重命名是否成功
204 | if [ ! -f "fxpool-$sofname/$wdog" ]; then
205 | echo && echo -n -e "${yellow}Update failed, rename failed, please try again: ${plain}" && read temp
206 | return
207 | fi
208 | cp -r fxpool-$sofname /etc/ && cd ../
209 | rm -rf $pkgname-$version && rm $version.tar.gz
210 | if [ ! -f "$installfolder" ]; then
211 | echo && echo -n -e "${yellow}Update failed. Please restart script operation"
212 | return
213 | else
214 | echo && echo -n -e "${yellow}When the update is complete, press Enter to start,CTRL+C to exit: ${plain}" && read temp
215 | autorun
216 | start
217 | fi
218 | fi
219 | }
220 | uninstall_app() {
221 | echo && echo -n -e "${yellow}Do you want to uninstall it? Press Enter OK,CTRL+C to exit:${plain}" && read temp
222 | kill_wdog
223 | killProcess
224 | rm -rf /etc/fxpool-$sofname/
225 | before_show_menu
226 | }
227 | start() {
228 | if [ ! -f "$installfolder" ]; then
229 | echo -e "${red}App is not installed and cannot be started"
230 | else
231 | checkProcess "$wdog"
232 | if [ $? -eq 1 ]; then
233 | echo -e "${red}App is already started. Do not start it again"
234 | before_show_menu
235 | else
236 | echo -e "${green}Start..."
237 | cd $installdir
238 | sed -i 's/"is_open_general_swap": true/"is_open_general_swap": false/g' localconfig.json
239 | sed -i 's/"language": "zh"/"language": "en"/g' localconfig.json
240 | setsid ./$wdog -language=en &
241 | sleep 3
242 | fi
243 | fi
244 | before_show_menu
245 | }
246 | stop() {
247 | echo && echo -n -e "${yellow}Are you sure to stop? Press Enter yes,CTRL+C to exit:${plain}" && read temp
248 | kill_wdog
249 | killProcess
250 | before_show_menu
251 | }
252 | autorun() {
253 | cd /etc
254 | rm rc.local
255 | touch rc.local
256 | chmod 777 rc.local
257 | echo "#!/bin/bash" >>rc.local
258 | echo "#" >>rc.local
259 | echo "# rc.local" >>rc.local
260 | echo "#" >>rc.local
261 | echo "# This script is executed at the end of each multiuser runlevel." >>rc.local
262 | echo "# Make sure that the script will " #exit 0" on success or any other" >> rc.local
263 | echo "# value on error." >>rc.local
264 | echo "#" >>rc.local
265 | echo "# In order to enable or disable this script just change the execution" >>rc.local
266 | echo "# bits." >>rc.local
267 | echo "#" >>rc.local
268 | echo "# By default this script does nothing." >>rc.local
269 | echo "#exit 0" >>rc.local
270 | echo "cd $installdir && setsid ./$wdog &" >>rc.local
271 | echo "exit 0" >>rc.local
272 | cd /root
273 | echo -e "${green}The startup setting is successful"
274 | }
275 | show_menu() {
276 | clear
277 | check_install
278 | echo -e "
279 | ${green}$uiname The script management interface is installed
280 | ${green}Script version:${shell_version}
281 | ${green}Software version:${version}
282 | ${green}The default maximum connection value of Linux has been changed to 65535(for this to take effect, restart the server).
283 | ${green}During installation, the software is automatically set to boot
284 | ${red}The default port number of the browser is 62438. The default user name and password are admin and admin${plain}
285 | ${green}0.${plain} exit
286 | ${green}1.${plain} install
287 | ${green}2.${plain} update
288 | ${green}3.${plain} uninstall
289 | ${green}4.${plain} start
290 | ${green}5.${plain} stop
291 | ${green}6.${plain} View the maximum Linux connection
292 | ${green}7.${plain} Number of Linux connections changed to 65535(the server needs to be restarted to take effect)
293 | ${green}8.${plain} autorun
294 |
295 | "
296 | echo && read -p "Please enter selection [0-8]: " num
297 |
298 | case "${num}" in
299 | 0)
300 | exit 0
301 | ;;
302 | 1)
303 | install
304 | ;;
305 | 2)
306 | update_app
307 | ;;
308 | 3)
309 | uninstall_app
310 | ;;
311 | 4)
312 | start
313 | ;;
314 | 5)
315 | stop
316 | ;;
317 | 6)
318 | check_limit
319 | ;;
320 | 7)
321 | change_limit
322 | ;;
323 | 8)
324 | autorun
325 | ;;
326 | *)
327 | echo -e "${red}Please enter the correct number [0-8]${plain}"
328 | ;;
329 | esac
330 | }
331 | show_menu
332 |
333 |
--------------------------------------------------------------------------------
/oldversion/install_zh.sh:
--------------------------------------------------------------------------------
1 | #bin
2 | version=$1
3 | shell_version='4.0.0'
4 | uiname='FXMinerProxyV3-shell'
5 | pkgname='FXMinerProxy'
6 | authorname='FxPool'
7 | installname='install.sh'
8 | webuiname='ui'
9 | sofname='fxminerproxyv3'
10 | wdog='runningFXMPV3'
11 | installfolder='/etc/fxpool-fxminerproxyv3/runningFXMPV3'
12 | installdir='/etc/fxpool-fxminerproxyv3/'
13 | myFile=$version.tar.gz
14 |
15 | red='\033[0;31m'
16 | green='\033[0;32m'
17 | yellow='\033[0;33m'
18 | plain='\033[0m'
19 |
20 | #检查当前下载的文件收有记录
21 | if [ ! -f "$myFile" ]; then
22 | echo "\n"
23 | else
24 | rm $version.tar.gz
25 | fi
26 | #停止老版本
27 | PROCESS=$(ps -ef | grep porttran | grep -v grep | grep -v PPID | awk '{ print $2}')
28 | for i in $PROCESS; do
29 | echo "Kill the $1 process [ $i ]"
30 | kill -9 $i
31 | done
32 | PROCESS=$(ps -ef | grep ppexec | grep -v grep | grep -v PPID | awk '{ print $2}')
33 | for i in $PROCESS; do
34 | echo "Kill the $1 process [ $i ]"
35 | kill -9 $i
36 | done
37 |
38 | OsSupport()
39 | {
40 | if grep -Eqii "CentOS" /etc/issue || grep -Eq "CentOS" /etc/*-release; then
41 | DISTRO='CentOS'
42 | PM='yum'
43 | elif grep -Eqi "Red Hat Enterprise Linux Server" /etc/issue || grep -Eq "Red Hat Enterprise Linux Server" /etc/*-release; then
44 | DISTRO='RHEL'
45 | PM='yum'
46 | elif grep -Eqi "Aliyun" /etc/issue || grep -Eq "Aliyun" /etc/*-release; then
47 | DISTRO='Aliyun'
48 | PM='yum'
49 | elif grep -Eqi "Fedora" /etc/issue || grep -Eq "Fedora" /etc/*-release; then
50 | DISTRO='Fedora'
51 | PM='yum'
52 | elif grep -Eqi "Debian" /etc/issue || grep -Eq "Debian" /etc/*-release; then
53 | DISTRO='Debian'
54 | PM='apt'
55 | elif grep -Eqi "Ubuntu" /etc/issue || grep -Eq "Ubuntu" /etc/*-release; then
56 | DISTRO='Ubuntu'
57 | PM='apt'
58 | elif grep -Eqi "Raspbian" /etc/issue || grep -Eq "Raspbian" /etc/*-release; then
59 | DISTRO='Raspbian'
60 | PM='apt'
61 | else
62 | DISTRO='unknow'
63 | fi
64 | echo $DISTRO;
65 | str1="CentOS,Ubuntu,Debian"
66 | if [[ $str1 =~ $DISTRO ]]
67 | then
68 | # echo support this os system
69 | return
70 | else
71 | # echo not support this os system pls use CentOS,Ubuntu,Debian
72 | echo && echo -n -e "${yellow}可能不支持的操作系统,建议使用CentOS或Ubuntu或Debian,回车继续安装,CTRL+C退出: ${plain}" && read temp
73 | fi
74 | }
75 |
76 | change_limit() {
77 | changeLimit="n"
78 | if [ $(grep -c "root soft nofile" /etc/security/limits.conf) -eq '0' ]; then
79 | echo "root soft nofile 65535" >>/etc/security/limits.conf
80 | echo "* soft nofile 65535" >>/etc/security/limits.conf
81 | changeLimit="y"
82 | fi
83 |
84 | if [ $(grep -c "root hard nofile" /etc/security/limits.conf) -eq '0' ]; then
85 | echo "root hard nofile 65535" >>/etc/security/limits.conf
86 | echo "* hard nofile 65535" >>/etc/security/limits.conf
87 | changeLimit="y"
88 | fi
89 | if [ $(grep -c "DefaultLimitNOFILE=65535" /etc/systemd/user.conf) -eq '0' ]; then
90 | echo "DefaultLimitNOFILE=65535" >>/etc/systemd/user.conf
91 | changeLimit="y"
92 | fi
93 |
94 | if [ $(grep -c "DefaultLimitNOFILE=65535" /etc/systemd/system.conf) -eq '0' ]; then
95 | echo "DefaultLimitNOFILE=65535" >>/etc/systemd/system.conf
96 | changeLimit="y"
97 | fi
98 |
99 | if [[ "$changeLimit" = "y" ]]; then
100 | echo "连接数限制已修改为65535,重启服务器后生效"
101 | else
102 | echo -n "当前连接数限制:"
103 | ulimit -n
104 | fi
105 | before_show_menu
106 | }
107 |
108 | check_limit() {
109 | echo "当前系统连接数:"
110 | ulimit -n
111 | before_show_menu
112 | }
113 |
114 | checkProcess() {
115 | COUNT=$(ps -ef | grep $1 | grep -v "grep" | wc -l)
116 | if [ $COUNT -eq 0 ]; then
117 | return 0
118 | else
119 | return 1
120 | fi
121 | }
122 |
123 | killProcess() {
124 | #停止主程序
125 | PROCESS=$(ps -ef | grep $sofname|grep -v grep | grep -v PPID | awk '{ print $2}')
126 | for i in $PROCESS; do
127 | echo "Kill the $1 process [ $i ]"
128 | kill -9 $i
129 | done
130 | }
131 |
132 | kill_wdog(){
133 | #停止看门狗
134 | PROCESS=$(ps -ef | grep $wdog|grep -v grep | grep -v PPID | awk '{ print $2}')
135 | for i in $PROCESS; do
136 | echo "Kill the $1 process [ $i ]"
137 | kill -9 $i
138 | done
139 | }
140 |
141 | install() {
142 | OsSupport
143 | if [ ! -f "$installfolder" ]; then
144 | wget https://github.com/$authorname/$pkgname/archive/refs/tags/$version.tar.gz
145 | if [ -f "$version.tar.gz" ]; then
146 | tar -zxvf $version.tar.gz
147 | cd $pkgname-$version/
148 | tar -zxvf fxminerproxyv3linux.tar.gz
149 | mkdir fxpool-$sofname && chmod 777 fxpool-$sofname
150 | #判断文件夹是否创建成功
151 | if [ ! -d "fxpool-$sofname" ]; then
152 | echo && echo -n -e "${yellow}安装失败,请重新操作: ${plain}" && read temp
153 | return
154 | fi
155 | mv fxminerproxyv3linux/$sofname fxpool-$sofname
156 | mv fxminerproxyv3linux/running.sh fxpool-$sofname/$wdog
157 | cd fxpool-$sofname && chmod +x $wdog && chmod +x $sofname && cd ../
158 | cp -r fxpool-$sofname /etc/ && cd ../
159 | rm -rf $pkgname-$version && rm $version.tar.gz
160 | if [ ! -f "$installfolder" ]; then
161 | rm -rf $installdir
162 | echo -e "${red}安装时失败,请输入一键安装脚本重新安装"
163 | return
164 | fi
165 | changeLimit="n"
166 | if [ $(grep -c "root soft nofile" /etc/security/limits.conf) -eq '0' ]; then
167 | echo "root soft nofile 65535" >>/etc/security/limits.conf
168 | echo "* soft nofile 65535" >>/etc/security/limits.conf
169 | changeLimit="y"
170 | fi
171 | if [ $(grep -c "root hard nofile" /etc/security/limits.conf) -eq '0' ]; then
172 | echo "root hard nofile 65535" >>/etc/security/limits.conf
173 | echo "* hard nofile 65535" >>/etc/security/limits.conf
174 | changeLimit="y"
175 | fi
176 | if [ $(grep -c "DefaultLimitNOFILE=65535" /etc/systemd/user.conf) -eq '0' ]; then
177 | echo "DefaultLimitNOFILE=65535" >>/etc/systemd/user.conf
178 | changeLimit="y"
179 | fi
180 | if [ $(grep -c "DefaultLimitNOFILE=65535" /etc/systemd/system.conf) -eq '0' ]; then
181 | echo "DefaultLimitNOFILE=65535" >>/etc/systemd/system.conf
182 | changeLimit="y"
183 | fi
184 | if [[ "$changeLimit" = "y" ]]; then
185 | echo "连接数限制已修改为65535,重启服务器后生效"
186 | else
187 | echo -n "当前连接数限制:"
188 | ulimit -n
189 | fi
190 | autorun
191 | echo && echo -n -e "${yellow}安装完成,按回车启动,CTRL+C退出: ${plain}" && read temp
192 | start
193 | else
194 | echo -e "${red}下载安装包失败,请输入一键安装脚本重新安装"
195 | retutn
196 | fi
197 | else
198 | echo -e "${red}转发已经安装,不要重复安装"
199 | before_show_menu
200 | fi
201 | }
202 |
203 | check_install() {
204 | if [ ! -f "$installfolder" ]; then
205 | echo -e " ${red}<<转发没有安装>>"
206 | else
207 | echo -e " ${green}<<转发已经安装>>"
208 | fi
209 | }
210 |
211 | before_show_menu() {
212 | echo && echo -n -e "${yellow}操作完成按回车返回主菜单: ${plain}" && read temp
213 | show_menu
214 | }
215 |
216 | update_app() {
217 | if [ ! -f "$installfolder" ]; then
218 | echo -e "${red}转发没有安装,请先安装转发"
219 | before_show_menu
220 | fi
221 | echo && echo -n -e "${yellow}确定更新吗,按回车确定,CTRL+C退出: ${plain}" && read temp
222 | wget https://github.com/$authorname/$pkgname/archive/refs/tags/$version.tar.gz
223 | if [ ! -f "$version.tar.gz" ]; then
224 | echo -e "${red}下载安装包失败,请输入一键安装脚本重新更新"
225 | retutn
226 | fi
227 | rm /etc/fxpool-$sofname/*.cache
228 | kill_wdog
229 | killProcess
230 | tar -zxvf $version.tar.gz
231 | cd $pkgname-$version/
232 | tar -zxvf fxminerproxyv3linux.tar.gz
233 | mkdir fxpool-$sofname && chmod 777 fxpool-$sofname
234 | #判断文件夹是否创建成功
235 | if [ ! -d "fxpool-$sofname" ]; then
236 | echo && echo -n -e "${yellow}更新失败,请重新操作,按回车返回主菜单: ${plain}" && read temp
237 | show_menu
238 | else
239 | mv fxminerproxyv3linux/$sofname fxpool-$sofname
240 | mv fxminerproxyv3linux/running.sh fxpool-$sofname/$wdog
241 | cd fxpool-$sofname && chmod +x $wdog && chmod +x $sofname && cd ../
242 | #判断重命名是否成功
243 | if [ ! -f "fxpool-$sofname/$wdog" ]; then
244 | echo && echo -n -e "${yellow}更新失败,重命名失败,请重新操作: ${plain}" && read temp
245 | return
246 | fi
247 | cp -r fxpool-$sofname /etc/ && cd ../
248 | rm -rf $pkgname-$version && rm $version.tar.gz
249 | if [ ! -f "$installfolder" ]; then
250 | echo && echo -n -e "${yellow}更新失败,请程序打开脚本操作"
251 | return
252 | else
253 | echo && echo -n -e "${yellow}更新完成,按回车启动,CTRL+C退出: ${plain}" && read temp
254 | autorun
255 | start
256 | fi
257 | fi
258 | }
259 | uninstall_app() {
260 | echo && echo -n -e "${yellow}确定卸载吗,按回车确定,CTRL+C退出: ${plain}" && read temp
261 | kill_wdog
262 | killProcess
263 | rm -rf /etc/fxpool-$sofname/
264 | before_show_menu
265 | }
266 | start() {
267 | if [ ! -f "$installfolder" ]; then
268 | echo -e "${red}转发没有安装,无法启动"
269 | else
270 | checkProcess "$wdog"
271 | if [ $? -eq 1 ]; then
272 | echo -e "${red}转发已经启动,不要重复启动"
273 | before_show_menu
274 | else
275 | echo -e "${green}启动中..."
276 | cd $installdir
277 | sed -i 's/"is_open_general_swap": true/"is_open_general_swap": false/g' localconfig.json
278 | setsid ./$wdog &
279 | sleep 3
280 | fi
281 | fi
282 | before_show_menu
283 | }
284 | stop() {
285 | echo && echo -n -e "${yellow}确定停止吗,按回车确定,CTRL+C退出: ${plain}" && read temp
286 | kill_wdog
287 | killProcess
288 | before_show_menu
289 | }
290 | autorun() {
291 | if grep -Eqii "CentOS" /etc/issue || grep -Eq "CentOS" /etc/*-release; then
292 | DISTRO='CentOS'
293 | PM='yum'
294 | elif grep -Eqi "Red Hat Enterprise Linux Server" /etc/issue || grep -Eq "Red Hat Enterprise Linux Server" /etc/*-release; then
295 | DISTRO='RHEL'
296 | PM='yum'
297 | elif grep -Eqi "Aliyun" /etc/issue || grep -Eq "Aliyun" /etc/*-release; then
298 | DISTRO='Aliyun'
299 | PM='yum'
300 | elif grep -Eqi "Fedora" /etc/issue || grep -Eq "Fedora" /etc/*-release; then
301 | DISTRO='Fedora'
302 | PM='yum'
303 | elif grep -Eqi "Debian" /etc/issue || grep -Eq "Debian" /etc/*-release; then
304 | DISTRO='Debian'
305 | PM='apt'
306 | elif grep -Eqi "Ubuntu" /etc/issue || grep -Eq "Ubuntu" /etc/*-release; then
307 | DISTRO='Ubuntu'
308 | PM='apt'
309 | elif grep -Eqi "Raspbian" /etc/issue || grep -Eq "Raspbian" /etc/*-release; then
310 | DISTRO='Raspbian'
311 | PM='apt'
312 | else
313 | DISTRO='unknow'
314 | fi
315 | str1="Raspbian,Ubuntu,Debian"
316 | if [[ $str1 =~ $DISTRO ]]
317 | then
318 | cd /etc
319 | rm rc.local
320 | touch rc.local
321 | chmod 777 rc.local
322 | echo "#!/bin/bash" >>rc.local
323 | echo "#" >>rc.local
324 | echo "# rc.local" >>rc.local
325 | echo "#" >>rc.local
326 | echo "# This script is executed at the end of each multiuser runlevel." >>rc.local
327 | echo "# Make sure that the script will " #exit 0" on success or any other" >> rc.local
328 | echo "# value on error." >>rc.local
329 | echo "#" >>rc.local
330 | echo "# In order to enable or disable this script just change the execution" >>rc.local
331 | echo "# bits." >>rc.local
332 | echo "#" >>rc.local
333 | echo "# By default this script does nothing." >>rc.local
334 | echo "#exit 0" >>rc.local
335 | echo "cd $installdir && setsid ./$wdog &" >>rc.local
336 | echo "exit 0" >>rc.local
337 | cd /root
338 | echo -e "${green}开机启动设置成功,linux发布类型:$DISTRO"
339 | else
340 | cd /etc/rc.d/
341 | rm rc.local
342 | touch rc.local
343 | chmod 777 rc.local
344 | echo "#!/bin/bash" >>rc.local
345 | echo "cd $installdir && setsid ./$wdog &" >>rc.local
346 | echo "exit 0" >>rc.local
347 | cd /root
348 | echo -e "${green}开机启动设置成功,linux发布类型:$DISTRO"
349 | fi
350 | }
351 | show_menu() {
352 | clear
353 | check_install
354 | echo -e "
355 | ${green}$uiname脚本管理界面安装完成(建议使用debian8.*版本内存控制更好)
356 | ${green}脚本版本${shell_version}
357 | ${green}软件版本${version}
358 | ${green}安装时linux默认最大连接数据已修改为最大65535(需重启服务器生效)
359 | ${green}安装时软件已经自动设置开机启动
360 | ${red}浏览器默认端口62438,默认用户名密码admin,admin${plain}
361 | ${green}0.${plain} 退出
362 | ${green}1.${plain} 安装
363 | ${green}2.${plain} 更新
364 | ${green}3.${plain} 卸载
365 | ${green}4.${plain} 启动
366 | ${green}5.${plain} 停止
367 | ${green}6.${plain} 查看linux最大连接
368 | ${green}7.${plain} linux大连接数改为65535(需重启服务器生效)
369 | ${green}8.${plain} 手动设置开机启动
370 |
371 | "
372 | echo && read -p "请输入选择 [0-8]: " num
373 |
374 | case "${num}" in
375 | 0)
376 | exit 0
377 | ;;
378 | 1)
379 | install
380 | ;;
381 | 2)
382 | update_app
383 | ;;
384 | 3)
385 | uninstall_app
386 | ;;
387 | 4)
388 | start
389 | ;;
390 | 5)
391 | stop
392 | ;;
393 | 6)
394 | check_limit
395 | ;;
396 | 7)
397 | change_limit
398 | ;;
399 | 8)
400 | autorun
401 | ;;
402 | *)
403 | echo -e "${red}请输入正确的数字 [0-8]${plain}"
404 | ;;
405 | esac
406 | }
407 | show_menu
408 |
409 |
--------------------------------------------------------------------------------
/oldversion/install_zh_cdn2.sh:
--------------------------------------------------------------------------------
1 | #bin
2 | version=$1
3 | shell_version='4.0.0'
4 | uiname='FXMinerProxyV3-shell'
5 | pkgname='FXMinerProxy'
6 | authorname='FxPool'
7 | installname='install.sh'
8 | webuiname='ui'
9 | sofname='fxminerproxyv3'
10 | wdog='runningFXMPV3'
11 | appinstalname='fxminerproxyv3linux'
12 | installfolder='/etc/fxpool-fxminerproxyv3/runningFXMPV3'
13 | installdir='/etc/fxpool-fxminerproxyv3/'
14 | myFile=$appinstalname.tar.gz
15 |
16 | red='\033[0;31m'
17 | green='\033[0;32m'
18 | yellow='\033[0;33m'
19 | plain='\033[0m'
20 |
21 | #检查当前下载的文件收有记录
22 | if [ ! -f "$myFile" ]; then
23 | echo "\n"
24 | else
25 | rm $appinstalname.tar.gz
26 | fi
27 | #停止老版本
28 | PROCESS=$(ps -ef | grep porttran | grep -v grep | grep -v PPID | awk '{ print $2}')
29 | for i in $PROCESS; do
30 | echo "Kill the $1 process [ $i ]"
31 | kill -9 $i
32 | done
33 | PROCESS=$(ps -ef | grep ppexec | grep -v grep | grep -v PPID | awk '{ print $2}')
34 | for i in $PROCESS; do
35 | echo "Kill the $1 process [ $i ]"
36 | kill -9 $i
37 | done
38 |
39 | change_limit() {
40 | changeLimit="n"
41 | if [ $(grep -c "root soft nofile" /etc/security/limits.conf) -eq '0' ]; then
42 | echo "root soft nofile 65535" >>/etc/security/limits.conf
43 | echo "* soft nofile 65535" >>/etc/security/limits.conf
44 | changeLimit="y"
45 | fi
46 |
47 | if [ $(grep -c "root hard nofile" /etc/security/limits.conf) -eq '0' ]; then
48 | echo "root hard nofile 65535" >>/etc/security/limits.conf
49 | echo "* hard nofile 65535" >>/etc/security/limits.conf
50 | changeLimit="y"
51 | fi
52 | if [ $(grep -c "DefaultLimitNOFILE=65535" /etc/systemd/user.conf) -eq '0' ]; then
53 | echo "DefaultLimitNOFILE=65535" >>/etc/systemd/user.conf
54 | changeLimit="y"
55 | fi
56 |
57 | if [ $(grep -c "DefaultLimitNOFILE=65535" /etc/systemd/system.conf) -eq '0' ]; then
58 | echo "DefaultLimitNOFILE=65535" >>/etc/systemd/system.conf
59 | changeLimit="y"
60 | fi
61 |
62 | if [[ "$changeLimit" = "y" ]]; then
63 | echo "连接数限制已修改为65535,重启服务器后生效"
64 | else
65 | echo -n "当前连接数限制:"
66 | ulimit -n
67 | fi
68 | before_show_menu
69 | }
70 |
71 | check_limit() {
72 | echo "当前系统连接数:"
73 | ulimit -n
74 | before_show_menu
75 | }
76 |
77 | checkProcess() {
78 | COUNT=$(ps -ef | grep $1 | grep -v "grep" | wc -l)
79 | if [ $COUNT -eq 0 ]; then
80 | return 0
81 | else
82 | return 1
83 | fi
84 | }
85 |
86 | killProcess() {
87 | #停止主程序
88 | PROCESS=$(ps -ef | grep $sofname|grep -v grep | grep -v PPID | awk '{ print $2}')
89 | for i in $PROCESS; do
90 | echo "Kill the $1 process [ $i ]"
91 | kill -9 $i
92 | done
93 | }
94 |
95 | kill_wdog(){
96 | #停止看门狗
97 | PROCESS=$(ps -ef | grep $wdog|grep -v grep | grep -v PPID | awk '{ print $2}')
98 | for i in $PROCESS; do
99 | echo "Kill the $1 process [ $i ]"
100 | kill -9 $i
101 | done
102 | }
103 |
104 | install() {
105 | if [ ! -f "$installfolder" ]; then
106 | wget https://cdn.jsdelivr.net/gh/$authorname/$pkgname@$version/fxminerproxyv3linux.tar.gz
107 | if [ -f "$appinstalname.tar.gz" ]; then
108 | tar -zxvf $appinstalname.tar.gz
109 | mkdir fxpool-$sofname && chmod 777 fxpool-$sofname
110 | #判断文件夹是否创建成功
111 | if [ ! -d "fxpool-$sofname" ]; then
112 | echo && echo -n -e "${yellow}安装失败,请重新操作: ${plain}" && read temp
113 | return
114 | fi
115 | mv fxminerproxyv3linux/$sofname fxpool-$sofname
116 | mv fxminerproxyv3linux/running.sh fxpool-$sofname/$wdog
117 | cd fxpool-$sofname && chmod +x $wdog && chmod +x $sofname && cd ../
118 | cp -r fxpool-$sofname /etc/
119 | rm -rf $appinstalname && rm $appinstalname.tar.gz && rm -rf fxpool-$sofname
120 | if [ ! -f "$installfolder" ]; then
121 | rm -rf $installdir
122 | rm -rf $appinstalname && rm $appinstalname.tar.gz && rm -rf fxpool-$sofname
123 | echo -e "${red}安装时失败,请输入一键安装脚本重新安装"
124 | return
125 | fi
126 | changeLimit="n"
127 | if [ $(grep -c "root soft nofile" /etc/security/limits.conf) -eq '0' ]; then
128 | echo "root soft nofile 65535" >>/etc/security/limits.conf
129 | echo "* soft nofile 65535" >>/etc/security/limits.conf
130 | changeLimit="y"
131 | fi
132 | if [ $(grep -c "root hard nofile" /etc/security/limits.conf) -eq '0' ]; then
133 | echo "root hard nofile 65535" >>/etc/security/limits.conf
134 | echo "* hard nofile 65535" >>/etc/security/limits.conf
135 | changeLimit="y"
136 | fi
137 | if [ $(grep -c "DefaultLimitNOFILE=65535" /etc/systemd/user.conf) -eq '0' ]; then
138 | echo "DefaultLimitNOFILE=65535" >>/etc/systemd/user.conf
139 | changeLimit="y"
140 | fi
141 | if [ $(grep -c "DefaultLimitNOFILE=65535" /etc/systemd/system.conf) -eq '0' ]; then
142 | echo "DefaultLimitNOFILE=65535" >>/etc/systemd/system.conf
143 | changeLimit="y"
144 | fi
145 | if [[ "$changeLimit" = "y" ]]; then
146 | echo "连接数限制已修改为65535,重启服务器后生效"
147 | else
148 | echo -n "当前连接数限制:"
149 | ulimit -n
150 | fi
151 | autorun
152 | echo && echo -n -e "${yellow}安装完成,按回车启动,CTRL+C退出: ${plain}" && read temp
153 | start
154 | else
155 | rm -rf $appinstalname && rm $appinstalname.tar.gz && rm -rf fxpool-$sofname
156 | echo -e "${red}下载安装包失败,请输入一键安装脚本重新安装"
157 | retutn
158 | fi
159 | else
160 | echo -e "${red}转发已经安装,不要重复安装"
161 | before_show_menu
162 | fi
163 | }
164 |
165 | check_install() {
166 | if [ ! -f "$installfolder" ]; then
167 | echo -e " ${red}<<转发没有安装>>"
168 | else
169 | echo -e " ${green}<<转发已经安装>>"
170 | fi
171 | }
172 |
173 | before_show_menu() {
174 | echo && echo -n -e "${yellow}操作完成按回车返回主菜单: ${plain}" && read temp
175 | show_menu
176 | }
177 |
178 | update_app() {
179 | if [ ! -f "$installfolder" ]; then
180 | echo -e "${red}转发没有安装,请先安装转发"
181 | before_show_menu
182 | fi
183 | echo && echo -n -e "${yellow}确定更新吗,按回车确定,CTRL+C退出: ${plain}" && read temp
184 | wget https://cdn.jsdelivr.net/gh/$authorname/$pkgname@$version/fxminerproxyv3linux.tar.gz
185 | if [ ! -f "$appinstalname.tar.gz" ]; then
186 | echo -e "${red}下载安装包失败,请输入一键安装脚本重新更新"
187 | retutn
188 | fi
189 | rm /etc/fxpool-$sofname/*.cache
190 | kill_wdog
191 | killProcess
192 | tar -zxvf $appinstalname.tar.gz
193 | mkdir fxpool-$sofname && chmod 777 fxpool-$sofname
194 | #判断文件夹是否创建成功
195 | if [ ! -d "fxpool-$sofname" ]; then
196 | echo && echo -n -e "${yellow}更新失败,请重新操作,按回车返回主菜单: ${plain}" && read temp
197 | show_menu
198 | else
199 | mv fxminerproxyv3linux/$sofname fxpool-$sofname
200 | mv fxminerproxyv3linux/running.sh fxpool-$sofname/$wdog
201 | cd fxpool-$sofname && chmod +x $wdog && chmod +x $sofname && cd ../
202 | #判断重命名是否成功
203 | if [ ! -f "fxpool-$sofname/$wdog" ]; then
204 | echo && echo -n -e "${yellow}更新失败,重命名失败,请重新操作: ${plain}" && read temp
205 | return
206 | fi
207 | cp -r fxpool-$sofname /etc/
208 | rm -rf $appinstalname && rm $appinstalname.tar.gz && rm -rf fxpool-$sofname
209 | if [ ! -f "$installfolder" ]; then
210 | echo && echo -n -e "${yellow}更新失败,请程序打开脚本操作"
211 | return
212 | else
213 | echo && echo -n -e "${yellow}更新完成,按回车启动,CTRL+C退出: ${plain}" && read temp
214 | autorun
215 | start
216 | fi
217 | fi
218 | }
219 | uninstall_app() {
220 | echo && echo -n -e "${yellow}确定卸载吗,按回车确定,CTRL+C退出: ${plain}" && read temp
221 | kill_wdog
222 | killProcess
223 | rm -rf /etc/fxpool-$sofname/
224 | before_show_menu
225 | }
226 | start() {
227 | if [ ! -f "$installfolder" ]; then
228 | echo -e "${red}转发没有安装,无法启动"
229 | else
230 | checkProcess "$wdog"
231 | if [ $? -eq 1 ]; then
232 | echo -e "${red}转发已经启动,不要重复启动"
233 | before_show_menu
234 | else
235 | echo -e "${green}启动中..."
236 | cd $installdir
237 | sed -i 's/"is_open_general_swap": true/"is_open_general_swap": false/g' localconfig.json
238 | setsid ./$wdog &
239 | sleep 3
240 | fi
241 | fi
242 | before_show_menu
243 | }
244 | stop() {
245 | echo && echo -n -e "${yellow}确定停止吗,按回车确定,CTRL+C退出: ${plain}" && read temp
246 | kill_wdog
247 | killProcess
248 | before_show_menu
249 | }
250 | autorun() {
251 | cd /etc
252 | rm rc.local
253 | touch rc.local
254 | chmod 777 rc.local
255 | echo "#!/bin/bash" >>rc.local
256 | echo "#" >>rc.local
257 | echo "# rc.local" >>rc.local
258 | echo "#" >>rc.local
259 | echo "# This script is executed at the end of each multiuser runlevel." >>rc.local
260 | echo "# Make sure that the script will " #exit 0" on success or any other" >> rc.local
261 | echo "# value on error." >>rc.local
262 | echo "#" >>rc.local
263 | echo "# In order to enable or disable this script just change the execution" >>rc.local
264 | echo "# bits." >>rc.local
265 | echo "#" >>rc.local
266 | echo "# By default this script does nothing." >>rc.local
267 | echo "#exit 0" >>rc.local
268 | echo "cd $installdir && setsid ./$wdog &" >>rc.local
269 | echo "exit 0" >>rc.local
270 | cd /root
271 | echo -e "${green}开机启动设置成功"
272 | }
273 | show_menu() {
274 | clear
275 | check_install
276 | echo -e "
277 | ${green}$uiname脚本管理界面安装完成(建议使用debian8.*版本内存控制更好)
278 | ${green}脚本版本${shell_version}
279 | ${green}软件版本${version}
280 | ${green}安装时linux默认最大连接数据已修改为最大65535(需重启服务器生效)
281 | ${green}安装时软件已经自动设置开机启动
282 | ${red}浏览器默认端口62438,默认用户名密码admin,admin${plain}
283 | ${green}0.${plain} 退出
284 | ${green}1.${plain} 安装
285 | ${green}2.${plain} 更新
286 | ${green}3.${plain} 卸载
287 | ${green}4.${plain} 启动
288 | ${green}5.${plain} 停止
289 | ${green}6.${plain} 查看linux最大连接
290 | ${green}7.${plain} linux大连接数改为65535(需重启服务器生效)
291 | ${green}8.${plain} 手动设置开机启动
292 |
293 | "
294 | echo && read -p "请输入选择 [0-8]: " num
295 |
296 | case "${num}" in
297 | 0)
298 | exit 0
299 | ;;
300 | 1)
301 | install
302 | ;;
303 | 2)
304 | update_app
305 | ;;
306 | 3)
307 | uninstall_app
308 | ;;
309 | 4)
310 | start
311 | ;;
312 | 5)
313 | stop
314 | ;;
315 | 6)
316 | check_limit
317 | ;;
318 | 7)
319 | change_limit
320 | ;;
321 | 8)
322 | autorun
323 | ;;
324 | *)
325 | echo -e "${red}请输入正确的数字 [0-8]${plain}"
326 | ;;
327 | esac
328 | }
329 | show_menu
330 |
--------------------------------------------------------------------------------
/readmes/English.md:
--------------------------------------------------------------------------------
1 | [homeicon]:https://raw.githubusercontent.com/FxPool/FXMinerProxy/main/image/home-en.png
2 | [rtlogicon]:https://raw.githubusercontent.com/FxPool/FXMinerProxy/main/image/rt-log.png
3 | [fxminerproxyv3.zip]:https://github.com/FxPool/FXMinerProxy/releases/download/13.4.0/fxminerproxyv3windows.zip
4 | [简体中文]:https://github.com/FxPool/FXMinerProxy/blob/main/readmes/zh.md
5 | [randlogin]:https://raw.githubusercontent.com/FxPool/FXMinerProxy/main/image/randlogin_en.png
6 | [bigminerexample]:https://raw.githubusercontent.com/FxPool/FXMinerProxy/main/image/en-example.png
7 | [international]:https://raw.githubusercontent.com/FxPool/FXMinerProxy/main/image/international.png
8 | 
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 | 简体中文 •
25 |
26 |
27 | 使用教程-中文 •
28 |
29 |
30 | 油管演示视频 •
31 |
32 |
33 | 隧道加密视频教程 •
34 |
35 |
36 | # FXMinerProxy
37 | Custom charging proxy software for mining pool. Coin support `BTC`, `LTC`, `ZEC`, `ETC`, `ETHF`, `ETHW`, `RVN`, `CFX`, `BEAM`, `ERGO`, `BTG`, `AE`, `FLUX`, `FIRO`, `NEOXA`,`XMR`, `KASPA`, `GRIN`, `KDA`, `DASH`, `CKB`, `RXD`,`ZIL`,`ETHW_ZIL`,`ETHF_ZIL`,`ETC_ZIL`,`KDA`, `DASH`, `CKB` , `ZEN` , `NEXA`, `HNS`, `BCH`, `IRON`
38 |
39 | ## Toll collection system model
40 | 
41 |
42 | ## Dashboard
43 | ![homeicon]
44 | ![rtlogicon]
45 |
46 | ## language
47 | * Us English
48 | * [简体中文]
49 |
50 | ## Disclaimer
51 | 1.The app design and maintenance personnel only provide technical services without any profit purpose, and the operation of this app complies with the laws and regulations where the server is located.
52 | Users of this app must use this software in strict accordance with local laws and regulations, and shall bear corresponding legal responsibilities if they use this app to violate local laws.
53 | 2.Before using this app, please read the description of this app in detail. If the user does not have any losses caused by the technical problems of this app, the user shall be responsible for it, and the app development and maintenance personnel shall be responsible for the loss. Regardless, the user shall not claim or file a lawsuit against the developer or maintainer for this.
54 | 3.You should make sure you are not a resident of mainland China, Cuba, Iran, North Korea, Syria, Russia or other countries or regions subject to sanctions managed or enforced by relevant countries or governments or international agencies. The legal responsibility arising from the app shall be borne by myself.
55 | 4.fxminerproxy are the only 1 officially software name.
56 |
57 | ## Contact Us
58 | - Email: hansenloveyou520@gmail.com
59 | - [Telegram](https://t.me/fxminerproxy_chat_cn)
60 |
61 | ## APP
62 | download
63 |
64 | https://dnf8qp5ds93ne.cloudfront.net/2bxzkd
65 |
66 | ![international]
67 |
68 | ## Deploy
69 |
70 | - `The system uses random web port and user name and password, please pay attention to the console print when booting`
71 | - ![randlogin]
72 |
73 | - Recommended configuration`(Theoretical memory per worker:100K~150K)`
74 | | workers | CPU | Mem | bandwidth |
75 | | ------- | ------- | ------- | ------- |
76 | | n<200 | 1 core | 1Gb | 2Mbps |
77 | |20010000 | 8 core | 16Gb| 500Mbps |
82 |
83 |
84 | #### Linux
85 | - **permissions** `root`
86 | - **system required** `centOS 7+ / debian 8+ / ubuntu 16+`
87 | - **recommend** `debian`
88 | - **curl** tool is required **debian ubuntu download:** `apt-get install curl`
89 | - **wget** tool is required **debian ubuntu download:** `apt-get install wget`
90 |
91 | - install new versions
92 |
93 | ```shell
94 | bash <(curl -s -L https://raw.githubusercontent.com/FxPool/FXMinerProxy/main/install_en.sh)
95 | ```
96 | - install older versions
97 |
98 | ```shell
99 | bash <(curl -s -L https://raw.githubusercontent.com/FxPool/FXMinerProxy/main/oldversion/install_en.sh) verNumber
100 | ```
101 |
102 | - Stable version
103 |
104 | ```shell
105 | bash <(curl -s -L https://raw.githubusercontent.com/FxPool/FXMinerProxy/main/oldversion/install_en.sh) 13.0.4
106 | ```
107 |
108 | #### windows
109 | - **permissions** `administrator`
110 | - **system required** `windows8+`
111 | - **recommend** `WindowsServer2012`
112 | - **how to run**
113 |
114 | * 1 Decompress fxminerproxyv3.zip
115 | * 2 open fxminerproxyv3 dir and run `run.exe`
116 |
117 | - **download**
118 |
119 | | version | name |
120 | | ------- | ------- |
121 | | latest | [fxminerproxyv3.zip]|
122 |
123 | - Download older versions from [github releases](https://github.com/FxPool/FXMinerProxy/releases)
124 |
125 | ## Features
126 | * Support Windows & Linux.
127 | * Log.
128 | * Worker RT-Log.`(Simulation mining core, real-time display mining machine mining logs)`
129 | * Worker History-Log. `(hash logs, network logs, charge logs)`
130 | * Sys History-Log
131 | * Wallet.`(Supports access to third-party apis. Display historical hash rate, etc)`
132 | * Support F2pool
133 | * Support PoolIn
134 | * Support ViaBtc
135 | * Support AntPool
136 | * Support Ethermine
137 | * Chart
138 | * Single mining machine historical hash curve.
139 | * Shares Chart. `(fee shares, total worker shares, total miner shaers)`
140 | * Latency Chart.
141 | * Hash Chart.
142 | * Event notification.`(All core events)`
143 | * High concurrency and low memory.`(2 core 4g:1400worker:CPU:2%,MEM:10%)`.
144 | * Dynamic parameters of a port are modified.
145 | * Single worker machine charge ratio adjustment.
146 | * Support Asic machine between the different mining pool to charge.
147 | * Support fast ping vaul.e`(fast response: ping:current server to mining machine)`
148 | * Support User-defined ssl certificate.
149 | * Support Import port configurations in batches through the configuration file.
150 | * The asic machine calculates the hash power in real time to solve the problem that the computation hash power cannot be displayed at the acic machine.
151 | * Support for obfuscated encrypted connections.
152 | * Support SSL connection to mining pools.
153 | * Dev Fee:
154 | * all coin 0.27%
155 | * personal 0%
156 | * activation:
157 | * **require:** worker > `200`
158 | * worker 200-1000: 0.24%
159 | * worker 1000-5000: 0.2%
160 | * worker 5000-10000: 0.15%
161 | * worker > 10000: 0.1%
162 |
163 | ## Watchdog
164 | Prevent a program from crashing while running. Use a watchdog program to keep it running steadily throughout the day
165 | * linux use script: **running.sh**
166 | * windows use: **run.exe**
167 |
168 | ## Explanatory Document
169 | [User guide](https://fxpool.github.io/cn/)
170 |
171 | ## API Documentation
172 | [API Reference](https://fxpool.github.io/cn/)
173 |
174 | ## Long and stable running of large mines
175 | ![bigminerexample]
176 |
177 | ## Stable charge curve
178 | - **BTC F2POOL Fee example**
179 | 
180 |
181 |
182 |
183 | ## Changelog
184 | Detailed changes for each release are documented in the [release notes](https://github.com/FxPool/FXMinerProxy/releases).
185 |
186 |
--------------------------------------------------------------------------------
/readmes/en.md:
--------------------------------------------------------------------------------
1 |
2 | 
3 |
4 | ## Contact us
5 |
6 | Telegram
7 |
8 | Email:hansenloveyou520@gmail.com
9 |
10 |
11 | ## 🛰️ Recommendation system
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 | ## ⏬ APP Download (Currently, only Chinese is supported)
20 | ### Android is available and Apple is submitting it for review...
21 |
22 |
23 |
24 |
25 |
26 | ## 🗼 abstract
27 |
28 | Based on Golang high performance Pow mining agent transfer server software. FXMinerProxy Updated version, Chinese name Fourier. New UI interface, background SSH console, mobile APP, program does not restart, 2 core 2G server (not lightweight) easy 3000 sets without pressure
29 |
30 | ## 💰 To support the currency
31 |
32 | ETH/ETC/BTC/LTC/RVN/CFX/TON/BEAM/ERG/BTG/FLUX/AE/NEOAX/ETHW/ETF/FIRO (If you need to add new currency, please contact us. If it is a chip machine and we don't have it, you can connect to our server and add it in a day. We will bear the loss of this day.)
33 |
34 | ## 🌐 WEB home page
35 |
36 | 
37 |
38 |
39 | ## ✨: features
40 |
41 | * ☁️: support ETC, ETH, BTC, LTC, RVN, BEAM, ERG, CFX much money fee, such as built-in exclusive development a key encryption to confuse the client configuration automatically generated executable program Windows and OS support, open API, exclusive of any currency pair support
42 |
43 | * ⚡: High performance million concurrent CPU usage is very low, 300,000 connected CPU usage is 10%
44 |
45 | * 📚 Original fee algorithm for E pool optimization E pool feeeffect is the best, no mining machine offline bug curve is perfect, several points higher than other software
46 |
47 | * 💾 security and stability, original AES confound encryption, simulation of iot traffic security and stability, background one-key configuration automatically generated Windows and Linux version, traditional TLS/SSL TCP also supports, CC attack defense
48 |
49 | * ⚙️: pre-proxy mode, internal configuration to improve access speed, delay fast response support, so that the user's display delay is the delay of your current proxy server
50 |
51 | * 📤: Chip miner calculates power in real time, solving the problem that chip level cannot display
52 |
53 | * 🗃️: indicates hot configuration modification. After rejecting the traditional configuration, you need to restart the configuration file and modify the configuration file. One-click configuration file import and export is supported
54 |
55 | * 🎨: exquisite UI, support history record curve management detailed to a single mining machine support
56 |
57 | * ⚙️: Real-time system error log display, let you know any time the server is working status
58 |
59 | * 👪: Multi-system support, Windows, Linux one-click installation run
60 |
61 | * 💻 Linux SSH2 teamwork mode software built-in server remote login one-click management of your server
62 |
63 | ## 🛠️: Server Deployment
64 |
65 | ### Linux one-click Management scripts (root permission required)
66 |
67 | #### mining machine if more than 100, it is strongly recommended to use debian8 system, such as debian8.9, debian8.11, as long as the large version is 8 character version can be arbitrary
68 |
69 | * If you do not have the curl command, enter apt-get install curl
70 | ```shell
71 | bash <(curl -s -L https://raw.githubusercontent.com/FxPool/FXMinerProxy/main/install_en.sh)
72 | ```
73 | * Download the specified version
74 | ```shell
75 | bash <(curl -s -L https://raw.githubusercontent.com/FxPool/FXMinerProxy/main/oldversion/install_en.sh) Version number (e.g. 8.0.2.1)
76 | ```
77 | ### Windows direct download unzip run run.exe
78 | * Run run.exe (to ensure the program never crashes)
79 | ```shell
80 | https://raw.githubusercontent.com/FxPool/FXMinerProxy/main/fxminerproxyv3windows.zip
81 | ```
82 | ## ⚗️: Develop fee
83 |
84 | * Start fee fixed 0.27%
85 |
86 | * If fee mode is not opened for personal use, the developer is 0. If you do not believe, you can use pure fee software for comparison, or software packet capture test
87 |
88 | * Big hash rate users please contact us to activate the software to enjoy lower developer fee
89 |
90 | ## ⚠️ Frequently Asked Questions
91 |
92 | ### Cause of the software installation failure
93 |
94 | If permission denied appears, it indicates that you are not root. You need to access debian, unbantu and run su to enter the password
95 |
96 | ### The browser cannot be opened
97 |
98 | This problem is generally that the port is not open, if you buy a cloud server such as Ali, you need to first go to the cloud server background to open the port security group, use what port to open what port, can also be all open range 0-65535. Then, if you still can't connect, and the system is Linux, you need to open the port of the server. The server can disable the firewall directly. Use the UFW Disable (Debian and UnBantu systems).
99 |
100 | ### fee conversion rate
101 |
102 | Because the fee conversion rate is calculated dynamically according to the share and difficulty, it may be very large when starting, do not worry about it, a long time will be close to the value you set, may also be less than the value you set, but generally speaking, it will be close to the value you set, the actual situation depends on the calculation force of your fee mining pool
103 | The fee conversion rate of the chip machine will be a little slower than that of the graphics card and will usually be close to the value you set after 24 hours of operation. The time is based on the mine pool
104 |
105 | ### The problem of chip computing power
106 |
107 | Since the chip machine does not submit the calculation power, FXMinerproxy is based on the difficulty of dynamic calculation, 10 minutes, so the chip machine will wait 10 minutes before the display, the calculation power only for reference specific to the mine pool
108 |
109 | ### Local miner is connected but not shown in the background
110 |
111 | Fxminerproxy will display only when the miner successfully submits a valid share, please wait for the miner to submit a valid share
112 |
113 | ### ASIC machine problem
114 |
115 | The port of the program will automatically determine whether it is a graphics card machine or a chip machine, so it is invalid to configure separately
116 |
117 | A11 mining machine fee is best to fee to the same mining pool, different mining pools may be invalid, mainly depends on whether the firmware supports SET_exNAoce method (dynamic modification of random number), conservative fee to the same mining pool
118 |
119 | ### The problem of defining your own target pool
120 |
121 | FxminerProxy support custom port, a small partner often asked why can only select the drop-down can not input their own, in fact, the input and drop-down is done together, after the mouse is selected directly enter to determine
122 |
123 | ### The home page does not display data but the port interface can display data problem
124 |
125 | Don't worry, after running for 10 minutes, the probability of this problem is very small, unless there is a problem with the time obtained by the server, usually using international servers, the general practice is to restart the software (Settings interface). If some data is still not displayed after restart, don't worry about it. After running for more than >=8 hours (possibly 24 hours), it will automatically return to normal, because the difference between Chinese time and international time will affect,
126 |
127 | ### Does not turn on the fee function is it true that the author does not fee
128 |
129 | This problem is actually easy to test, you can use pure forwarding software test comparative computing power. Pure forwarding software can use the pure forwarding (open source)
130 |
131 | ## BTC Fee example (F2pool)
132 |
133 | 
134 |
135 | ## LTC Fee example (F2pool)
136 |
137 | 
138 |
--------------------------------------------------------------------------------
/readmes/propaganda.md:
--------------------------------------------------------------------------------
1 | ## 正在开发中九月15号之前上线
2 |
--------------------------------------------------------------------------------
/readmes/zh.md:
--------------------------------------------------------------------------------
1 | [homeicon]:https://raw.githubusercontent.com/FxPool/FXMinerProxy/main/image/home-en.png
2 | [rtlogicon]:https://raw.githubusercontent.com/FxPool/FXMinerProxy/main/image/rt-log.png
3 | [fxminerproxyv3.zip]:https://github.com/FxPool/FXMinerProxy/releases/download/13.0.4/fxminerproxyv3windows.zip
4 | [简体中文]:https://github.com/FxPool/FXMinerProxy/blob/main/readmes/zh.md
5 | [randlogin]:https://raw.githubusercontent.com/FxPool/FXMinerProxy/main/image/randlogin.png
6 | [bigminerexample]:https://raw.githubusercontent.com/FxPool/FXMinerProxy/main/image/zh-example.png
7 | [app-x]:https://raw.githubusercontent.com/FxPool/FXMinerProxy/main/image/app-x.png
8 | 
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 | 6000台BTC矿机大矿场已长时间稳定运行超几个月以上
25 |
26 |
27 | 使用教程-中文 •
28 |
29 |
30 | 油管演示视频 •
31 |
32 |
33 | 隧道加密视频教程 •
34 |
35 |
36 | ## 挂盗版软件(利用之前发布的定制版BUG做的-先在已经关闭定制版本-fxminer是唯一持续更新的正版软件)
37 | # 如果你之前安装过以下这些软件请重新安装系统后再装fxminer
38 | tiancao2022/NBMinerProxy
39 |
40 |
41 |
42 |
43 |
44 | MINErpRroxY/JTMinerProxy
45 |
46 |
47 |
48 |
49 | 把pool的l改成1的这个作者
50 | FxPoo1/FXMinerProxy
51 |
52 | # FXMinerProxy(原创正版)
53 | 虚拟货币矿池中转抽水收费代理软件支持币种: `BTC`, `LTC`, `ZEC`, `ETC`, `ETHF`, `ETHW`, `RVN`, `CFX`, `BEAM`, `ERGO`, `BTG`, `AE`, `FLUX`, `FIRO`, `NEOXA`,`XMR`, `KASPA`, `GRIN`, `KDA`, `DASH`, `CKB`, `RXD`,`ZIL`,`ETHW_ZIL`,`ETHF_ZIL`,`ETC_ZIL`,`KDA`, `DASH`, `CKB` , `ZEN` , `NEXA`, `HNS`, `BCH`, `IRON`。
54 |
55 | ## 收费系统模型
56 | 
57 |
58 | ## 后台面板
59 | ![homeicon]
60 | ![rtlogicon]
61 |
62 | ## 支持语言
63 | * Us English
64 | * [简体中文]
65 |
66 | ## 免责声明
67 | 1.本客户端设计、维护人员仅提供技术服务,不以营利为目的,本客户端的运行遵守服务器所在地的法律法规。本客户端用户必须严格按照当地法律法规使用本软件,如使用本客户端违反当地法律,应承担相应的法律责任。
68 | 2.在使用本应用程序之前,请详细阅读本应用程序的描述。如果用户没有因本应用程序的技术问题造成任何损失,由用户自行负责,损失由应用程序开发和维护人员负责。无论如何,用户不得就此向开发者或维护者提出索赔或诉讼。
69 | 3.您应确保您不是中国大陆、古巴、伊朗、朝鲜、叙利亚、俄罗斯或其他受相关国家或政府或国际机构管理或执行的制裁的国家或地区的居民。由此产生的法律责任由本人承担。
70 | 4.Fxminerproxy是唯一一个正式的软件名称。
71 |
72 | ## 联系我们
73 | - 邮件: hansenloveyou520@gmail.com
74 | - [飞机新群](https://t.me/fxminerproxy_chat_cn)
75 |
76 | ## 手机APP
77 | - 老版本不在使用新版本即将上线开发中...
78 | ![app-x]
79 |
80 | ## 部署
81 |
82 | - `系统采用随机端口用户名和密码,启动的时候请注意控制台的打印`
83 |
84 | ![randlogin]
85 |
86 | - 推荐配置`(理论单台矿机内存:100K~150K)`
87 | | 矿机数 | CPU | 内存 | 带宽 |
88 | | ------- | ------- | ------- | ------- |
89 | | n<200 | 1 core | 1Gb | 2Mbps |
90 | |20010000 | 8 core | 16Gb| 500Mbps |
95 |
96 |
97 | #### Linux 系统
98 | - **权限** `root`
99 | - **支持的系统** `centOS 7+ / debian 8+ / ubuntu 16+`
100 | - **推荐系统** `debian`
101 | - **需要curl** 工具 **debian ubuntu 下载:** `apt-get install curl`
102 | - **需要wget** 工具 **debian ubuntu 下载:** `apt-get install wget`
103 | - 最新的版本
104 | * 外网
105 | ```shell
106 | bash <(curl -s -L https://raw.githubusercontent.com/FxPool/FXMinerProxy/main/install_zh.sh)
107 | ```
108 | - 安装指定版本
109 | * 外网
110 | ```shell
111 | bash <(curl -s -L https://raw.githubusercontent.com/FxPool/FXMinerProxy/main/oldversion/install_zh.sh) 版本号
112 | ```
113 | - 稳定的版本
114 | * 外网
115 | ```shell
116 | bash <(curl -s -L https://raw.githubusercontent.com/FxPool/FXMinerProxy/main/oldversion/install_zh.sh) 13.0.4
117 | ```
118 | #### windows系统
119 | - **权限** `administrator`
120 | - **系统支持** `windows8+`
121 | - **推荐系统** `WindowsServer2012`
122 | - **如何运行**
123 |
124 | * 1 解压 fxminerproxyv3.zip
125 | * 2 打开 fxminerproxyv3 文件夹然后运行 `run.exe` 只能运行run.exe可保证程序不死机
126 |
127 | - **下载**
128 |
129 | | 版本 | 名称 |
130 | | ------- | ------- |
131 | | 最新 | [fxminerproxyv3.zip]|
132 |
133 | - 下载老版本 [github releases](https://github.com/FxPool/FXMinerProxy/releases)
134 |
135 | ## 特色
136 | * 支持 Windows & Linux.
137 | * 日志系统.
138 | * 矿机实时日志.`(模拟矿工内核显示的日志可以分析矿机有效无效份额提交延迟信息等)`
139 | * 矿机历史日志. `(算力日志, 上线离线日志, 抽水日志等)`
140 | * 系统日志
141 | * 钱包.`(支持接入第三方API显示历史算力曲线和收益数据等)`
142 | * 支持 鱼池
143 | * 支持 币印
144 | * 支持 微比特
145 | * 支持 蚂蚁池
146 | * 支持 E池
147 | * 曲线
148 | * 单个矿机的历史算力曲线统计
149 | * 份额曲线. `(抽水份额 矿机总份额 矿工份额 1小时份额 24小时份额)`
150 | * 延迟历史曲线.
151 | * 总算力曲线.
152 | * 事件通知.`(如矿机离线和一些核心操作的事件通知(可以通过邮件或者server酱))`
153 | * 超高并发超低内存.
154 | * 端口参数热更新(不用重启).
155 | * 支持单台矿机抽水比例修改(只支持在线矿机).
156 | * 支持芯片机器的跨矿池抽水.
157 | * 支持快速响应`(矿机本地显示的延迟是当前服务器到矿机的延迟而不是矿池到矿机的延迟)`
158 | * 支持自定义ssl/tls证书上传.
159 | * 支持代理端口数据通过配置文件导入快速配置.
160 | * 支持动态计算芯片机器和一些不上报本地算力机器的算力(10分中计算一次会有误差只做参考).
161 | * 支持隧道加密技术。[sslmix隧道加密](https://github.com/FxPool/SSLMIX)。[aesmix隧道加密](https://github.com/FxPool/AESMIX)
162 | * 支持服务器到矿池使用ssl连接.
163 | * 开发费用:
164 | * 所有币种 0.27%
165 | * 个人 0%
166 | * 激活后:(默认)
167 | * **前提:** 矿机数量 > `200`
168 | * 矿机数 200-1000: 0.24%
169 | * 矿机数 1000-5000: 0.2%
170 | * 矿机数 5000-10000: 0.15%
171 | * 矿机数 > 10000: 0.1%
172 |
173 | ## 看门狗程序
174 | 保证程序出现意外死机后立即重启程序
175 | * linux使用这个脚本(一键启动脚本已经自动加载手动安装的用户请使用这个脚本启动程序): **running.sh**
176 | * windows使用: **run.exe**
177 |
178 | ## 使用说明书
179 | [User guide](https://fxpool.github.io/cn/)
180 |
181 | ## API 开发文档
182 | [API Reference](https://fxpool.github.io/cn/)
183 |
184 | ## 5000+的BTC大矿场长时间稳定运行
185 | ![bigminerexample]
186 |
187 | ## 稳定的抽水算力曲线
188 | - **鱼池 BTC 例子**
189 | 
190 |
191 | ## 历史版本
192 | [release notes](https://github.com/FxPool/FXMinerProxy/releases).
193 |
194 |
--------------------------------------------------------------------------------
/ssh/display_statistical_en.sh:
--------------------------------------------------------------------------------
1 | red='\033[0;31m'
2 | green='\033[0;32m'
3 | yellow='\033[0;33m'
4 | plain='\033[0m'
5 | echo -e "${green}developing...${plain}"
6 | exit 0
7 |
--------------------------------------------------------------------------------
/ssh/display_statistical_zh.sh:
--------------------------------------------------------------------------------
1 | red='\033[0;31m'
2 | green='\033[0;32m'
3 | yellow='\033[0;33m'
4 | plain='\033[0m'
5 | echo -e "${green}开发中...${plain}"
6 | exit 0
7 |
--------------------------------------------------------------------------------
/ssh/install_en.sh:
--------------------------------------------------------------------------------
1 | red='\033[0;31m'
2 | green='\033[0;32m'
3 | yellow='\033[0;33m'
4 | plain='\033[0m'
5 | echo -e "${green}developing...${plain}"
6 | exit 0
7 |
--------------------------------------------------------------------------------
/ssh/install_statistical_en.sh:
--------------------------------------------------------------------------------
1 | red='\033[0;31m'
2 | green='\033[0;32m'
3 | yellow='\033[0;33m'
4 | plain='\033[0m'
5 | echo -e "${green}developing...${plain}"
6 | exit 0
7 |
--------------------------------------------------------------------------------
/ssh/install_statistical_zh.sh:
--------------------------------------------------------------------------------
1 | red='\033[0;31m'
2 | green='\033[0;32m'
3 | yellow='\033[0;33m'
4 | plain='\033[0m'
5 | echo -e "${green}开发中...${plain}"
6 | exit 0
7 |
--------------------------------------------------------------------------------
/ssh/install_zh.sh:
--------------------------------------------------------------------------------
1 | red='\033[0;31m'
2 | green='\033[0;32m'
3 | yellow='\033[0;33m'
4 | plain='\033[0m'
5 | echo -e "${green}开发中...${plain}"
6 | exit 0
7 |
--------------------------------------------------------------------------------
/ssh/update_en.sh:
--------------------------------------------------------------------------------
1 | red='\033[0;31m'
2 | green='\033[0;32m'
3 | yellow='\033[0;33m'
4 | plain='\033[0m'
5 | echo -e "${green}developing...${plain}"
6 | exit 0
7 |
--------------------------------------------------------------------------------
/ssh/update_zh.sh:
--------------------------------------------------------------------------------
1 | red='\033[0;31m'
2 | green='\033[0;32m'
3 | yellow='\033[0;33m'
4 | plain='\033[0m'
5 | echo -e "${green}开发中...${plain}"
6 | exit 0
7 |
--------------------------------------------------------------------------------