Linux——基本命令介绍(3)

时间:2024-05-21 14:03:54

一、vi/vim编辑器:vim比vi多了彩色和多窗口显示等功能。

1)       普通模式:用vim打开一个文档后,直接见到的就是普通模式,在该模式下,用户可以通过“←↑↓→”按键来移动光标,可以删除字符或删除整行,也可以复制和粘贴数据。

u 复制一行-yy;

u 复制多行-nyy(n为数字,是要复制的行数);

u 粘贴-p(粘贴到光标所在行的下一行);

u 删除一行-dd;

u 删除多行-ndd(n为数字,是要复制的行数);

u 撤销-u;

2)       编辑模式:在普通模式中可以进行删除、复制、粘贴等操作,但是却无法向文档中输入字符。此时按下字母“i”、“I”、“o”、“O”、“a”、“A”、“r”或“R”,编辑器将从普通模式转入编辑模式,同时在屏幕左下方会出现“INSERT”或“REPLACE”的字样,此时才可以向文档中输入字符。在整个输入过程结束后,按“Esc”键,即可返回普通模式,此时光标将处于刚才输入的最后一个字符的位置。

3)       命令模式:在普通模式中,输入“:”、“/”或“?”,编辑器将从普通模式转入命令模式,此时屏幕左下角将出现“:”、“/”或“?”的标志。在命令模式中,用户可以完成搜索、替换、高亮显示、行号显示、保存、退出甚至执行shell 指令等操作。

u 显示行号-set nu;

u 存盘-w;

u 退出-q;

u 存盘退出-wq;

u 不存盘强制退出-q!;

①   vi /etc/inittab

②   vi /home/rjxy/ceshi

a)   在普通模式下按“i”进入编辑模式,输入文字

123

234

345

456

b)   按“Esc”退出编辑模式,进入普通模式

c)   复制并粘贴1行;

d)   复制并粘贴多行;

e)   删除当前行;

f)   删除多行;

【注意】如果编辑过程中用ctrl+z组合,则vi编辑器会转入后台,此时可以用“ps”命令查看进程的PID号(ps -u),并用“kill”杀掉vi进程(kill -9 PID),同时删除交换文件“.ceshi.swp”,此文件为隐藏文件,可用“ls -a”查看到。

 

二、分区

1.  分区知识

1)   不同的操作系统原则上采用不同的文件系统;

若操作系统支持相同的文件格式,为了避免同一个分区下有相同的系统目录——不同的操作系统要安装在不同的磁盘分区

2)   一个硬盘最多只能有4个主分区(1个扩展分区相当于1个主分区);

扩展分区最多1个,逻辑分区可以有多个,但逻辑分区最多不超过12个,扩展分区相当于逻辑分区的容器;

3)   分区操作不能产生任何文件系统,只是保留了磁盘空间,要使用必须格式化来创建文件系统

windows→format;

Linux→mkfs;

2.  查看磁盘或目录的情况

1)   df:用于显示指定磁盘的文件可用空间。如果没有指定文件名,则所有当前被挂载的文件系统的可用空间将被显示。

语法:df 【选项】 【文件】

u -a:全部文件系统列表

u -h:以常用容量单位显示

u -i:显示inode信息

u -k:区块为1K字节

u -l:只显示本地文件系统

u -m:区块为1M字节

u -T:显示文件系统类型

u --block-size=<区块大小>:指定区块大小,单位为B

u -t<文件系统类型>:只显示指定文件系统的磁盘信息

u -x<文件系统类型>:不显示指定文件系统的磁盘信息

①   df

②   df –h                      #以常用容量单位显示目前磁盘空间使用情况

③   df –m                      #指定区块大小为1M

④   df –T                      #显示文件系统类型

⑤   df –t ext4                 #显示类型为ext4的分区

⑥   df –i                      #显示inode信息(文件个数)

⑦   df --block-size 1024        #指定区块大小为1K(1024B)

2)       du:显示文件和目录的磁盘使用空间。

语法:du 【选项】 【文件】

u -a或-all:每个指定文件显示磁盘使用情况,或者为目录中每个文件和子目录显示各自磁盘使用情况

u -b或-byte:显示目录或文件大小时,以byte 为单位

u -c或--total:除了显示个别目录或文件的大小外,同时也显示所有目录或文件的总和

u -k或--kilobytes:以KB(1024bytes)为单位输出

u -m或--megabytes:以MB 为单位输出

①   touch w

mkdir m

mkdir m/n

mkdir m/n/q                

touch m/b m/cm/d m/n/x     #在当前目录下创建文件w和目录m,并在目录m中创建文件b、c、d和子目录n,在子目录n中再创建文件x和子目录q

②   du m                        #显示目录m及所有子目录的磁盘使用情况

③   du –a m                    #显示目录m及目录m中的所有文件和子目录的磁盘使用情况

④   du –b m                    #显示目录m和所有子目录的使用情况,结果以byte为单位显示

⑤   du w                        #显示文件w的磁盘使用情况

3.  使用fdisk进行硬盘分区(fdisk命令,使用传统问答式界面,把磁盘化成若干个分区,并为每个系统指定文件系统)

1)   进入fdisk界面,列出所有命令

fdisk /dev/sda     

2)   显示硬盘分区信息

command(m for help):p

【显示结果】

255heads,63sectors/track,1044cylinders

units =  cylinders of 16065×512 = 8225280 bytes(其中的16065×512表示heads×sectors,每个sectors容量为512byte

Device

Boot

Start

End

Blocks

Id

System

设备名

引导分区

开始柱面

结束柱面

分区容量,有时候会显示一个加号“+”,表示block的数量不是整数,可能还有小数

分区系统编号

分区系统类型

【其中】blocks=(End -  Start)×Units/1024×1024       #单位为MB

3)   创建和删除主分区

①   创建主分区

command(m for help): n            #创建

command action

e   extended            #创建扩展分区

p   primarypartition(1-4)        #创建主分区

【注意】若选p→选1,提示分区1已经定义,即分区1已经存在,

        若重新选择n→p→3,则提示“First cylinder(893-1044,default 893)”,表示此时可以创建分区3,需要我们分配分区3的开始和结束柱面,此事可以直接回车用默认开始柱面,也可以输入数字指定开始柱面。若直接回车,则显示如下结果:

Linux——基本命令介绍(3)

此时可以输入结束柱面,注意结束柱面不能超过最大值,直接回车则是默认最大值。

输入结束柱面后,新分区即创建成功,可用“p”查看

②   删除主分区:

command(m for help): d            #删除

partition number (1-4):3          #删除分区3

command(m for help): p            #查看结果

【注意】千万不要删除sda1和sda2!!!

4)   创建和删除扩展分区和逻辑分区

①   创建扩展分区

Linux——基本命令介绍(3)

②   创建逻辑分区

Linux——基本命令介绍(3)

 Linux——基本命令介绍(3)

【注意】结束扇区输入“+200M”,表示空间大小为200M,此时前面一定要加上“+”,并且M为大写!

【类似地】+10,+100K可以自己实验看看

③   查看当前分区

command(m for help): p

④   删除扩展分区和逻辑分区

command(m for help): d

partition number (1-6):3          #删除整个扩展分区,包括逻辑分区,也可以分别删除分区5和分区6

5)   查看并转换分区类型

①   command(m for help): l            #查看分区类型

②   command(m for help): t            #转换分区类型

Linux——基本命令介绍(3)

③   command(m for help): p            #查看结果

【注意】c表示FAT32格式,83为Linux,82为Linux Swap,5为Extend

6)   存盘退出

command(m for help): w            #保存并退出

command(m for help): q            #不保存直接退出

 

三、格式化(创建文件系统)

1.  查看支持的文件系统类型

ll /lib/modules/2.6……/kernel/fs

2.  创建文件系统(格式化)

【注意】要正常使用一个文件系统存放数据的步骤

u fdisk   创建分区

u mkfs    格式化(创建文件系统)

u mount   临时挂载文件系统(一旦关机或者重启,挂载失效),或是修改/etc/fstab文件,开机后自动挂载文件系统

【示例】开机自动挂载文件系统,需要在/etc/fstab中加入一行内容

/dev/sda5

/mount/aa

ext3

defaults

0

0

设备名

挂载点

文件系统格式

挂载参数

转存选项,若为0,表示不备份

系统检查选项,若为0,表示不检查

u umount  卸载文件系统

1)   创建文件系统:mkfs -t

①   查看分区情况

fdisk -l /dev/sda

②   查看分区类型

parted→p

③   格式化/dev/sda5为ext3分区

mkfs -t ext3 /dev/sda5

【注意】用fdisk建立分区后,需要使用partx -a /dev/sda命令刷新分区表,找到新分区后才能用mkfs格式化!否则提示找不到该分区!

该命令需要多使用几次,直到刷新出新分区。

如果刷新多次后依然显示不出新分区,则需要重启Linux操作系统。

    partx -a /dev/sda

④   可以把sda5格式化成其他文件系统

l mkfs -text2 /dev/sda5

l mkfs.ext3/dev/sda5

l mkfs.ext2/dev/sda5

2)   挂载和卸载文件系统

①   把/dev/sda5挂载到/mnt/kk目录

mkdir /mnt/kk

mount /dev/sda5 /mnt/kk

df                          #查看所有的挂载信息

ls /mnt/kk                  #查看挂载的目录

②   以只读方式挂载/dev/sda5到/mnt/kk

mount -o ro /dev/sda5 /mnt/kk           #提示/dev/sda5已经挂载,需要先卸载

umount /dev/sda5                        #卸载

mount -o ro /dev/sda5 /mnt/kk

mkdir /mnt/kk/a                         #报错,因为/dev/sda5是只读的

③   查看分区挂载情况

mount –s           #查看所有已经挂载的分区情况

cat /etc/mtab

3.  使用交换空间(swap)

1)   添加交换分区

①   用fdisk创建交换分区

fdisk /dev/sda

n→p→4

②   partx -a /dev/sda               #更新分区信息

③   mkswap /dev/sda4            #把该分区格式化为交换分区

④   查看当前交换分区大小

free                #看最后一行

⑤   立即启用新加入的交换分区

swapon /dev/sda5

free                #和③的结果作对比

⑥   若要系统启动时自动挂载新交换分区,则需要在/etc/fstab中加入一行内容

/dev/sda3

swap

swap

defaults

0

0

设备名

挂载点

文件系统格式

挂载参数

转存选项,若为0,表示不备份

系统检查选项,若为0,表示不检查

【注意】修改/etc/fstab时千万不要改动其他分区的信息,否则可能可能造成系统不能启动!!!!!

2)   删除交换分区

①   关闭交换分区

swapoff /dev/sda4

②   从/etc/fstab中删除该项目

③   使用fdisk删除该分区

fdisk /dev/sda