简介
UnixBench是一个类unix系(Unix,BSD,Linux)统下的性能测试工具,一个开源工具,被广泛用与测试linux系统主机的性能。Unixbench的主要测试项目有:系统调用、读写、进程、图形化测试、2D、3D、管道、运算、C库等系统基准性能提供测试数据。
最新版本UnixBench5.1.3,包含system和graphic测试,如果你需要测试graphic,则需要修改Makefile,不要注释掉”GRAPHIC_TESTS = defined”,同时需要系统提供x11perf命令gl_glibs库。
下面的脚本使用了最新版UnixBench5.1.3来测试,注释了关于graphic的测试项(大多数VPS都是没有显卡或者是集显,所以图像性能无需测试),运行10-30分钟后(根据CPU内核数量,运算时间不等)得出分数,越高越好。
测试方法
wget --no-check-certificate https://github.com/teddysun/across/raw/master/unixbench.sh
chmod +x unixbench.sh
./unixbench.sh
测试项目
Dhrystone 2 using register variables
此项用于测试 string handling,因为没有浮点操作,所以深受软件和硬件设计(hardware and software design)、编译和链接(compiler and linker options)、代码优化(code optimazaton)、对内存的cache(cache memory)、等待状态(wait states)、整数数据类型(integer data types)的影响。
Double-Precision Whetstone
这一项测试浮点数操作的速度和效率。这一测试包括几个模块,每个模块都包括一组用于科学计算的操作。覆盖面很广的一系列 c 函数:sin,cos,sqrt,exp,log 被用于整数和浮点数的数学运算、数组访问、条件分支(conditional branch)和程序调用。此测试同时测试了整数和浮点数算术运算。
Execl Throughput
此测试考察每秒钟可以执行的 execl 系统调用的次数。 execl 系统调用是 exec 函数族的一员。它和其他一些与之相似的命令一样是 execve() 函数的前端。
File copy
测试从一个文件向另外一个文件传输数据的速率。每次测试使用不同大小的缓冲区。这一针对文件 read、write、copy 操作的测试统计规定时间(默认是 10s)内的文件 read、write、copy 操作次数。
Pipe Throughput
管道(pipe)是进程间交流的最简单方式,这里的 Pipe throughtput 指的是一秒钟内一个进程可以向一个管道写 512 字节数据然后再读回的次数。需要注意的是,pipe throughtput 在实际编程中没有对应的真实存在。
Pipe-based Context Switching
这个测试两个进程(每秒钟)通过一个管道交换一个不断增长的整数的次数。这一点很向现实编程中的一些应用,这个测试程序首先创建一个子进程,再和这个子进程进行双向的管道传输。
Process Creation
测试每秒钟一个进程可以创建子进程然后收回子进程的次数(子进程一定立即退出)。process creation 的关注点是新进程进程控制块(process control block)的创建和内存分配,即一针见血地关注内存带宽。一般说来,这个测试被用于对操作系统进程创建这一系统调用的不同实现的比较。
System Call Overhead
测试进入和离开操作系统内核的代价,即一次系统调用的代价。它利用一个反复地调用 getpid 函数的小程序达到此目的。
Shell Scripts
测试一秒钟内一个进程可以并发地开始一个 shell 脚本的 n 个拷贝的次数,n 一般取值 1,2,4,8。(我在测试时取 1, 8)。这个脚本对一个数据文件进行一系列的变形操作(transformation)。
原创文章,作者:南猫,如若转载,请注明出处:https://southcat.net/1490/
不妨点个广告再走嘛
相关推荐
-
Linux VPS的Windows DD包详细的制作教程
说明:之前Vicer大佬制作出了VPS全自动DD安装Windows脚本,让我们很多喜欢在VPS安装Windows的人方便了许多,不过dd前必须得有一个dd包,这里就说下Windows dd包的制作过程,虽然网上很多这样的dd包,但对于一些来历不明的,也会有点不放心,所以我们有时间的话可以自己定制一个。 相关教程:Linux VPS无限制一键全自动DD安装Windows脚本 通过本教程自制的一个Windows server 2008 R2 dd包: # Windows server 2008 R2 Standard 中文版 # 2.9G(解压后8G) KVM 未激活 全新安装 已经过测试可用 http://nico-ni.co/dd/Win2008R2Standard-x64.gz # 备用地址 https://down.southcat.net/Windows/Win2008R2Standard-x64.gz # Username: Administrator # Password: lolico.moe123 准备工作 Windows原版镜像,可以在MSDN下载。 DISM++,用于DIY以及优化wim镜像。 虚拟化驱动:VirtIO(KVM驱动),Xen驱动。 下载gunzip for windows,备用下载点。或者你也可以直接去安装Cmder(官网),其自带有 gzip(顺便安利一下这个可以在Win下执行大多数Linux命令的超好用的命令行程序)。 在计算机上安装Hyper-V(Win8/10开启Hyper-V教程),准备用于对制作好的vhd映像进行测试。 开始制作 1、制作可用的镜像文件提取准备好的Windows原版镜像中的\sources\install.wim文件,解压或直接挂载虚拟光驱都行,提取该文件到E:\install.wim。 创建一个vhd虚拟磁盘,示例:盘符为V,路径为D:\win.vhd,大小为5120M。 首先以管理员身份运行命令提示符或者PowerShell,然后执行以下命令: diskpart # 以下命令实际上可以复制粘贴一次性执行,无需分条 CREATE VDISK FILE="D:\win.vhd" TYPE=FIXED MAXIMUM=5120 SELECT VDISK FILE="D:\win.vhd" ATTACH VDISK CLEAN CREATE PARTITION PRIMARY FORMAT FS=NTFS QUICK ASSIGN LETTER=V 在D盘创建一个文件夹D:\MOUNT,打开DISM++,点击:文件–>挂载映像–>点第一个浏览,找到E:\install.wim–>点第二个浏览,找到D:\MOUNT–>不选中只读模式–>确定。 在DISM++里进行系统设置优化(建议关闭UAC)、安装语言包、添加先前下载好的虚拟化驱动等。 完成后,点文件–>另存为映像–>保存在D:\install.wim,等待任务完成。 点击:文件–>释放映像–>点第一个浏览,找到D:\install.wim–>点第二个浏览,找到V:–>只选中添加引导和格式化–>确定–>在弹出的“引导修复-BIOS”对话框中点击“更多”–>找到盘符为V的磁盘分区–>确定。 最后等待完成! 2、设置系统的注册表 在自己的电脑上打开注册表编辑器regedit,选中HKEY_LOCAL_MACHINE分支,点击:文件->加载配置单元。 在文件浏览器中选择V:\Windows\System32\config\SYSTEM,项名称填一个好找又不和目前项相同的,例如A_SYSTEM,然后更改如下键值以开启远程桌面服务。 继续按照先前步骤加载配置单元V:\Windows\System32\config\SOFTWARE,项为A_SOFTWARE,然后更改如下键值以关闭 Ctrl+Alt+Del登陆。 选中我们加载的配置单元,点击:文件->卸载配置单元,将A_SYSTEM和A_SOFTWARE卸载。 3、制作预应答文件下载Microsoft Windows AIK,建议安装在剩余空间较大的磁盘分区,因为创建编录文件的时候会自动挂载镜像。 貌似仅适用于制作Windows 7以及Server 2008 R2的,如果是其他系统不知能不能制作,也可以尝试直接照搬我提供的预应答文件。 安装完成后,打开“Windows系统映像管理器”,点击:文件->选择Windows映像,然后选择我们已经在前面的步骤中优化好的 wim文件,然后会提示你需要创建编录文件,选是即可。 等待加载完成,然后仿照【这个预应答文件】进行制作(文件内容见附录),这个预应答文件将会设置用户名Administrator的密码为lolico.moe123。软件的具体使用方法可以百度一下有很多范例,讲起来比较复杂,理解能力强的人看一看就会用,因此此处不再赘述。如果你要制作的是Win7或者Server2008R2的64位系统,也可以使用此软件打开,然后在这个文件的基础上进行修改。 制作完成之后保存预应答文件为unattend.xml,然后放在V:\Windows\Panther目录下(如果没有目录就自行新建)。 在我的电脑中右击V盘,弹出。...
-
一个很实用的搬瓦工VPS本地管理工具
说明:本工具可以让你很方便的管理你的搬瓦工VPS,并且查看具体信息,启动VPS,还可当SSH使用,而不需要经常登录网页后台,很方便。 截图 功能 查看VPS的内存/流量/硬盘/系统的情况。 简易的shell功能。 基本的VPS控制(启动/停止/重启/强制关闭)。 使用 软件下载:Github地址,进入后,下载最新版软件。 先登录搬瓦工后台,找到左侧API,记下你的VEID,并点击Show API Key获取你的API Key。 再打开软件,填入VEID和API_KEY就可以登录了。 没有搬瓦工想买的可以查看:搬瓦工VPS。
-
Linux VPS安装Google Authenticator实现SSH登陆二次验证
说明:一般我们考虑到VPS的安全问题的时候,都是更改SSH端口和密码,然后更安全的也就是禁用密码使用密匙登录。方法很久前就水过了,这里再分享一个方法,可以在VPS上安装一个Google Authenticator(谷歌身份验证器),这样我们登录VPS的时候,不仅需要密码正确,而且还要你输入正确的动态验证码才能登录进去,这样安全性就高了不少,这里就说下CentOS、Debian、Ubuntu的使用。 提示:教程需要配合Google身份验证器一起使用,手机没有安装该APP的需要安装一下,方便获取动态验证码。 安装 1、软件包安装 #CentOS 6系统 rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-6.noarch.rpm yum install google-authenticator -y #CentOS 7系统 rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm yum install google-authenticator -y #Debian/Ubuntu系统 apt update apt install libpam-google-authenticator -y 2、编译安装安装依赖: #CentOS系统 yum install gcc make pam-devel libpng-devel libtool wget git autoconf automake qrencode -y #Debian/Ubuntu系统 apt update apt install -y gcc make autoconf automake libtool libpam0g-dev libqrencode3 git 安装验证器: git clone https://github.com/google/google-authenticator-libpam.git cd google-authenticator-libpam ./bootstrap.sh ./configure make && make install 配置 1、配置验证器 google-authenticator 输出如下: Do you want authentication tokens to be time-based (y/n) y #验证二维码,在浏览器打开使用谷歌验证器APP扫描添加即可。 https://www.google.com/chart?chs=200x200xxx Your new secret...
-
Speedpan:百度网盘满速下载工具,无需登录,也可直接下载BT种子
说明:博主好像分享了好多个度盘下载工具,有些需要登录账号,对于曾经经历过封号的人来说,或多或少都会有点排斥,现在再分享个无需登录就可以高速下载百度文件的工具Speedpan(速盘),还可以直接在线搜索资源,下载分享链接,BT种子等,速度都很快,可以说功能很强了。 截图 功能 百度网盘不限速下载(正常情况下都可以满宽带)。 分享链接下载(不需要登录)。 分享资源搜索并下载(不需要等录)。 离线BT下载(离线下载需要登录)。 其它网盘常规操作,如创建文件夹,创建分享链接,删除等(访问自己的网盘需要登录),登录时调用的是百度的登录页,只记录登录cookie,不会保存用户密码等信息。 下载 点击下载:本地下载,官方下载 相关问题解答 #连接少,速度慢怎么办? 如果遇到连接数不少,但是速度上不去,或者连接数少但又不是IP限制(少于5)时,请尝试下载中直接关闭并重新启动程序,说不定会有惊喜(Aria2抽风对策) #帐号或者ip被限制了怎么办? 分享,然后用分享链接下载,新版本中分享链接下载速度比以前更快了。 #使用第三方下载工具是否会被封号? 据说去年有过一波封号,不过从最近几个月使用情况来看并没有发现封号现象,只是经常出现IP的现象,过几小时就恢复正常了。 #什么是IP限制? IP限制是我们的一种说法,指的是百度服务器主动断开多个连接,只保留很少的几个连接,导致下载速度非常慢,这种情况换个IP地址,或者等几个小时通常会自动恢复正常。 #大的压缩文件下载后提示压缩包已损坏? 设置中打开文件校验可以确保下载文件的完整性,新版本中已经默认开启 #连接数只有5,是不是被封号了? 通常是被限制IP了,封号情况目前为止还没遇到过,这种情况下可以尝试换个IP,或者过几个小时就能恢复正常。 #为什么的我下载速度还是慢? 下载速度快慢主要跟带宽和资源的多少有关,资源少的文件速度会慢些(确认资源多少可以在下载过程中查看连接数,如果连接数小于设置的连接数很多,比如设置为64,却只有2,3十个连接,那说明资源比较少),至于带宽,理论下载峰值 = 带宽/8 #为什么一启动就提示缺少bcrypt.dll? 通常出现在XP系统中,Aria2的新版本并不支持XP,若需要在XP下使用,请到Aria2的官网下载1.16-1.18之间的版本,替换到目录中的aria2c.exe即可正常使用。(注:老版本可以在aria2的官方网站上下载到,本程序不支持1.16以前的版本) #是不是你们的软件不登陆就没多少速度? 登录与否与速度无关,登录情况下分享链接,速度跟不登录下分享链接是一样,等录只是能下自己网盘上的东西,另外,自己网盘上的东西往往能获取到一大堆来源(下载地址),所以连接数会比下分享链接多不少,当然速度也快不少。分享链接正常情况下都只会得到一个真实下载地址,一个资源Aria2只会最多16个连接,资源如果够健康(出口带宽够高,不拥挤),那还是可以达到满速的,只是达到满速的可能性比下自己网盘的东西低。 #为什么越接近完成速度越慢? 这是因为下载是分块同步进行的,每个块都有不少连接,接近完成时块已经很少了,连接数自然也少了,速度也就降低了,这属于正常现象。设置分块大小小一点,例如1M,可以在一定程序上缓解这个问题。 #为什么同一局域内不同的电脑下载差异非常大? 这个问题是Aria2的环境差异性引起的,原因不明,遇到这种情况可以尝试使用不同版本的aria2或者修改aria2的配置,网上可以轻松找到多个版本的aria2。 #为什么登录不了? 由于软件的登录是调用IE浏览器,如果电脑里的IE本身被破坏或者有问题,可能会导致登录页面显示不了。 #不支持下载目录吗? 支持的,只是下载列表里并不会显示文件夹,实际上已经在你指定的保存路径为你按网盘上文件夹的结构创建好文件夹了,文件也会按路径自动保存。 注:由于重未对外发布过,第一次运行有可能会出现“未知发行者”的提示,点击继续运行即可。
-
在Linux上快速搭建Git服务器教程
说明:Git是一个分布式的版本控制系统,也就意味着它可以在有网络环境或者没有网络环境的时候使用。而通常情况下会搭建一个服务端,所有用户的更改统一发布到服务端上。 服务器上的Git 一般情况下如果想与他人合作,就需要一个远程的Git仓库。尽管技术上可以从个人的仓库里推送和拉取修改内容,但我们不鼓励这样做,因为一不留心就很容易弄混其他人的进度。另外,你也一定希望合作者们即使在自己不开机的时候也能从仓库获取数据—拥有一个更稳定的公共仓库十分有用。因此,更好的合作方式是建立一个大家都可以访问的共享仓库,从那里推送和拉取数据。我们将把这个仓库称为 "Git 服务器";代理一个Git仓库只需要花费很少的资源,几乎从不需要整个服务器来支持它的运行。 更多参考:服务器上的 Git Git的安装 # CentOS REHL # yum install git # Ubuntu # sudo apt-get install git # Windows 访问:http://git-scm.com/download/ 部署Git 本文主要介绍通过SSH的方式访问Git的部署。 1、在客户端生成公钥每个需要使用Git服务器的客户端都需要生成这个公钥,然后将它们全部上传到服务器。使用命令: $ ssh-keygen 或者指定密钥算法和用户标识: $ ssh-keygen -t rsa -C "youremail@example.com" 然后在你的用户文件夹下,会生成一个.ssh文件夹,里边有两个文件:id_rsa(私钥,不要泄漏)id_rsa.pub(公钥,复制到服务器上) cat ~/.ssh/id_rsa.pub ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAklOUpkDHrfHY17SbrmTIpNLTGK9Tjom/BWDSU GPl+nafzlHDTYW7hdI4yZ5ew18JH4JW9jbhUFrviQzM7xlELEVf4h9lFX5QVkbPppSwg0cda3 Pbv7kOdJ/MTyBlWXFCR+HAo3FXRitBqxiX1nKhXpHAZsMciLq8V6RjsNAQwdsdMFvSlVK/7XA t3FaoJoAsncM1Q9x5+3V0Ww68/eIFmb1zuUFljQJKprrX88XypNDvjYNby6vw/Pb0rwert/En mZ+AW4OZPnTPI89ZPmVMLuayrD2cE86Z/il8b+gw3r3+1nKatmIkjn2so1d01QraTlMqVSsbx NrRFi9wrf+M7Q== schacon@agadorlaptop.local 2、服务端搭建新建git用户: # useradd git # su - git $ mkdir ~/.ssh $ chmod 700 ~/.ssh $ cd ~/.ssh $ touch authorized_keys $ chmod 600 authorized_keys 请注意,.ssh文件夹的权限为700,authorized_keys文件的权限为600,一定要这样设置,不然无法生效。将公钥添加到authorized_keys,一行一个。 $ cat /tmp/id_rsa.john.pub >> ~/.ssh/authorized_keys $ cat /tmp/id_rsa.josie.pub >> ~/.ssh/authorized_keys $ cat /tmp/id_rsa.jessica.pub >> ~/.ssh/authorized_keys 创建裸仓库:...
-
博客将不定期赠送DigitalOcean $50优惠码
说明:博客玩了这么久了,还没发过一次福利,现在先发下DigitalOcean $50优惠码,以后会发放更多的福利,Do码差不多每隔几天都会送一次,有需求的可以关注下。 码子说明 优惠码仅适用于新账户,即需要一个新的paypal账户或信用卡将新注册的账户激活后就可以使用优惠码。 使用优惠码后账户可获得$50的余额,走AFF链接会获取$50+$10余额,该链接下面会提供,余额有效期为1年。 领取说明 为了让更多人得到,优惠码不会直接放出来,而是通过评论的方式,有需求的在下方评论说下,顺便发个邮件到moerats@live.com邮箱,内容就是评论时填的名称,到时候我会一个个将优惠码回过去的。 只有在送码的时候发送邮箱才有效,平常博主会无视。 送码会很频繁,具体时间会在下方公布,且每人每次只给一个,每次5个以上,具体看情况。 没需求的,或者领过的,或者没有新的paypal账户的,可以尽量将码子让给其它人。 使用说明 如果你想直接使用优惠码,就去官网注册,官网地址:https://www.digitalocean.com,必须从此链接进去注册。 1、登陆DigitalOcean账号。 2、打开页面:https://cloudsupport.digitalocean.com/s/createticket。 3、下拉框,选择Billing。 4、第二个下拉框,选择Promo and Credit。 5、Subject: I have a promo code from Github. 6、Search for a Related Droplet: 不填 7、Describe the problem you’re having in great detail: Promo Code: *#FCK#jd^@GITHUB-xxxxxxxx 送码预告 1月4日已结束!7日已结束!12号已结束!17号已结束!18号已结束!21号已结束!28号已结束!2月18已结束!3月2号已结束! 赞助列表 #感谢赞助过的大佬 2018年由萌咖赞助,附上地址: 萌咖博客:https://moeclub.org 萌咖杂货店:https://shop.moeclub.org/,该杂货铺售卖很多小商品,有兴趣可以看看。 2019年由博主和秋叶花博客一起赞助,附上地址: 秋叶花博客:addmoe.com
-
通过限制IP访问WordPress登录画面来防爆破教程
前言 WordPress 是目前最流行的 CMS,正因为如此,针对它的登录爆破就时刻从未停止过。如果你安装了一款名叫Simple Login Log的插件,你就会知道,每天的暴力破解次数是多么丧心病狂。该插件会记录每一次登录后台的操作,不管是成功或失败都会留下记录。正因如此,还是未雨绸缪做一些防范比较好。本次介绍在使用 Apache 的 VPS 上,如何限制 IP 访问 WordPress 后台登录画面。 Apache httpd 的设定方法 使用 Apache 可以限制 IP 访问某个特定的文件或文件夹。具体教程可以参考:Files Directive下面简单介绍如何限制 WordPress 后台登录画面的文件wp-login.php。举例来说,只允许 IP 地址192.168.2.1访问,按照如下设定,写入 Apache 的配置文件httpd.conf或者网站根目录下的.htaccess都可以。 <Files "wp-login.php"> Order Deny,Allow Deny from all Allow from 192.168.2.1 </Files> 只允许某 IP 地址段192.168.2.*访问,则为: <Files "wp-login.php"> Order Deny,Allow Deny from all Allow from 192.168.2 </Files> 允许多个 IP 地址192.168.2.1 、192.168.2.2访问,则为: <Files "wp-login.php"> Order Deny,Allow Deny from all Allow from 192.168.2.1 192.168.2.2 </Files> 没有固定 IP 的对应方法 如果你已经有了 VPS,当然这个问题就不是问题了。VPS 都是使用固定 IP 的,你只需使用本站的几个一键脚本,就能分分钟搭建好,然后挂上 socks5 代理,不就是固定 IP 了么。
-
Sharecmd:一个可以将文件上传至Google Drive/Dropbox并自动生成分享链接的工具
说明:Sharecmd是一个用Golang编写的Cmdline工具,可以直接将文件上传到配置的网盘类型,并自动生成分享链接的工具,并将该链接复制到系统剪贴板。支持Windows、Linux、Macos系统。 #目前支持的网盘类型 Dropbox、Google Drive、Seafile、Nextcloud/Owncloud 貌似这是个新项目,作者也天天在更新,所以以后可能会支持更多网盘或功能,有兴趣的可以多关注下。 使用方法 Github地址:https://github.com/mschneider82/sharecmd 这里只说Linux系统的使用方法,我们先根据自身系统版本找到编译好的二进制文件下载链接→下载地址。 #下载二进制文件 wget https://github.com/mschneider82/sharecmd/releases/download/v0.0.46/sharecmd_0.0.46_Linux_x86_64.tar.gz #解压文件 tar zxvf sharecmd*.tar.gz #移动文件 mv share /usr/local/bin #删掉没用的文件 rm -rf sharecmd*.tar.gz README.md LICENSE 然后开始设置网盘,使用命令: share --setup 使用上下键选择,然后Enter确认。这里博主选择的是Google Drive,会给个链接你打开,然后登录账号授权获取验证码,再输入SSH客户端确认即可。最后就可以上传了,上传命令: #使用命令 share 文件路径 #比如将home文件夹的MOERATS文件上传至网盘 share /home/MOERATS 或者 cd /home share MOERATS 如果后面出现Can't copy link to clipboard报错,可以无视,就是不能使用剪切板而已,影响不大。 上传目录 #文件将上传到网盘的以下目录 Dropbox:/Apps/sharecmd Google drive:/sharecmd Seafile:/sharecmd Own/Nextcloud:/sharecmd
-
Linux CentOS 6升级Python 2.6至Python 2.7的方法
说明:现在很多软件安装都需要Python2.7支持了,不想折腾的可以直接用Centos 7.x,自带Python2.7,很多人还在用Centos 6.x,自带Python2.6,版本太低,而又不想换系统,所以只能手动升级了。 方法 1、检查当前Python版本 python -V 检查之后,我们可以看到是Python 2.6.6版本 2、升级系统和安装开发工具包 yum -y update yum groupinstall "Development tools" -y 3、补充安装需要的组件支持 yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel -y 4、安装Python2.7.6 cd /opt wget --no-check-certificate https://www.python.org/ftp/python/2.7.6/Python-2.7.6.tar.xz tar xf Python-2.7.6.tar.xz ./configure --prefix=/usr/local sudo make && sudo make altinstall 注意了,这里是用的altinstall。 5、检查是否安装 /usr/local/bin/python2.7 --version 目前,我们只能通过这个命令检查,看到Python 2.7.6版本。 6、创建软链接 mv /usr/bin/python /usr/bin/python2.6.6 ln -s /usr/local/bin/python2.7 /usr/bin/python 移除原来的老版本,然后创建2.7的软链接。这样我们直接用Python -V可以看到已经是Python 2.7.6。 7、修复兼容问题另外,由于yum的依赖是python2.6,需要修改yum文件 vi /usr/bin/yum 编辑文件,在顶部修改成 #!/usr/bin/python2.6.6