分享页面
已经找到“” 的记录1748条
Centos系统安装SpeedTest实现网络测速
 

1.安装pip

wget https://bootstrap.pypa.io/get-pip.py --no-check-certificate

2.执行安装:

python get-pip.py

3.下载speedtest

wget -O speedtest-cli https://raw.githubusercontent.com/sivel/speedtest-cli/master/speedtest.py

增加执行权限

chmod  x speedtest-cli

4.安装SpeedTestpip install speedtest-cli

5.使用测速,

查询安装位置 

which speedtest-cli

以图片方式共享测速结果

/usr/bin/speedtest-cli --share

Centos系统iftop的安装以及使用
 

Iftop工具主要用来显示本机网络流量情况及各相互通信的流量集合,如单独同哪台机器间的流量大小,非常适合于代理服务器和iptables服务器使用,这样可以方便的查看各客户端流量情况。iftop可以用来监控网卡的实时流量(可以指定网段)、反向解析IP、显示端口信息等,详细的将会在后面的使用参数中说明。

1.安装iftop-编译安装

如果采用编译安装可以到iftop官网下载最新的源码包。
安装前需要已经安装好基本的编译所需的环境,比如makegccautoconf等。安装iftop还需要安装libpcaplibcurse

安装所需要的依赖包

yum -y install flex byacc libpcap ncurses ncurses-devel libpcap-devel

2.安装步骤

wget http://www.ex-parrot.com/pdw/iftop/download/iftop-0.17.tar.gz #下载安装包

tar zxvf iftop-0.17.tar.gz #解压

cd iftop-0.17 切换到目录

./configure --prefix=/usr/local/iftop #配置安装目录

make && make install #编译、安装

3.运行iftop,必须以root身份运行效果图如下

监控某网卡:iftop -i eth0 -n

同时显示是什么服务:iftop -i eth0 -n -P

4.iftop相关参数

常用的参数

-i  设定监测的网卡,如:# iftop -i eth1

-B  以bytes为单位显示流量(默认是bits),如:# iftop -B

-n  使host信息默认直接都显示IP,如:# iftop -n

-N  使端口信息默认直接都显示端口号,如: # iftop -N

-F  显示特定网段的进出流量,如# iftop -F 10.10.1.0/24或# iftop -F 10.10.1.0/255.255.255.0

-h  (display this message),帮助,显示参数信息

-p  使用这个参数后,中间的列表显示的本地主机信息,出现了本机以外的IP信息;

-b  使流量图形条默认就显示;

-f  这个暂时还不太会用,过滤计算包用的;

-P  使host信息及端口信息默认就都显示;

-m  设置界面最上边的刻度的最大值,刻度分五个大段显示,例:# iftop -m 100M

进入iftop画面后的一些操作命令(注意大小写)

h切换是否显示帮助;

n切换显示本机的IP或主机名;

s切换是否显示本机的host信息;

d切换是否显示远端目标主机的host信息;

t切换显示格式为2/1/只显示发送流量/只显示接收流量;

N切换显示端口号或端口服务名称;

S切换是否显示本机的端口信息;

D切换是否显示远端目标主机的端口信息;

p切换是否显示端口信息;

P切换暂停/继续显示;

b切换是否显示平均流量图形条;

B切换计算2秒或10秒或40秒内的平均流量;

T切换是否显示每个连接的总流量;

l打开屏幕过滤功能,输入要过滤的字符,比如ip,按回车后,屏幕就只显示这个IP相关的流量信息;

L切换显示画面上边的刻度;刻度不同,流量图形条会有变化;

j或按k可以向上或向下滚动屏幕显示的连接记录;

123可以根据右侧显示的三列流量数据进行排序;

< 根据左边的本机名或IP排序; >根据远端目标主机的主机名或IP排序;

o切换是否固定只显示当前的连接;

f可以编辑过滤代码,这是翻译过来的说法,我还没用过这个!

!可以使用shell命令,这个没用过!没搞明白啥命令在这好用呢!

q退出监控。

Centos系统上下文切换的检查思路
 

1.什么是上下文切换(Context Switch)?

上下文切换,有时也称做进程切换或任务切换,是指CPU从一个进程或线程切换到另一个进程或线程。

操作系统可以同时运行多个进程, 然而一颗CPU同时只能执行一项任务,操作系统利用时间片轮转的方式,让用户感觉这些任务正在同时进行。 CPU给每个任务都服务一定的时间, 然后把当前任务的状态保存下来, 在加载下一任务的状态后, 继续服务下一任务。任务的状态保存及再加载, 这段过程就叫做上下文切换。

当一个进程在执行时,CPU的所有寄存器中的值、进程的状态以及堆栈中的内容被称 为该进程的上下文。当内核需要切换到另一个进程时,它需要保存当前进程的 所有状态,即保存当前进程的上下文,以便在再次执行该进程时,能够必得到切换时的状态执行下去。在LINUX中,当前进程上下文均保存在进程的任务数据结 构中。在发生中断时,内核就在被中断进程的上下文中,在内核态下执行中断服务例程。但同时会保留所有需要用到的资源,以便中继服务结束时能恢复被中断进程 的执行。

2.上下文切换的消耗?

直接消耗包括: CPU寄存器需要保存和加载,系统调度器的代码需要执行,TLB实例需要重新加载,CPU pipeline需要刷掉。

间接消耗:多核的cache之间得共享数据,间接消耗对于程序的影响要看线程工作区操作数据的大小。

上下文切换通常是计算密集型的。也就是说,它需要相当可观的处理器时间,在每秒几十上百次的切换中,每次切换都需要纳秒量级的时间。所以,上下文切换对系统来说意味着消耗大量的 CPU 时间,事实上,可能是操作系统中时间消耗最大的操作。

3.如何检查上下文切换是否频繁?

1)确认CPU使用率

CPU是否处于空闲状态。

2vmstat 1

vmstat的输出可以看到,io项的block_inblock_out是否频繁,system项的每秒中断数(in)和每秒的上下文切换(cs)是否频繁。

3pidstat -w 1

pidstat上可以看到,每个进程对应的cswch(自愿上下文切换)和nvcswch(非自愿上下文切换)是否频繁。

cswch/s: 每秒任务主动(自愿的)切换上下文的次数,当某一任务处于阻塞等待时,将主动让出自己的CPU资源。
nvcswch/s:
每秒任务被动(不自愿的)切换上下文的次数,CPU分配给某一任务的时间片已经用完,因此将强迫该进程让出CPU的执行权。

4/proc/stat

/proc/stat包含了CPU的活动信息,上下文切换就是其中一项,以ctxt开头,它表示系统开机到目前为止的上下文切换总数。

cat /proc/stat | grep ctxt && sleep 30 && cat /proc/stat | grep ctxt

通过上面的命令,可以计算出每秒上下文切换次数=两者差值/30

通过以上命令即可以定位那个进程上下文切换频繁。

4.造成上下文切换频繁的原因?

当前执行任务的时间片用完之后, 系统CPU正常调度下一个任务

当前执行任务碰到IO阻塞, 调度器将挂起此任务, 继续下一任务

多个任务抢占锁资源, 当前任务没有抢到,被调度器挂起, 继续下一任务

用户代码挂起当前任务, 让出CPU时间

硬件中断

 

Centos如何强行踢掉某登录用户
 

1.在系统中我们可以用w或者who来查看用户:

[root@linuxidc ~]# who

2.看看那个是自己登录的用户:

[root@linuxidc ~]# who am i

3.接下来使用 pkill 踢掉用户 pts/1

[root@linuxidc ~]# pkill -kill -t pts/1

4.接着用w或者who查看:

Centos更换阿里云yum源

1.首先备份

mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup

 

2.下载新的CentOS-Base.repo /etc/yum.repos.d/

CentOS 5
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-5.repo
或者
curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-5.repo



CentOS 6
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-6.repo
或者
curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-6.repo



CentOS 7

wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

或curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

 

 

3.添加EPEL

CentOS 6

wget -O /etc/yum.repos.d/epel-6.repo http://mirrors.aliyun.com/repo/epel-6.repo



CentOS 7

wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo

 

4.清理缓存并生成新的缓存

yum clean all

yum makecache

 

5.查看yum 源,yum repolist

 

Centos7系统如何跳过开机启动菜单

centos7中如何跳过开机启动菜单呢?本文给出详细说明。

1.打开grub配置文件

vi /etc/grub2.cfg

2.在打开的配置文件中将两处set timeout的数值改为0

3.保存后重启机器

Centos7系统如何开启DNS反向解析

centos7中如何开启DNS反向解析呢?本文给出详细说明。

1.打开sshd配置文件

vi /etc/ssh/sshd_config

2.找到UseDNS 确保设置为yes

3.保存后重启sshd服务

service sshd restart

Centos7系统如何禁止空密码登录

centos7中如何禁止空密码登录呢?本文给出详细说明。

1.打开sshd配置文件

vi /etc/ssh/sshd_config

2.找到PermitEmptyPasswords 确保设置为no

3.保存后重启sshd服务

service sshd restart

Centos7系统如何禁止PAM验证

centos7中如何禁止PAM验证呢?本文给出详细说明。

1.打开sshd配置文件

vi /etc/ssh/sshd_config

2.找到UsePAM确保设置为no

3.保存后重启sshd服务

service sshd restart

Ccentos7系统如何禁用低版本ssh协议

centos7中如何禁用低版本ssh协议呢?本文给出详细说明。

1.打开sshd配置文件

vi /etc/ssh/sshd_config

2.找到Protocol 确保设置其值设置为2

3.保存后重启sshd服务

service sshd restart

说明ssh1版本存在漏洞,容易被黑。默认ssh1ssh2同时开启。

扫码添加专属客服

扫码关注公众号