2018.10.25更新到1.1.3
添加TCP拥塞控制检测
2018.10.24更新到1.1.2
去掉speedtest默认的latency显示
2018.8.27更新到1.1.1
当默认的speedtest由于自身ip库信息导致连接到较远的节点时候增加(*)提示
2018.8.14更新到1.1.0
增加speedtest.net分享链接
2018.7.18更新到1.0.9
修复部分bug
2018.7.14更新到1.0.8
测速部分增加 fast-cli
2018.7.5更新到1.0.7
1.ipip.net api 改用http
2.修复bug
2018.6.29更新到1.0.6
1.修复硬盘容量重复bug
2.修改系统参数信息颜色
3.增加 hyper 识别
4.更换至 ipip.net 数据库
----------------------
拖了很久,其实看脚本日期,二月份就写好的,然后就忘了 push 到 GayHub ...
新加了一个短连接,原来命令的依然可以正常变更至新版:
wget -qO- git.io/superbench.sh | bash
使用参数的方法:
wget git.io/superbench.sh; chmod +x superbench.sh
或者 curl -LsO git.io/superbench.sh; chmod +x superbench.sh
./superbench.sh info
./superbench.sh io
./superbench.sh speed
./superbench.sh share
怀恋上一版的请使用:
wget -qO- git.io/superbench_old.sh | bash
之前就弄的差不多了,用了一段时间没啥问题,写 shell 只是一时兴起,不是专业玩运维的,不足的地方各位多提 issue
虚心接受了各位大佬的建议,本次变化比较大,但没什么技术含量,都是些无关痛痒的更新
主要改变的地方如下:
1. 取消 virt-what ,采用更加方便的特征判断虚拟化类型,不需要安装额外组件。
2. 取消硬盘时间检测,这个一般都用不到,用得到的人都会操作,显得多余了,后期考虑放到另外一个脚本里面。
3. 增加 GEOIP 信息,包含国家,地区,机房,AS号等信息。
4. 修改 dd 命令块大小,基于有的服务商会做IO限制,或者系统采用虚拟方式不同,长时间占用IO,会限制等原因,采取的是32M,256M,2G三种不同大小测试,按常理,有限制的情况下,三者不尽相同,便于使用者观察不同情况。基于同类其他脚本的参数均设为1G,不同脚本间不好横向对比,所以采用传统方式。考虑都有些小硬盘空间不足情况,先检测剩余空间大小,自动选择适合情况,128M,512M,1G 文件大小测试3次,取平均值,默认情况下测试大小为1G。
5. 改用模块化方式加了参数,好久没写过面向过程的东西了...有时间IO或者速度那地方跑太久,太难等了,你就不必跑完整个脚本,只想测哪个就测哪个
-info 系统信息
-io 简单io测试
-speed 速度测试
-ip GEOIP信息
-fast 快速模式
-share 分享
6. 增加分享模式,方便分享测试结果,本来想自己搭一个的,但自己搭的话,要保证sla各种成本不小,看了一遍各种 bench,最后采用了 Ubuntu 组织的 paste 服务,理论上只要 Ubuntu 不停止运营,应该不存在稳定上的问题,Ubuntu 的 paste 不方便的话另还有三种上传的地方可以选择。本地目录下也生成了一个 log 文件记录上次 bench 的结果。
7. 此 bench 默认从官方源安装 Python (一般情况下系统默认自带了Python),除了结果之外其他产生文件均在测试后删除,中途打断测试也会清理垃圾文件,对系统无更改,无残留,适合洁癖者使用。
8. 还有一些小细节改动,稍微美化了代码,当然需要root权限的脚本依旧开源。
除了这个脚本之外,还写了另一个 tool 脚本,集合了各种测试,包含bench里面的测试,包含traceroute,包含iops测试,包含常用cpu加解密的跑分测试,包含常用的简单维护一键,如一键更改ssh端口,更改系统语言,更改时区时间,更改适合本地速度快的软件源等等,也基本弄完了,等有时间一一测试好了再放出来。
发表于2018-05-09 at 01:35 沙发
这个带路由测试么?
@Kevin暂时不带…
发表于2018-05-10 at 23:34 板凳
期待您的tool脚本,什么时候发布?![[亲亲]](https://static.oldking.net/wp-content/themes/Blogs/images/smilies/17.gif)
@惜时这个脚本和 bench 不太一样,设计很多要root权限的操作,代码都是临时凑出来的功能,我要一一测试解决大部分问题,没有安全风险了之后才能放出来,要慎重一点。
发表于2018-05-12 at 16:01 地板
用心你真棒你真棒! 1.05出锅了吗?
发表于2018-05-17 at 11:53 4楼
io测试3个都是1GB的有点儿伤啊 想让他测试为128M,512M,1G 这样的默认就好了
发表于2018-05-26 at 08:46 5楼
这个脚本里的测速节点标注发现个错误。测速结果里标注为“Kunming CT”(昆明电信)的,经过抓包确认,实际上正确的应该是“Kunming CM”(昆明移动),大兄弟更新一下吧!![[嘻嘻]](https://static.oldking.net/wp-content/themes/Blogs/images/smilies/2.gif)
@Tiger感谢回复,下一版本修复
发表于2018-06-01 at 01:39 6楼
虚拟化判断不完善
https://github.com/oooldking/script/blob/master/superbench.sh#L388
标准互联用的hyperv
https://i.loli.net/2018/06/01/5b1032e668bc7.png
发表于2018-07-02 at 11:10 7楼
报错日志如下:
Traceback (most recent call last):
File “tools.py”, line 68, in
GetIpipInfo(sys.argv[2])
File “tools.py”, line 14, in GetIpipInfo
ijson = json.load(f)
File “/usr/lib64/python2.7/json/__init__.py”, line 290, in load
**kw)
File “/usr/lib64/python2.7/json/__init__.py”, line 338, in loads
return _default_decoder.decode(s)
File “/usr/lib64/python2.7/json/decoder.py”, line 366, in decode
obj, end = self.raw_decode(s, idx=_w(s, 0).end())
File “/usr/lib64/python2.7/json/decoder.py”, line 384, in raw_decode
raise ValueError(“No JSON object could be decoded”)
ValueError: No JSON object could be decoded
Traceback (most recent call last):
File “tools.py”, line 68, in
GetIpipInfo(sys.argv[2])
File “tools.py”, line 14, in GetIpipInfo
ijson = json.load(f)
File “/usr/lib64/python2.7/json/__init__.py”, line 290, in load
**kw)
File “/usr/lib64/python2.7/json/__init__.py”, line 338, in loads
return _default_decoder.decode(s)
File “/usr/lib64/python2.7/json/decoder.py”, line 366, in decode
obj, end = self.raw_decode(s, idx=_w(s, 0).end())
File “/usr/lib64/python2.7/json/decoder.py”, line 384, in raw_decode
raise ValueError(“No JSON object could be decoded”)
ValueError: No JSON object could be decoded
Traceback (most recent call last):
File “tools.py”, line 68, in
GetIpipInfo(sys.argv[2])
File “tools.py”, line 14, in GetIpipInfo
ijson = json.load(f)
File “/usr/lib64/python2.7/json/__init__.py”, line 290, in load
**kw)
File “/usr/lib64/python2.7/json/__init__.py”, line 338, in loads
return _default_decoder.decode(s)
File “/usr/lib64/python2.7/json/decoder.py”, line 366, in decode
obj, end = self.raw_decode(s, idx=_w(s, 0).end())
File “/usr/lib64/python2.7/json/decoder.py”, line 384, in raw_decode
raise ValueError(“No JSON object could be decoded”)
ValueError: No JSON object could be decoded
Traceback (most recent call last):
File “tools.py”, line 68, in
GetIpipInfo(sys.argv[2])
File “tools.py”, line 14, in GetIpipInfo
ijson = json.load(f)
File “/usr/lib64/python2.7/json/__init__.py”, line 290, in load
**kw)
File “/usr/lib64/python2.7/json/__init__.py”, line 338, in loads
return _default_decoder.decode(s)
File “/usr/lib64/python2.7/json/decoder.py”, line 366, in decode
obj, end = self.raw_decode(s, idx=_w(s, 0).end())
File “/usr/lib64/python2.7/json/decoder.py”, line 384, in raw_decode
raise ValueError(“No JSON object could be decoded”)
ValueError: No JSON object could be decoded
@anddy已修复,https的问题,换成http的接口了,请再次测试。
发表于2018-07-08 at 11:31 8楼
debian 9 内核4.9这个版本出现Not enough space!
https://raw.githubusercontent.com/oooldking/script/master/superbench.sh正常
发表于2018-10-29 at 19:44 9楼
新的版本 测试貌似有问题:
awk: cmd. line:1: BEGIN{printf “%.1f”, 0 + 容量}
awk: cmd. line:1: ^ invalid char ‘㥠in expression
awk: cmd. line:1: BEGIN{printf “%.1f”, 0 + 容量}
awk: cmd. line:1: ^ syntax error
awk: cmd. line:1: BEGIN{printf “%.1f”, 0 + 已用}
awk: cmd. line:1: ^ invalid char ‘㥠in expression
awk: cmd. line:1: BEGIN{printf “%.1f”, 0 + 已用}
awk: cmd. line:1: ^ syntax error
@Disklong你可能用的不是我的版本,我写的没有中文…
发表于2018-11-16 at 17:52 10楼
你这个脚本跑前两天 krypt的特价鸡,跑出来一大段错误。
@天空坐满了石头收到,谢谢,请提供下具体的错误信息。
发表于2019-03-04 at 09:50 11楼
ub18报错
[img]https://ddd.cat/images/2019/03/04/image.png[/img]
@miulerGeoip 的 api 不稳定
发表于2019-04-03 at 09:19 12楼
GeoIP还是过不去
^CTraceback (most recent call last):
File “tools.py”, line 66, in
GetGeoioInfo(sys.argv[2])
File “tools.py”, line 19, in GetGeoioInfo
ip_api = urllib2.urlopen(r’http://ip-api.com/json’)
File “/usr/lib/python2.7/urllib2.py”, line 154, in urlopen
用的是QN机房的VPS,提供商是woothosting。
@rhotovapi 不稳定,建议到 ip-api.com 直接查询