课程总结-2
一、查看和读取
cat,less,grep(过滤特定内容查看、读取)
w(写入、更改):echo ‘ ’>> filename
vim,vi,nano
二、特殊权限
(1) 对文件的执行(以文件所有者的身份去执行)
[student@rhel ~]$ ls -l /usr/bin/passwd
-rwsr-xr-x. 1 root root 34512 Aug 13 2018 /usr/bin/passwd
[student@rhel ~]$ ls -ln /usr/bin/passwd
-rwsr-xr-x. 1 0 0 34512 Aug 13 2018 /usr/bin/passwd
添加-n选项:uid和gid不以name的形式显示,而是以id的形式显示
setuid(u+s):
无法改密码,因为没有用文件所有者的身份去执行
可以改密码
(2) 磁盘挂载
mount opts=defaults,nosuid:主要防止用户放入恶意执行文件被执行
setgid(g+s):对父目录所属组的继承,当用户在目录下创建新的目录(777)或文件(666)
(3) umask
这个定义,将影响用户新创建的目录和文件的分配的权限。
这个定义是临时性的。
如果这个用户在用户家目录.bash_profile定义了umask,则它比在/etc/profile中umask的定义,优先级等级更高。
这个用户的id(UID)是否大于199,并且GID=UID,则给这个用户分配umask值为002
三、process进程
一、process(ps)进程用法
aux,elf,top(instead)
priority(PR优先级)
nice(NI升高)值:-19-20
renice(降低):只有管理员可以降低
state(S):当前进程的状态 :r是running,s是sleeping
%CPU:CPU占用的百分比
对进程的查看:
只看user、pid、pcpu、time列,只显示前三行(因为标题也占据一行,所以是-4)
-o:指定出输出哪些列
pgrep用法找到Process
1.如何找到某个特定用户的进程id:
2.统计当前用户的进程数是多少:
3.按照指定格式输出:
4.如何去搜索
5.如何用列表形式列出指定用户的所有进程:
6.如何得到指定用户的所有进程的完整命令:
7.如何显示最新的进程:
8. 如何显示最老的进程:
查看方法:
不知道进程号时的查看方法:
知道进程号时的查看方法:
二、进程的基本状态及转换:
就绪:进程执行所需的资源中,除了处理机以外,其它都满足。(就绪队列排队等处理机)
阻塞:执行状态时,缺少IO或缺少数据。
1+2=3->自动释放处理机,自我阻塞。
执行:就绪进程得到处理机资源,接受了进程的调度。执行一个时间片,交还处理机。
创建、终止
四、chmod
chmod:更改目录或文件的 读、写、执行权限
方法一
格式:chmod 权限数字 文件名
权限数字
rwx:read=4 write=2 execute=1
目前真正的满权限=777-022=755 普通文件真正的满权限=666-022=644
可执行文件的真正满权限是777。
目录和文件都有默认权限:目录755 文件644
目录:755(rwx r-x r-x)视为目录的默认满权限。
普通文件:644(rw- r-- r–)视为普通文件的默认满权限。
举例:目录:权限rwxr-xr–=754 所有者是rwx,所属组rx,其他人r。
举例:如果创建了一个目录,但不想让其他用户看到,则权限数字:750
rwx r-x —
[root@localhost tmp]# ll
total 0
drwxr-xr-x 2 root TestGroup 6 Apr 15 17:53 TestGrp
drwxr-xr-x 3 Test0318 Test0318 21 Apr 15 18:12 TestOwn
[root@localhost tmp]# chmod 777 TestGrp %原来的权限是755,新权限是777。
[root@localhost tmp]# ll
total 0
drwxrwxrwx 2 root TestGroup 6 Apr 15 17:53 TestGrp
drwxr-xr-x 3 Test0318 Test0318 21 Apr 15 18:12 TestOwn
[root@localhost tmp]# touch TestFile %创建文件TestFile
[root@localhost tmp]# ll
total 0
-rw-r--r-- 1 root root 0 Apr 15 18:43 TestFile
drwxrwxrwx 2 root TestGroup 6 Apr 15 17:53 TestGrp
drwxr-xr-x 3 Test0318 Test0318 21 Apr 15 18:12 TestOwn
[root@localhost tmp]# chmod 777 TestFile %修改文件权限(白色)
[root@localhost tmp]# ll
total 0
-rwxrwxrwx 1 root root 0 Apr 15 18:43 TestFile %变成了可执行文件,不再是普通文件(绿色)
drwxrwxrwx 2 root TestGroup 6 Apr 15 17:53 TestGrp
drwxr-xr-x 3 Test0318 Test0318 21 Apr 15 18:12 TestOwn
方法二
利用ugo和rwx相加减的方法来设置权限
[root@localhost tmp]# ll
drwxr-xr-x 3 Test0318 Test0318 21 Apr 15 18:12 TestOwn % ./TestOwn/SubDir1/ SubDir2
[root@localhost tmp]# chmod -R u=rwx,go=r TestOwn
%级联修改TestOwn的所有文件的权限,u=rwx,g和o只有r权限。
[root@localhost tmp]# ll
drwxr--r-- 3 Test0318 Test0318 21 Apr 15 18:12 TestOwn
[root@localhost tmp]# cd TestOwn/
[root@localhost TestOwn]# ll
total 0
drwxr--r-- 3 Test0318 Test0318 21 Apr 15 18:12 SubDir1
[root@localhost TestOwn]# cd SubDir1/
[root@localhost SubDir1]# ll
total 0
drwxr--r-- 2 Test0318 Test0318 6 Apr 15 18:12 SubDir2
[root@localhost SubDir1]# cd ../.. %回到上两级目录
[root@localhost tmp]# chmod -R a+x TestOwn/ % a=ugo表示所有用户,所有用户+x
[root@localhost tmp]# ll
drwxr-xr-x 3 Test0318 Test0318 21 Apr 15 18:12 TestOwn %本身及下层文件都被修改了。
755和644
新创建目录权限=777-022=755
新创建普通文件权限=666-022=644
掩码决定了文件的默认权限:umask
[root@localhost tmp]# umask
0022
[root@localhost tmp]# umask 020 %临时修改掩码的值
[root@localhost tmp]# umask
0020
新创建目录权限=777-020=757
新创建普通文件权限=666-020=646
五、课堂练习
一、
安装
查看
启动
查看状态:running
每次开机就使服务启动
二、SSH(Secure Shell)
示例:ssh [username]@hostname/IP command
-p(port)
-i(inditify file of private key)
sshd服务配置文件
ssh主机密钥
authorized_keys
主机ip:10.0.2.129 克隆机ip:10.0.2.128
cmd:
C:\Users\DELL1>ssh root@10.0.2.128 %登录10.0.2.128
root@10.0.2.128's password:
Last login: Sun Mar 21 10:31:37 2021
[root@localhost ~]# useradd student
[root@localhost ~]# echo student |passwd --stdin student(密码)
[root@localhost ~]# su – student
[student@localhost ~]$
MobaXterm:
[root@rhel ~]# echo student |passwd --stdin student(密码)
[root@rhel ~]# dnf info openssh %查看openssh
[root@rhel ~]# cd /etc/ssh
[root@rhel ssh]# vi sshd_config %把PORT改成2233
[root@rhel ssh]# systemctl restart sshd.service %重启
[root@rhel ssh]# dnf -y install policycoreutils-python-utils %下载,使用semanage命令
[root@rhel ssh]# semanage port -a -t ssh_port_t -p tcp 2233 %添加ssh端口
[root@rhel ssh]# systemctl restart sshd %重启
[root@rhel ssh]# firewall-cmd --permanent --add-port=2233/tcp %开启防火墙
success
[root@rhel ssh]# firewall-cmd –reload %重新加载
success
[root@rhel ssh]#
cmd:
[student@localhost ~]$ ssh-keygen %生成密钥
[student@localhost ~]$ exit
[root@localhost ~]# echo ‘ 10.0.2.129 rhel.example.com rhel’>>/etc/hosts
[root@localhost ~]# su - student
[student@localhost ~]$ ssh-copy-id -i -p2233 student@10.0.2.129 %复制
[student@localhost ~]$ ssh -p2233 10.0.2.129 %免密登录
然后将克隆机的密钥import到一个文件夹中:
用cmd打开文件夹:
D:\10.0.2.128>ssh -p2233 -i id_rsa 10.0.2.129
报错!
更改id_rsa的属性
将列表中默认的用户都移除,添加本机用户(DELL1)
之后进入cmd查看是否能免密登录:
D:\10.0.2.128>ssh -p2233 -i id_rsa root@10.0.2.129
更改主机的端口号
完成