1、创建20G的文件系统,块大小2048,文件系统ext4,卷标TEST,要求此分区开机自动挂载至/tetsing目录,且默认挂载属性为acl
2、创建5G文件系统,卷标HUGE,要求此分区开机自动挂载至/mogdata,文件系统类型ext3
3、写一个脚本,完成如下功能:
利用此前学到的if语句完成
(1) 列出当前系统识别的所有磁盘设备
(2) 如果磁盘数量为1,则显示其磁盘空间信息
否则,显示最后一个磁盘上的空间使用信息。
3、写一个脚本,完成如下功能:
利用此前学到的if语句完成
(1) 让用户输入一个磁盘
(2) 存在,则显示其磁盘空间信息
否则,显示Fool.
1、创建20G的文件系统,块大小2048,文件系统ext4,卷标TEST,要求此分区开机自动挂载至/tetsing目录,且默认挂载属性为acl
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
|
1、显示所有磁盘块及分区信息
[root@localhost scripts]
# fdisk -l /dev/[sh]d[a-z]
2、根据 2610 cylinders 和End 判断能否分区,并确认分区
3、管理分区
[root@localhost scripts]
# fdisk /dev/sdb
n,p, , +20G, w
4、更新内核识别分区表
[root@localhost scripts]
# partx -a /dev/sdb
[root@localhost scripts]
# partx -a /dev/sdb
5、格式化分区
[root@localhost scripts]
# mke2fs -t ext4 -b 2048 -L 'TEST' /dev/sdb2
6、查看默认挂载属性
[root@localhost scripts]
# dumpe2fs -h /dev/sdb2
Default
mount
options: (none)
7、调整默认挂载属性acl
[root@localhost scripts]
# tune2fs -o acl /dev/sdb2
8、查看默认挂载属性
[root@localhost scripts]
# dumpe2fs -h /dev/sdb2
Default
mount
options: acl
##嘿嘿
|
2、创建5G文件系统,卷标HUGE,要求此分区开机自动挂载至/mogdata,文件系统类型ext3
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
37
38
|
1、查看sdb的分区表
[root@localhost scripts]
# kpartx -l /dev/sdb
sdb1 : 0 20980827
/dev/sdb
63
sdb2 : 0 224910
/dev/sdb
20980890
2、破坏分区表
[root@localhost scripts]
# dd if=/dev/zero of=/dev/sdb bs=512 count=1
1+0 records
in
1+0 records out
512 bytes (512 B) copied, 0.00428946 s, 119 kB
/s
[root@localhost scripts]
# kpartx -l /dev/sdb
[root@localhost scripts]
#
3、管理sdb
[root@localhost scripts]
# fdisk /dev/sdb
n,p,1, ,+5G,w
4、让内核重读分区表
[root@localhost scripts]
# partx -a /dev/sdb
5、格式化
[root@localhost scripts]
# mkfs.ext2 -L 'HUGE' /dev/sdb1
[root@localhost scripts]
# tune2fs -O has_journal /dev/sdb1
[root@localhost scripts]
# blkid /dev/sdb1
/dev/sdb1
: LABEL=
"HUGE"
UUID=
"1b4a4a93-20a1-439e-b40b-50989cf21fed"
SEC_TYPE=
"ext2"
TYPE=
"ext3"
6、开机挂载至
/mogdata
1)创建目录
[root@localhost scripts]
# mkdir /mogdata
2)查看是否创建
[root@localhost scripts]
# ls -ld /mogdata
drwxr-xr-x 2 root root 4096 Aug 10 16:29
/mogdata
3)配置fstab
[root@localhost scripts]
# vim + /etc/fstab
UUID=
"1b4a4a93-20a1-439e-b40b-50989cf21fed"
/mogdata
ext4 defaults,
sync
,noatime,nosuid 2 3
2:隔一天备份
3:检测次序
|
3、写一个脚本,完成如下功能:
利用此前学到的if语句完成
(1) 列出当前系统识别的所有磁盘设备
(2) 如果磁盘数量为1,则显示其磁盘空间信息
否则,显示最后一个磁盘上的空间使用信息。
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
37
38
39
40
41
42
43
44
45
46
|
1、写脚本
[root@localhost scripts]
# vim test1.sh
#!/bin/bash
# Version: 0.0.2
# Author: Lcc.org
# Desc: 利用此前学到的if语句完成 (1) 列出当前系统识别的所有磁盘设备(2) 如果磁盘数量为1,则显示其磁盘空间信息 否则,显示最后一个磁盘上的空间使用信息。
# bash弱类型:不用定义,直接赋值.默认为字符型.参与运算隐式转换
diskfile=`
ls
/dev/
[sh]d[a-z]`
COUNT=$(
ls
/dev/
[sh]d[a-z] |
wc
-l)
#数值判断: -eq,-ne,-lt,-le,-gt,-ge
if
[ $COUNT -
eq
1 ]
then
#显示指定设备的状态信息
fdisk
-l $diskfile
#自定义状态返回值:在bash脚本中,一旦遇到exit命令就会终止脚本,退出状态码为exit后的数值。
exit
0
else
#以空白分割,由-n 后#指定的字段作为每行字段的数量
fdisk
-l `
echo
$diskfile |
xargs
-n1 |
tail
-1`
exit
0
fi
2、测试语法(没有信息就是最好的信息)
[root@localhost scripts]
# bash -n test1.sh
3、给予执行权限
[root@localhost scripts]
# chmod a+x test1.sh
4、确认执行结果
[root@localhost scripts]
# ls -ld test1.sh
-rwxr-xr-x 1 root root 450 Aug 10 16:44 test1.sh
5、运行脚本(显示的为最后一个)
[root@localhost scripts]
# ./test1.sh
Disk
/dev/sdb
: 21.5 GB, 21474836480 bytes
255 heads, 63 sectors
/track
, 2610 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: 0xf6885d69
Device Boot Start End Blocks Id System
/dev/sdb1
1 654 5253223+ 83 Linux
|
3、写一个脚本,完成如下功能:
利用此前学到的if语句完成
(1) 让用户输入一个磁盘
(2) 存在,则显示其磁盘空间信息
否则,显示Fool.
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
37
38
39
40
|
1、写脚本
[root@localhost scripts]
# cat test2.sh
#!/bin/bash
# Version: 0.0.3
# Author: Lcc.org
# Desc:.................
read
-t 5 -p
'Enter a special file: '
diskfile
[ ! -n
"$diskfile"
] &&
echo
"あなたははしごそれを取る方法を知っていますか?"
&&
exit
1
if
fdisk
-l |
fgrep
"Disk $diskfile"
&>
/dev/null
then
fdisk
-l $diskfile
exit
0
else
echo
"Vitis vinifera L."
exit
250
fi
2、运行
1)给空白
[root@localhost scripts]
# bash test2.sh
Enter a special
file
: あなたははしごそれを取る方法を知っていますか?
2)不空白,非设备
[root@localhost scripts]
# bash test2.sh
Enter a special
file
: lala
Vitis vinifera L.
3)不空白,设备
[root@localhost scripts]
# bash test2.sh
Enter a special
file
:
/dev/sdb
Disk
/dev/sdb
: 21.5 GB, 21474836480 bytes
255 heads, 63 sectors
/track
, 2610 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: 0xf6885d69
Device Boot Start End Blocks Id System
/dev/sdb1
1 654 5253223+ 83 Linux
|
本文转自 lccnx 51CTO博客,原文链接:http://blog.51cto.com/sonlich/1955194,如需转载请自行联系原作者