Unit 7
****进程****
进程就是我们说的cpu正在处理中的工作,此工作并没有完成。
在linux系统中,如何找到进程:
system tools---->system monitor---->processes
在Terminal中,我们可以通过这条命令来查看进程:
gnome-system-monitor 系统会出现进程的列表,然后选择processes即可看到。
****ps命令****
a //关于的当前环境的所有进程
x //与当前环境无关的所有进程
f //显示进程的从属关系,有些进程在上一进程的基础上执行。
e //显示进程调用环境工具的详细信息
l //长列表显示进程的详细信息
u //显示进程的用户信息
-o
ps ax -o user,group,comm 指定显示的参数
ps ax -o user,%cpu,%mem,group,comm,pid //显示所有进程的用户,占用cpu,内存占用,组,命令,pid信息
ps ax -o pid,comm --sort=-%cpu //将进程cpu按降序排序,然后显示出按降序排序的进程pid信息。
****环境中进程的前后台调用****
在终端中打开一个gedit。
ctrl+z //在shell窗口,ctrl+z,可以把占用终端的进程打入后台
jobs //可以用来查看我们打入环境后台的进程。
fg //把后台进程调回前台
bg //把后台暂停的进程运行
comm & //让命令直接在后台运行。
****进程信号****
(1)常见的信号等级
1 //进程重新加载配置
2 //删除进程在内存中的数据
3 //删除鼠标在内存中的数据
9 //强行结束单个个进程
15 //正常关闭进程
18 //运行暂停的进程
19 //暂停某个进程
20 //把进程打入后台
man 7 signal //查看信号详细信息
kill -1 ID号 //在系统不被关闭情况下,重新加载配置文件。加载前后ID不改变。可以准确的结束进程。
先将用户切换到student,然后执行:
pkill -u student -9 //强行关闭student用户进程。
killall -信号 进程名 //特殊情况下,进程名可能会重复,因此不能很精确的结束进程。
***进程优先级的处理***
ps -o pid,nice,comm //显示当前进程的pid,优先级,comm
renice -n -5 pid号 //“renice”修改优先级的命令,“-5”修改后的优先级参数,所修改进程的pid
我们可以通过此命令进行查看优先级的具体信息
ps -o pid,nice,comm //查看nice列的详细信息
我们用gedit进程来操作:
我们还可以直接将进程以你想修改的优先级运行
nice -n 5 进程名& //将所要打开的进程优先级设定为5,“进程名&”表示直接在后台运行该进程。
****用户登录审计****
(1)
w //查看使用系统的当前用户
w -f // -f查看使用地点
(2)
last //查看用户登录成功历史
(3)
lastb //查看用户登录未成功历史
查看用户当前IP:
ifconfig eth0
ssh 用户名@用户IP地址 //远程连接主机***top命令****
具体参数:
m // 内存排序
c //cpu排序
u--->输入要删除用户(student)-->pid--->信号
***系统服务的控制***
(1)systemd
系统初始化程序,系统开始的第一个进程,pid为1
(2)systemctl 命令
systemctl list-units //列出当前系统服务的状态
systemctl list-unit-files //列出服务的开机状态
systemctl status sshd //查看制定服务的状态
systemctl stop sshd //关闭指定服务
systemctl start sshd //开启指定服务
systemctl restart sshd //重启指定服务
systemctl enable sshd //设定指定服务开机开启
systemctl disable sshd //设定指定服务开机关闭
systemctl reload sshd //重新加载指定服务配置
systemctl list-dependencies sshd //查看指定服务的依赖关系
systemctl mask sshd //冻结指定服务
systemctl unmask sshd //启用指定服务
systemctl set-default multi-user.target //开机不开启图形
systemctl set-default graphical.target //开机启动图形
(3)服务状态
systemctl status 服务名称
loaded //系统服务已经初始化完成,加载过配置
active (running) //正有一个或多个程序正在系统中运行
(vsftpd就是这种模式)
active (exited) //使执行一次就正常结束的服务
(目前并没有任何程序在系统中执行)
active (waiting) //正在执行当中
(不过还在等待其他的事件才能处理)
inactive //服务关闭
enabled //服务开机启动
disabled //服务开机不自启动
static //服务开机启动项不可被管理
failed //系统配置错误
unit 9
***openssh-server服务***
功能:让远程主机可以通过网络访问sshd服务,开始一个安全的shell
***客户端连接方式***
ssh 远程主机用户@远程主机ip
ssh 远程主机用户@远程主机ip -X //调用远程主机图形工具
ssh 远程主机用户@远程主机ip command //直接在远程主机上运行命令
***sshkey加密***
生成公钥私钥
添加key认证方式
分发钥匙给客户端主机
***提升oenssh的安全级别***
openssh-server配置文件/etc/ssh/sshd_config//修改此配置文件必须在超级用户下进行。
(1)
PermitRootLogin yes|no //是否允许超级用户登录
(2)
AllowUsers 用户1 用户2 //用户白名单,只有在名单中出现的用户可以使用sshd建立shell,白名单中如果有多个用户,用户之间需要用空格隔开
(3)DenyUsers student westos //用户黑名单