Linux下的系统进程及服务控制

1.什么是进程

  进程是程序的基本执行实体,即cpu未完成的工作,包括正在运行的文件、在后台休眠的文件。

2.查看进程

1)图形方式查看

gnome-system-monitor

2)进程查看命令

ps    -A        ##所有进程
      -a        ##在当前环境中运行的进程,不包含环境信息
      -u        ##显示进程用户信息
       a        ##在当前环境中运行的进程
       x        ##列出系统中所有运行包含tty设备的进程
       f        #显示父子进程关系
       e        ##显示进程的详细信息(系统的资源调用)

### ps常用组合
ps    aux        ##显示系统中所有进程并显示进程用户
ps    ef         ##显示进程详细信息并显示进程父子关系
ps    ax         ##显示当前系统中的所有进程


#####显示进程指定信息
ps    -o    xxx       ##显示进程的指定信息
ps    -o    comm      ##进程名称
ps    -o    user      ##进程用户
ps    -o    group     ##进程属组
ps    -o    %cpu      ##进程cpu使用率
ps    -o    %mem      ##进程内存使用率
ps    -o    pid       ##进程id
ps    -o    nice      ##进程优先级


###进程排序
ps    ax    --sort=+%cpu |-%cpu
ps    ax    --sort=+%mem |-%mem
eg:
ps    ax    --sort=-%cpu -o %cpu |head -n 6| grep -v %CPU
ps    ax    --sort=-%cpu -o %cpu |grep -v %CPU| head -n 5

##### stat中显示的信息
S        ##进程状态
l        ##内存中有锁定空间
N        ##优先级低
<        ##优先级高
+        ##前台运行
s        ##顶级进程

3.进程优先级

a  进程优先级范围:-20~19,数字越小表示优先级越高,反之数字越小代表进程的优先级越高。

b  优先级查看

ps ax -o pid,nice,comm

c  指定以某个优先级开启进程

nice    -n    优先级数字    进程名称
eg:
nice    -n    -5    vim   &    ##开启vim并指定进程优先级为-5

d  改变进程优先级

renice    -n    优先级数字    进程pid
eg:
renice    -n    -5    1234     ##改变1234进程的优先级为-5

4.环境中进程的前后台调用

jobs      ##查看被打入环境后台的进程
ctrl+z    ##把占用终端的进程打入后台
fg    jobnum   ##把后台进程调回前台
*****fg命令不加参数时,默认先调回带”+“的进程,然后再调回带”-“的进程,最后轮到其他的进程
bg    jobnum   ##把后台暂停的进程运行
comm  &        ##让命令直接在后台运行

5.进程信号

常用信号等级

1                 ##进程重新加载配置

2                ##删除进程在内存中的数据

3                 ##删除鼠标在内存中的数据

9                 ##强制结束单个进程(不可被阻塞)

15               ##正常关闭进程(可能会被阻塞)

18                ##运行暂停的进程

19                ##暂停某个进程(不能被阻塞)

20                ##把进程打入后台(可以被阻塞) 

kill    -信号    进程id
killall    -信号    进程名
pkill    -u    student    -信号
eg:
pkill -u student  -9           ##强行杀死student用户下的所有进程

6.进程的动态监控

top    l        ##显示cpu每个核的负载
top    s        ##调整刷新频率
top    c        ##cpu负载排序
top    m        ##内存使用量排序
top    h        ##查看帮助
top    u        ##查看指定用户进程
top    k        ##对指定进程发起信号
top    q        ##退出            

 输入命令top,回车,结果如下图所示。

 

修改进程刷新时间间隔:

   输入命令top,再输入s,按提示将刷新时间间隔从3秒改为设定的时间,这里设为1,然后回车,修改成功。

 查看某一用户发起的所有进程:

输入命令top,再输入u,按提示输入想要查看的用户名,回车,即可查看该用户发起的所有进程。

控制服务

1.什么是服务

服务开启对本机无意义,对客户有意义。

2.用什么控制服务

系统初始化进程可以对服务进行相应的控制

3.当前系统初始化进程是什么

linux中用pstree命令以树状图的形式显示进程间的关系

4.进程控制命令

ssh      -----> sshd

client  ------> server

systemctl              ##服务控制命令
systemctl    ststus    sshd    ##查看服务状态,active(可用),inactive(不可用)
systemctl    start     sshd    ##开启服务
systemctl    stop      sshd    ##关闭服务
systemctl    restart   sshd    ##重启服务
systemctl    reload    sshd    ##重新加载服务配置
systemctl    enable    sshd    ##设定开机自动启动
systemctl    disable   sshd    ##设定开机不启动
systemctl    list-units        ##列出已经开启服务的当前状态
systemctl    list-unit-files   ##列出所有服务的开机启动状态(enable,disable,static)
systemctl    list-dependencies ##列出服务的依赖性

systemctl    set-default    multi-user.target    ##设定系统启动级别为多用户模式(无图形模式)
systemctl    set-default    graphical.target     ##设定系统启动级别为图形模式

sshd服务

1.sshd简介

连接方式:

sshd    username@ip        ##文本模式连接
sshd -X username@ip        ##图形模式连接

注:第一次连接陌生主机需要建立认证文件,输入yes,再次链接时,因为已经生成了~/.ssh/know_hosts文件,所以不需要再次输入

远程复制:

scp    file    username@ip:dir    ##上传,dir为绝对路径
scp    username@ip:dir     dir    ##下载

 注意:在对文件进行上传时,上传到的地址需是绝对路径;

在对文件进行下载的操作中,源文件所在的地址需为绝对路径。

2.sshd的key认证

1)生成认证key

在server机上输入ssh-keygen命令-->回车,提示保存钥匙的文件选择默认文件,直接回车-->提示输入密码,直接回车-->提示验证密码,直接回车。

2)加密服务(本机加密)

在server机上执行 ssh-copy-id -i id_rsa.pub root@172.25.254.100 命令,注意是给本机加密,输入的ip地址也是server机的。

3)分发钥匙

server机上执行 scp id_rsa  root@172.25.254.200:/root/.ssh/  命令,该命令主要是完成将钥匙文件id_rsa传给client机,故其中的ip地址也是client机的。

4)测试

在客户主机中执行ssh连接到server主机时不需要密码

3.sshd的安全设定

vim    /etc/ssh/sshd_config

跳转到78行:PasswordAuthentication   yes                      ##是否允许用户通过登陆系统的密码作sshd认证

跳转到48行:PermitRootLogin   no                                   ##是否允许root用户通过sshd服务的认证

Allowusers     student                                                         ##设定用户白名单,白名单中没有的用户默认不能使用sshd

Denyusers     westos                                                          ##设定用户黑名单,黑名单中没有的用户默认可以使用sshd

4.添加sshd的登陆信息

vim    /etc/motd        ##文件的内容就是登陆后显示的信息

 示例:在server机上对/ect/motd文件进行编辑内容并保存,在client机上登陆时将会显示编辑的内容。

5.用户的登陆审计

1.w
w    -f        ##查看使用来源
w    -i        ##显示ip


2.last         ##查看使用过并退出的用户信息


3.lastb        ##试图登陆但没有成功的用户信息

文件在系统中的传输

1.scp
scp    file    username@ip:/dir
scp    username@ip:file     dir


2.rsync    ##远程同步,速度快,默认会忽略文件属性,链接文件,设备文件
rsync    -r        ##同步目录
rsync    -p        ##同步权限
rsync    -o        ##同步文件所有人
rsync    -g        ##同步文件所有组
rsync    -l        ##同步链接文件
rsync    -t        ##同步文件时间戳
rsync    -D        ##同步设备文件

猜你喜欢

转载自blog.csdn.net/weixin_40172997/article/details/83548292