MBR:主引导记录
Master Boot Record
446bytes:BootLoader
64bytes:
每16bytes标识一个主分区,故最多只能标识4个助分区
2bytes:Magic Number
标记MBR是否有效
链接文件:
软链接:相当于创建了快捷方式,保存了源文件路径,链接文件和源文件inode号不相同,删除链接文件,源文件可继续访问,删除源文件,链接文件不可访问。可应用目录,可以跨文件系统,不会增加被链接的次数。其大小为指向的路径包含的字符个数。
示例: [root@localhost backup]# ln -s /backup/abc /backup/test/abc2 [root@localhost backup]# ll total 8 -rw-r--r--. 1 root root 884 Dec 22 21:04 abc drwxr-xr-x. 2 root root 4096 Dec 22 21:06 test [root@localhost backup]# ll test/ total 0 lrwxrwxrwx. 1 root root 11 Dec 22 21:06 abc2 -> /backup/abc
硬链接:类似于复制,链接文件和源文件使用相同的inode号,删除源文件,链接文件还可继续访问。为避免循环硬链接,所以硬链接不可应用于目录,只能应用于文件。也因为源文件和链接文件使用的相同的inode号,所以不可跨文件系统创建。创建硬链接会增加文件会链接的次数。
示例: [root@localhost backup]# ln /backup/abc /backup/test/abc2 [root@localhost backup]# ll total 8 -rw-r--r--. 2 root root 884 Dec 22 21:04 abc drwxr-xr-x. 2 root root 4096 Dec 22 21:05 test [root@localhost backup]# ll test/ total 4 -rw-r--r--. 2 root root 884 Dec 22 21:04 abc2 #创建后abc的链接次数变成了2
语法:
ln [选项] [参数]
命令选项
-b或--backup:删除,覆盖目标文件之前的备份; -d或-F或——directory:建立目录的硬连接; -f或——force:强行建立文件或目录的连接,不论文件或目录是否存在; -i或——interactive:覆盖既有文件之前先询问用户; -n或--no-dereference:把符号连接的目的目录视为一般文件; -s或——symbolic:对源文件建立符号连接,而非硬连接; -S<字尾备份字符串>或--suffix=<字尾备份字符串>:用"-b"参数备份目标文件后,备份文件的字尾会被加上一个备份字符串,预设的备份字符串是符号“~”,用户可通过“-S”参数来改变它; -v或——verbose:显示指令执行过程; -V<备份方式>或--version-control=<备份方式>:用“-b”参数备份目标文件后,备份文件的字尾会被加上一个备份字符串,这个字符串不仅可用“-S”参数变更,当使用“-V”参数<备份方式>指定不同备份方式时,也会产生不同字尾的备份字符串; --help:在线帮助; --version:显示版本信息。
linux设备文件:/dev
c:字符设备,按块为单位,随机访问的设备,常见的有硬盘
b:块设备,按字符为单位,线性设备,常见的有鼠标等
[root@localhost backup]# ll /dev brw-rw----. 1 root disk 7, 6 Dec 13 12:24 loop6 brw-rw----. 1 root disk 7, 7 Dec 13 12:24 loop7 crw-rw----. 1 root lp 6, 0 Dec 13 12:24 lp0 #lp0中的6表示主设备号,标识设备类型 #lp0中的0表示次设备号,标识同一种类型中的不同设备 #系统查找设备的时候就是通过主次设备号来查找
创建设备文件[mknod]:设备的访问入口
语法:mknod [OPTION]... NAME TYPE [MAJOR MINOR]
#创建个字符设备 [root@localhost backup]# mknod mydev c 66 0 [root@localhost backup]# ll mydev crw-r--r--. 1 root root 66, 0 Dec 22 21:21 mydev #创建个权限为644的字符设备 [root@localhost backup]# mknod -m 644 mydev2 c 66 1 [root@localhost backup]# ll mydev2 crw-r--r--. 1 root root 66, 1 Dec 22 21:22 mydev2
#如果使用echo "hello" >> /dev/sda,造成的后果就是会写入/dev/sda磁盘中最开始的位置,则会把MBR给覆盖一部分。非常危险
硬盘标识方法:
IDE,ATA:hd
SATA:sd
SCSI:sd
USB:sd
a,b,c...区别同一种类型下的不同设备。
1,2,3,4....分区编号
/dev/hda1:表示是一块IDE设备的第一块主盘的第一个主分区。
磁盘分区管理:fdisk
-l:查看当前系统有几块磁盘
-l /dev/sda1:查看/dev/sda1的分区信息
fdisk /dev/sdb:管理磁盘分区
p:显示硬盘分区,包括没有改动的分区
n:创建新分区
d:删除一个分区
w:保存退出
q:不保存退出
t:修改分区类型
L:列出分区类型
l:显示所支持的分区类型
在centos5上,分区创建完成后,内核并不能立即识别,因此不能立即格式化。
可通过下面的命令查看内核加载的分区信息
[root@liang-study ~]# cat /proc/partitions major minor #blocks name 252 0 83886080 vda 252 1 204800 vda1 252 2 31457280 vda2 252 3 4194304 vda3 252 4 48028672 vda4 252 16 10485760 vdb [root@liang-study ~]# partprobe #初始化内核分区信息
而centos6上在分区创建完成后,会自动加载到内核中,无需上述操作。
格式化分区 [root@liang-study ~]# mkfs -t ext4 /dev/vdb1 [root@liang-study ~]# mkfs.ext4 /dev/vdb1 mke2fs 1.41.12 (17-May-2010) Filesystem label= #卷标 OS type: Linux #操作系统类型 Block size=4096 (log=2) #块大小为4096字节 Fragment size=4096 (log=2) Stride=0 blocks, Stripe width=0 blocks 655360 inodes, 2621422 blocks #此分区共有655360个inodes,2621422个块。 131071 blocks (5.00%) reserved for the super user #131071个块预留给超级管理员使用,为的是当分区满或者出现故障时,管理员还可使用预留空间修复。 First data block=0 Maximum filesystem blocks=2684354560 80 block groups #共有80个块组 32768 blocks per group, 32768 fragments per group #每个组有32768个块,每个组有32768个片 8192 inodes per group #每个组有8192个inodes Superblock backups stored on blocks: #超级块的备份位置 32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632 Writing inode tables: done #inode tables已经写完 Creating journal (32768 blocks): done Writing superblocks and filesystem accounting information: done This filesystem will be automatically checked every 33 mounts or 180 days, whichever comes first. Use tune2fs -c or -i to override. #文件系统可以挂在,每超过33次,或使用180天会自动检查。
mke2fs:管理ext文件系统命令
-b<区块大小>:指定区块大小,单位为字节; -c;检查是否有损坏的区块,默认为4096,可设置为1024,2048,4096; -t:指定文件系统 -f<不连续区段大小>:指定不连续区段的大小,单位为字节; -F:不管指定的设备为何,强制执行mke2fs; -i<字节>:指定"字节/inode"的比例; -N:指定要建立的inode数目; -l<文件>:从指定的文件中,读取文件西中损坏区块的信息; -L<卷标>:设置文件系统的标签名称; -m<百分比值>:指定给管理员保留区块的比例,预设为5%; -M:记录最后一次挂入的目录; -q:执行时不显示任何信息; -r:指定要建立的ext2文件系统版本; -R=<区块数>:设置磁盘阵列参数; -S:仅写入superblock与group descriptors,而不更改inode able inode bitmap以及block bitmap; -v:执行时显示详细信息; -V:显示版本信息。
创建时指定卷标 [root@liang-study ~]# mke2fs -t ext4 -L mydata /dev/vdb1 mke2fs 1.41.12 (17-May-2010) Filesystem label=mydata 创建时指定块大小为2048 [root@liang-study ~]# mke2fs -t ext4 -b 2048 /dev/vdb1 mke2fs 1.41.12 (17-May-2010) Filesystem label= OS type: Linux Block size=2048 (log=1) Fragment size=2048 (log=1) 指定预留给超级块的百分比 [root@liang-study ~]# mke2fs -t ext4 -m 2 /dev/vdb1 mke2fs 1.41.12 (17-May-2010) Filesystem label= OS type: Linux Block size=4096 (log=2) Fragment size=4096 (log=2) Stride=0 blocks, Stripe width=0 blocks 655360 inodes, 2621422 blocks 52428 blocks (2.00%) reserved for the super user
tune2fs:调整文件系统的属性
-j:不损害原有数据,将ext2升级升ext3或ext4,但不能降级
-L:修改卷标
-m # :调整预留超级块百分比
-c #:指定挂载次数达到#数次,启动磁盘自检,0或-1表示关闭自检
-i #:指定挂载#天,启动磁盘自检。0或-1表示关闭此功能
-l /dev/sdb1:查看分区详细信息
fsck:修复文件系统
-t FSTYPE:指定文件系统类型
-a:不询问自动修复
e2fsck:修复检查ext文件系统类型
-t:指定ext[2|3|4]文件系统
-f:强制检查
-p:自动修复
内存查看
free -m:以M为单位查看内存使用情况
[root@liang-study ~]# free -m total used free shared buffers cached Mem: 1877 487 1390 0 167 203 -/+ buffers/cache: 115 1761 Swap: 4095 0 4095
Mem行:物理内存
Swap行:交换空间
total:物理内存总大小
userd:已使用空间
free:空闲空间
buffers:缓冲空间
cached:缓存空间
-/+buffers/cache:在计算剩余空间时,应该是free+buffers+cached
创建交换分区
在创建交换分区前,要调整分区类型为82
mkswap /dev/sda2
[root@liang-study ~]# mkswap /dev/vdb1 #格式化swap分区 Setting up swapspace version 1, size = 1049292 KiB no label, UUID=73ae7257-edbe-4bf5-9c44-7d241fa60b61 [root@liang-study ~]# swapon /dev/vdb1 #添加到swap分区 [root@liang-study ~]# free -m total used free shared buffers cached Mem: 1877 487 1389 0 167 203 -/+ buffers/cache: 116 1760 Swap: 5120 0 5120
swapoff /dev/vdb1 #关闭swap分区
dd命令:
if=数据源
of=数据存储目标
bs=1 单位大小,字节
count=2 数量
seek=#:创建数据文件时,跳过#空间大小
#备份MBR [root@liang-study ~]# dd if=/dev/vda of=/home/mbr.backup bs=512 count=1 1+0 records in 1+0 records out 512 bytes (512 B) copied, 0.000239124 s, 2.1 MB/s #还原MBR [root@liang-study ~]# dd if=/home/mbr.backup of=/dev/vda bs=512 count=1 #备份映像文件 [root@liang-study ~]# cat /dev/cdrom > /root/centos6.iso
示例:使用dd创建swap分区,当磁盘没有空余分区时,应急使用,但性能很差。
[root@liang-study ~]# dd if=/dev/zero of=/var/swapfile bs=1M count=1024 #生成映像文件 1024+0 records in 1024+0 records out 1073741824 bytes (1.1 GB) copied, 3.3757 s, 318 MB/s [root@liang-study ~]# mkswap /var/swapfile #格式化映像 mkswap: /var/swapfile: warning: don't erase bootbits sectors on whole disk. Use -f to force. Setting up swapspace version 1, size = 1048572 KiB no label, UUID=66183469-ef29-4baa-a5a7-2b0e61cc29c7 [root@liang-study ~]# free -m total used free shared buffers cached Mem: 1877 1542 334 0 167 1228 -/+ buffers/cache: 146 1730 Swap: 5120 0 5120 [root@liang-study ~]# swapon /var/swapfile #启用swap分区 [root@liang-study ~]# free -m total used free shared buffers cached Mem: 1877 1542 334 0 167 1228 -/+ buffers/cache: 146 1730 Swap: 6144 0 6144
/etc/fstab:os初始时自动挂在到文件系统的文件
[root@liang-study ~]# cat /etc/fstab # # /etc/fstab # Created by anaconda on Wed Dec 7 19:01:06 2016 UUID=3eb1488f-2f74-4d4d-a524-47683a4d66dd / ext4 defaults 1 1 UUID=0587b01f-3ddf-4ad4-94ca-7df47ee3f324 /boot ext4 defaults 1 2 UUID=a2ab4d75-b995-42a8-81ad-2b88b6206c19 /home ext4 defaults 1 2 UUID=595255d4-1683-4f28-9681-bfcb9208f658 swap swap defaults 0 0 tmpfs /dev/shm tmpfs defaults 0 0 devpts /dev/pts devpts gid=5,mode=620 0 0 sysfs /sys sysfs defaults 0 0 proc /proc proc defaults 0 0
字段一:要挂在的设备
字段二:挂载点
字段三:挂载文件类型
字段四:挂载选项
字段五:转储频率(每多少天做一次完全备份)
字段六:文件系统检测次序(只有根可以为1,0表示不检查)
mount -a:挂在/etc/fstab中定义的所有文件系统
示例:有时,我们挂载一个目录后,使用完毕,准备卸载挂载,但会提示device is busy。
可以通过fuser来查看是哪个用户在访问,和详细信息。
fuser:验证进程正在使用的文件或套接字文件
-v:查看某文件正在运行的进程
-km 挂载点:终止正在访问此挂载点的所有进程
本文转自 亮公子 51CTO博客,原文链接:http://blog.51cto.com/iyull/1885177