Centos7查看CPU使用率、内存使用率、磁盘使用率

一、查看CPU使用率

1. top 命令

Centos7查看CPU使用率、内存使用率、磁盘使用率插图
top命令可以看到总体的系统运行状态和cpu的使用率 。
%us:表示用户空间程序的cpu使用率(没有通过nice调度)
%sy:表示系统空间的cpu使用率,主要是内核程序。
%ni:表示用户空间且通过nice调度过的程序的cpu使用率。
%id:空闲cpu
%wa:cpu运行时在等待io的时间
%hi:cpu处理硬中断的数量
%si:cpu处理软中断的数量
%st:被虚拟机偷走的cpu
注:99.0 id,表示空闲CPU,即CPU未使用率,100%-99.0%=1%,即系统的cpu使用率为1%。

2、vmstat

vmstat命令是最常见的Linux/Unix监控工具,可以展现给定时间间隔的服务器的状态值

Centos7查看CPU使用率、内存使用率、磁盘使用率插图1
包括服务器的CPU使用率,
内存使用,
虚拟内存 交换情况,
IO读写情况
相比top,通过vmstat可以看到整个机器的 CPU,内存,IO的使用情况,
而不是单单看到各个进程的CPU使用率和内存使用率。

运行示例

一般vmstat工具的使用是通过

两个数字参数来完成的
第一个参数: 采样的时间间隔数,单位是秒,
第二个参数: 采样的次数
Centos7查看CPU使用率、内存使用率、磁盘使用率插图2

在应用过程中,我们会在一段时间内一直监控,不想监控直接结束vmstat就行了,例如:

Centos7查看CPU使用率、内存使用率、磁盘使用率插图3

参数详解

Linux 内存监控vmstat命令输出分成六个部分:

1、进程procs

    r:在运行队列中等待的进程数 。
    b:在等待io的进程数 。

2、内存memoy:

    swpd:现时可用的交换内存(单位KB)。 
    free:空闲的内存(单位KB)。
    buff: 缓冲去中的内存数(单位:KB)。
    cache:被用来做为高速缓存的内存数(单位:KB)。

swap交换页面

    si: 从磁盘交换到内存的交换页数量,单位:KB/秒。
    so: 从内存交换到磁盘的交换页数量,单位:KB/秒。

io块设备:

    bi: 发送到块设备的块数,单位:块/秒。
    bo: 从块设备接收到的块数,单位:块/秒。

system系统:

    in: 每秒的中断数,包括时钟中断。
    cs: 每秒的环境(上下文)转换次数。

cpu中央处理器:

    cs:用户进程使用的时间 。以百分比表示。
    sy:系统进程使用的时间。 以百分比表示。
    id:中央处理器的空闲时间 。以百分比表示。

常见诊断:

1、如:r经常大于4且id经常小于40,表示中央处理器的负荷很重。
2、如:bi,bo长期不等于0,表示物理内存容量太小。

每个参数的具体意思如下:

参数:r

表示运行队列(就是说多少个进程真的分配到CPU),
我测试的服务器目前CPU比较空闲,没什么程序在跑,
当这个值超过了CPU数目,就会出现CPU瓶颈 了。
这个也和top的负载有关系,
一般负载超过了3就比较高,超过了5就高,超过了10就不正常了,服务器的状态很危险。
top的负载类似每秒的运行队 列。
如果运行队列过大,表示你的CPU很繁忙,一般会造成CPU使用率很高。

b

表示阻塞的进程,这个不多说,进程阻塞

swpd

虚拟内存已使用的大小,如果大于0,表示你的机器物理内存不足了,
如果不是程序内存泄露的原因,
那么你该升级内存了或者把耗内存的任务迁移到其他机器。

free

空闲的物理内存的大小,我的机器内存总共8G,剩余3415M。

buff

Linux/Unix系统是用来存储,目录里面有什么内容,权限等的缓存,本机大概占用300多M

cache

cache直接用来记忆我们打开的文件,给文件做缓冲,
我本机大概占用300多M
(这里是Linux/Unix的聪明之处,把空闲的物理内存的一部分拿来做文件和目录的缓存,
是为了提高 程序执行的性能,当程序使用内存时,buffer/cached会很快地被使用。)

si

每秒从磁盘读入虚拟内存的大小,如果这个值大于0,
表示物理内存不够用或者内存泄露了,要查找耗内存进程解决掉。
我的机器内存充裕,一切正常。

so

每秒虚拟内存写入磁盘的大小,如果这个值大于0,同上。

bi

块设备每秒接收的块数量,这里的块设备是指系统上所有的磁盘和其他块设备,
默认块大小是1024byte,我本机上没什么IO操作,所以一直是0,
但是我曾在处理拷贝大量数据(2-3T)的机器上看过可以达到140000/s,
磁盘写入速度差不多140M每秒

bo

块设备每秒发送的块数量,例如我们读取文件,bo就要大于0。
bi和bo一般都要接近0,不然就是IO过于频繁,需要调整。

in

每秒CPU的中断次数,包括时间中断

cs

每秒上下文切换次数,
例如我们调用系统函数,就要进行上下文切换,线程的切换,也要进程上下文切换,
这个值要越小越好,太大了,要考虑调低线程或者进程的 数目,
例如在apache和nginx这种web服务器中,
我们一般做性能测试时会进行几千并发甚至几万并发的测试,
选择web服务器的进程可以由进程或 者线程的峰值一直下调,压测,
直到cs到一个比较小的值,这个进程和线程数就是比较合适的值了。
系统调用也是,每次调用系统函数,我们的代码就会进入内核 空间,导致上下文切换,
这个是很耗资源,也要尽量避免频繁调用系统函数。
上下文切换次数过多表示你的CPU大部分浪费在上下文切换,
导致CPU干正经事的 时间少了,CPU没有充分利用,是不可取的。

us

用户CPU时间,我曾经在一个做加密解密很频繁的服务器上,
可以看到us接近100,r运行队列达到80(机器在做压力测试,性能表现不佳)。

sy

系统CPU时间,如果太高,表示系统调用时间长,例如是IO操作频繁。

id

空闲 CPU时间,一般来说,id + us + sy = 100,一般我认为id是空闲CPU使用率,
us是用户CPU使用率,sy是系统CPU使用率。

wt

等待IO CPU时间。

3、sar

sar命令语法和vmstat一样。命令不存在时需要安装sysstat包,这个包很有用。

命令示例:

例如每1秒采集一次CPU使用率,共采集5次。

# sar -u 1 5
Centos7查看CPU使用率、内存使用率、磁盘使用率插图4

进程队列长度和平均负载状态

例如每1秒采集一次,共采集5次。

Centos7查看CPU使用率、内存使用率、磁盘使用率插图5
runq-sz:运行队列的长度(等待运行的进程数)

plist-sz:进程列表中进程(processes)和线程(threads)的数量

ldavg-1:最后1分钟的系统平均负载(System load average)

ldavg-5:过去5分钟的系统平均负载

ldavg-15:过去15分钟的系统平均负载

4、dstat

事先安装

[root@DcServer ~]# yum install  dstat -y

每秒cpu使用率情况获取

Centos7查看CPU使用率、内存使用率、磁盘使用率插图6

最占cpu的进程获取

Centos7查看CPU使用率、内存使用率、磁盘使用率插图7

后续在进行补充。。。。。。

转自:https://zhuanlan.zhihu.com/p/356642255

BBR加速脚本(CentOS7*)

注意服务器的系统!

这里以Centos7.x为例子。

以下脚本也是收集的,一般GitHub上也有很多相关脚本,大家也可以自行搜索查看。

1、BBR加速脚本(CentOS7*)

Bash
wget -N --no-check-certificate "https://raw.githubusercontent.com/chiakge/Linux-NetSpeed/master/tcp.sh"    
chmod +x tcp.sh    
./tcp.sh

2.运行完成将出现以下菜单,可根据需要来安装相对应的核心,之后再打开加速功能。如图所示

BBR加速脚本(CentOS7*) 第1张

以安装BBR plus为例,输入数字2来安装。重启VPS如图:

BBR加速脚本(CentOS7*) 第2张

3.安装成功,重启VPS之后我们重新连接服务器。输入下列指令来启用其BBR plus。

BASIC
./tcp.sh

4.按照脚本菜单选项,选择对应安装的功能,来启用加速。

BBR加速脚本(CentOS7*) 第3张

5.如出现如图所示的信息,则表明BBR的加速功能已成功打开。

BBR加速脚本(CentOS7*) 第4张

6.如果必须安装或是转换其他版本的加速,必须再次打开脚本来进行卸载。卸载完成之后再选择所需的版本进行安装,之后需再次打开脚本来进行功能选择。

注意Centos8.x不能安装BBR PLUS加速,会导致连不上服务器的情况。

GitHub原地址:https://github.com/chiakge/Linux-NetSpeed

WordPress 后台密码忘记后,如何重置找回密码的方法

1、通过其他管理员修改密码

如果您的 WordPress 站点中有其他管理员,给他打个电话,请他帮你修改一下,这是最简单方便的方法了,如果他不知道怎么修改,按照下面的流程教他操作就可以了。

  1. 在 WordPress 后台左侧菜单中,点击「用户->所有用户」
  2. 在用户列表中找到你的用户名,点击编辑
  3. 在打开的新页面中,向下滚动到「新密码」部分,然后单击「生成密码」按钮。
  4. 可以直接使用生成的新密码,也可以输入你常用的密码,如果使用的是自己设置的密码,建议强度达到「强」,以保证 WordPress 安全性。
  5. 单击「更新个人资料」按钮。

2、通过电子邮件找回密码

如果你还记得自己的用户名或者电子邮件,那么可以常识使用 WordPress 的「找回密码」功能。

  • 打开 WordPress 登录页面(如:http://yoursite.com/wordpress/wp-login.php)
  • 点击「忘记密码?」链接
  • 在打开的新页面中输入你的用户名或电子邮件
  • 然后打开邮箱,然后打开邮件中的重置密码连接
  • 输入你想要设置的新密码,点击「保存」按钮即可
如果你的服务器不能发送电子邮件,此方法则无法使用。通过其他方法修改后,可以设置 SMTP 邮件服务器以便后期使用。

3、通过 MySQL 命令行设置新密码

如果你可以通过 SSH 登录服务器,我们可以使用 MySQL 命令行为用户设置新密码。

首先,我们需要使用 mysql 命令行客户端登录 MySQL 服务器,使用如下命令登录:

mysql -u root -p;

然后选择你的 WordPress 站点对应的数据库,如下(wordpress_com 是数据库名称):

use wordpress_com

最后,使用 UPDATE 命令更新密码,user_pass 后面的字符串就是 WordPress 加密后的密码,下面示例中对应的明文密码为「123456」,当然,你可以自己生成 WordPress 加密密码字符串。

UPDATE wp_users SET user_pass = $1$rSziHLDY$399k.JuJsy.oHVp5lquJC. WHERE ID = 1;

4、通过 phpMyAdmin 修改密码

如果你的服务器上安装了 phpMyAdmin,并且你可以登录,我们可以通过 phpMyAdmin 重新设置用户密码。

image

参考上如,我们找到需要修改密码的用户,双击 user_pass 中的密码,然后输入上一步中的 WordPress 加密密码字符串,然后鼠标在空白处点击一下就保存成功了,然后用我们修改后的新密码就可以登录 WordPress 后台了。

通过 phpMyAdmin 修改密码和通过 MySQL 命令修改密码的原理其实是一样的,都是通过修改数据库中的 WordPress 加密密码字符串来实现的。

通过 FTP 重置密码

如果您可以登录 WordPress 站点的 FTP,我们可以使用 wp_set_password 函数来修改密码。

  1. 通过 FTP 登录网站,然后下载你所用主题的 functions.php 文件
  2. 编辑文件,在第一个 <?php 之后添加如下代码:
wp_set_password('123456',1);

这个函数的第一个参数,也就是上面的「123456」是我们需要设置的密码,第二个参数是用户 ID。

  1. 把修改后的文件上传回您的网站。
  2. 刷新以此网站首页,管理员密码就修改为我们上面设置的 123456 了,登录后台后,删除掉上面添加的代码,否则每次打开一个页面,密码就会重新设置为 123456.

通过 WP CLI 命令行修改用户密码

WP CLI 是一个用于管理 WordPress 站点的命令行工具。

1、进入 WordPress 站点目录并输入

$ wp user list

这个命令的作用是列出所有用户,在返回结果中找到你的用户 ID,然后,更新用户。

wp user update 1 --user_pass=$1$rSziHLDY$399k.JuJsy.oHVp5lquJC.

上面命令中的 1 就是管理用用户 ID,--user_pass= 后面的字符串和我们通过 MySQL 命令行设置的一样,是 WordPress 加密密码字符串。

本文设置的密码「123456」只是为了方法演示使用,如果你在修改找回密码的过程中使用了这个密码,请找回密码后,及时登录 WordPress 后台修改此密码。

为了安全,我们需要设置较为复杂的密码,而人类的大脑不擅长记忆这类随机字符串,为了避免忘记密码导致网站无法登录,我们可以使用一个密码管理工具来帮我们记忆密码,如 Chrome 浏览器内置的密码管理工具,1Password、Enpass 等。

CentOS7.9 搭建内部yum源服务器同步阿里yum源

环境说明:

1、企业内网需求:企业内部许多服务器是不能连接互联网,但每台centos主机安装软件包时都配置本地yum源很麻烦,也缺少第三方yum源,因此在内网搭建一台yum源服务器满足这一需求,同时网络层面策略只允许此yum源服务器每周日晚限时联网同步阿里云的yum源。

参考连接:http://blog.itpub.net/70004783/viewspace-2790196/

2、准备两台测试主机,一台用作yum源服务器(能连互联网),一台用作客户端。

3、系统版本:CentOS 7.9

 

实操步骤:

一、添加阿里云yum

备份原系统的repo

[root@yumserver ~]# mkdir /etc/yum.repos.d/backup
[root@yumserver ~]# mv /etc/yum.repos.d/*.repo /etc/yum.repos.d/backup

添加阿里云yum源并缓存(Centos-7.repo是软件仓库配置文件,epel-7.repo是扩展源、提供额外的软件包)

[root@yumserver ~]# curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
[root@yumserver ~]# curl -o /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
[root@yumserver ~]# yum makecache
[root@yumserver ~]# yum repolist

 二、安装相关软件

[root@yumserver ~]# yum install -y wget make cmake gcc gcc-c++ pcre-devel zlib-devel openssl openssl-devel httpd yum-utils createrepo

备注:

yum-utils:yum-utils是yum的工具包集合,reposync一个同步工具。
createrepo:createrepo是一个对rpm文件进行索引建立的工具,就是对指定目录下的rpm文件进行检索,把每个rpm文件的信息存储到指定的索引文件中,这样方便远程yum命令在安装更新时进行检索。
httpd:通过Apache软件提供web服务,也可以使用nginx。

三、同步阿里云yum源软件包到本地服务器指定目录/mirror(自定义目录)

创建存放软件包目录/mirror,(chown设置文件所有者和文件关联组,chmod控制用户对文件的权限)

[root@yumserver ~]# mkdir -p /mirror
[root@yumserver ~]# chown -R apache:apache /mirror
[root@yumserver ~]# chmod -R 755 /mirror

同步阿里云yum源软件包

###参数-n指下载最新软件包,-p指定目录,指定本地的源--repoid(如果不指定就同步本地服务器所有的源),下载过程比较久(10个小时左右)
[root@yumserver ~]# reposync -n --repoid=extras --repoid=updates --repoid=base --repoid=epel -p /mirror

[root@yumserver ~]# du -sh /mirror/*
9.0G    /mirror/base
16G     /mirror/epel
323M    /mirror/extras
3.3G    /mirror/updates

四、创建仓库索引

createrepo -po /mirror/base/ /mirror/base/
createrepo -po /mirror/extras/ /mirror/extras/
createrepo -po /mirror/updates/ /mirror/updates/
createrepo -po /mirror/epel/ /mirror/epel/

五、更新数据源

createrepo --update /mirror/base/
createrepo --update /mirror/extras/
createrepo --update /mirror/updates/
createrepo --update /mirror/epel/

六、启动并配置Apache服务

6.1、启动Apache(httpd)服务(如果没有httpd,需要yum install -y httpd 安装一下)

[root@yumserver ~]# systemctl start httpd
[root@yumserver ~]# systemctl enable httpd
[root@yumserver ~]# systemctl status httpd

6.2、系统防火墙放行80端口(apache服务使用的是80端口)

[root@yumserver ~]# firewall-cmd --permanent --zone=public --add-port=80/tcp
success
[root@yumserver ~]# firewall-cmd --reload
success

 备注:必要时可以运行 systemctl restart httpd 重启一下服务。

6.3、关闭selinux(SELINUX=disabled)

[root@yumserver ~]# vi /etc/selinux/config 

CentOS7.9 搭建内部yum源服务器同步阿里yum源插图

6.4、配置httpd.conf文件

[root@yumserver ~]# vi /etc/httpd/conf/httpd.conf
DocumentRoot "/mirror/"
<Directory "/mirror/">
    Options Indexes FollowSymLinks
    AllowOverride  None
    Order allow,deny
    Allow from all
    Require all granted
</Directory>

 注意:上面配置的httpd.conf文件,需要找到如下图DocumentRoot字样的行进行更改,而不是直接复制粘贴插入。

CentOS7.9 搭建内部yum源服务器同步阿里yum源插图1

6.5、修改web界面的 index.html 文件

###修改Apache默认首页index.html,直接复制粘贴执行
cat << EOF > /usr/share/httpd/noindex/index.html
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>CentOS 7 镜像</title>

<script>document.createElement("myHero")</script>
<style>
myHero {
        display: block;
        background-color: #ddd;
        padding: 10px;
        font-size: 20px;
} 
</style> 

</head>
<body>
    <h1>简介</h1>
    <hr>
    <p>CentOS,是基于 Red Hat Linux 提供的可自由使用源代码的企业级 Linux 发行版本,是一个稳定,可预测,可管理和可复制的免费企业级计算平台。</p>
    <hr>
    <br>
    <br>

        <h1>CentOS 7 配置内部YUM源</h1>
    <br>
        <h2>1、备份</h2>
        <myHero>mkdir /etc/yum.repos.d/backup</myHero>
        <myHero>mv /etc/yum.repos.d/*.repo /etc/yum.repos.d/backup/</myHero>
    <br>
        <h2>2、下载新的 CentOS-Base.repo 到 /etc/yum.repos.d/ </h2>
        <myHero>curl -o /etc/yum.repos.d/CentOS-Base.repo http://xx.xx.xx.xx/repo/CentOS-Base.repo</myHero>
    <br>
        <h2>3、运行 yum makecache 生成缓存</h2>
    <br>
        <h2>4、运行 yum repolist   查看已经生成缓存</h2>
    <br>
    <br>

</body>
</html>
EOF

注意: 上文中的 http://xx.xx.xx.xx 填写自身yum源服务器的ip地址。

七、编写yum源客户端配置文件

创建repo文件夹

[root@yumserver ~]# mkdir -p /mirror/repo/
###复制粘贴执行,注意:xx.xx.xx.xx需要更改为服务器ip地址。

[root@yumserver ~]# cat << EOF > /mirror/repo/CentOS-Base.repo

[base]
name=CentOS- Base - xx.xx.xx.xx
failovermethod=priority
baseurl=http://xx.xx.xx.xx/base/
enable=1
gpgcheck=0
 
#released updates 
[updates]
name=CentOS- Updates - xx.xx.xx.xx
failovermethod=priority
baseurl=http://xx.xx.xx.xx/updates/
enable=1
gpgcheck=0
 
#additional packages that may be useful
[extras]
name=CentOS- Extras - xx.xx.xx.xx
failovermethod=priority
baseurl=http://xx.xx.xx.xx/extras/
enable=1
gpgcheck=0
 
#additional packages that may be useful
[epel]
name=CentOS- Epel - xx.xx.xx.xx
failovermethod=priority
baseurl=http://xx.xx.xx.xx/epel/
enable=1
gpgcheck=0
EOF

八、客户端配置yum

登录客户端操作系统执行以下命令(注意:xx.xx.xx.xx为yum源服务器的ip地址)

[root@client ~]# mkdir /etc/yum.repos.d/backup/
[root@client ~]# mv /etc/yum.repos.d/* /etc/yum.repos.d/backup/
[root@client ~]# curl -o /etc/yum.repos.d/CentOS-Base.repo http://xx.xx.xx.xx/repo/CentOS-Base.repo
[root@client ~]# yum makecache

用户也可以用浏览器访问 http://xx.xx.xx.xx 查看配置客户端yum源的方法

CentOS7.9 搭建内部yum源服务器同步阿里yum源插图2

 九 、设置定时同步yum源的任务

编辑脚本

[root@yumserver ~]# cat  /mirror/script/centos_yum_update.sh
#!/bin/bash
echo 'Updating Aliyum Source'
DATETIME=`date +%F_%T`
exec > /var/log/aliyumrepo_$DATETIME.log
reposync -np /mirror
if [ $? -eq 0 ];then
 createrepo --update /mirror/base
  createrepo --update /mirror/extras
   createrepo --update /mirror/updates
   createrepo --update /mirror/epel
    echo "SUCESS: $DATETIME aliyum_yum update successful"
    else
     echo "ERROR: $DATETIME aliyum_yum update failed"
    fi

添加定时任务,每周一凌晨1点执行

[root@yumserver ~]# crontab -l
0 1 * * 1 /bin/bash /mirror/script/centos_yum_update.sh

至此,结束。。。

 

问题:有时服务器端的yum源仓库索引没有更新成功。
手动更新:
[root@yumserver ~]# createrepo --update /mirror/base/
[root@yumserver ~]# createrepo --update /mirror/extras/
[root@yumserver ~]# createrepo --update /mirror/updates/
[root@yumserver ~]# createrepo --update /mirror/epel/

Hetzner 独服重装系统并配置 RAID 0

前言

Hetzner在购买的时候只显示硬盘默认是RAID 1模式,发了Ticket也没有回复我,无奈只好先开台机器尝试了。
买的芬兰机器,网络非常差,建议选德国的吧,可能会好点,但会贵一些。

安装

进入后台,点击Rescue选项卡,选择Linux64Bit,然后点击Activate rescue system

接着点击Reset选项卡,选择Execute an automatic hardware reset,然后点击Send,之后下面会显示一串英文,记录下登录密码即可。

此时系统会重启进入Rescue模式,用之前记录的密码登录后输入以下命令开始重装系统:

installimage

Hetaner_Install_Tool.png

选择自己需要安装的系统,点击OK下一步。
之后会出现一系列的确认问题,选择OK即可。

最后进入配置编辑页面,修改成如下即可:

  1. SWRAID 1 #默认即可不用修改
  2. SWRAIDLEVEL 0 #默认是1
  3. PART swap swap 32G #默认
  4. PART /boot ext3 512M #默认
  5. PART / ext4 all #修改成 all
  6. #刪除 PART /home ext4 all

改完,按Esc保存退出,执行reboot重启即可进入新系统。

联通AS4837线路最全评测和介绍

4837线路是指回国或出国前一两跳经过AS编号为4837节点的线路,属于联通线路。由于线路负载相对较低,表现比普通的更好,比CN2 GIA/9929等线路价格更为便宜,是一款性价比较高的线路,因此近两年成为热门选择。

优势

  • 速度快:4837线路的速度普遍快于普通的联通线路,尤其是对于游戏、视频直播等对速度要求较高的应用。
  • 稳定性高:4837线路的稳定性也比较高,一般不会出现掉线、卡顿等问题。
  • 价格便宜:4837线路的价格普遍低于CN2 GIA/9929等线路,因此性价比更高。

劣势

  • 覆盖范围有限:4837线路的覆盖范围相对较小,目前主要集中在美国、欧洲、香港等地区。
  • 部分地区体验不佳:由于4837线路的覆盖范围有限,因此在部分地区的体验可能会不佳,比如国内的东北地区。

适合人群

4837线路适合以下人群:

  • 追求速度和稳定性的用户
  • 预算有限的用户
  • 主要使用游戏、视频直播等对速度要求较高的应用的用户

购买建议

在购买4837线路时,可以注意以下几点:

  • 选择正规的服务商:由于4837线路的热度,市场上也出现了一些不良商家,在购买时要注意选择正规的服务商。
  • 了解线路的覆盖范围:由于4837线路的覆盖范围有限,在购买前要了解线路的覆盖范围,避免购买后体验不佳。
  • 多对比价格:4837线路的价格也存在一定的差异,在购买前可以多对比几家服务商的价格,选择最优惠的方案。

总体而言,4837线路是一款性价比较高的线路,对于追求速度和稳定性的用户来说是一个不错的选择。

aws linux命令合集

AWS (Amazon Web Services) 是亚马逊公司提供的一系列云计算服务。AWS Linux 是AWS基于Linux内核开发的操作系统。下面我将介绍一些常用的 AWS Linux 命令。

1. ls:列出当前目录下的文件和文件夹。
2. cd:切换目录。例如,cd /home 将进入 home 目录。
3. pwd:显示当前所在的目录。
4. mkdir:创建一个新目录。例如,mkdir newdir 将在当前目录下创建一个名为 newdir 的文件夹。
5. touch:创建一个新文件。例如,touch newfile 将在当前目录下创建一个名为 newfile 的文件。
6. cp:复制文件或文件夹。例如,cp file1 file2 将文件 file1 复制到 file2。
7. mv:移动文件或文件夹。例如,mv file1 file2 将文件 file1 移动到 file2。
8. rm:删除文件或文件夹。例如,rm file 将删除名为 file 的文件。
9. cat:显示文件的内容。例如,cat file 将显示名为 file 的文件的内容。
10. grep:在文件中查找指定的模式。例如,grep “pattern” file 将在文件中查找包含 pattern 的行。
11. chmod:修改文件的权限。例如,chmod 755 file 将文件 file 的权限设置为 rwxr-xr-x。
12. chown:修改文件的所有者。例如,chown user file 将文件 file 的所有者设置为 user。
13. top:显示系统的实时进程信息。
14. free:显示系统的内存使用情况。
15. df:显示系统的磁盘空间使用情况。

以上是一些常用的 AWS Linux 命令,它们可以帮助您在 AWS Linux 环境中进行文件和目录操作,以及查看系统的运行情况和资源使用情况。希望这些命令对您有所帮助!

AWS Linux是亚马逊网络服务(Amazon Web Services)推出的一种基于Linux操作系统的云服务器操作系统,专门用于在AWS云平台上运行和管理云服务器实例。以下是一些常用的AWS Linux命令:

1. ls:列出目录内容。可以使用不同的选项来显示文件和目录的详细信息,例如使用-l选项来显示更多信息,或使用-a选项来显示隐藏文件。

2. cd:切换目录。使用cd命令可以进入到指定目录或返回上一级目录。

3. pwd:显示当前工作目录的路径。

4. mkdir:创建目录。可以使用mkdir命令创建新的目录。

5. rm:删除文件或目录。可以使用rm命令删除指定的文件或目录。使用-r选项可以递归地删除目录。

6. cp:复制文件或目录。可以使用cp命令复制指定的文件或目录。使用-r选项可以递归地复制目录。

7. mv:移动文件或目录。可以使用mv命令将文件或目录移动到指定的位置。

8. touch:创建空文件或修改文件的访问和修改时间。

9. cat:显示文件内容。可以使用cat命令将文件的内容显示在终端上。

10. grep:搜索文件内容。可以使用grep命令搜索指定文件中的文本。

11. top:显示系统资源使用情况。top命令可以显示CPU、内存等资源的使用情况,以及正在运行的进程。

12. ps:显示进程信息。可以使用ps命令显示当前系统中运行的进程。

13. yum:包管理器。使用yum命令可以安装、更新和删除软件包。

14. systemctl:系统服务管理器。可以使用systemctl命令管理系统服务,如启动、停止和重启服务。

15. ssh:远程登录。可以使用ssh命令通过网络连接到远程服务器。

这只是AWS Linux中一些常用的基本命令,还有很多其他命令可以用于系统配置、网络管理、安全设置等方面。根据具体的需求和使用场景,还可以通过学习和实践来熟悉更多的AWS Linux命令。

 

AWSLinux是使用Amazon Web Services(AWS)构建和部署应用程序的一种操作系统。它是基于Amazon Machine Image(AMI)构建的,具有与AWS服务无缝集成的优势。通过使用AWSLinux,用户可以更轻松地管理和调度应用程序,提高应用程序的可靠性和性能。

AWSLinux具有很多强大的功能和命令,下面将介绍一些常用的AWSLinux命令,并且提供详细的操作流程。

1. ec2-run-instances

“`
ec2-run-instances
–key
–instance-type
–image-id
[–region ]
“`

这个命令用于启动一个EC2实例。在命令中,需要指定ssh_key(SSH密钥对的名称),instance_type(实例类型)和ami_id(AMI ID)。可选地,还可以指定region(实例所在的AWS区域)。

2. ec2-describe-instances

“`
ec2-describe-instances
[–region ]
“`

这个命令用于列出当前AWS账户下的所有EC2实例。在命令中,可以通过指定region来过滤只列出某个特定区域的实例。

3. ec2-start-instances

“`
ec2-start-instances

[–region ]
“`

这个命令用于启动一个或多个已停止的EC2实例。在命令中,需要指定instance_id(一个或多个实例的ID)。可选地,还可以指定region(实例所在的AWS区域)。

4. ec2-stop-instances

“`
ec2-stop-instances

[–region ]
“`

这个命令用于停止一个或多个运行中的EC2实例。在命令中,需要指定instance_id(一个或多个实例的ID)。可选地,还可以指定region(实例所在的AWS区域)。

5. ec2-terminate-instances

“`
ec2-terminate-instances

[–region ]
“`

这个命令用于终止一个或多个EC2实例。在命令中,需要指定instance_id(一个或多个实例的ID)。可选地,还可以指定region(实例所在的AWS区域)。

6. ec2-create-volume

“`
ec2-create-volume
–size
[–availability-zone ]
[–region ]
“`

这个命令用于创建一个新的EBS卷。在命令中,需要指定size(卷的大小,以GB为单位)。可选地,还可以指定availability_zone(卷所在的可用区域)和region(卷所在的AWS区域)。

7. ec2-describe-volumes

“`
ec2-describe-volumes
[–region ]
“`

这个命令用于列出当前AWS账户下的所有EBS卷。在命令中,可以通过指定region来过滤只列出某个特定区域的卷。

8. ec2-attach-volume

“`
ec2-attach-volume

–instance-id
–device
[–region ]
“`

这个命令用于将一个EBS卷附加到一个EC2实例。在命令中,需要指定volume_id(卷的ID),instance_id(实例的ID)和device(附加的设备名称)。可选地,还可以指定region(实例和卷所在的AWS区域)。

9. ec2-detach-volume

“`
ec2-detach-volume

[–region ]
“`

这个命令用于将一个附加到EC2实例的EBS卷从该实例上分离。在命令中,需要指定volume_id(卷的ID)。可选地,还可以指定region(卷所在的AWS区域)。

10. ec2-delete-volume

“`
ec2-delete-volume

[–region ]
“`

这个命令用于删除一个或多个EBS卷。在命令中,需要指定volume_id(一个或多个卷的ID)。可选地,还可以指定region(卷所在的AWS区域)。

以上是一些常用的AWSLinux命令及其操作流程,可以根据实际需求选择合适的命令进行操作。请注意,执行这些命令需要使用AWS凭证,并且需要正确配置AWS CLI才能正常运行。

Linux 服务器一键测试、测速脚本 SuperBench,支持CentOS 8

SuperBench是一个测试linux服务器性能的脚本,让你快速方便了解一台服务器的综合性能,支持硬件基本信息、流媒体解锁检测、磁盘IO检测、CPU性能测试、以及国内和国外网络测速、网络路由追踪。

使用:

代码语言:javascript
bash <(wget -qO- https://down.vpsaff.net/linux/speedtest/superbench.sh)或
wget -qO- https://down.vpsaff.net/linux/speedtest/superbench.sh | sudo bash

Bandwagonhost搬瓦工IP被封如何更换IP

搬瓦工IP被封后,可以通过以下两种方式更换IP:

Table of Contents

1. 付费更换IP

这是目前唯一可行的更换IP方式,费用为8.79美元。具体操作步骤如下:

       更换IP 的地址:https://bwh81.net/ipchange.php

  1. 登录搬瓦工官网,进入控制面板。
  2. 点击左侧菜单的“服务器”,选择要更换IP的VPS。
  3. 在“IP地址”选项卡下,点击“更换IP”。
  4. 在弹出的窗口中,点击“购买”。
  5. 在付款页面,输入支付信息,点击“付款”。

付款完成后,搬瓦工会在24小时内为您更换IP。

2. 等待IP解封

一般情况下,被封的IP会在1-3个月内解封。如果您不想花钱更换IP,可以耐心等待。

注意事项

  • 更换IP后,VPS的IP地址将发生变化,需要更新VPS的配置文件。
  • 搬瓦工的IP被封可能是因为VPS上运行了违规内容或程序,因此在更换IP后,请注意避免再次违规。

以下是一些可以帮助您避免IP被封的建议:

  • 不要在VPS上运行违规内容或程序。
  • 定期更换VPS的密码。
  • 安装防火墙,防止未经授权的访问。
  • 使用CDN服务,将流量分发到多个IP地址。

BBR、BBR2、BBRPLUS、FQ、CAKE如何选择

网上有不少BBR版本和测试文章,到底该选择哪个BBR是挺纠结。测试文章也都不严谨,弄个国外VPS+一键bbr脚本+一键测速脚本完事,这样测试结果肯定不准。VPS是虚拟机和共享带宽,本身性能就受到物理机资源分配的波动影响,以及VPS到本机这么远的不可控网络链接;一键测速脚本是点对点传输,而实际应用不管是网站还是提供什么服务,都是一对多,场景差别就很大。

较科学专业的文章,有:

BBR、BBR2、BBRPLUS、FQ、CAKE如何选择插图

Table of Contents

拥塞控制算法

cubic

linux自带默认拥塞控制算法。

BBR

BBR(Bottleneck Bandwidth and Round-trip propagation time),是谷歌开发的一种TCP拥塞控制算法。简单粗暴的理解就是数据流量的交通管理:当公路不再塞车的时候,每辆车自然就能保持较快的车速了。

BBR2

谷歌未正式发布,仍处于预览版。TCP BBR v2 Alpha/Preview Release: https://github.com/google/bbr/tree/v2alpha

随着BBRv2的出现,Dropbox 已经在其Dropbox Edge Network上进行了试用。在这篇博客中深入讨论了BBRv2的实践,值得一读。

Evaluating BBRv2 on the Dropbox Edge Network

这篇文章的结论对于BBRv2有很高的评价,特摘录出来:

“在我们的测试中,BBRv2显示了以下特性:

  1. 对于网速较低的用户来说,带宽可以与CUBIC媲美。
  2. 对于网速较高的用户来说,带宽可以与BBRv1媲美。
  3. 丢包率比BBRv1低4倍;但仍然比CUBIC高2倍。
  4. 传输中的数据比BBRv1低3倍;但略低于CUBIC。
  5. RTTs较BBRv1低;但仍然比CUBIC高。
  6. 与BBRv1相比,RTT具有更高的公平性。

总的来说,BBRv2在BBRv1基础上有了很大的改进,而且在需要更高带宽的情况下,它更接近于成为Reno/CUBIC的完全替代品。添加实验性的ECN支持,我们甚至可以看到他可以成为Datacenter TCP (DCTCP)的完全替代者。”

https://aws.amazon.com/cn/blogs/china/talking-about-network-optimization-from-the-flow-control-algorithm/

BBRPLUS

CSDN 网友 dog250 针对原版 BBR 进行修改而来的加强版他的github最后更新是2021.08.21。

队列算法

pfifo_fast

linux系统自带默认先进先出队列算法。

CAKE

“CAKE (Common Applications Kept Enhanced) is a shaping queue discipline which uses both AQM and FQ. It combines COBALT, which is an AQM algorithm combining Codel and BLUE, a shaper which operates in deficit mode, and a variant of DRR for flow isolation.

https://portal.productboard.com/4khnb1asz4x5zdcj5edstax8/c/31-cake-and-fq-pie

“CAKE(Common Applications Kept Enhanced)是一种同时使用 AQM 和 FQ 的整形队列规则。它结合了 COBALT,COBALT 是一种结合了 Codel 和 BLUE 的 AQM 算法,一种以赤字模式运行的整形器,以及一种用于流隔离的 DRR 变体.

cake适合用在路由器上,会尽量抢占宽带,也会用队列系统帮路由器上的应用分配宽带,比如平衡下载与流媒体。

https://la4ji.blogspot.com/2020/12/xamod58-cakefq-pie.html

PIE

“Proportional Integral controller-Enhanced (PIE) is a control theoretic active queue management scheme. It is based on the proportional integral controller but aims to control delay.

The main design goals are

  • Low latency control
  • High link utilization
  • Simple implementation
  • Guaranteed stability and fast responsiveness”

https://portal.productboard.com/4khnb1asz4x5zdcj5edstax8/c/31-cake-and-fq-pie

“Proportional Integral controller-Enhanced (PIE) 是一种控制理论主动队列管理方案。它基于比例积分控制器,但旨在控制延迟。
主要设计目标是
低延迟控制
链路利用率高
简单实现
保证稳定性和快速响应”

FQ-PIE

FQ-PIE (Flow Queuing with Proportional Integral controller Enhanced) is a queuing discipline that combines Flow Queuing with the PIE AQM scheme. FQ-PIE uses a Jenkins hash function to classify incoming packets into different flows and is used to provide a fair share of the bandwidth to all the flows using the qdisc. Each such flow is managed by the PIE algorithm.

https://man7.org/linux/man-pages/man8/tc-fq_pie.8.html

FQ-PIE(Flow Queuing with Proportional Integral controller Enhanced)是一种将流队列与 PIE AQM 方案相结合的排队规则。 FQ-PIE 使用 Jenkins 哈希函数将传入的数据包分类到不同的流中,并用于为使用 qdisc 的所有流提供公平的带宽份额。每个这样的流都由 PIE 算法管理。

到底选哪个

追求稳定:BBR+FQ

追求性能:BBR2+FQ_PIE