linux学习笔记3-管理磁盘文件系统

 


管理磁盘文件系统


使用外部存储设备

linux中的分区与格式化

linux文件系统的维护

ext2/ext3文件系统的高级特性

文件系统的检查

磁盘配额

自动挂载工具automounter


登陆管理工具putty的环境配置


putty设置

入服务器IP,保存当前会话

设置LANG=zh_CN.utf8

date可以看出默认是英文显示的

Thu Nov 6 11:58:33 CST 2008

LANG=zh_CN.utf8将语言设置为中文的

date

putty->change setting-->translation 设置为utf8,putty的编码和服务器的编码是一致的

使用外部存储设备

windows中对外部存储设备的辨认是自动化的,比如A:盘是软盘驱动器.硬盘分区和光盘驱动器都有相应的编号

linux中的外部设备都有相应的设备文件名,不能直接使用,需要挂载.比如:

#mount /dev/fd0 /mnt/floppy

载外部存储设备

/ ----/dev/hda1

|--boot/

|--usr/

|--mnt/

|--floppy/ ----/dev/fd0

|--cdrom/ ----/dev/cdrom

|--home/
|--var/


挂载外部存储设备

载的命令

mount 设备名 挂载点

#mount /dev/fd0 /mnt/floppy

linux中常用的外部设备文件名

/dev/fdN (N=0,1...)

(IDE) /dev/cdrom (/dev/hdX)

光驱(SCSI) /dev/scdN (N=0,1...)

硬盘(IDE) /dev/hdX (X=a,b,c...)

硬盘(SCSI) /dev/sdX (X=a,b,c...)

U /dev/sdX (X=a,b,c...)


mkdir /mnt/cdrom

mount /dev/cdrom /mnt/cdrom

ls /mnt/cdrom

umount /dev/cdrom

eject

eject -t


载硬盘

硬盘是特殊的块设备,需要分区后才能使用

1.分区

2.格式化

3.挂载分区

4.读写挂载点

5.卸载分区

6.演示挂载一个分区


U

UUSB设备,内置USB-SCSI转换接口,所以被认为是SCSI硬盘,默认都划分了一个分区

使用方法:

mkdir /mnt/u

mount /dev/sda1

要事先驱动(内核要支持SCSIUSB接口)

modprobe usb-storage


文件系统类型

文件系统类型选项

mount -t <文件系统类型> 设备挂载点

windows FAT32格式的介质

mount -t vfat /dev/hda2 /mnt/c

mount -t vfat /dev/fd0 /mnt/floppy

windows NTFS格式的介质默认的内核不能辨认,需要重新编译内核

mount -t ntfs /dev/hda3 /mnt/d

据光盘格式:iso9660,udf(可擦写光盘)

mount -t iso9660 /dev/cdrom /mnt/cdrom


载选项

项用来调整对介质的访问效果

mount -o <选项> 设备挂载点

同的文件系统类型具有不同的选项,详情请参考mountmanual帮助

man mount

windows分区常用的挂载选项

ischarset-(设置文件系统的字符编码常用值为gb2312utf8)

mount -t vfat -o iocharset=gb2312 /dev/hda3 /d

mount -t vfat -o uft8 /dev/hda3 /d

用移动介质挂载选项

rw/ro

:读写/只读模式,适用于所有类型,:

mount /dev/fd0 /mnt/floppy -o ro

uid=,gid=

:为挂载点目录指定属主和组身份,:

mount /dev/sdb2 /d -o uid=redhat,gid=redhat

umask=<权限掩码>

:设置挂载点目录的文件权限掩码,:

mount -o uid=redhat,umask=0077 /dev/sdb2 /d


Linux中的分区和格式化工具

分区与格式化原理

/dev/hda

MBR(446byte) 主分区表(64byte) /dev/hda1 /dev/hda2 /dev/hda3

个分区要靠扩展分区

分区表 /dev/hda1 /dev/hda2 /dev/hda3 扩展分区 /dev/hda4[/dev/hda5 /dev/hda6 /dev/hda7]

分区 逻辑分区

式分原理

好区的磁盘,操作无法读取,为了让操作系统内核以识别这个分区,必须要向这个分区预写入一定格式的数据。这个过程就叫格式化。在Linux下叫创建文件系统。

有格式化的分区是不能直接使用的,没有分区的硬盘是不能格式化的



windows/dos分区工具

fdisk

用于dos,windows95/98

partition magic

用于dos,windows95/98/2000/xp

diskpart:

windows2000安装光盘修复控制台

linux分区工具

fdisk

令行工具,各种版本和环境都能用,包含在软件包util-linux

sfdisk

令行工具,各种版本和环境都能用,包含在软件包util-linux

diskdruid

形化分区工具,只能在安装redhat系列版本的时候可以用



fdisk一般使用过程

1.运行命令

fdisk /dev/hdX

fdisk /dev/hdb

2.添加/删除/修改分区

3重新启动计算机

使用Linux中的fdisk分区

fdisk -l /dev/sda

fdisk /dev/sda



使用mkfs创建文件系统

Linux的格式化工具

mkfs – 支持ext2,ext3,vfat,msdos,jfs,rciscrts

1mkfs -t

#mkfs -t ext3 /dev/hdb2

2mkfs.

#mkfs.vfat /dev/sdb3

mke2fs – 支持ext2/ext3文件系统

法:mke2fs [-j]

#mke2fs -j /dev/sdb2



mkswap /dev/sda5

fdisk -l /dev/sda

mkfs.vfat /dev/sda6

mount /dev/sda6 /mnt/d2

df -T



硬盘分区的挂载

挂载命令 – mount

例:#mount /dev/sdb2 /mnt/sd2

卸载命令 – umount

例: #umount /dev/sdb2

写入/etc/fstab

/dev/sdb2 /mnt/sd2 ext3 defaults 0 0


使用卷标挂载

加卷标 – e2label

#e2label /dev/sdb2 test

根据卷标挂载

#mount LABEL=test /mnt/sd2

/etc/fstab

LABLE=test /mnt/ds2 ext3 defaults 0 0


e2label /dev/sda6 test

e2label /dev/sda6


ext2/ext3挂载选项

ro/rw – 只读/读写

exec/noexec – 允许/不允许设备文件

suid,sgid/nosuid,nosgid – 允许/不允许suid,sgid文件

atime/noatime—更新/不更新节的访问时间

async/sync – 异步/同步磁盘I/O

user/nouser—允许/不允许普通用户挂载磁盘,用于/etc/fstab文件中的选项


mount /dev/sda6 /mnt/d2

echo "hi">/mnt/d2/test

mount /dev/sda6 /mnt/d2 -o remount,ro

echo "hi">/mnt/d2/test

文件系统的维护

ext2/ext3文件系统的优化与高级特性

磁盘检查

磁盘配额

动挂载分区


ext2/ext3文件系统的优化与高级特性


df -h

mkdir /mnt/d1

mkdir /mnt/d2

mkfs.ext3 -b 1024 /dev/sda2

mkfs.ext3 -b 1024 /dev/sda6

mkfs.ext3 -b 4096 /dev/sda6

mount /dev/sda2 /mnt/d1

mount /dev/sda6 /mnt/d2

df


mkdir /mnt/d1/dir

mkdir /mnt/d2/dir

echo "hi" >/mnt/d1/dir/test

echo "hi" >/mnt/d2/dir/test

ls -lh /mnt/d[12]

ls -lh /mnt/d[12]/dir/test

du -sh /mnt/d[12]/dir


umount /mnt/d1

umount /mnt/d2

mkfs.ext3 -b 4096 -i 4096 /dev/sda2

mkfs.ext3 -b 4096 -i 8192 /dev/sda6


tune2fs -l /dev/sda2|more

tune2fs -l /dev/sda6|more


留块-为管理员保留的磁盘管理空间,模认为总数据块的5%

mkfs.ext3 -b 4096 -i 8192 -m 2 /dev/sda6

设置保留块的数量点总数的百分比为2%

认是保留5%,如果磁盘空间很大这个保留块将点很大的空间


mkfs.ext3 -b 4096 -i 8192 -m 5 /dev/sda6

tune2fs -l /dev/sda6| grep Reserved

mkfs.ext3 -b 4096 -i 8192 -m 2 /dev/sda6

tune2fs -l /dev/sda6| grep Reserved

df -l


tune2fs—调整ext2/ext3文件系统特性的工具

-l 查看文件文件系统信息

-o 设置强制自检的挂载次数

-i 设置强制自检的间隔时间

-m 保留块的百分比

-j ext2文件系统转换为ext3格式(ext2没有日志功能)


tune2fs -l /dev/sda2

tune2fs -c 2 /dev/sda2将最大自检次数改为2

tune2fs -l /dev/sda2 | grep -i "mount count" 查看自检次数,过滤mount count并忽略大小写

tune2fs -c -1 /dev/sda2 将自检次数改为-1,则永远不自检

tune2fs -l /dev/sda2 | grep -i "mount count"


mount /dev/sda2 /mnt/d1

df -T

cp /etc/services /mnt/d1

ls /mnt/d1

tune2fs -j /dev/sda2 ext2的文件系统转换为ext3

mount /dev/sda2 /mnt/d1

ls /mnt/d1 查看转换后的文件是否存在

df -T

别的方法改变文件系统格式

mount -t ext2 /dev/sda2 /mnt/d1 mount的时候,直接把格式改为ext2

df -T

umount /mnt/d1

tune2fs -l /dev/sda2 | more

umount /dev/sda2

mkfs.ext2 /dev/sda2

tune2fs -l /dev/sda2 | grep features 查看是否有日志功能

mkfs.ext3 /dev/sda2

tune2fs -l /dev/sda2 | grep features 查看是否有日志功能

文件系统检查工具

fsck -检查文件系统数据完整性的工具

法一:fsck -t ext2 /dev/sda2

用法一:fsck.ext2 /dev/sda2

e2fsck 检查ext2/ext3文件系统的工具(危险)


df -T

fsck.ext3 /dev/sda2 手工检查磁盘

more /etc/fstab 查看挂载,如果里有1,2都要自检0不要自检

df

fsck -t ext3 /dev/sda6 另一种自检的写法

fsck.ext3 -y /dev/sda6 自检时,如果有错误,自己修复


使用磁盘配额

磁盘配额作用是限制普通用户使用的磁盘空间,不至于困为个别别人的浪费影响所有人的使用。

要内核支持

ext2/ext3文件系统目当被支持

要用户程序quota软件包


磁盘配额配置过程

使用usrquota,grpquota选项挂载一个分区,激活内核的支持

mount -o usrquota,grpquota /dev/sdb1 /mnt/d1

mount -o remount,usrquota,grpquota /

init 1进入单用户环境

quotacheck -cvuga检查并且创建磁盘配额的数据库文件

cdquota u 为指定用户分配磁盘空间和节点数量

quota命令可以查看用户的配额使用情况



cd /mnt/d1/redhat

2 quota

3 pwd

ls -lh

ls -ld

dd if=/dev/zero of=file1 bs=1k count=1024

quota

dd if=/dev/zero of=file2 bs=1k count=1024

dd if=/dev/zero of=file3 bs=1k count=1024

dd if=/dev/zero of=file4 bs=1k count=1024

quota

ls

df

ls -ld .

touch aa

rm file3

dd if=/dev/zero of=file2 bs=1k count=2048

dd if=/dev/zero of=file1 bs=1k count=2048

quota

ls

echo "hi">test

ls -l

quota

rm *

quit

quota -u redhat编辑用户磁盘配额

repquota

repquota -a

edquota -t修改过期时间

quotaoff /mnt/d1 关闭磁盘配额



fsck failures with unknown UUID's

mount -o remount,rw /重新以可写形式挂载/分区

vi /etc/fstab中删除以前作过格式化的旧的设备再reboot可重新进入系统

blkid /dev/sda1

df -T

df

后手工加上失去的分区,例如:

/dev/sda2 /mnt/d1 ext3 defaults 0 0

/dev/sda6 /mnt/d2 ext3 defaults 0 0


动挂载分区

vi /etc/fstab 永久性支持磁盘配额

/dev/sda1 /mnt/d1 ext3 defaults,usrquota,grpquota 0 0


automounter autofs软件包

:自动挂载访问的分区

配置文件:/etc/auto.master 格式

挂载目录 映射文件 参数

/misc /etc/auto.misc --timeout=60

文件/etc/auto.misc格式

关键字 挂载选项 设备

cd -fstype=iso9660,ro :/dev/cdrom

fd -fstype=auto :/dev/fd0

重新启动autofs服务:#service autofs restart

访问设备的方法:挂载目录+关键字

ls /misc/cd


rpm -ql autofs |more

rpm -q autofs


man 5 autofs是文件格式的帮助

man 8 autofs 管理员的帮助

/usr/sbin/automount 监视

/etc/auto.master 配置文件

/etc/auto.misc配置文件


vi /etc/auto.master

/misc /etc/auto.misc

vi /etc/auto.misc

cd -fstype=iso9660,ro,nosuid,nodev :/dev/cdrom

service autofs restart

more /etc/auto.master 确认auto.master里定义的目录是/misc

more /etc/auto.misc确认auto.msic里定义的关键字是cd

ls /misc/cd

umount /misc/cd

动挂载软驱

vi /etc/auto.misc

floppy -fstype=auto :/dev/fd0

service autofs restart

ls /msic/floppy


建符号连接让所有用户都可以使用

ln -s /msic/cd /cd

ln -s /msic/floppy /fd


的工作目录

vi /etc/auto.master

/misc /etc/auto.misc

/new /etc/auto.new –timeout=60不能定义为己有目录如home

vi /etc/auto.new

cd -fstype=iso9660,ro,nosuid,nodev :/dev/cdrom


ls /new/cd

动挂载远程的网络文件系统NFS

mount 10.0.0.1:/var/ftp/pub /mnt

vi /etc/auto.misc

pub -ro,soft 10.0.0.1:/var/ftp/pub


果挂载不上,可以查看日志信息tail /var/log/messages

以用手工先挂载再自动挂载

载网上邻居

SNBFS

vi /etc/auto.misc

win -fstype=smbfs,username=redhat%123 ://win2000/c

你可能感兴趣的:(linux)