###############################################################################
####################################第五天###################################
进程 所谓进程就是系统中正在执行的程序
Permission denied (publickey,gssapi-keyex,gssapi-with-mic).
进程的状态:
运行正在占用cpu及系统资源的程序
休眠后台执行,如最小化,会释放系统资源
停止
继续
僵尸进程进程结束却没有释放资源的进程
结束
查看进程的命令
ps 查看进程
ps -a 查看shell中的进程。-a只有shell前端的进程
而a还包括shell后台的进程
ps -x 查看不再shell中运行的进程。
ps ax 查看所有进程
ps -u 查看进程的用户
ps -l 查看进程的详细信息
ps -f 查看进程的完整信息
ps -e 查看进程中所有进程
注释: ps后面的参数加不加 - 的区别在于,加-是查看系统的前端的进程,不加-代表所有的进程。
查看进程的某项信息
ps ax -o %cpu,%mem,user,pid,comm
让进程的某项信息按指定顺序(小到大,或者大到小)排列
ps aux --sort +(-)%cpu
只指定某项信息,并按照顺序排列
ps ax -o %cpu,%mem,user --sort +(-)%cpu
(显示所有进程的cpu,mem,user信息并将cpu按照一定顺序排列)
( 内存 )
###################################shell中前后台进程的调用##############################3
shell中的进程
命令+& 使进程在后台运行
ctrl+z 把占用shell的进程打入后台停止
eg: 比如命令行输入degit,出现文本编辑,然后切到shell按ctrl+z 则文本编辑被打入后台,
并不能被编辑
jobs 查看打入后台的进程
fg job号 把指定的后台进程调回前台并可以运行
bg job号 使后台停止的进程运行
ctrl+c 关闭占用shell的进程
#######################################################################################
shell中 用信号来控制进程,给进程输入一个信号来停止,开始关闭进程。
常用的信号 1 reload进程,即在不关闭进程的条件下,重新读取进程配置信息
2 等于ctrl+c ,删除进程在内存中的信息
3 清除鼠标在进程中的信息
9 强制关闭进程
15 正常关闭进程
18 开启停止的进程
19 停止正在运行的进程
20 等于ctrl+z 将进程打入后台停止
信号的输入发起
kill -信号pid(进程号)
killall -信号 进程名字 关闭进程名字这一类所有进程
pkill -u username 关闭这个用户所有进程
比如 kill -9 进程号 强制关闭进程
killall -9 vim强制关闭vim的所有进程
###############################用户登录的监控信息################################
首先 如何查看自己本机的ip地址 命令行输入 ifconfig eth0查看
(可以在真机中连接虚拟机)如何远程控制别人的主机命令行输入 ssh root@要连接主机的ip地址
命令行输入w查看正在使用当前系统的用户
命令行输入w -f查看正在使用当前系统的用户并查看使用地点
last 查看登录过系统的用户
lastb 查看访问系统未成功的用户
#####################################################################################
top 命令 是linux系统下常用的性能分析工具,能够实时的显示系统中每个进程的资源占用状况,类似于windows
系统中的任务管理器。
top是一个动态显示的过程,可以通过设置或者系统案件不断刷新当前状态。
命令行输入top 进入进程状态
进入后 按d ,更改多少秒刷新一次
u查看用户拥有的进程
q退出
#########################################################################################
#############################################################################
ssh 安全外壳协议 openssh是一个提供远程访问的软件。
用ssh 命令可以连接别的主机。 ssh root@要连接的主机ip地址要连接需要对方主机设置sshd为开启状态。
如何设置sshd 的状态呢?
查看状态,在命令行中输入 systemctl status sshd
要开启该状态。 systemctl start sshd
要关闭该转状态 systemctl stop sshd
在status 中查看的时候第二行最后一个 disable是设置虚拟机开启的时候不支持连接,如果是enbale则开启是
连接是打开的。
###############################################################################################
其他命令:systemctl list-dependencies 查看服务依赖关系
systemctl list-dependencies sshd 列出sshd要运行前需要先运行的所有进程
systemctl list-units 查看当前运行的所有服务
systemctl list-unit-files 列出所有可用进程(查看开机的启动情况)
systemctl set-default multi-user.target 不以图形化界面打开主机
systemctl set-default graphical.target 以图形化界面开启主机
重起主机, reboot
#####################################################################################################
######################################################################################################
如何远程连接主机ssh 远程主机用户@远程主机ip地址
ssh root@172.25.18.11
在服务器端的命令行输入 vim /etc/motd 里面可以设置其他主机登录显示字符。
ssh root@172.25.18.11 -X 加X 是可以访问图形界面
在客户端输入 killall -9 bash 关闭所有bash 也会关闭客户端的访问
The authenticity of host '172.25.18.11 (172.25.18.11)' can't be established.
ECDSA key fingerprint is 55:dd:43:ce:bf:94:dd:91:49:e7:97:29:63:3d:02:02.
Are you sure you want to continue connecting (yes/no)? yes建立安全传输key
root@172.25.18.11's password:密码输入没有回显
Last failed login: Sun Oct 11 16:56:29 CST 2015 from 172.25.18.10 on ssh:notty
There was 1 failed login attempt since the last successful login.
Last login: Sun Oct 11 16:55:46 2015 from 172.25.18.10
################################生成锁和钥匙########################################
远程连接本来就是一个不安全的事,所以为了使它安全, 我们可以给ssh这个服务上锁
首先 要生成一个锁和一个钥匙 ssh-keygen
/****Enter file in which to save the key (/home/test/.ssh/id_rsa):『enter』 指定加密字符保存文件,使用默认
Created directory '/home/test/.ssh'.
Enter passphrase (empty for no passphrase): 密码,必须大于4位
Enter same passphrase again:
Your identification has been saved in /home/test/.ssh/id_rsa.
Your public key has been saved in /home/test/.ssh/id_rsa.pub.
The key fingerprint is:确认密码
a5:4f:02:51:68:59:f4:e8:e3:c5:91:1f:6f:86:99:06 test@foundation0.ilt.example.com
The key's randomart p_w_picpath is:
+--[ RSA 2048]----+
| .*+ |
| +. o . |
| .. . E . |
| o + + * |
| S + * + |
| . * . o |
| . . |
| |
| |
+-----------------+
[test@foundation0 .ssh]$ pwd
/root/.ssh/生成密钥存放位置
[test@foundation0 .ssh]$ ls
id_rsa id_rsa.pubid_rsa位私钥,id_rsa.pub位公钥
***/
有了锁和钥匙,开始给自己房子(服务器)上锁
ssh-copy-id -i id_rsa.pub root@172.25.18.11
然后输入服务器的密码
在给客户端权限, 也就是钥匙, 客户端可以不用密码就可以登录服务器
scp id_rsa root@172.25.18.10
然后输入客户端的密码
这样就完成了锁和钥匙的设置
命令解释ssh-copy-id上传key的工具
-i指定使用的公钥
id_rsa.pub公钥的名称
root目标用户
172.25.18.11指定用户的ip
设置好了,但是这是你想要的吗?NONONO, 因为现在其他主机即可以通过ssh连接你的主机
也可以通过密码访问你的主机。这就很尴尬了,所以我们必须设置一些文件来破坏密码登录
sshd的服务配置文件 /etc/ssh/sshd_config 通过vim进去
在文件的78行PasswordAuthentication yes|no 来设置其他主机是否可以用密码登录
在文件的48行#PermitRootLogin yes|no是否允许root用户通过sshd的认证。
(有#表示被注释,如果有必要,可以去除#然后在设置yes或者no)
设置完成以后 命令行输入 : systemctl restart sshd
重新开启sshd后, 其他主机则没有访问权限了 “Permission denied (publickey,gssapi-keyex,gssapi-with-mic).“