国庆期间课程总结

国庆期间课程总结

Vim常用方法详解:
三种方式:命令模式、插入模式、退出模式

命令模式下配置 vim 的工作方式:
:set nu 行号添加
:set nonu 取消行号
:set mouse=a 添加鼠标选择
:set cursorline 行线显示
注意: 以上操作只在当前打开的 vim 中生效
如果设定永久生效编辑文件 /etc/vimrc

vim 命令模式下关键字搜索

/ 关键字
n 向下匹配
N 向上匹配

vim 命令模式下字符的管理
• 字符的复制
• yl 复制一个字母
• y3l 复制 3 个字母
• yw 复制一个单词
• y3w 复制 3 个单词
• yy 复制一行
• y3y 复制 3 行
• p 复制完成后按“ P” 粘贴

vim 命令模式下字符的管理
• 字符的删除
• dl 删除一个字母
• d3l 删除 3 个字母
• dw 删除一个单词
• d3w 删除 3 个单词
• dd 删除一行
• d3d 删除 3 行

vim 命令模式下字符的管理
3. 字符的剪切
cl 剪切一个字母
c3l 剪切 3 个字母
cw 剪切一个单词
c3w 剪切 3 个单词
cc 剪切一行
c3c 剪切 3 行
esc —> p 剪切过后会进入到插入模式,在执行粘贴动作时一
定要退出插入模式

vim 的可视化模式
• 在命令模式下按“ ctrl+v” 进入到可视模式
• 在可视模式下可以区域选择字符
• 可视模式下批量添加字符

ctrl+v 选中要加入字符所在列
按“ I” 进入插入模式,写入要加入的字符
按 esc

批量修改字:%s/ 原有字符 / 替换后字符
只替换每一行中出现的第一个原有字符:%s/ 原有字符 / 替换后字符 /g
替换

vim 的分屏功能
• ctrl+w s 上下分屏• ctrl+w v 左右分屏• ctrl+w c 关闭光标所在屏幕• ctrl+w 上下左右 光标移动到指定屏幕•
:sp file2 同时编辑当前文件和 fil

vim 光标移动
在命令模式下

: 数字 移动到指定的行
• G 文件最后一行
• gg 文件第一行
在插入模式下
i 光标所在位置插入
I 光标所在行行首
a 光标所在字符的下一个位置
A 光标所在行行尾
o 光标所在行下一行
O 光标所在行上一行
s 删除光标所在字符插入
S 删除光标所在行插入

vim 的退出模式
:q 当用 vim 打开文件但没有对字符作任何操作时可直接退出
:q! 当用 vim 打开文件并对字符作操作,放弃所有操作退出
:wq 保存退出
:wq! 强行保存退出,对超级用户及文件所有人生效

vimtutor
提供 vim 的手册键入 “q”

输入重定向
输入重定向tr ‘a-z’ ‘A-Z’ < westos
格式化输入内容到文件cat > westos <<EOFHELLOWORLDE

管道
符号 : |
表示含义 : 将前一条命令的正确输出作为管道符后面命令的标准
输入
stderr 的输出不能通过管道
2>&1 可以把 stderr 转换成 stdout

Linux的输入输出管理:
在linux系统中,正确输出的编号为1,错误输出编号为2

在系统中用普通用户执行 “student”
find /etc -name passwd
因为student用户权限问题会有以下输出
find: ‘/etc/pki/CA/private’: Permission denied ##没有进入权力,报错
find: ‘/etc/pki/rsyslog’: Permission denied
find: ‘/etc/audit’: Permission denied
/etc/passwd ##正确输出
find: ‘/etc/polkit-1/rules.d’: Permission denied
find: ‘/etc/polkit-1/localauthority’: Permission denied
find: ‘/etc/dhcp’: Permission denied
find: ‘/etc/selinux/targeted/modules/active’: Permission denied
find: ‘/etc/lvm/archive’: Permission denied
find: ‘/etc/lvm/backup’: Permission denied
find: ‘/etc/lvm/cache’: Permission denied
find: ‘/etc/grub.d’: Permission denied
/etc/pam.d/passwd ##正确输出
find: ‘/etc/audisp’: Permission denied
find: ‘/etc/firewalld’: Permission denied
find: ‘/etc/cups/ssl’: Permission denied
find: ‘/etc/ipsec.d’: Permission denied
find: ‘/etc/libvirt’: Permission denied
find: ‘/etc/sudoers.d’: Permission denied
find: ‘/etc/named’: Permission denied

find /etc -name passwd > file ##重定向正确输出
find /etc -name passwd 2> file ##重定向错误输出
find /etc -name passwd &> file ##重定向所有输出

注意: >, 2> ,&> 都会覆盖源文件内容

file ##清空file

find /etc -name passwd >> file ##追加正确输出
find /etc -name passwd 2>> file ##追加错误输出
find /etc -name passwd &>> file ##追加所有输出

注意:>> 2>> &>> 不会覆盖源文件内容,会把相应的输出字符方到文件的最后

| 管道,管道的作用是将前一条命令的输出变成管道后命令的输入

ls /bin | wc -l ##统计ls /bin 命令输出的行数

系统中错误的输出是无法通过管道的。
用 2>&1 可以把错误的输出编号由2变成1
tee 复制输出到指定位置
date |tee file |wc -l ###tee命令复制date命令的输出到file中,并统计输出行数

Linux系统的用户管理:
用户管理
什么是用户
用户是操作者在系统中的身份
用户是系统最底层的安全机制的一部分
用户在系统中以字符和文件的形式

用户存储文件•
/etc/passwd•
/etc/group•
/etc/shadow•
/home/username•
/etc/ske

Useradd
用户新建用户
-u 指定用户的 uid
-g 指定用户的 gid• -G 指定用户的附加组
-c 指定用户的说明• -d 指定用户的家目录 , 默认为 /home/username• -s 指定用户的 shell

管理用户组• groupadd 建立用户组•-g 指定组 id• groupmod 修改用户组•-g 修改组 id•
Usermod
• 用于修改用户信息
• -l 修改用户名称
-u 修改用户的 uid
-g 修改用户的 gid
-aG 指定用户的附加组
-c 修改用户的说明
-md 修改用户的家目录 , 默认为 /home/username
-s 修改用户的 shell

passwd• -l Lock, 会将 /etc/shadow 第二栏最前面加上 !
使密码失效;
• -u Unlock 的意思 !
• -S 列出密码相关参数 , 亦即 shadow 文件内的大部分信息。
-n 后面接天数 , 多久不可修改密码天数• -x 后面接天数 , 多久内必须要更动密码
-w 后面接天数 , 密码过期前的警告天数• -i 后面接“日期” , 密码失效

chage -l : 列出该帐号的详细密码参数 ;
-d : 后面接日期 , 修改 shadow 第三字段 , 格式 YYYY-MMDD
-E : 后面接日期 , 修改 shadow 第八字段 , 格式 YYYY-MMDD
-I : 后面接天数 , 修改 shadow 第七字段 ( 密码非活跃期 )
-m : 后面接天数 , 修改 shadow 第四字段 ( 密码最短有效期 )
-M : 后面接天数 , 修改 shadow 第五字段 ( 密码最长有效期 )
-W : 后面接天数 , 修改 shadow 第六字段 ( 密码警告期

用户权限下放 sudo
sudo 能把某些超级权限针对性的下放 , 并且不需要普通用户知道 root 密码 , 所以 sudo 相对于权限无限制性的 su 来说 , 还是比较安全的
sudo 执行命令的流程是当前用户切换到 root, 然后以 root 身份执行命令 , 执行完成后 , 直接退回到当前用户 ; 而这些的前提是要通过 sudo 的配置文件 /etc/sudoers 来进行

用户权限下放 sudovim /etc/sudoers 无语法检测visudo 但有语法时

用户权限下放 sudosudo 命令sudo useradd hel

linux系统的权限管理:
学习目标
文件权限的查看• 理解文件的用户,文件的用户组
理解文件的权限• 文件权限的设定• 理解特殊权限
理解特殊权限的设定• acl 权限

文件权限的查看• 查看文件属性 ( 详细信息 ):
ls -l -rw-r–r-- 1 root root 0 Dec 30 21:43 westos
查看文件属性 ( 详细信息 ): ls -ld drwxr-xr-x 2 root root 6 Dec 30 21:44 te

文件用户,用户组
Linux 是个多用户多任务的系统 , 常常会有多人同时使用同一主机来进行工作 , 为了考虑每个人的隐私权以及每个人喜好的工作环境 , 对用户进行分类
文件拥有者 (user)
文件所属组 (group)
其他人 (other)

权限读取
第 2~4 个字符代表文件所有人的权限 ;
第 5~7 个字符代表文件所属组的权限 ;
第 8~12 个字符代表其他人的权限•
rwx|r-x|r-x u g

文件权限的更改
第一种方法 : 通过字符方式修改chmod <u|g|o><+|-|=><r|w|x> 目标
第二种方法 : 通过数字方式修改chmod 数字 目标
r:4 w:2 x:17:rwx 6:rw- 5:r-x 4:r–3:-wx 2:-w- 1:–x 0:-

系统默认权限
当你创建一个新的文件或目录时 , 该文件或目录有默认权限
umask 的分数指的是 该默认值需要减掉的权限
在默认权限的属性上 , 目录与文件是不一样的
文件的最大权限为 666, 目录的最大权限为 7

umask查看 umask 值 :umask修改 umask 值 :umask 022 // 临时修改 umask 值vim /etc/bashrc // 永久修改 bash 里创建文件的 umask 值vim /etc/profile // 永久修改每个用户创建文件的 umask 值注意 : 想要永久性的修改 umask 值 , 一定要重新读取两个配置文件后 , 才能

特殊权限
o+t 权限 :sticky, 粘制位效果 : 只针对于目录 , 当目录上有 o+t 的权限时 , 所有用户在该目录下均可创建文件 , 但只有文件所有人和 root 用户可以删除该目录下的文件。
设定方式 :chmod o+t 目录chmod 1777

特殊权
u+s 权限 :suid, 冒险位
效果 : 只针对于二进制可执行文件 , 该命令发起的程序是以该命令所有人的身份去执行。
设定方式 :chmod u+s 二进制可执行文件chmod 4755 二进制可执行

特殊权限g+s 权限 : 强制位效果 : 针对二进制可执行文件 : 该命令发起的程序是以该命令所有组的身份去执行 ; 针对目录 : 目录新建文件的所属组与该目录的所有组保持一致 ;设定方式 :chmod g+s 文件 | 目录chmod 2755 文件 |

文件访问控制列表 ACL
传统的权限仅有三种身份 (owner,group, others) 搭配三种权限 (r,w,x), 并没有办法单纯的针对某一个使用者或某一个群组来设置特定的权限需求 , 此时就得要使用 ACL( 文件访问控制列表 ,Access Control List) 这个机制• ACL 因此目前 ACL 几乎已经默认加入在所有常见的 Linux 文件系统的挂载参数中 (ext2/ext3/ext4/xfs 等等 ), 但 rhel6.0以及之前的版本默认不支持 acl 的

如何查看文件是否有 acl 权限
ls -l /etc/passwd-rw-r–r–. 1 root root 2173 Jan 6 21:08 /etc/passwd注释 : 第 11 位为 . 时代表没有 acl 权限 ; 为 + 时代表有 acl 权

Linux的进程管理:
程序 (program) 放置在储存媒体中 ( 如硬盘、光盘、软盘、磁带等 ), 为实体文件的型态存在
进程 : 程序被触发后 , 执行者的权限与属性、程序的程序码与所需数据等都会被载入内存中 , 操作系统并给予这个内存内的单元一个识别码 (PID), 可以说 , 进程就是一个正在运行中的程序。

进程状态
• R (Running): 该程序正在运行中 ;
• S (Sleep): 该程序目前正在睡眠状态 (idle), 但可以被唤醒(signal) 。
• D 不可被唤醒的睡眠状态 , 通常进程可能在等待 I/O 的情况。
• T 停止状态 (stop), 可能是在工作控制 ( 背景暂停 ) 或除错(traced) 状态 ;
• Z (Zombie): 僵尸状态 , 程序已经终止但却无法被移除至内

查看进程
• ps: 静态查看进程信息
• -A : 所有的 process 均显示出来 , 与 -e 具有同样的效用 ;
• -a : 不与 terminal 有关的所有 process ;
• -u : 有效使用者 (effective user) 相关的 process ;
• x : 通常与 a 这个参数一起使用 , 可列出较完整信息•
l : 较长、较详细的将该 PID 的的信息列出 ;
• -f : 做一个更为完整的输出。

sshd 服务及服务管理:
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 ##开机启动图形
setterm ##文本界面设定color

发布了22 篇原创文章 · 获赞 0 · 访问量 232

猜你喜欢

转载自blog.csdn.net/weixin_45734982/article/details/102493478