Linux常用的基本命令10

fdisk
作用:查看与管理磁盘
常用选项:
    -l 列出所有安装的磁盘及分区信息
用法:fdisk [选项] 设备
            m 帮助命令
            n 新建一个分区
            d 删除一个分区
            p 查看当前分区信息
            t 更改分区类型
            L 选择分区类型
            w 保存
            q 退出
实例:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
[root@jacken /]# fdisk /dev/sda
WARNING: DOS-compatible mode is deprecated. It's strongly recommended to
         switch off the mode (command 'c') and change display units to
         sectors (command 'u').
Command (m for help): n
First cylinder (6929-145032, default 6929): 
Using default value 6929
Last cylinder, +cylinders or +size{K,M,G} (6929-145032, default 145032): +2G
Command (m for help): p
Disk /dev/sda: 1192.9 GB, 1192927166464 bytes
255 heads, 63 sectors/track, 145031 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x000617f2
   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1          39      307200   83  Linux
Partition 1 does not end on cylinder boundary.
/dev/sda2              39        3991    31744000   83  Linux
/dev/sda3            3991        6668    21504000   83  Linux
/dev/sda4            6668      145032  1111411712    5  Extended
/dev/sda5            6668        6929     2097152   82  Linux swap / Solaris
/dev/sda6            6929        7190     2098219+  83  Linux
Command (m for help): w
The partition table has been altered!
Calling ioctl() to re-read partition table.
WARNING: Re-reading the partition table failed with error 16: Device or resource busy.
The kernel still uses the old table. The new table will be used at
the next reboot or after you run partprobe(8) or kpartx(8)
Syncing disks.
[root@jacken /]
新建立分区后最好重启一下

mkfs
作用:格式化分区
常用选项:
    -t 指定分区类型(默认是ext2)
    -L 建立label
注释:mkfs -t ext3 = mkfs.ext3 
      mkfs -t ext4 = mkfs.ext4 
实例:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
[root@jacken ~]# mkfs.ext4 /dev/sda6
mke2fs 1.41.12 (17-May-2010)
warning: 266 blocks unused.
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
131328 inodes, 524288 blocks
26227 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=536870912
16 block groups
32768 blocks per group, 32768 fragments per group
8208 inodes per group
Superblock backups stored on blocks: 
    32768, 98304, 163840, 229376, 294912
Writing inode tables: done                            
Creating journal (16384 blocks): done
Writing superblocks and filesystem accounting information: done
This filesystem will be automatically checked every 36 mounts or
180 days, whichever comes first.  Use tune2fs -c or -i to override.
[root@jacken ~]# mount /dev/sda6 /mnt
[root@jacken ~]# df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/sda2        30G  3.6G   25G  13% /
tmpfs           495M     0  495M   0% /dev/shm
/dev/sda1       291M   34M  242M  13% /boot
/dev/sda3        21G  172M   19G   1% /home
/dev/sda6       2.0G   67M  1.9G   4% /mnt
[root@jacken ~]#

mount 
作用:挂载一个分区
注释:格式 mount [-t vfstype] [-o options] device dir
mount 可以查看已经挂载分区的信息(类型,挂载选项)
mount -a
可以挂载所有/etc/fatsb中的挂载列表
常用选项:
    -t    指定文件系统的类型,通常不必指定mount 会自动选择正确的类型
        iso9660        光盘或者光盘镜像
        msdos        DOS fat16文件系统
        vfat        Windows 9x fat32文件系统
        ntfs        Windows NT ntfs文件系统
        nfs            UNIX(LINUX) 文件网络共享
        cifs        samba共享系统类型
    -o 主要用来描述设备或档案的挂接方式。常用的参数有:
        loop    用来把一个文件当成硬盘分区挂接上系统
        ro    采用只读方式挂接设备
        rw    采用读写方式挂接设备
        iocharset    指定访问文件系统所用字符集
    derive  要挂载的设备(路径)
    dir 挂载点
umoun是卸载,可以卸载挂载点,也可以卸载挂载设备
如:mount /dev/sda5 /mnt
    umout /mnt
或    umout /dev/sda5
当卸载某一文件系统时,当前目录不能在文件系统中。 

mke2fs
作用:建立ext2文件系统
常用选项:
    -t 指定创建分区的类型
    -L 设置文件系统的标签名称
    -m 指定给管理员保留区块的比例,预设5%
    -b 指定区块大小,单位为字节
实例:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
[root@jacken ~]# mke2fs -b 4096  -t ext3 -m 10 -L hi /dev/sda6
mke2fs 1.41.12 (17-May-2010)
warning: 266 blocks unused.
Filesystem label=hi
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
131328 inodes, 524288 blocks
52455 blocks (10.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=536870912
16 block groups
32768 blocks per group, 32768 fragments per group
8208 inodes per group
Superblock backups stored on blocks: 
    32768, 98304, 163840, 229376, 294912
Writing inode tables: done                            
Creating journal (16384 blocks): done
Writing superblocks and filesystem accounting information: done
This filesystem will be automatically checked every 23 mounts or
180 days, whichever comes first.  Use tune2fs -c or -i to override.
[root@jacken ~]# mount /dev/sda6 /mnt
[root@jacken ~]# df -T /dev/sda6
Filesystem     Type 1K-blocks  Used Available Use% Mounted on
/dev/sda6      ext3   2064144 68676   1785648   4% /mnt
[root@jacken ~]# mount -l
/dev/sda2 on / type ext4 (rw)
proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw)
devpts on /dev/pts type devpts (rw,gid=5,mode=620)
tmpfs on /dev/shm type tmpfs (rw,rootcontext="system_u:object_r:tmpfs_t:s0")
/dev/sda1 on /boot type ext4 (rw)
/dev/sda3 on /home type ext4 (rw)
none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw)
/dev/sda6 on /mnt type ext3 (rw) [hi]

free
作用:查看内存及交换分区情况
常用选项:
    -b  以Byte为单位显示内存使用情况
    -k  以KB为单位显示内存使用情况
    -m  以MB为单位显示内存使用情况
实例:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
[root@jacken ~]# free 
             total       used       free     shared    buffers     cached
Mem:       1012352     178908     833444          0      21224      52824
-/+ buffers/cache:     104860     907492
Swap:      2097144          0    2097144
[root@jacken ~]# free -k
             total       used       free     shared    buffers     cached
Mem:       1012352     178908     833444          0      21224      52824
-/+ buffers/cache:     104860     907492
Swap:      2097144          0    2097144
[root@jacken ~]# free -m
             total       used       free     shared    buffers     cached
Mem:           988        174        813          0         20         51
-/+ buffers/cache:        102        886
Swap:         2047          0       2047
[root@jacken ~]#


mkswap
作用:用于设置交换分区
常用选项:
    -c   建立交换区前,先检查是否有损坏的区块。
    -f   在SPARC电脑上建立交换区时,要加上此参数。
    -v0   建立旧式交换区,此为预设值。
    -v1   建立新式交换区。
    [交换区大小]   指定交换区的大小,单位为1024字节。
swapon  启用指定的交换分区(可以是分区或文件)
swapoff 禁用指定的用交换分区(可以是分区或文件)
实例:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
[root@jacken ~]# free -m
             total       used       free     shared    buffers     cached
Mem:           988        120        868          0          6         12
-/+ buffers/cache:        101        887
Swap:         2047          0       2047
[root@jacken ~]# mkswap -c /dev/sda6
Setting up swapspace version 1, size = 2098212 KiB
no label, UUID=cf4f2197-1f4c-40f9-aa49-22a7430e6bd3
[root@jacken ~]# swapon /dev/sda6 
[root@jacken ~]# free -m
             total       used       free     shared    buffers     cached
Mem:           988        118        870          0          6          9
-/+ buffers/cache:        102        886
Swap:         4097          0       4097
[root@jacken ~]# swapoff /dev/sda6 
[root@jacken ~]# free -m
             total       used       free     shared    buffers     cached
Mem:           988        117        871          0          6          9
-/+ buffers/cache:        101        887
Swap:         2047          0       2047
[root@jacken ~]#

dd  
作用:创建一定大小的文件
注释:创建一个文件后,不能写入内容,否则文件大小变为实际存储内容的大小
dd if
实例:
创建一个大小为50M的文件,并添加为交换分区

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
[root@jacken ~]# dd if=/dev/zero of=/tmp/file bs=1M count=50
50+0 records in
50+0 records out
52428800 bytes (52 MB) copied, 0.0439777 s, 1.2 GB/s
[root@jacken ~]# du -sh /tmp/file 
50M    /tmp/file
[root@jacken ~]# free -m
             total       used       free     shared    buffers     cached
Mem:           988        225        763          0          6        115
-/+ buffers/cache:        103        885
Swap:         2047          0       2047
[root@jacken ~]# swapon /tmp/file 
[root@jacken ~]# free -m
             total       used       free     shared    buffers     cached
Mem:           988        225        763          0          6        115
-/+ buffers/cache:        103        885
Swap:         2097          0       2097
[root@jacken ~]#

这种添加交换分区只是临时生效,重启后将失效;
永久生效,在/etc/fstab中添加如下一行即可
/tmp/file  swap  swap default 0  0 
swapon -s 查看交换分区组成信息

e2label
作用:查看或设置分区的卷标

1
2
3
4
5
6
7
8
[root@jacken ~]# e2label /dev/sda1
[root@jacken ~]# e2label /dev/sda1 boot
[root@jacken ~]# e2label /dev/sda1
boot
[root@jacken ~]# e2label /dev/sda1 boot2
[root@jacken ~]# e2label /dev/sda1
boot2
[root@jacken ~]#

fsck
作用:检查和修复磁盘分区错误
注释:当修复某一磁盘或分区的时候,要处于非挂载状态。
常用选项:
    -a 自动修复文件系统,不询问任何问题。
    -A 依照/etc/fstab配置文件的内容,检查文件内所列的全部文件系统。
    -N 不执行指令,仅列出实际执行会进行的动作
    -r 采用互动模式,在执行修复时询问问题,让用户得以确认并决定处理方式
    -s 依序执行检查作业,而非同时执行
    -t<文件系统类型> 指定要检查的文件系统类型
    -o f 对系统进行强制检查,不论系统是否在clean等状态
    -o p 非交互式检查并修复文件系统,对有的问题则立即退出
    -c 表示以只读方式检查并修复文件系统,剔除损坏的部分
实例:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
[root@jacken ~]# df
Filesystem     1K-blocks    Used Available Use% Mounted on
/dev/sda2       31245232 3818244  25839788  13% /
tmpfs             506176       0    506176   0% /dev/shm
/dev/sda3       21165948  176096  19914652   1% /home
/dev/sr0         4363088 4363088         0 100% /mnt
/dev/sda1         297485   34609    247516  13% /boot
/dev/sda6        2064144   68608   1890628   4% /test
[root@jacken ~]# fsck -a /dev/sda6
fsck from util-linux-ng 2.17.2
/dev/sda6 is mounted.
e2fsck: Cannot continue, aborting.
[root@jacken ~]# umount /test
[root@jacken ~]# fsck -a /dev/sda6
fsck from util-linux-ng 2.17.2
hi: clean, 11/131328 files, 25404/524288 blocks
[root@jacken ~]# echo $?
0
[root@jacken ~]#

本文转自Jacken_yang 51CTO博客,原文链接:http://blog.51cto.com/linuxnote/1635816,如需转载请自行联系原作者
上一篇:php程序员应具有的7种能力


下一篇:Ubuntu20.04换源之后依旧慢?如何更有效的换源