通过练习题学习磁盘知识

在很多情况下,看完内容后感觉还是很迷糊,但是当我们做了相关的练习后就感觉思路清晰了很多很多,接下来通过练习来学习磁盘的知识。

习题1、磁盘的作用以及外部结构

1)磁盘的主要作用是存储数据。

2)正面结构:固定面板,产地,容量,日期,转数,品牌,条形码,跳线,电压,透气孔,内六角螺丝。

反面板:绿色控制电路板,上面有芯片,电容,电阻等

侧面:电源接口,跳线,数据接口(ide sata sas scsi)

习题2、磁盘的内部结构

磁盘片:2-14片,每个面都可以存数据

主轴组件:里面有轴承,马达电机

磁头组件:磁头,机械手臂,传动轴

前置控制电路,数据转换器,永久磁铁,步进电机(控制磁头径向移动)

习题3、机械磁盘读写数据的原理

1)磁盘是按照柱面为单位读写数据的,即先读取同一个盘面的某一个磁道,读完之后,如果数据没有读完,磁头也不会切换到其他的磁道,而是选择切换磁头,读取下一个盘面的相同半径的磁道,直到所有盘面的相同半径的磁道读取完成之后,如果数据还没有读写完成,才会切换其他不同半径的磁道,这个切换磁道的过程称为寻道。

2)不同磁头间的切换时电子切换,而不同磁道的切换需要磁头做径向运动,这个径向运动需要步进电机调节,这个动作是机械的切换。

习题4、磁盘相关名词解释

Disk,head,sector,track,cylinder,units,block,inode

disk:磁盘

head:磁头

sector:扇区

track:磁道

cylinder:柱面

units:单元块,一个柱面的大小

block:数据块

iNode:索引节点

习题5、磁盘的分区知识

分区的实质,什么是主分区,扩展分区,逻辑分区

1、分区的实质是设置修改分区表,主要是划分起始以及结束磁头号,及扇区号和柱面号。

2、主分区:磁盘上必须存在的分区,一般为磁盘的第一个分区,我们可以在这个分区上安装操作系统,在一个磁盘上最多有四个主分区。

3、扩展分区不能算一个正常的分区,而是一个连接,起到指向的作用,扩展分区就像一个虚拟出来的一个小磁盘一样,没有MBR,而只有扩展分区表,而且这个分区表没有64bytes的限制,从而可以在扩展分区划分出多个逻辑分区。一个磁盘只能存在一个扩展分区,并且扩展分区不能直接存放数据,扩展分区受限于操作系统。

4、不能在磁盘中单独直接划分逻辑分区,逻辑分区必须在扩展分区内,在扩展分区内可以划分多个逻辑分区,逻辑分区的编号从数字5开始,在这个扩展分区内可以划分多个逻辑分区。

实际应用:主分区和逻辑分区,都可以用,一般系统安装用主分区,存放数据都可以。

习题6、fdisk格式化的实质以及和parted分区命令的工作中使用区别

分区:fdisk(小于2T) parted

实质:设置修改分区表

格式化:实质是:创建文件系统

例如:mkfs  -t  ext4  /dev/sdb1

tune2fs  -c  -1  /dev/sdb1

挂载:实质是:为文件系统指定访问入口

例如:mount  -t  ext4  /dev/sdb1  /mnt

开机自动挂载:/etc/fstab

mount  -a  加载fstab进行挂载测试

检查挂载:

df -h,df  -i

cat  /proc/mounts或mount

parted说明:

Parted是一个磁盘分区管理工具,比fdisk灵活,功能丰富,还支持GUID分区表,在IA64平台上管理磁盘非常有用。同时支持交互模式和非交互模式,除了能够进行分区的添加、删除等操作外,还能移动分区,制作文件系统,调整文件操作大小,复制文件系统。

简单非交互式分区手动输入提示实例:

parted  /dev/sdb   mklabel  gpt

parted  /dev/sdb   mkpart  primary 0 500

parted  /dev/sdb   mkpart  primary 501 1000

parted  /dev/sdb   p

mkfs  -t  ext4  /dev/sdb1   /dev/sdb2

mount  /dev/sdb2  /tmp

习题7、企业不同业务场景的服务器磁盘分区是如何选择的?

常规分区方案:

方案1:集群架构中的某个节点,数据有多份或者不重要的。

/boot  100MB  linux引导程序

swap   物理内存的1.5倍,当内存大于等于8GB时,给8GB即可。

/      剩余硬盘大小

方案2:数据库以及存储有大量重要的数据。

/boot  100MB

swap   物理内存的1.5倍,当内存大于等于8GB时,给8GB即可。

/      50-200GB

/data  剩余硬盘大小,存放数据库以及存储数据。

方案3:门户级别或大网站

/boot   100MB

swap   物理内存的1.5倍,当内存大于等于8GB时,给8GB即可

/       50-200GB

剩余空间保留,不再进行分区,将来分给那个部门就直接给,自己根据需求再继续分,这种方法比较灵活。

注意:linux系统对分区的要求

1)最少要有/以及swap两个分区。

2)Swap(交换分区)的作用:虚拟内存,swap分区的大小等于1.5*物理内存容量,如果内存大于8-16G,那么就用8-16G作为swap即可。

3)建议设置独立的/boot分区

Linux引导分区,存放系统引导文件,例如linux内核,多用文件一般只有几十M,所有一般设置为100-200M

一般服务器分区:/boot  swap  /  三个分区

习题8、什么是文件系统,常见有哪些,工作中如何根据业务选择文件系统?

文件系统是对一个存储设备上的数据和元素进行组织的一种机制。所以说文件系统是基于存储设备的。

Linux下常见文件系统ext2、ext3、ext4、zfs、xfs和reiserfs.

SAS/SATA磁盘文件系统选择:

1)reiserfs.  大量小文件业务首选(100K以内)

2)Xfs      有的门户的数据库mysql业务

3)ext4     视频下载,流媒体,数据库,小文件业务

4)ext2     没有日志,蓝汛的cache业务,CDN网站加速服务的。

常规应用选默认就可以。

假如服务器数量少,怎么选择都可以。

Centos5.x 常规选ext3,Centos6.x 常规选ext4,Centos7.x 常规选xfs

小结:

Centos 默认的文件系统都是比较好的。

Xfs、reiserfs需要单独安装,默认不支持,海量服务器使用多种文件系统维护可能不太方便。

大并发并不是过多的做磁盘系统的优化,而是在架构前端增加缓存,存储数据库的前端增加缓存。

习题9、说出5个以上磁盘管理(分区、格式化、挂载)命令解析

1、fdisk:磁盘分区管理

d : 删除一个分区

l : 列出分区类型

m : 列出帮助信息

n :添加一个分区

P :列出分区表

q : 不保存退出

t : 改变分区类型

w: 把分区表写入磁盘并退出

X : 扩展应用

例如:fdisk  /dev/sda

2、mkfs: 用来在一个设备上构建linux支持的相关文件系统,也可称之为格式化工具。

- t :指定要建立的文件系统类型,如果没有指定,使用默认文件系统类型。

-c : 在构建文件系统之前检查设备块

例如:mkfs  -t ext4  -I  inodesize  -b  blocksize

3、tune2fs :调整文件系统参数。

-l 查看文件系统信息

-c 设置强制自检的挂载次数,如果开启,每挂载一次就会加1,超过次数就会强制自检

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

-j 将ext2文件系统转换成ext3文件系统

4、mount:挂载

-t :指定文件系统的类型

-o:用来描述设备或档案的挂接方式

例如:mount  -t  ext4  -o

5、df :列出文件系统的整体磁盘使用量

df -h 将容量结果以易读的容量格式显示,例如:df -h /etc

df -ih 将目前各个分区当中可用的iNode数量列出来。

6、du : 评估文件系统的磁盘使用量

du  -sm /* 检查根目录下面每个目录所占的容量

7、umount: 卸载文件系统

习题10、如何根据业务需求选购合适类型的磁盘?

线上的业务:用SAS磁盘

线下的业务:用SATA磁盘

线上高并发,小容量的业务:SSD磁盘

运维思想:根据数据的访问热度,智能分析分层存储。

时间: 2024-11-05 06:27:09

通过练习题学习磁盘知识的相关文章

linux 学习基本知识

转自:http://blog.sina.com.cn/s/blog_55465b470100kixw.html 1.linux分区--在linux里面所有的设备.任何东西,在linux看来都是文件.--文件在它看来,有两种形式:  第一种是字符型(键盘输入.打印机):  第二种是二进制型(硬盘.光驱.U盘)--linux中所有硬件--手动分区--A.至少有两个分区  /    根分区  SWAP 交换分区(物理内存大小的两倍)--B.个人桌面分区  /  /boot 128MB is enoug

深入浅出安卓学习相关知识,如何从零学好移动开发

原文发表自我的个人主页,欢迎大家访问 http://purplesword.info/mobile-develop 由于近几年来互联网的飞速发展,安卓和iOS平台的大量普及推广,移动开发在当前是非常热门的一个方向. 有不少同学问我如何学习安卓,要学些什么,难不难学.之前一直没有想好应该怎么回答这个问题,只是简单的说安卓自身门槛不高,并不难学.因为我觉得准确回答一个类似这样的问题往往需要灵感.现在根据我的学习体验,做个大概的总结. 1.我为什么学安卓 我从刚开始接触安卓开发到现在也有两三年的时间了

重新学习操作系统的知识

今天阅读<Outlook 2010 Inside Out>时,上机操作时有几个小发现 win 7 自带截屏工具(360浏览器有,SnagIt更强大) win 7自带便签纸(当然比不上Outlook中的便签,更不能与OneNote比了!) 程序中百宝箱内有ReadyFor4GB.exe可帮助突破32位4G内存的限制(32位win 7支持4G),结合AddBootMenu.cmd搞定4G内存!!!(爽呀!) win 7和xp还是有很多不同的地方,还是端正态度,老老实实地学习下win 7 于是又在购

程序员如何选择学习新知识(转)

想必大家都不是张无忌,人家三十年才可以练成的乾坤大挪移,张无忌大侠两个时辰就可以搞定,作为一个普通的程序员,经常遇到很多新技术和新知识,it界就是这样,日新月异,那么我们如何学习一门技术和新知识呢?下面是我粗浅的几点建议 第一:精通一两门语言 大家都听说过术业有专攻这个词,作为程序员一定要一个立身安命的技术,这个技术可以让你不失业,至少也能混口饭吃的就是需要精通一两门语言,对于你选择的这两门语言是你以后长期饭碗的保障,俗话说:老婆孩子奶粉钱全指望它了,所以对于这个技术,你花再多的时间学习都不可惜

学习新知识的思维

我一直以来给别人的印象是勤奋刻苦的好孩子,但是实际上大多数人都想要别人以为自己是“聪明”的,而不仅仅是“努力”的.自从入职以来,感觉每天都有一大波新知识扑面而来,哦不,是汹涌而来,每次下班都感觉十分疲惫,吃饭时甚至都不想再动脑子思考挑选什么菜了.一起进来的其他两个同事都表现不俗,感觉进步特别快,我一直是在他们的教导下才有所进步的. 刚开始看游戏代码,没有任何头绪,我之前接触到的程序,无非是几个文件,然后只要时间量上去了,总是能看懂的,可是这个游戏代码,太庞大了.无论怎么样,我还是从游戏主循环的那

知道自己是怎样学习新知识和与别人共事的!

我们生活的这个时代充满着前所未有的机会:如果你有雄心,又不乏智慧,那么不管你从何处起步,你都可以沿着自己所选择的道路登上事业的顶峰.但前提是,你必须成为自己的首席执行官,知道何时改变发展道路,并在可能长达50年的职业生涯中不断努力.干出实绩. 要做好这些事情,首先要对自己有深刻的认识,清楚自己的优点和缺点,知道自己是怎样学习新知识和与别人共事的,并且还明白自己的价值观是什么.自己能在哪些方面做出最大贡献.因为只有当所有工作都从自己的长处着眼,你才能真正做到卓尔不群. 今天给大家推荐“现代管理学”

如何去学会黑客技术,黑客电脑技术学习必备知识

或许你并不想成为一个黑客而是好奇,或许你只是为了高超的技术.无论是什么都需要刻苦的去学习,没有什么事情是不付出努力就能轻易成功的,之所以叫成功是因为那个人拥有着与众不同的本领,如果你想拥有超群的本领就要不断的去学习,而学习也要讲究一定的效率.今天inoker的这个开始也正式我作为一个站长所要为他付出的努力,我知道一个人支撑起一个站很难,不过当我撑到不难的时候我知道我的日子会很好过. 先来说说很多朋友们的烦恼,是不是每次进一个论坛或者在百度搜索一篇菜鸟文章都要很费劲的来读,甚至看到几行便没有信心在

怎样开始学习前端知识?

1,学习Web前端的第一块学习内容是学习Html知识,Html是基础.学到最后会发现不光是直接应用html写网页,还是通过后台语言模块化的生成,都需要html的参与. 2.,html已经出h5了,但是鉴于新版本和html4等差别不是那么明显,建议可以先从html4学习,对html有了一个基本的认识之后再来学习H5不同的地方. 3,现代Web开发,已经实现了三足鼎立之势,html负责结构,css负责表现,js负责表现和动态.总结下html,html除了标签之后就是标签自带的一些属性和属性值了.要记

极客标签:用代码回放来愉快地学习前端知识

网 页编程学习的过程中最痛苦的是什么?你看到各种大牛写下的代码和旁边只言片语的说明,但你根本无法理解整套代码是怎样写下来的,大牛写的时候遵循的是什么 样的逻辑.教程放在一个屏幕,然后你自己的编程工具放在另一个屏幕,你在两个屏幕之间切换过来切换过去,浪费了时间浪费了力气. 结果呢?你把大牛的代码复制过来,把自己的项目内容放进去,做出了一个和大牛写的一样的网页,却感觉到自己根本什么都没学到.网页编程,以及所有编程学习中最痛苦的地方在于你试图理解你的学习对象的思路,但常规的教学材料的传播方式生硬,对于