mirror of
https://github.com/oneclickvirt/ecs.git
synced 2025-12-24 12:37:53 +08:00
220 lines
8.7 KiB
Markdown
220 lines
8.7 KiB
Markdown
# ecs
|
|
|
|
[](https://github.com/oneclickvirt/ecs/actions/workflows/main.yaml) [](https://www.spiritlhl.net/)
|
|
|
|
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
|
|
|
|
[中文文档](README.md) | [English Docs](README_EN.md)
|
|
|
|
## Supported Systems and Architectures
|
|
|
|
Architectures supported for compilation: amd64、arm、arm64、386、mips、mipsle、s390x、riscv64
|
|
|
|
Tested architectures: amd64, arm64
|
|
|
|
More architectures please test by yourself
|
|
|
|
Compilation support: Linux, Windows、MacOS、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
|
|
|
|
- [x] System basic information query [Self-developed [basics](https://github.com/oneclickvirt/basics), [gostun](https://github.com/oneclickvirt/gostun)]
|
|
- [x] Concurrent IP basic information query [Self-developed [basics](https://github.com/oneclickvirt/basics)]
|
|
- [x] CPU test [Self-developed [cputest](https://github.com/oneclickvirt/cputest) supporting sysbench, geekbench, winsat]
|
|
- [x] Memory test [Self-developed [memorytest](https://github.com/oneclickvirt/memorytest) supporting sysbench, dd]
|
|
- [x] Disk test [Self-developed [disktest](https://github.com/oneclickvirt/disktest) supporting dd, fio, winsat]
|
|
- [x] Concurrent streaming media unlock information query for three major platforms [Modified from [netflix-verify](https://github.com/sjlleo/netflix-verify), [VerifyDisneyPlus](https://github.com/sjlleo/VerifyDisneyPlus), [TubeCheck](https://github.com/sjlleo/TubeCheck) to [CommonMediaTests](https://github.com/oneclickvirt/CommonMediaTests)]
|
|
- [x] Concurrent common streaming media tests [Self-developed code, logic modified from [RegionRestrictionCheck](https://github.com/lmc999/RegionRestrictionCheck), [MediaUnlockTest](https://github.com/HsukqiLee/MediaUnlockTest) to [UnlockTests](https://github.com/oneclickvirt/UnlockTests)]
|
|
- [x] Concurrent IP quality/security information query [Self-developed, due to testing with key information, privately developed, but binary files compiled in [securityCheck](https://github.com/oneclickvirt/securityCheck)]
|
|
- [x] Email port test [Self-developed [portchecker](https://github.com/oneclickvirt/portchecker)]
|
|
- [x] Three-network return path test [Modified from [zhanghanyun/backtrace](https://github.com/zhanghanyun/backtrace) to [oneclickvirt/backtrace](https://github.com/oneclickvirt/backtrace)]
|
|
- [x] Three-network route test [Modified from [NTrace-core](https://github.com/nxtrace/NTrace-core) to [nt3](https://github.com/oneclickvirt/nt3)]
|
|
- [x] Speed test [Based on data from [speedtest.net-crawler](https://github.com/spiritLHLS/speedtest.net-CN-ID), [speedtest.cn-crawler](https://github.com/spiritLHLS/speedtest.cn-CN-ID), modified from [speedtest-go](https://github.com/showwin/speedtest-go) to [oneclickvirt/speedtest](https://github.com/oneclickvirt/speedtest)]
|
|
- [x] Three-network Ping test [Modified from [ecsspeed](https://github.com/spiritLHLS/ecsspeed) logic to [pingtest](https://github.com/oneclickvirt/pingtest)]
|
|
|
|
## Instructions for Use on Linux/FreeBSD/MacOS
|
|
|
|
### one-click command
|
|
|
|
```
|
|
export noninteractive=true && 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 -l en
|
|
```
|
|
|
|
### 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
|
|
```
|
|
|
|
If you don't want interaction, use ```export noninteractive=true``` and then execute the ```env``` command
|
|
|
|
Install goecs
|
|
|
|
```
|
|
./goecs.sh install
|
|
```
|
|
|
|
Upgrade goecs
|
|
|
|
```
|
|
./goecs.sh upgrade
|
|
```
|
|
|
|
Uninstall goecs
|
|
|
|
```
|
|
./goecs.sh uninstall
|
|
```
|
|
|
|
Explanation of the shell script
|
|
|
|
```
|
|
Available commands:
|
|
|
|
./goecs.sh env Check and Install dependencies
|
|
Warning: This command performs system update(optional), which may:
|
|
1. Take considerable time
|
|
2. Cause temporary network interruptions
|
|
3. Impact system stability
|
|
4. Affect subsequent system startups
|
|
For systems with less than 1GB RAM, additional risks:
|
|
1. System freeze
|
|
2. SSH connection loss
|
|
3. Critical service failures
|
|
Recommended:
|
|
Hanging execution during environment dependency installation
|
|
|
|
Required components:
|
|
sysbench/geekbench (Required for CPU testing)
|
|
|
|
Optional components:
|
|
sudo, tar, unzip, dd, fio
|
|
speedtest (Network testing)
|
|
ping (Network connectivity)
|
|
systemd-detect-virt/dmidecode (System info detection)
|
|
|
|
./goecs.sh install Install goecs command
|
|
./goecs.sh upgrade Upgrade goecs command
|
|
./goecs.sh uninstall Uninstall goecs command
|
|
./goecs.sh help Show this message
|
|
```
|
|
|
|
Invoke the goecs menu
|
|
|
|
```
|
|
goecs -l en
|
|
```
|
|
|
|
or
|
|
|
|
```
|
|
./goecs -l en
|
|
```
|
|
|
|
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 "sysbench")
|
|
-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)
|
|
-upload
|
|
Enable/Disable upload the result (default true)
|
|
-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.
|
|
|
|
## Instructions for Use in Docker
|
|
|
|
Link: https://hub.docker.com/r/spiritlhl/goecs
|
|
|
|
Please make sure that Docker is installed on your machine before executing the following commands
|
|
|
|
Privileged Mode + host network
|
|
|
|
```shell
|
|
docker run --rm --privileged --network host spiritlhl/goecs:latest -menu=false -l en
|
|
```
|
|
|
|
Unprivileged mode + non-host network
|
|
|
|
```shell
|
|
docker run --rm spiritlhl/goecs:latest
|
|
```
|
|
|
|
Using Docker to execute tests, hardware testing will have some bias and virtualization architecture to determine the failure.
|
|
|
|
Recommended direct testing without using Docker testing. |