1.磁盘的分区
Fidsk 工具 fdisk -l 可以查看分区情况
使用Fdisk 设备名称 创建新的分区
p 显示分区表
n 创建新的分区
d 删除
id 修改id
q 放弃退出
w 保存退出
但是仅仅这样还不够,必须使用partprob来使计算机识别,之后必须进行格式化,使用指令
mkfs -t 文件系统类型 设备名称 ,这样格式化完毕,使用mount 设备名称 挂载点,当然也可以使用永久挂载,vim /etc/fstab
LABEL=/ / ext3 defaults 1 1
2.磁盘配额
2.1磁盘配额主要分为以下步骤:
(1)编辑/etc/fstab 将所要进行磁盘配额的分区进行添加进去.
(2)为了使之生效可以重启也可以执行mount -a
(3)扫描在做磁盘配额的空间上有那些用户使用了多少空间
Quotacheck -a -u -g -v -cSdaf
(4)开始针对用户和组做配额的编辑
edquota -u username
(5)激活配置服务
quotaon 分区文件
(6)修改开机脚本
修改/etc/rc.d/rc.local
2.2磁盘配额脚本例子
#!/bin/bash
#####################################
###step0:echo the disk for account and choose
df -h|tail -2
echo "Please input the partition you want to quota!"
read -p"Notice!Please choose /dev/sda5 or /dev/sda6:" USERPATITION
read -p"Please input the user you want to know(user4 or user5)"USERQUOTA
####################################
###step1:change the file /etc/fstab
if [$USERPARTITION =="/dev/sda5"];then
MOUNTDEV="/mnt/5"
elif[$USERPARTITION =="/dev/sda6"];then
MOUNTDEV="/mnt/6"
else
echo "Sorry,the disk you input is a wrong place,please check again!"
fi
if grep $USERPARTITION /etc/passwd &>~/rubbish;then
echo"Please wait...."
else
echo "I'm Sorry!The user you input is not exists!"
fi
if grep $USERPARTITION /etc/fstab &>~/rubbish;then
sed -i 's&$USERPARTITION'.*&'$USERPARTITION' '$MOUNTDEV' auto defaults,usrquota 0 0&' /etc/fstab &>~/rubbish
else
echo "$USERPARTITION $MOUNTDEV auto defaults,usrquota 0 0 ">>/etc/fstab &>~/rubbish
fi
#####################################
###step2:mount all the devices
mount -a &>~/rubbish
#####################################
###step3:check the quota
quotacheck -augv &>~/rubbish
echo "Please define the diskquota for $USERQUOTA & save the changed file"
edquota -u $USERQUOTA
sleep 2
echo "OK!Thank your coroperation!"
########################################
###step4:quotaon
quotaon $USERPARTITION &>~/rubbish
######################################
###step5:Add the auotorunning task
echo "quotaon $USERPARTITION ">>/etc/rc.d/rc.local
echo"Ok!The quota has been done!"
3.tune2fs工具
tune2fs -j 创建日志
-J 调整日志选项
size= 调整日志大小
device 调整日志的路径到一个地方
-c 调整挂载的次数
-i 调整时间的间隔
-m 调整保留的块的百分比(-m 10不需要加百分号)
-l查看某个分区(但是没有dumpe2fs的详细)
4.虚拟内存
Linux中的swap分区用于模拟物理内存,拟补物理内存的不足.在windows中使用dxdiag可以查看内存的有关情况.在Linux中使用free可以查看物理内存和虚拟内存,同样也可使用top查看内存的信息.
关于增加虚拟内存
a.使用分区
id 82 可以使用fdisk 修改某个分区的id号码称为82就可以了
格式化命令 mkswap /dev/sda8
swapon /dev/sda8这样将虚拟内挂载上
当然以上的修改都是临时的配置,需要修改/etc/fstab
/dev/sda8 swap swap defaults 0 0
init 6
b.使用文件
dd if=/dev/zero(零设备文件,特殊文件,另有一个/dev/null空文件,垃圾桶) of=文件 bs=尺寸 mount=数量
dd if=/dev/zero of=/swapfile bs=1M countt=500
mkswap /swapfile
swapon /swapfile
想要使用永久挂载,还是需要修改文件/etc/fstab
/swapfile swap swap defaults 0 0
5.数据存储
数据存储的特性:1.效率 要求的效率要高一些2.冗余
动态磁盘
(1)简单卷 可以动态的延伸它的尺寸
(2)跨区卷 跨越多个磁盘(一般要求成员2-32个成员) 效率一般,没有冗余能力
(3)带区卷(raid 0卷)(2-32个成员)将数据等分成n份 要求成员的使用空间必须一样的,数据被等分(每一份是64k)同时写入多个成员 效率高 没有冗余
(4)镜像卷 2个成员上50%利用率 有一定的冗余,写的效率一般 读取速度比较快,如果有一个磁盘坏掉了,那么将丢失的删除,删除磁盘,在新添加的硬盘上添加镜像
(5)raid 5卷 要求成员数量3-32 利用率n-1/n 写入慢 读取(正常 快)(不正常 慢) 冗余能力
在linux中主要支持raid 0 1 5 6 10(是raid 1与raid0 合体)
硬件raid raid卡(scsi)代价高昂/dev/sd开头
软raid 一般性能稳定性较为差 /dev/md(multi device)(驱动),使用mdadm命令可以创建Raid磁盘.
6.LVM逻辑卷
lvm(逻辑卷管理器)动态改变分区大小,这样分区的时候就更为灵活了
创建 pvcreate vgcreate lvcreate
查看 pvdisplay vgdisplay lvdisplay
改变的大小,物理卷是没有办法进行扩展的,但是其它的都可以
Vgreduce vgextend lvreduce lvreduce
移除 lvremove vgremove pvremove
7.备份
快照------>>备份(对当时的状态的备份)
针对逻辑卷做快照
pvcreate /dev/sdb{9,10}
vgcreate testvg /dev/sdb{9,10}
lvcreate -L 300M -n testlv testvg
mkfs -t ext3 /dev/testvg/testlv
mount /dev/testvg/testlv /mnt/testlv
在逻辑卷上存放东西,然后做快照
lvcreate -L 10M -s -n snapshotlv /dev/testvg/testlv
mkdir /mnt/snap
mount -o ro dev/testvg/snapshotlv /mnt/snap
在挂载快照的过程中尽量就使用ro模式,尽量改变不要超过快照的大小,否则快照就会崩溃.
做备份
dump -0u(是零) /dev/testvg/snaplv -f /tmp/dump.19
假如数据崩溃,模拟,
umount /mnt/testlv
lvremove /dev/testvg/snaplv
lvremove /dev/testvg/testlv
这样假如说数据崩溃
mkdir abc
restore -r -f /tmp/dump.19
8.压缩 打包
(1)压缩工具
(1.1.1)、 zip
Zip的格式是 zip 参数 压缩包的名称 源文件列表 例如zip f1 *(f1可以加后缀名字,也可以不加,自动添加)
zip -m 删除源文件
-d 压缩包名称 删除的文件
-f压缩包中必须有,才能去更新(没有改变就不更新)
-u压缩包中可以有,如果没有就创建新文件
-r递归,针对目录下的所有文件也同样放进压缩包中
-y对于软连接,只存放软连接,对于连接,并不存放其所指向的文件
-x放在最后,并不包含某些文件
-0 (数字)存储
-1(数字)更快的压缩
-9 更好的压缩
-c 对于压缩包中的每一项做一个说明
-z 对于压缩包的所有文件做说明
-e 加密
****例如****
zip -m f2.zip f3 删除源文件
zip -y f1.zip * -x *.zip(这样凡是zip的就都不再压缩到压缩包中了)
zip -c f9.zip inst*(逐项说明)(.进行结束)
zip -m -e f11.zip inst*(进行加密)
************
(1.1.2)查看压缩包中的内容 unzip
unzip -l 不完整信息
-v详细信息,可以显示压缩比率
-t 判断和测试,主要判断该对象在压缩中是否有破坏和损害
(1.2.1)gzip
Gzip与zip的区别是:zip可以实现一对多,但是gzip只能有一个,gzip中只能存放一个文件)
例如 gzip ins*(可以自动地将源文件删除)
(1.2.2)gunzip 解压缩
(1.3.1)bzip2
bzip使用与gzip基本上差不多同样也是一对一,一个压缩包只能存放一个文件
(2)打包工具
(2.1)打包工具tar
tar无压缩能力 一般联合使用:先打包,然后再压缩
tar 参数 包裹名称 源文件列表
-c 创建
-v 显示详细信息
-f表示这是一个文档------->>>>-cvf(联合使用)
-t 查看 -->>>>tvf(必须联合使用,不能独自使用)
-r追加 -->>rvf(同样需要联合使用)
-u 更新 -->>uvf(同样需要联合使用)
-x 拆包 -->>xvf(同样联合使用)
-C(大写)目录 拆分到的目录
--delete -->>--delete -vf联合使用
注意,包裹名称一定要添加上后缀名称,并不会自动添加上去
例子
tar -cvf f12.tar *
tar -rvf f12 passwd
假如说,想要让一个文件变成0字节
cat /dev/null >passwd,之后更新包裹,tar -uvf f12 passwd
tar -xvf f12 -C 目录 可以指定拆解目录
(2.2)tar +gzip 使用后,包裹名称为:名称 .tar.gz
(2.3)tar+bzip2
tar -jcvf 名称.tar.bz2 源文件列表 (创建)
-jxvf (拆包)
-jtvf (查看)
(2.4)与zip联合使用
tar -zcvf 创建
-zxvf 拆包
-ztvf 查看
例如tar -zxvf f13.tar.gz -C /tmp/qq