Linux - 命令(二)

前言

一、VIM文本编辑器

1.VIM编辑器——操作模式
Command Mode -命令模式(vim XXX ,刚进入时就是命令模式。在对应行 ,DD 删除该行)
Insert Mode -输入模式(敲下“a”,进入输入模式)
Last Line -底行模式(尾行)(有时候也把“底行模式”归类为“命令模式”,因为始终还是在输命令)(编辑模式下按“ESC”键,进入底行模式,输入命令回车 如 ":wq")

 

2.VIM编辑器——命令格式
vim 文件名 (执行后,默认光标在第一行,根据LINUX版本不同,可能略有不同)
vim + 文件名 (执行后,光标在最后一行)
vim +3 文件名 (执行后,光标在第三行)
vim +100 文件名 (如果超出文件最大行数,执行后,光标最后一行)
vim +/字符串 文件名(定位到字符串第一次出现的行,按字母N可在字符串出现的行之间切换。如 vim +/dd abc)
vim aa bb cc (一次性打开或创建多个文件。如果文件存在 则打开这三个文件,没有则创建。
默认在第一个文件 ESC,:n 进入下一个文件,:N(:prev)回到上一个文件)
注意:cat aa bb cc 也可用

 

3.VIM编辑器——常用指令(命令模式)

3.1.底行模式常用指令
- :w  保存
- :q  退出
- :!  强制执行
- :wq 保存退出
- :q! 忽略修改,强制退出
- :ls 列出当前打开的所有文件(vim aa bb cc 时)
- :n  切换到后一个文件
- :N  切换到前一个文件
- :15 光标快速定位到第15行
- /XXX 光标定位到第一个“XXX”出现的位置
- ?XXX 从光标当前位置开始向前搜索,定位到第一个找到的“XXX”出现的位置

3.2.其他常用指令
- h光标左移
- j光标下移
- k光标上移
- l光标右移
- ctrl + f 向下翻页(front)
- ctrl + b 向上翻页(back)
- ctrl + d 向下翻半页(down)
- ctrl + u 向上翻半页(up)
- dd删除光标所在的行
- o在光标所在行的下方插入一行并切换到输入模式
- yy复制光标所在的行
- p在光标所在行的下方粘贴
- P在光效所在行的上方粘贴

 

二、磁盘管理

1.Linux 磁盘管理基本命令

 

2.Linux 硬盘分区和格式化概述
第一 主分区和扩展分区总数不能超过4个 
第二 扩展分区最多只能有一个 
第三 扩展分区不能直接存取数据 
Ps:非图形界面的生产环境下,硬盘空间用尽:应在保留原硬盘的基础上,给服务器添加新的硬盘

 

3.Linux 在VM虚拟机中添加硬盘
3.1、服务器添加新硬盘:
添加硬盘要关闭系统(关机)
有些服务器的主板支持热插拔(即:不关闭服务器的情况下,连接新的硬件)
3.2、虚拟机添加新硬盘:
虚拟机不支持热插拔
关机-->添加硬盘-->确定开机

 

4.Linux中MBR分区
硬盘分区工具 "fdisk"命令
使用fdisk分区需要跟一些参数
分区操作:
4.1.fdisk /dev/sdb 进入分区模式
4.2.输入m查看命令帮助信息
4.3.输入n给硬盘添加一个新的分区
4.4.第一个分区分主分区,输入p;不输,默认是主分区
4.5.给分区指定编号,1-4是预留给主分区或者扩展分区的
  Partition number( 1-4,defautl 1):
4.6.给这个分区指定扇区发起始和终止位置
  扇区的起始位置: First sector (2048 - 16777215,default 2048):
    不输入默认2048
  扇区的终止位置:Last sector,+sectors or +size{K,M,G}{2048-16777215,default 16777215}:
    给3000M的空间,自己换算终止位置
4.7.Command(m for help):输入p查看已经分好的区
4.8.Command(m for help):输入n 继续添加分区
4.9.Select(Default p):输入 e 添加扩展分区
4.10.Partition number(1-4,default 2):指定分区编号,默认为2
4.11.First sector(6146048-16777215,default 6146048):指定扇区的起始位置,默认是6146048
4.12.Last sector,+sectors or +size{K,M,G}(6146048-16777215,default 16777215):
   指定扇区的终止位置,剩下的所有空间都给扩展分区,也就是默认的16777215
4.13.Command(m for help):扩展分区不能直接使用,需要添加逻辑分区,输入n
   p primary(1 primary, 1 extended, 2 free)
   l logical(numbered from 5)扩展分区只能有一个,不能给分扩展分区了,所以显示的是逻辑分区,5代表分区的编号从5开始

 

5.Linux中GPT分区
5.1.MBR分区模式和GPT分区模式
MBR分区模式:
    主分区不超过4个(所以用扩展分区来解决)
    单个分区容量最大2TB
    有主分区&扩展分区的概念
    分区命令fdisk /dev/sdxx  
    分区表类型是:msdos
    分区完毕,执行-w 写入分区表才能生效
    缺点:限制多,跟不上发展
GPT分区模式:
    主分区个数"几乎"没有限制(最多128个)
    单个分区容量"几乎"没有限制(最大18EB,1EB=1024PB, 1PB=1024TB)
    没有主分区&扩展分区的概念,都是分区
    使用parted命令工具(同时支持MBR,GPT分区)
    分区表类型是:gpt
    缺点:GPT主分区中不适合安装x86的系统架构

5.2.parted 工具的使用
parted(交互模式)
(1)parted [/dev/sdb]  #进入parted 交互模式  默认是当前使用的硬盘
(2)select /dev/sdb  #切换要分区硬盘
(3)mklable msdos/gpt  #指定分区表类型
(4)print [-all] #查看当前分区信息
(5)mkpart  #添加分区
    -自定义指定分区名称(类似于卷标)
    -指定文件系统类型(默认ext2)
    -start #fdisk的start输入的是扇区数据块的编号,这边指的是从第几MB开始
(6)rm [分区编号] #删除分区
(7)unit GB/单位MB  #指定分区大小的

parted(命令模式)
(parted) mkpart test 2000 3000
#命令模式下分区名称不能省略

 

6.Linux中分区的格式化
6.1.parted工具可以格式化,但是parted支持的文件系统有限
6.2.无论使用MBR,还是GPT进行的分区,都可以使用"mkfs"进行分区格式化
6.3.使用mkfs命令格式化:mkfs.ext3 /dev/sdb1 或 mkfs -t ext4 /dev/sdb2
6.4.MBR中的扩展分区是不可以格式化的,只有主分区和逻辑分区可以格式化
6.5.GPT的分区表的硬盘格式化后我们使用fdisk的命令是没有办法看到各个分区的文件系统类型的,必须启动parted分区工具,使用print指令,才能查看GPT硬盘分区的分区表

 

7.Linux中挂载分区
7.1.没有挂载无法使用,分区默认的挂载目录是/mnt目录;挂在到imooc目录下:mkdir -p /mnt/imooc
7.2.挂载命令:mount /dev/sdb1  /mnt/挂载目录
7.3.卸载命令:umount /mnt/挂载目录
7.4.手动挂载的分区,不具有永久性,系统重启后,挂载就会失效
7.5.重启系统自动挂载,需要修改 /etc/fstab文件:vim + /etc/fstab
7.6.添加配置

 

8.Linux中swap分区
8.1.建立一个普通的Linux分区
在已经有的Linux分区中选择 fdisk /dev/sdb查看当前分区:
8.2.修改分区类型的16进制编码
输入 t ,回车 输入要修改的磁盘编号 这里是 6(sdb6的6);
然后还可以通过 L 来查看已经可以修改成的类型;
再输入82(Linux swap),保存成功!在可以通过输入p来查看已经保存的情况;
再输入w保存分区。

8.3.格式化交换分区
mkswap(后面跟随设备名称) /dev/sdb6 完成格式化
8.4.启动交换分区
swapon /dev/sdb6 启动交换分区
free 查看加载状况
swapoff /dev/sdb6 关闭交换分区

 

9.Linux中用户和用户组的概念
/etc/group    #存储当前系统中所有用户组信息
组名称:组密码占位符:组编号:组中用户名列表
Group:x:123:abc,def,xyz
(1)root 超级管理员的 组号 一定为0;root:x:0:
(2)组号1-499属于系统预留的组编号;预留给系统中安装的软件或服务;越早安装的软件或服务,分配的组编号就越小;
(3)用户手动创建的用户,是从500开始;
(4)组密码占位符,都是用X来表示;

/etc/gshadow    #存储当前系统中用户组的密码信息
组名称:组密码:组管理者:组中用户名列表
Group:*: :abc,def,xyz

/etc/passwd    #存储当前系统中所有用户的信息
用户名:密码占位符:用户编号:用户组编号:用户注释信息:用户主目录:shell类型
user:x:123:456:xxxxxxxx:/home/user/:/bin/bash

/etc/shadow    #存储当前系统中所有用户的密码信息
用户名:密码    :::::
user:vf;Zu8sdf.... : : : : :

 

10.Linux中用户和用户组的基本命令
用户基本命令:
10.1. useradd 用户名 //添加用户,所在用户组与用户名同名
10.2. useradd -g 组名 用户名 //添加用户,指定其所在的组
10.3. useradd -d 目录 用户名 //添加用户,制定其用户的家目录,没有指定所在组时,默认用户名就为用户组名
10.4. usermod -c 注释信息 用户名 //为指定用户名添加注释
10.5. usermod -l 新用户名 旧用户名 //更改用户名
10.6. usermod -d 目录 用户名 //更改用户个人文件夹的路径
10.7. usermod -g 新用户组 用户名 //更改指定用户的所属组
10.8. userdel 用户名 //删除用户,但是不删除用户个人文件夹里的文件
10.9. userdel -r 用户名 //删除用户并且删除用户个人文件夹里的文件

用户组基本命令:
10.1. groupadd 组名 //添加用户组
10.2. groupadd -g 组编号 组名 //添加用户组并指定组编号
10.3. groupmod -n 新组名 原组名 //更改用户组名称
10.4. groupmod -g 组编号 组名 //更改用户组编号
10.5. groupdel 组名 //删除用户组

只允许root,禁止其他普通账号登录:
在etc目录下创建一个nologin文件(文件内容无关紧要)
touch /etc/nologin

 

11.Linux中用户和用户组进阶命令
passwd 
-l 用户名 #锁定用户,禁用
-u 用户名 #解锁用户
-d 用户名 #清除用户密码,可以无密码登录

主要组和附属组: 

添加附属组:gpasswd -a 用户名 附属组,附属组,.....
创建用户同时指定主要组和附属组: useradd -g group1 -G group2,group3,....

设定组密码: gpasswd 用户组,输入后回车,会有提示让输入密码

用户创建的文件默认为主要组;需要以附属组创建文件的,需将身份切换到附属组
newgrp boss(需要用户登录后,自己执行,切换,组密码是在组切换时用的,如果有会要求输入组密码)

删除附属组:gpasswd -d 用户名 附属组

 

12.Linux中用户管理其他命令
su 用户名 #切换用户,需要用户密码;但root切换其他用户,不需要密码
whoami #显示当前登录用户名
id 用户名 #显示指定用户信息,用户编号、用户名、主要组编号及名称,附属组列表
groups 用户名 #显示用户名、用户所在的所有组(主要组&附属组)
chfn 用户名 #设置用户资料,依次输入用户资料
finger 用户名 #显示用户详细资料

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

陆氪和他的那些代码

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值