ecs
Fusion Monster Evaluation Script - GO Refactored Version - Since it has not been officially released, please report any issues via issues.
Shell version: https://github.com/spiritLHLS/ecs/blob/main/README_EN.md
Language
Supported Systems and Architectures
Architectures supported for compilation: amd64、arm、arm64、386、s390x、mips、mipsle、s390x、riscv64
Tested architectures: amd64, arm64
More architectures please test by yourself
Compilation support: Linux, Windows、FreeBSD、OpenBSD
Tested on: Linux, Windows
More systems to be tested
Systems to be supported (hardware testing bugs not yet fixed): MacOS、FreeBSD、OpenBSD
Features
- System basic information query [Self-developed basics, gostun]
- Concurrent IP basic information query [Self-developed basics]
- CPU test [Self-developed cputest supporting sysbench, geekbench, winsat]
- Memory test [Self-developed memorytest supporting sysbench, dd]
- Disk test [Self-developed disktest supporting dd, fio, winsat]
- Concurrent streaming media unlock information query for three major platforms [Modified from netflix-verify, VerifyDisneyPlus, TubeCheck to CommonMediaTests]
- Concurrent common streaming media tests [Self-developed code, logic modified from RegionRestrictionCheck, MediaUnlockTest to UnlockTests]
- Concurrent IP quality/security information query [Self-developed, due to testing with key information, privately developed, but binary files compiled in securityCheck]
- Email port test [Self-developed portchecker]
- Three-network return path test [Modified from zhanghanyun/backtrace to oneclickvirt/backtrace]
- Three-network route test [Modified from NTrace-core to nt3]
- Speed test [Based on data from speedtest.net-crawler, speedtest.cn-crawler, modified from speedtest-go to oneclickvirt/speedtest]
- Three-network Ping test [Modified from ecsspeed logic to pingtest]
Instructions for Use on Linux/FreeBSD/MacOS
one-click command
curl -L https://raw.githubusercontent.com/oneclickvirt/ecs/master/goecs.sh -o goecs.sh && chmod +x goecs.sh && bash goecs.sh env && bash goecs.sh install && goecs
explain in detail
Download the script
curl -L https://raw.githubusercontent.com/oneclickvirt/ecs/master/goecs.sh -o goecs.sh && chmod +x goecs.sh
Install environment
./goecs.sh env
Install goecs
./goecs.sh install
Upgrade goecs
./goecs.sh upgrade
Uninstall goecs
./goecs.sh delete
Explanation of the shell script
Available commands:
./goecs.sh env Check and Install package:
sudo (Almost all unix-like systems have it.)
tar (Almost all unix-like systems have it.)
unzip (Almost all unix-like systems have it.)
dd (Almost all unix-like systems have it.)
fio (Almost all unix-like systems can be installed through the system's package manager.)
sysbench (Almost all unix-like systems can be installed through the system's package manager.)
geekbench (geekbench5)(Only support IPV4 environment, and memory greater than 1GB network detection, only support amd64 and arm64 architecture.)
speedtest (Use the officially provided binaries for more accurate test results.)
ping (Use the officially provided binaries for more accurate test results.)
In fact, sysbench/geekbench is the only one of the above dependencies that must be installed, without which the CPU score cannot be tested.
./goecs.sh install Install goecs command
./goecs.sh upgrade Upgrade goecs command
./goecs.sh delete Uninstall goecs command
./goecs.sh help Show this message
Invoke the goecs menu
goecs
or
./goecs
Parameterized goecs command
Usage: goecs [options]
-backtrace
Enable/Disable backtrace test (in 'en' language or on windows it always false) (default true)
-basic
Enable/Disable basic test (default true)
-comm
Enable/Disable common media test (default true)
-cpu
Enable/Disable CPU test (default true)
-cpum string
Set CPU test method (supported: sysbench, geekbench, winsat) (default "sysbench")
-cput string
Set CPU test thread mode (supported: single, multi) (default "multi")
-disk
Enable/Disable disk test (default true)
-diskm string
Set disk test method (supported: fio, dd, winsat) (default "fio")
-diskmc
Enable/Disable multiple disk checks, e.g., -diskmc=false
-diskp string
Set disk test path, e.g., -diskp /root
-email
Enable/Disable email port test (default true)
-h Show help information
-l string
Set language (supported: en, zh) (default "zh")
-log
Enable/Disable logging in the current path
-memory
Enable/Disable memory test (default true)
-memorym string
Set memory test method (supported: sysbench, dd, winsat) (default "dd")
-menu
Enable/Disable menu mode, disable example: -menu=false (default true)
-nt3
Enable/Disable NT3 test (in 'en' language or on windows it always false) (default true)
-nt3loc string
Specify NT3 test location (supported: GZ, SH, BJ, CD for Guangzhou, Shanghai, Beijing, Chengdu) (default "GZ")
-nt3t string
Set NT3 test type (supported: both, ipv4, ipv6) (default "ipv4")
-security
Enable/Disable security test (default true)
-speed
Enable/Disable speed test (default true)
-spnum int
Set the number of servers per operator for speed test (default 2)
-ut
Enable/Disable unlock media test (default true)
-v Display version information
Instructions for Use on Windows
Download the compressed file with the exe file
https://github.com/oneclickvirt/ecs/releases
Find the latest version, download the .zip file corresponding to your architecture, and unzip it to get an exe file.
Right-click the exe file and select Run as administrator (running without administrator mode will not allow hardware testing), and invoke the menu to choose.
No environment installation is required for Windows testing.