Linux达人养成计划 II 详细笔记

本博文的内容来自Linux 达人养成计划 II 的个人学习笔记,内容较为详细,供大家学习参考之用。


目录

第1章 VI 与 VIM

1.1 VI 编辑模式

1.2 底行模式常用命令

1.3 命令模式常用命令

第2章 磁盘管理

2.2 磁盘分区和格式化

  2.2.1分区模式之MBR

  2.2.2 分区模式之GPT

  2.2.3 格式化

  2.2.4 挂载分区

  2.2.5 swap分区

第3章 用户管理

3.1 配置文件

3.2 用户组和用户的基本管理命令

  3.2.1 用户基本命令

3.2.2用户组基本命令

3.3 用户和用户组进阶命令


第1章 VI 与 VIM

VIM 相对于 VI做了哪些提升?

–VIM 支持多级撤销
–VIM 可以夸平台运行
–VIM 语法高亮
–VIM 支持图形界面

1.1 VI 编辑模式

Command Mode    #命令模式
Insert Mode     #输入模式
Last Line Mode  #底行模式

vim abc  打开文件
vim + abc 打开文件光标在最后一行
vim +3 abc 打开文件光标定位到第三行
vim +/xxx abc 光标定位到xxx第一次出现的那行。 n命令移到下一个xxx所在行
vim aa bb cc 创建多个文件,首先处于aa文件,只要在底行 :n就能切换到下一个文件,如果是最后一个文件无法切换了,这时候输入:N

1.2 底行模式常用命令

:w   #执行保存修改
:q   #退出
:!   #强制执行
:ls  #列出所有打开文件
:n   #切换到下一个文件
:N   #切换上一个文件
:15  #光标快速定位到15行
:/xxx #从光标位置开始向后搜索找到第一个xxx字符串,光标就定位到那里
:?xxx #从光标位置向前搜索,搜索到第一个xxx字符串,就定位到那里

1.3 命令模式常用命令

-h #光标左移
-j #光标下移
-k #光标上移
-l #光标右移
-ctrl + f #向下翻页(front)
-ctrl + b #向上翻页(back)
-ctrl + d #向下翻半页(down)
-ctrl + u #向上翻半页(up)

-dd #删除光标所在行
-o  #在光标所在行的下方插入一行并切换到输入模式
-yy #复制光标所在行
-p #在光标所在行的下方粘贴
-P #在光标所在行的上方粘贴

第2章 磁盘管理

df 查看磁盘分区使用情况
  -l 仅显示本地磁盘(默认)
  -a 显示所有文件系统的磁盘使用情况,包含比如/proc/
  -h 以1024进制计算最合适的单位显示磁盘容量
  -H 以1000进制计算最合适的单位显示磁盘容量
  -T 显示磁盘分区类型
  -t 显示指定类型文件系统的磁盘分区
  -x 不显示指定类型文件系统的磁盘分区

du 统计磁盘上文件大小 
  -b 以byte为单位统计文件
  -k 以KB为单位统计文件
  -m 以MB为单位统计文件
  -h 按照1024进制以最合适的单位统计文件
  -H 按照1000进制以最合适的单位统计文件
  -s 指定统计目标

当硬盘的空间耗尽怎么办?

在保留原硬盘基础下,添加一块硬盘,支持热插拔更好。
使用fdisk 分区工具

  • 主分区
  • 逻辑分区
  • 扩展分区

2.2 磁盘分区和格式化

通过之前的学习,我们已经知道在Linux系统中硬件设备都是以文件的形式存在于根目录下的dev目录下。硬件设备都是由Linux系统自动识别的,当硬盘添加到服务器中,服务器开机之后,就会被自动的识别,但是它并不能直接使用,需要对硬盘进行分区格式化挂载后才行。将分区挂载到指定的挂载点。

  2.2.1分区模式之MBR

这种分区模式比较老旧,受以下限制因素:
1、主分区不超过4个
2、单个分区容量最大2TB

  2.2.2 分区模式之GPT

1、主分区个数“几乎”没有限制
2、单个分区的容量“几乎”没有限制(每个分区最多可达到18EB )

注意:1EB = 1024PB,1PB = 1024TB,1TB = 1024GB

fdisk 只能给硬盘做MBR分区,输入的是扇区数据块的始末编号

parted 既能给硬盘做MBR分区,又能做GPT分区,输入的是数据块的起始位置和大小

1、输入parted命令,启动parted分区工具
2、输入help查看帮助信息
3、切换分区目标磁盘,输入select /dev/sdc
4、给目标硬盘指定分区表的类型,然后才能给硬盘添加分区,输入mklable命令,
(如果使用MBR分区,输入mklabel msdos;使用GPT分区,输入mklabel gpt)
5、输入print 查看当前分区详情;输入print all命令,查看所有分区详情
6、parted分区操作模式:①交互模式(使用提问模式选择) ②命令模式

交互模式添加分区:
添加分区指令:输入mkpart命令
输入分区名称
File system type?[ext2]?选择分区系统类型(默认ext2),
Start?分区从第几MB开始:从0开始
End?结束位置:2000MB
Ignore/Cancel?(4K对齐,对硬盘分区很重要,为了达到最佳性能,分出1-2000MB空间,让数据块对齐)
输入Cancel取消

命令模式添加分区:
mkpart  test(分区名称)  2000(开始位置2000MB)  3000(结束位置MB)
注意:使用命令模式添加分区的时候,分区名称是不能省略的
删除分区:rm 3(分区编号)

unit GB命令:使用GB给分区指定开始和结束位置

quit 命令: 退出分区工具

  2.2.3 格式化

mkfs.ext3 /dev/sdb1        #将sdb1格式化为ext3文件系统类型

mkfs -t ext4 /dev/sdb2     #将sdb2分区格式化为ext4文件系统类型,此法和上一条效果一样!!

需要注意的是:

在MBR中,只有主分区和逻辑分区才可以格式化,扩展分区不可以格式化。

在GPT,使用fdisk没法看到,只有用parted分区工具和print指令才能查看GPT硬盘的分区表

  2.2.4 挂载分区

(有关于挂载的问题,也可参考我之前的博文https://blog.csdn.net/sunshine_lyn/article/details/81739300

在格式化之后,要往分区中存放数据,需要挂载,若不挂载的话,这个分区是不能使用的。

1、首先要先建立好文件夹(挂载点)

2、执行挂载命令:mount  /dev/sdb1  /mnt/imooc   #mount   分区   挂载点

卸载:umount  /mnt/imooc

想让分区在重启后自动挂载的,需要执行以下命令:

vim + /etc/fstab

进入如下界面后进行配置,输入设备名称、挂载点、文件系统类型,后面两个默认参数为0,0即可。

  2.2.5 swap分区

如何为硬盘添加swap分区?

第一,建立一个普通的Linux分区

第二,修改分区类型为16进制编码

第三,格式化交换分区

第四,启用交换分区

root@imooc:~# fdisk /dev/sdb
Command (m for help):p  #查看分区
Command (m for help):t  #选择分区
Partition number (1-6):6
Hex code(type L to list codes):L     #输入16进制编码,先查看一下,找到编号82为交换分区
Hex code(type L to list codes):82
Command (m for help):p
Command (m for help):w   #保存

root@imooc:~# mkswap /dev/sdb6   #格式化swap交换分区,和之前分区操作有区别
root@imooc:~# swapon /dev/sdb6   #启用交换分区
root@imooc:~# free    #查看swap加载状况
root@imooc:~# swapoff  /dev/sdb6    #停止

第3章 用户管理

用户:使用操作系统的人,Linux中允许多个用户同一时间登陆同一个操作系统

用户组:具有相同系统权限的一组用户,Linux中,允许存在多个用户组

3.1 配置文件

(1)/etc/group 存储当前系统中所有用户组的信息

-Group            x              123    abc,def,xyz
-组名称   组密码占位符 组编号    :组中用户名列表

(2)/etc/gshadow 储存系统用户组密码信息
-Group      *                  :  abc,def
-组名组密码   组管理者组中用户名列表 (注明:组管理者一般为空代表该组所有用户都可以管理该组)

(3)/etc/passwd 存储当前系统中所有用户信息
-user             x             123          456     xxxxxxxx/home/user  /bin/bash
-用户名密码占位符用户编号 用户组编号用户注释 用户主目录  shell类型
注意:除了root用户外,创建用户时,会在home下创建一个和用户名一样的文件夹, 超级管理员root编号为0。

(4)/etc/shadow 存储当前系统中所有用户密码
-user    passw:::::
-用户名密码   :::::
以上四个配置文件包含了有关用户和用户组的所有配置信息,无论是用户还是用户组的配置信息都单独保存。

3.2 用户组和用户的基本管理命令

  3.2.1 用户基本命令

1. useradd 用户名                              #添加用户,所在用户组与用户名同名
2. useradd -g 组名 用户名                  #添加用户,指定其所在的组
3. useradd -d 目录 用户名                  #添加用户,制定其用户的家目录,没有指定所在组时,默认用户名就为用户组名
4. usermod -c 注释信息 用户名          #为指定用户名添加注释
5. usermod -l 新用户名 旧用户名       #更改用户名
6. usermod -d 目录 用户名                 #更改用户个人文件夹的路径
7. usermod -g 新用户组 用户名          #更改指定用户的所属组
8. userdel 用户名                               #删除用户,但是不删除用户个人文件夹里的文件
9. userdel -r 用户名                            #删除用户并且删除用户个人文件夹里的文件

3.2.2用户组基本命令

1. groupadd 组名                          #添加用户组
2. groupadd -g 组编号 组名          #添加用户组并指定组编号
3. groupmod -n 新组名 原组名      #更改用户组名称
4. groupmod -g 组编号 组名          #更改用户组编号
5. groupdel 组名                             #删除用户组

只允许root,禁止普通账号登录服务器,如何操作?
在etc目录下创建一个nologin文件(文件内容无关紧要)
touch /etc/nologin      #使用touch创建一个空文件

3.3 用户和用户组进阶命令

锁定账号:passwd -l 用户名
解锁账号:passwd -u 用户名
删除用户密码:passwd -d 用户名
给用户添加附属组:gpasswd -a 用户名 用户组
删除用户附属组:gpasswd -d 用户名 用户组
设置用户组密码:gpasswd 用户组名称

既指定主要组又指定附属组:useradd -g group1 -G group1,group2

当用户登陆操作系统中,要把当前的组身份切换到附属用户组时。如果当前的附属用户组设有组密码,就需要输入(组密码也就是在此时用的)。

好啦,到这里,已经把Linux达人养成计划的I和II都学完了,跨入了Linux的大门哈哈哈哈~之后还要在实战中多加练习才行,当然,对于Linux中更为深入的知识点,之后也会逐渐更新哦,希望和我一样对Linux非常感兴趣的小伙伴们一起加油(●'◡'●)

猜你喜欢

转载自blog.csdn.net/sunshine_lyn/article/details/81776794
今日推荐