Linux学习笔记(2)
一、Vim文本编辑器
1. VIM编辑器概述
- Visual Interface(可视化接口)
- VI -> VIM(升级)
VIM支持多级撤销
VIM可以跨平台运行
VIM支持语法高亮
VIM支持图形界面
2.VIM编辑器的操作模式
- Command Mode 命令模式
- Insert Mode 输入模式
- Last Line Mode 底行模式(尾行,末行)
3.VIM编辑器的命令模式
- vim abc
打开abc文件(没有则创建),光标定位在第一行(默认) - vim + abc
打开abc文件,光标定位在最后一行 - vim +3 abc
打开abc文件,光标定位在第三行(超过最大行则定位在最后一行) - vim +/words abc
打开abc文件,光标定位到第一次出现“words”的地方 - vim aa bb cc
一次性打开多个文件(没有则创建),通过“:n”,“:N”来向后向前切换文件
底行模式常用命令
- :w 将文件修改从内存写入硬盘,保存修改
- :q 退出VIM编辑器打开的文件
- :! 强制执行
- :ls 列出当前编辑器打开的所有文件
- :n 切换到后一个文件
- :N 切换到前一个文件
- :15 光标定位到15行
- /xxx 从光标位置开始向后搜索xxx字符串,定位到第一次出现位置
- ?xxx 从光标位置开始向前搜索xxx字符串,定位到第一次出现位置
命令模式常用指令
- h 光标左移
- j 光标下移
- k 光标上移
- l 光标右移
- ctrl + f 向下翻页(front)
- ctrl + b 向上翻页(back)
- ctrl + d 向下翻半页(down)
- ctrl + u 向上翻半页(up)
- dd 删除光标所在行
- o 在光标所在行的下方插入一行并切换到输入模式
- yy 复制光标所在的行
- p 在光标所在行的下方粘贴
- P 在光标所在行的上方粘贴
二、磁盘管理
1.Linux磁盘管理基本命令
- df 查看磁盘分区使用状况
选项:
-l 仅显示本地磁盘(默认)
-a 显示所有文件系统的磁盘使用情况,包含比如/proc/
-h 以1024进制计算最合适的单位显示磁盘容量
-H 以1000进制计算最合适的单位显示磁盘容量
-T 显示磁盘分区类型
-t 显示指定类型文件系统的磁盘分区
-x 不显示指定类型文件系统的磁盘分区 - du 统计磁盘上的文件大小
选项:
-b 以byte为单位统计文件
-k 以KB为单位统计文件
-m 以MB为单位统计文件
-h 按照1024进制以最合适的单位统计文件
-H 按照1000进制以最合适的单位统计文件
-s 指定统计目标
2.Linux硬盘分区和格式化概述
第一 主分区和扩展分区总数不能超过4个
第二 扩展分区最多只能有一个
第三 扩展分区不能直接存取数据
3.Linux中MBR分区
- fdisk /dev/sdb
让sdb磁盘进入分区模式
4.Linux中GPT分区
- 分区模式之MBR
主分区不超过4个
单个分区容量最大2TB - 分区模式之GPT
主分区个数“几乎”没有限制
单个分区容量“几乎”没有限制 - parted 命令
进入分区模式 - mklabel gpt/msdos
给目标硬盘指定分区表类型(GPT/MBR) - 添加分区(交互模式)
mkpart - 添加分区(命令模式)
mkpart 分区名称 起始位置 结束位置
mkpart test 2000 3000
5.Linux中分区的格式化
- mkfs.ext3 /dev/sdb1 或 mkfs -t ext3 /dev/sdb1
将sdb1分区格式化为ext3文件系统
6.Linux中挂载分区
- mkdir -p /mnt/test
建立文件夹,用于挂载 - mount /dev/sdb1 /mnt/test
挂载 - unmount /mnt/test
卸载 - vim + /etc/fstab
编辑fstab文件,实现开机自动挂载
7.Linux中swap分区
一、建立一个普通的Linux分区
二、修改分区类型的16进制编码
三、格式化交换分区
四、启用交换分区
fdisk /dev/sdb
mkswap /dev/sdb6
swapon /dev/sdb6
三、用户管理
1.Linux中用户和用户组的概念
- 用户:使用操作系统的人
- 用户组:具有相同系统权限的一组用户
- /etc/group 存储当前系统中所有用户组的信息
Group : x : 123 : abc,def,xyz
组名称:组密码占位符 :组编号 :组中用户名列表 - /etc/gshadow 存储当前系统中用户组的密码信息
Group : * : : abc,def,xyz
组名称: 组密码 :组管理者 :组中用户名列表 - /etc/passwd 存储当前系统中所有用户的信息
user : x : 123 : 456 : xxxxxxx : /home/user : /bin/bash
用户名:密码占位符:用户编号:用户组编号:用户注释信息:用户主目录:shell类型 - /etc/shadow 存储当前系统中所有用户的密码信息
user : vf;/Zu8sdf… : : : ::
用户名: 密码 :::::
2.Linux中用户和用户组的基本命令
- groupadd grp1
添加用户组grp1 - groupmod -n grp2 grp1
将用户组名改为grp2 - groupmod -g 668 grp2
将grp2用户组编号改为668 - groupadd -g 888 boss
创建一个用户组boss,并且指定组的编号为888 - groupdel grp2
删除grp2用户组
- groupadd s1
创建s1用户组 - useradd -g s1 man1
将用户man1加入s1用户组 - useradd -d /home/xxx man2
创建用户man2(未指定用户组,默认创建与用户名相同的用户组),并指定用户个人文件夹位置 - usermod -c zhang man1
修改man1用户的注释信息 - usermod -l girl2 man2
将用户名man2改为girl2 - usermod -d /home/girl2 girl2
修改girl2个人文件夹路径 - usermod -g s2 man1
将用户man1切换到s2用户组 - userdel man1
删除用户man1 - userdel -r man1
删除用户man1,并删除个人文件夹 - touch /etc/nologin
禁止除root以外用户登录服务器
3.Linux中用户和用户组的进阶命令
- passwd -l man1
锁定账户man1 - passwd -u man1
解锁用户man1 - passwd -d man1
清楚账户密码
- 用户可以同时属于多个组
一个主要组
多个附属组
- gpasswd -a man1 s1
将用户man1添加到s1附属组 - gpasswd -d man1 s1
将用户man1从s1附属组删除 - gpasswd s1
改变s1用户组组密码
4.Linux中用户管理其他命令
- su username
将当前用户身份切换到username
注:此笔记为学习慕课网壞大叔badUncle《Linux 达人养成计划 II》所记。