VIM 编辑器
VI编辑器 -> VIM编辑器(升级版,多级撤销,跨平台,语法高亮,图形界面)
三种操作:
- 命令模式:
a|i|o
切换成输入模式 - 输入模式
- 底行模式:
:w
保存、:q
退出、:!
强制、:ls
列出打开所有文件、:n
下一个文件、:15
15行、/xxx
向后搜索、?xxx
向前搜索
打开创建文件:
- vim [+n|+/w] 文件名
,+n
表示打开文件光标所在位置,+/w
表示高亮显示关键词
磁盘管理
相关命令:
df [-lahHTtx] [文件类型]
:查看磁盘分区使用情况- l默认本地磁盘,a所有文件系统,h以1024进制显示,H以1000进制显示,T磁盘分区类型,t指定类型文件系统、x不显示指定类型文件系统
du [-bkmhHs] [文件]
:统计磁盘上的文件大小- b即byte,k即KB,m即MB,h以1024进制为单位,H以1000进制为单位,s指定统计目标
分区
分区:
- 主分区和扩展分区总数不能超过4个
- 扩展分区最多只能有一个
- 扩展分区不能直接存取数据
硬盘空间没有时,在保留原硬盘的基础上,给服务器添加新的硬盘。
必须对硬盘进行分区、格式化、挂载后才能使用。
分区命令:
- MBR:
- 主分区不能超过4个,单个分区容量最大2TB
- GPT:
- 主分区个数“几乎”没有限制,单个分区容量“几乎”没有限制,但不适合安装X86架构的系统(32位系统)
分区命令:
fdisk [-options] [-l] <disk>
,fdisk -l
列出分区表(MBR分区)- 假设插入了新硬盘,查看分区后会看见
Disk /dev/sdb
(sdb假设时新磁盘的名称)fdisk /dev/sdb
进入分区命令模式- m查看帮助信息
- n添加新分区 -> 显示设置p(主分区),e(扩展分区) -> 指定分区编号 -> 指定扇区起始位置 -> 指定扇区终止位置(+3000M表示分区大小)
- 当在指定分区时选择p再选择e之后,就不能再选择扩展分区了,此时会显示l(逻辑分区,编号从5开始,1到4是给主分区和扩展分区的)
- d删除分区,需要输入分区编号
- p查看分区信息
- w写入分区到磁盘中,确定分区之后需要保存
parted
即可以设置MBR分区,又可以设置GPT分区- help 查看帮助信息
select /dev/sdc
切换分区磁盘mklabel [msdos | gpt]
指定分区表,msdos即MBR,gpt即GPT- unit GB 使用 GB 分区,默认使用MB分区
- quit 退出分区,默认写入
- print 查看分区信息
- 2种分区模式:交互模式和命令模式
- 交互模式:
- mkpart 添加分区指令 -> 指定分区名称 -> 指定文件类型 -> 从哪里开始(与上面的不同,这里是从第几MB开始) -> 结束
- 命令模式:
- mkpart test 2000 3000,
mkpart 分区名称 开始位置 结束位置
- mkpart test 2000 3000,
- 交互模式:
- rm 3 删除编号为3的分区
ls -l /dev/sdb*
查看分区在设备下的情况mkfs .ext3 /dev/sdb1
,mkfs [-t] 文件类型 分区名称
格式化分区,MBR扩展分区不能格式化,只有主分区和逻辑分区能格式化,GPT格式化后需要通过parted指令才能查看分区类型- 挂载分区:没有挂载的分区不能使用,默认挂载目录/mnt
- mount /dev/sdb1 /mnt/imooc 挂载
- umount /mnt/imooc 卸载
- 配置永久挂载,编辑文件 vim + /etc/fstab
- 添加配置:/dev/sdb1 /mnt/imooc ext3 defaults 0 0
- 为硬盘添加一个swap分区:
- 建立一个普通的linux分区 -> 修改分区类型的16进制编码 -> 格式化交换分区 -> 启用交换分区
- 使用 fdisk 进入分区模式,t 修改分区的 Id(此时需要修改分区的 Id),输入16进制的编码(L 查看编码列表,83普通分区,82 swap分区),w 写入
- 退出之后格式化分区,mkswap /dev/sdb6
- 格式化之后启动:swapon /dev/sdb6
- free查看加载状况,swapoff /dev/sdb6 停止分区
- 建立一个普通的linux分区 -> 修改分区类型的16进制编码 -> 格式化交换分区 -> 启用交换分区
用户和用户组
用户组:具有相同系统全限的一组用户
/etc/group 存储当前系统中所有用户组的信息:
- Group组名称 : x组密码占位符 : 123组编号 : abc,def,xyz组中用户名列表(组名和用户名相同时为空)
/etc/gshadow 存储当前系统中用户组的密码信息:
- Group组名称 : !组密码(*或!表示没有密码或密码为空) : 组管理者(为空表示组内所有用户都可以管理用户组) : abc,def,xyz组中用户名列表
/etc/passwd 存储当前系统中所有用户的信息:
- user用户名 : x密码占位符 : 123用户编号 : 456用户组编号 : xxxxxxxx用户注释信息 : /home/user用户主目录 : /bin/bash(shell类型)
/etc/shadow 存储当前系统中所有用户的密码信息:
- user用户名 : v1;ZB密码 : : : : :
用户组操作:
groupadd 组名
添加用户组groupmod -n 新组名 组名
修改组名groupmod -g 新组编号 组名
修改组编号groupadd -g 组编号 组名
添加用户组时并设置组编号groupdel 组名
删除用户组,删除用户组前需要先删除组中的用户- 一个用户可以有一个主组和多个附加组
gpasswd -a 用户名 附属组名
为用户添加附属组,用户操作时默认使用主组的权限newgrp 组名
切换成其他组,使用其他组的权限,如果有组密码,此时需要输入密码gpasswd -d 用户名 附属组名
删除附属组gpasswd 组名
设置组密码
用户操作:
useradd -g 用户组 用户名
创建用户并指定所属用户组useradd -d 用户个人文件夹 用户名
创建用户并指定个人文件夹,没有设置用户组时默认创建一个和用户编号相同的用户组usermod -c 用户注释 用户名
修改用户的注释usermod -l 新用户名 用户名
修改用户名usermod -d 用户个人文件夹 用户名
修改用户个人文件夹usermod -g 新用户组 用户组名
修改用户组名userdel 用户名
删除用户userdel -r 用户名
删除用户并删除用户个人文件夹touch /etc/nologin
就可以禁止root用户以外的其他用户登录passwd -l 用户名
锁定用户passwd -u cls
解锁用户passwd -d cls
设置成无密码登录useradd -g 主组名 -G 附属组名 用户名
创建用户时并设置主组和附属组
其他:
su 用户名
切换用户id 用户名
显示指定用户信息,用户编号、组编号及名称groups 用户名
显示用户所在的所有组chfn 用户名
设置用户资料finger 用户名
显示用户详细资料