首页 Linux命令学习
文章
取消

Linux命令学习

Swap 分区的使用

swap 分区是磁盘上的一个文件,作用就是,当系统物理内存吃紧时,Linux会将内存中不常访问的数据保存到swap上,这样系统就有更多的物理内存为各个进程服务,而当系统需要访问swap上存储的内容时,再将swap上的数据加载到内存中。

查看系统中已经配置的swap

1
swapon -s

修改swappiness

swappiness的值的大小对如何使用swap分区是有着很大的联系的。swappiness=0的时候表示最大限度使用物理内存,然后才是swap空间,swappiness=100的时候表示积极的使用swap分区,并且把内存上的数据及时的搬运到swap空间里面。linux的基本默认设置为60,具体如下:

1
2
cat /proc/sys/vm/swappiness
#60

也就是说,你的内存在使用到100-60=40%的时候,就开始出现有交换分区的使用。大家知道,内存的速度会比磁盘快很多,这样子会加大系统IO,同时造的成大量页的换进换出,严重影响系统的性能。所以对该参数进行调整。

要想永久调整的话,需要在/etc/sysctl.conf修改:

1
sudo vim /etc/sysctl.conf

修改vm.swappiness 参数(0~20之间,鉴于你机器物理内存的大小)

1
2
# Controls the maximum number of shared memory segments, in pages
vm.swappiness = 20

运行命令生效

1
sudo sysctl -p

这样便完成修改设置!

Systemctl 的使用

service服务就是在系统中运行的软件,这个软件主要是对外提供某项功能,把这一类软件叫做服务。例如数据库mysqld,tomcat,nginx服务。

目前常用的服务管理是systemctl命令(用于取代systemv\service\chkconfig命令)

常用管理命令

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
# 开机启动
systemctl enable mysqld

# 关闭开机启动
systemctl disable mysqld

# 启动服务
systemctl start mysqld

# 停止服务
systemctl stop mysqld

# 重启服务
systemctl restart mysqld

# 查看服务状态
systemctl status mysqld
systemctl is-active sshd.service

# 结束服务进程(服务无法停止时)
systemctl kill mysqld

修改配置文件后刷新服务

1
2
3
4
5
# 重新加载配置文件
sudo systemctl daemon-reload

# 重启相关服务
sudo systemctl restart foobar

查看进程 PS 与 TOP 命令使用

PS 命令查看进程(静态的)

1
2
3
4
5
6
7
8
9
10
11
12
ps        ##进程查看工具
    -a    ##列出所有进程
    -x    ##与shell无关运行的进程(与shell无关的进程)
    -u    ##查看进程用户
    -l    ##显示进程的详细信息
    -f    ##完全信息full的缩写(从属关系)
    -o    ##控制输出,指定信息
    -e    ##显示系统中的所有进程和a相同(附加的拓展信息)
    -aux    ##显示所有包含其他使用者的行程
ps    -aux | grep           ##进程关键字(进行过滤)
ps    -aux | less           ##ps命令结果较长,可结合less命令
ps -aux --sort +或-%cpu或%mem...    ##进程按指定方式排序,--sort排序,+降序,-升序

常用命令

1
2
3
4
5
6
#查看所有用户进程  
ps -aux 
#查看所有java进程
ps -aux |grep java 
#按内存排序查看所有进程
ps -aux --sort -%mem

TOP命令查看进程(动态的)

1
2
3
4
5
6
7
8
#按cpu排序查看所有进程,
top 
# 按小写m查看总体内存情况
m
# 按大写M将进程按照内存使用排序
M
# 按大写P将进程按照内存使用排序
P
本文由作者按照 CC BY 4.0 进行授权

Git设置代理解决被墙

SSH学习