精华内容
下载资源
问答
  • Dell PERC使用示例列表(H710p)特别说明,本文相关RAID的操作,仅供网友在测试环境里学习和理解戴尔PowerEdge服务器RAID控制的功能和使用方法。切勿直接在生产服务器上做相关实验,这可能有误操作并造成数据丢失的...

    Dell PERC使用示例列表(H710p)

    5545.r620.PNG

    特别说明,本文相关RAID的操作,仅供网友在测试环境里学习和理解戴尔PowerEdge服务器RAID控制卡的功能和使用方法。切勿直接在生产服务器上做相关实验,这可能有误操作并造成数据丢失的风险!

    示例演示环境:PowerEdge R620 + H710p Raid控制卡  + 9 x 300G 10k SAS 硬盘

    PERC卡的基本使用技巧

    戴尔PowerEdge服务器RAID控制卡的配置,可以使用戴尔提供的多种工具和界面来进行。其中包括H710p板载的PERC BIOS管理界面,生命周期控制器,系统设置,以及OMSA软件等。下面针对不同的使用目的,我们选取推荐的配置工具和界面给大家做个演示。

    默认情况下,我们可以使用PERC H710p的板载固化配置管理界面进行大多数的功能配置。如果需要重新初始化RAID卡里硬盘的RAID配置信息,我们可以进行下面步骤:

    注:下面PERC卡RAID配置信息初始化的演示,我们将清除PERC卡的磁盘阵列信息,但不清除磁盘上实际存放的用户数据。在后面的实验里,我们将演示在原有的硬盘上创建同样的RAID配置,来恢复硬盘上的用户数据。

    1. 服务器开机,系统自检,加载到PERC卡自检界面的时候,按进入PERC BIOS管理界面

    4810.1_2D00_Server-POST.bmp

    这里,PERC已经创建好了两个RAID阵列:RAID1(Disk ID=0,1),RAID10(Disk ID=2,3,4,5)

    7026.2_2D00_initial-config.bmp

    8255.2_2D00_1-initial-config.bmp

    下面,我们将清除PERC卡阵列信息,为重新初始配置所有的硬盘做准备

    2. 高亮选中需要管理的PERC卡,按F2,选择弹出菜单里的“Clear Config”

    0218.3_2D00_1-clear-config.bmp

    3. 在告警提示窗口里选择“YES”确认

    4274.3_2D00_2-clear-config-warning.bmp

    4. PERC卡磁盘阵列信息清除成功,查看磁盘列表,各个磁盘状态已经变为“Ready”,为后面的配置演示做好了准备

    注:我们到这步,只清除了RAID的配置信息,没有清除硬盘上的用户数据

    0184.3_2D00_3-clear-config-done.bmp

    小结, end。

    ___________________________________________________________________________________

    前一页,我们清除了PERC卡原有的配置信息,硬盘上的用户数据并没有被初始化掉。下面,我们就还有机会可以创建回和原来一样的RAID配置(RAID1+RAID10),并恢复回原有的用户数据。我们来示范一下(除非故障原因,不建议管理员在生产服务器上做类似的测试)。

    1.先检查确认硬盘都处于“Ready”状态,高亮选中需要配置的PERC卡,按F2,在弹出菜单里选择“Create New VD”来创建新阵列(这里称为VD: Virtual Disk)

    7824.4_2D00_1-create-VD.bmp

    2. 我们先创建第一个RAID1阵列:在“RAID Level”里选择“RAID-1”,然后在它下面的物理磁盘列表里,选择头两个硬盘(Disk ID=0, 1)做RAID1。我们注意到:我们使用的是2个300Gb的硬盘做RAID1,生成的VD Size还是278.87GB,即一块硬盘左右的空间大小。保留默认的条带与缓存设置,选择OK

    5047.4_2D00_2-create-VD-RAID1.bmp

    3. 系统提示,如果是新创建的RAID阵列,建议在创建后做一次阵列的初始化,这样硬盘上已经存有的用户数据也将会被干净地清除。本示例我们只是想恢复原来清除的RAID配置信息,所以选择OK,接受提示就可以了。如果想做用户数据的清除,请查看RAID阵列的初始化与管理。

    7522.4_2D00_3-create-VD-RAID1-warning.bmp

    4. 这样我们就使用和原来一样的两个硬盘ID=00,01,创建好了与原先一样的RAID1阵列。

    5432.4_2D00_4-create-VD-RAID1-done.bmp

    5. 同样方法,使用原先一样的4块硬盘(Disk ID=2,3,4,5)创建RAID10

    0647.4_2D00_5-create-2nd-VD.bmp

    2185.4_2D00_6-create-raid10.bmp

    8171.4_2D00_7-create-raid10-warning.bmp

    6. 这样,原先清除的两个磁盘阵列又被创建回来了。

    注:清除PERC卡阵列配置信息后,可以使用同样的磁盘,创建同样的磁盘阵列。如果没有做阵列初始化的话,磁盘上的用户数据还是存在的。本例中,服务器原先安装好的Windows 2008操作系统还保存在硬盘上,马上我们就可以服务器重启,进入操作系统。

    6204.4_2D00_8-create-raid10-done.bmp

    小结, end。

    ___________________________________________________________________________________

    如果我们创建RAID阵列的目的是新部署一台服务器,我们建议所有新创建的RAID阵列都应该做初始化操作,这样,硬盘上原有的用户数据将被清除,以便进行后续的系统,软件安装。

    1. 我们临时创建了一个新的RAID1阵列,如图(Disk Group:1;Virtual Disks ID:2),选中该阵列,按F2,在弹出菜单里选择Initialization

    1121.7_2D00_1-VD-initialize.bmp

    2. 选择Start Init将进入阵列初始化,当然,Stop Init可以将初始化过程停止。屏幕右上方可以看到初始化的进度百分比。用户需要等待初始化进程结束,才可以开始使用该阵列。

    8345.7_2D00_2-VD-initialize-start.bmp

    3. 我们也可以选择Fast Init,我们进入的是后台的阵列初始化过程。这个过程在后台自动进行,对用户是透明的,用户可以重启服务器,可以马上开始使用阵列安装系统及软件。初始化的进程在服务器开机状态下,会继续完成所需的初始化步骤,直至结束。

    4. 在阵列初始化结束后,我们还可以对阵列进行检查,这经常是在出现硬件或磁盘告警的时候,确保RAID的完整。

    5417.7_2D00_4-VD-consistency-check.bmp

    5. 当然,还有删除阵列,如图,就不细说了

    7776.7_2D00_5-VD-delete.bmp

    小结, end。

    ___________________________________________________________________________________

    b83ae164f8eaf36a2897363ac3399707.png

    小结, end。

    ___________________________________________________________________________________

    下面的示例如图,我们已经做好两个RAID阵列,RAID1 和RAID10。ID=06的硬盘已经设成RAID10专享热备硬盘。我们希望将空闲硬盘ID=07设置成全局热备硬盘。这样,在RAID1或者RAID10阵列里出现硬盘故障的时候,该热备硬盘都将自动进行数据重建,并加入到相应的阵列里。

    1817.5_2D00_3-manage-ded.-HS-done.bmp

    1. 按CTRL+N切换到PD Mgnt(物理硬盘管理)界面上,我们看到ID=06的专享热备硬盘状态已经是Hotspare了

    4300.6_2D00_1-make-global-HS.bmp

    2.高亮选中ID=07的空闲硬盘,按F2,弹出菜单里选择Make Global HS

    1832.6_2D00_2-make-global-HS-HDD-pick.bmp

    3. 设置完成,这里ID=07的硬盘状态已经变成Hotspare,在PD Mgnt里看不出全局和专享热备硬盘的区别

    4130.6_2D00_3-make-global-HS-HDD-done.bmp

    4. 按CTRL+P回到VD Mgmt,我们可以看到ID=07的硬盘已经是支持RAID1和RAID10阵列的全局热备硬盘了。

    1538.6_2D00_4-make-global-HS-HDD-view.bmp

    小结, end。

    ___________________________________________________________________________________

    小结, end。

    ___________________________________________________________________________________

    PERC卡的高级使用技巧

    磁盘漫游是指在同一控制器的电缆连接或背板插槽间移动物理磁盘。控制器将自动识别重新定位的物理磁盘,并从逻辑上将其置于属于磁盘组的一部分的虚拟磁盘中。

    注:仅当系统关闭时才能执行磁盘漫游。请勿在 RAID 级别迁移 (RLM) 或联机容量扩展 (OCE) 过程中尝试磁盘漫游。这将导致虚拟磁盘丢失。

    下面我们来做一次磁盘漫游的演示:

    1. 实验环境:这是一台PowerEdge R620服务器,运行Windows 2008 R2企业版服务器。服务器上有两个磁盘阵列(Drive C:是RAID1,Drive D:是RAID 5),两个阵列上都存有文件。

    7028.1_2D00_1-drive-list.JPG

    4643.1_2D00_2-raid-list.jpg

    我们注意到,RAID1成员为ID=00, 01,RAID5成员为ID=02,03,04

    2.关闭系统、物理磁盘、机柜和系统组件的电源。从系统上断开电源线的连接,然后拔出ID=00~04的所有硬盘,打乱次序后,随机插回背板槽位。开机进入PERC BIOS管理界面:

    6735.2_2D00_1-raid-list-after-roaming.jpg

    这里,我们注意到,RAID1的成员已经变成ID=02,04。这是因为原来RAID1的两个成员硬盘被插到了服务器背板上02,04的槽位去了。同样可以看到RAID5的硬盘插入到了00,01,03的槽位上去了

    3. 执行安全检查。确保正确插入物理磁盘。然后退出管理界面,重启服务器,进入Windows操作系统:

    0312.3_2D00_1-drive-list-after-roaming.JPG

    服务器正常进入Windows 2008 R2系统,所以驱动器上的文件未受影响。

    小结, end。

    ___________________________________________________________________________________

    PERC H710、H710P 和 H810 插卡支持在不同控制器间迁移虚拟磁盘,而无需使目标控制器脱机。控制器可以导入处于最佳、降级或部分降级状态的 RAID 虚拟磁盘。但不能导入处于脱机状态的虚拟磁盘。

    磁盘迁移提示:

    支持从 PERC H700 和 H800 至 PERC H710P 和 H810 的虚拟磁盘迁移

    支持在 H710、 H710P、或 H810 中创建的卷的迁移

    支持将在 H310 上创建的卷迁移至 H710、 H710P、或 H810

    不支持从 H700 或 H800 至 H310 的迁移

    不支持从 H710、 H710P、或 H810 至 H310 的迁移

    注: 在执行磁盘迁移前,源控制器必须处于脱机状态。

    注: 磁盘不可迁移至旧版或换代前的 PERC 卡。

    注: 非 RAID 磁盘仅在 PERC H310 控制器上受支持。不支持迁移至任何其他PERC 产品。

    注: 在提供或配置相应的密钥 (LKM) 情况下,支持导入受安全保护的虚拟磁盘。

    如果控制器检测到物理磁盘包含现有配置,则将该物理磁盘标记为 foreign(外部),并生成检测到外部磁盘的警报提示。

    小心: 请勿在 RLM 或联机容量扩展 (OCE) 过程中尝试磁盘漫游。这将导致虚拟磁盘丢失。

    下面我们来做这样的一个实验:

    1. 我们先看一下服务器(R620+H710p)的RAID配置:3个硬盘组成的一个RAID5,分配了100GB的虚拟磁盘空间

    1882.3_2D00_1-config-imported.jpg

    2. 关闭服务器,将上述硬盘从背板槽位取出,然后插入到另一台同型号服务器上,开机

    4670.1_2D00_1-post.jpg

    服务器自检提示:PERC卡发现外来配置(Foreign Configration)。这里我们如果按“F”键,PERC将自动从硬盘导入相关的RAID配置信息。为了看得明白点,我们选择按“C”进入管理界面进行配置。

    3. 在管理界面里,我们现在还看不到RAID的信息。高亮选中PERC卡,按F2,在菜单里选择“Foreign Config” --》Import 进行RAID配置信息的导入。

    8304.2_2D00_1-foreign-config-import.jpg

    4. 告警提示,选YES

    2677.2_2D00_2-foreign-config-import-warning.jpg

    5. 这样,硬盘上存放的RAID配置信息就迁移到新的PERC卡上了。我们的磁盘迁移完成

    1882.3_2D00_1-config-imported.jpg

    小结, end。

    ___________________________________________________________________________________

    这里我们讨论服务器硬盘空间不足时,我们有什么方法可以扩充原有虚拟磁盘的空间,而无需删除上面的数据。

    演示快速入口:

    简介

    我们可通过扩充容量和 / 或改变 RAID 级别的方式来重新配置联机虚拟磁盘。

    注: 跨接式虚拟磁盘 (如 RAID 10、 50 和 60)无法重新配置。

    注: 重新配置虚拟磁盘时一般会对磁盘性能有所影响,直到重新配置完成后为止。

    联机容量扩充 (OCE) 可通过两种方法实现。

    如果磁盘组中只有一个虚拟磁盘,而且还有可用空间可供使用,则可在可用空间的范围内扩充虚拟磁盘的容量。

    如果已创建虚拟磁盘,但虚拟磁盘使用的空间未达到该磁盘组大小的上限,则剩有可用空间

    通过 Replace Member (更换成员)功能使用较大的磁盘更换磁盘组的物理磁盘时也可以获得可用空间。虚拟磁盘的容量也可以通过执行 OCE 操作来增加物理磁盘的数量进行扩充。

    RAID 级别迁移 (RLM) 是指更改虚拟磁盘的 RAID 级别。 RLM 和 OCE 可同时实现,这样虚拟磁盘可同时更改 RAID 级别并增加容量。完成RLM/OCE 操作后,不需要重新引导。要查看 RLM/OCE 操作可行性列表,请参阅 下表。源 RAID 级别列表示执行 RLM/OCE 操作之前的虚拟磁盘RAID 级别,目标 RAID 级别列表示操作完成后的 RAID 级别。

    注: 如果控制器包含的虚拟磁盘数目已达最大值,则不能再对任何虚拟磁盘进行 RAID 级别迁移或容量扩充。

    注: 控制器将所有正在进行 RLM/OCE 操作的虚拟磁盘的写入高速缓存策略更改为直写式,直到 RLM/OCE 完成。

    RAID级别迁移:

    1602.RLM.JPG

    下面,我们来演示一下两种情形下磁盘的扩容:

    联机容量扩充 (OCE)

    实验的情景是:有一台R620服务器,两个硬盘驱动器。Drive C:是RAID1的阵列,安装操作系统;Drive D:是10GB的RAID1阵列,装有数据文件。如图:

    5228.1_2D00_2-drives-show.JPG

    我们重启服务器,按CTRL-R进入PERC BIOS 管理界面查看一下RAID的配置:

    其中10GB的虚拟磁盘建立在一个总容量278GB的RAID1阵列上,该阵列还留有268GB的剩余空间。我们准备使用这些剩余空间,将10GB的虚拟磁盘扩充到50GB以上。

    2330.1_2D00_1-raid-status.jpg

    注:我们下面的演示,在PERC BIOS管理界面里进行。但是实际的操作,在OMSA GUI管理界面里也可以完成。后一个RLM的演示,我们将在OMSA管理界面里进行:

    1. 高亮选中需要扩容的虚拟磁盘 VD1,按F2,在弹出菜单里选Expand VD size

    5857.2_2D00_1-Expand-VD-size.jpg

    2. 输入需要扩容的空间百分比15%,下面会显示扩容后的估计虚拟磁盘大小。然后选择Resize按钮

    4341.2_2D00_2-Expand-VD-size-15.jpg

    3. 管理界面回到主页面,选中VD1,可以看到空间已经变成50GB,且右侧显示后台初始化在进行中。这里的初始化是对新加入的空白区的初始化,并不会删除原有数据。

    4442.2_2D00_3-Expand-VD-size-progress.jpg

    4. 初始化结束后,服务器重启回到操作系统。我们在服务器管理器的磁盘管理器里可以看到,原来的磁盘1 已经增加了40.33GB的空余空间。

    7140.3_2D00_1-disk-manager.JPG

    5. 下面做Drive D:的空间扩展。鼠标右击Drive D:在弹出菜单里选择扩展卷

    1447.3_2D00_2-disk-expand.JPG

    6. 进入扩展卷向导,点击“下一步”

    3704.3_2D00_3-disk-expand-wizard.JPG

    7. 选择需要扩展的卷,已经希望扩展的大小。我们使用默认值,即全部空余空间,下一步

    7444.3_2D00_4-disk-expand-size.JPG

    8.确认执行的操作,下一步

    0027.3_2D00_5-disk-expand-confirm.JPG

    9. 任务完成,Drive D:已经成功扩容到50GB

    5657.3_2D00_6-disk-expand-done.JPG

    10. 再次确认文件系统的新空间50GB,以及原有的数据文件都得到保存

    0385.4_2D00_1-drive-status.JPG

    RAID 级别迁移 (RLM)

    下面我们来看看RLM,这种扩容方法可以通过改变RAID阵列的级别,或者往阵列里添加新的硬盘成员,来实现容量的扩展。我们来做一个演示,如何将RAID1扩展成由4个硬盘组成的RAID5,从而实现容量的扩展:

    关于OMSA控制台的安装,请看RAID磁盘成员的在线管理和维护片头的说明

    1. 登录OMSA控制台,查看一下阵列的配置信息:这里有两个RAID1阵列,VD0在第一个RAID1上,安装有操作系统,我们不做操作。VD1使用了另一个RAID1的200GB空间,该RAID1还余有78GB空余空间。

    6014.2-VD-status.jpg

    看看资源管理器,VD1对应的Drive D:存有用户数据:

    1325.2_2D00_2-Drive-status.jpg

    2. 在VD1的可用任务里选择“重新配置”,点击执行

    5557.3-VD-reconfig.jpg

    3. 顺带提一下,因为VD1所在的RAID1还有78GB剩余空间,如果想在OMSA管理界面里做OCE也是可以的,可以在这里的界面里点击“扩展容量”

    8053.4_2D00_1-OCE.jpg

    然后就可以看到和上面OCE章节里相似的配置界面做OCE扩展,这里就不演示了。

    2047.4_2D00_2-OCE.jpg

    4. 原来的RAID1由ID=02,03的硬盘组成,我们追加ID=04,05的空闲硬盘,点击“继续”

    3857.5_2D00_1-RLM.jpg

    5. 选择新的RAID级别为RAID-5,注意提示:新的容量将变为600GB,点击“继续”

    1460.5_2D00_2-RLM.jpg

    6. 确认配置信息,点击“完成”

    0143.5_2D00_3-RLM.jpg

    2313.5_2D00_4-RLM.jpg

    7. VD1进入RLM扩展状态,我们可以在OMSA管理器里看到百分比进度,直至完成

    7563.5_2D00_5-RLM.jpg

    8. 检查确认VD1扩展进程结束,级别已经显示为RAID5,成员变为ID=02~-05硬盘

    5265.6_2D00_1-RLM-done.jpg

    7041.6_2D00_2-RLM-done.jpg

    9. 退出OMSA,我们注意到,在windows磁盘管理器及资源管理器里,扩展的新空间还未生效,还是200GB

    8037.7_2D00_1-disk-manager-view.jpg

    5554.7_2D00_2-drives-view.jpg

    10. 重启服务器,进入PERC BIOS里查看,服务器经重启后,新的空间生效了

    1856.8_2D00_1-PERC-view.jpg

    11.服务器重启,重新进入操作系统,这次在磁盘管理器里,我们就可以看到多出来的未分配空间了。

    1780.8_2D00_2-disk-manager-view.jpg

    12. 请按照OCE介绍里,卷扩展的步骤扩展Drive D:,至此演示完成

    6052.9_2D00_5-disk-expand-done.jpg

    4174.9_2D00_6-disk-expand-done-drive-view.jpg

    小结, end。

    ___________________________________________________________________________________

    物理磁盘电源管理

    是 PERC H310、 H710、 H710P、和 H810 卡具备的节电功能。此功能根据磁盘配置和 I/O 活动可允许磁盘停转。在所有旋转式SAS 和 SATA 磁盘上均支持此功能 (包括未配置、已配置和热备用磁盘)。

    物理磁盘电源管理功能默认为禁用。可在 Dell Open Manage 存储管理应用程序中使用统一可扩展固件接口(UEFI) RAID 配置公用程序来启用此功能。

    共有四种可用的节电模式:

    No Power Savings (非节电模式)(默认模式)—所有节电功能均已禁用。

    Balanced Power Savings (负载平衡节电模式)—仅对未配置的和热备用磁盘启用停转。

    Maximum Power Savings (最大程度节电模式)—对已配置、未配置和热备用磁盘均启用停转。

    Customized Power Savings (自定义节电模式)—所有节电功能均可自定义。您可以指定一个“优质服务”时间窗口,在该窗口期间排除停转已配置磁盘。

    下面我们就来做一次物理磁盘电源管理的演示,帮助大家理解戴尔PowerEdge服务器PERC是如何实现物理磁盘的电源管理,以实现节能功能。

    1. 我们先来看看演示设备的配置:我们有9块物理磁盘,ID=0,1组成VD0(RAID1),ID=2~5组成VD1(RAID5),ID=6是RAID5的专享热备硬盘,ID=7是全局热备硬盘,ID=8是闲置硬盘。我们看到其中ID=6~8的硬盘上其实是没有数据IO的,但它们却和其他硬盘一样处于运行状态中,消耗电源。我们下面将通过设置“负载平衡节电模式”来控制空闲硬盘的运转。

    8132.1_2D00_1-hdd-status.jpg

    2. 我们先开机进入操作系统,运行OMSA,进入管理界面,在左侧导航栏里点击进入物理磁盘列表。我们注意到,ID=6~8的硬盘电源状态显示“高速旋转”,和其他联机硬盘是一样的,并不节能。

    1205.1_2D00_2-hdd-status-in-omsa.jpg

    这个是完整视图:

    3324.1_2D00_3-hdd-status-in-omsa-completed-view.jpg

    3.点击左栏里的存储菜单,选择右边对应的PERC控制卡,在“可用任务”里选择“管理物理磁盘电源”,然后点击执行

    2538.2_2D00_1-manage-disk-power.jpg

    4. 在物理磁盘电源管理设置里,选择“均衡节能模式”,然后点击“应用更改”

    1273.2_2D00_2-manage-disk-power-balance.jpg

    5.设置结束,回到物理磁盘列表,我们看到现在电源状况还没改变,暂时还是“高速旋转”

    5700.2_2D00_3-manage-disk-power-balance-done.jpg

    6.诺干时间后(约30分钟),刷新物理磁盘列表,我们看到,ID=6~8的3个空闲的硬盘,无论是热备还是完全闲置状态,电源状况都进入了“停转”状态,实现了服务器节能的目的

    5270.2_2D00_4-manage-disk-stop.jpg

    小结, end。

    ___________________________________________________________________________________

    展开全文
  • DELL服务器RAID磁盘阵列在线扩容(以H710P阵列卡为例)分享到:作者来源: 未知 发布时间:2013-01-12简介我们可通过扩充容量和 / 或改变 RAID 级别的方式来重新配置联机虚拟磁盘。注: 跨接式虚拟磁盘 (如 RAID 10、 ...

    DELL服务器RAID磁盘阵列在线扩容(以H710P阵列卡为例)

    分享到:

    作者来源: 未知       发布时间:2013-01-12

    简介

    我们可通过扩充容量和 / 或改变 RAID 级别的方式来重新配置联机虚拟磁盘。

    注: 跨接式虚拟磁盘 (如 RAID 10、 50 和 60)无法重新配置。

    注: 重新配置虚拟磁盘时一般会对磁盘性能有所影响,直到重新配置完成后为止。

    联机容量扩充 (OCE) 可通过两种方法实现。

    如果磁盘组中只有一个虚拟磁盘,而且还有可用空间可供使用,则可在可用空间的范围内扩充虚拟磁盘的容量。

    如果已创建虚拟磁盘,但虚拟磁盘使用的空间未达到该磁盘组大小的上限,则剩有可用空间

    通过 Replace Member (更换成员)功能使用较大的磁盘更换磁盘组的物理磁盘时也可以获得可用空间。虚拟磁盘的容量也可以通过执行 OCE 操作来增加物理磁盘的数量进行扩充。

    RAID 级别迁移 (RLM) 是指更改虚拟磁盘的 RAID 级别。 RLM 和 OCE 可同时实现,这样虚拟磁盘可同时更改 RAID 级别并增加容量。完成RLM/OCE 操作后,不需要重新引导。要查看 RLM/OCE 操作可行性列表,请参阅 下表。源 RAID 级别列表示执行 RLM/OCE 操作之前的虚拟磁盘RAID 级别,目标 RAID 级别列表示操作完成后的 RAID 级别。

    注: 如果控制器包含的虚拟磁盘数目已达最大值,则不能再对任何虚拟磁盘进行 RAID 级别迁移或容量扩充。

    注: 控制器将所有正在进行 RLM/OCE 操作的虚拟磁盘的写入高速缓存策略更改为直写式,直到 RLM/OCE 完成。

    RAID级别迁移:

    225K5JL-0.JPG

    下面,我们来演示一下两种情形下磁盘的扩容:

    联机容量扩充 (OCE)

    实验的情景是:有一台R620服务器,两个硬盘驱动器。Drive C:是RAID1的阵列,安装操作系统;Drive D:是10GB的RAID1阵列,装有数据文件。如图:

    225K543a-1.JPG

    我们重启服务器,按CTRL-R进入PERC BIOS 管理界面查看一下RAID的配置:

    其中10GB的虚拟磁盘建立在一个总容量278GB的RAID1阵列上,该阵列还留有268GB的剩余空间。我们准备使用这些剩余空间,将10GB的虚拟磁盘扩充到50GB以上。

    225K51c9-2.jpg

    注:我们下面的演示,在PERC BIOS管理界面里进行。但是实际的操作,在OMSA GUI管理界面里也可以完成。后一个RLM的演示,我们将在OMSA管理界面里进行:

    1. 高亮选中需要扩容的虚拟磁盘 VD1,按F2,在弹出菜单里选Expand VD size

    225K55A7-3.jpg

    2. 输入需要扩容的空间百分比15%,下面会显示扩容后的估计虚拟磁盘大小。然后选择Resize按钮

    225K53Q7-4.jpg

    3. 管理界面回到主页面,选中VD1,可以看到空间已经变成50GB,且右侧显示后台初始化在进行中。这里的初始化是对新加入的空白区的初始化,并不会删除原有数据。

    225K5AM-5.jpg

    4. 初始化结束后,服务器重启回到操作系统。我们在服务器管理器的磁盘管理器里可以看到,原来的磁盘1 已经增加了40.33GB的空余空间。

    225K541c-6.JPG

    5. 下面做Drive D:的空间扩展。鼠标右击Drive D:在弹出菜单里选择扩展卷

    225K55524-7.JPG

    6. 进入扩展卷向导,点击“下一步”

    225K54W2-8.JPG

    7. 选择需要扩展的卷,已经希望扩展的大小。我们使用默认值,即全部空余空间,下一步

    225K55108-9.JPG

    8.确认执行的操作,下一步

    225K53c3-10.JPG

    9. 任务完成,Drive D:已经成功扩容到50GB

    225K553J-11.JPG

    10. 再次确认文件系统的新空间50GB,以及原有的数据文件都得到保存

    225K560Z-12.JPG

    展开全文
  • 问题描述:测试提了一个bug:插SIM开机,状态栏SIM图标偏大,请改与其他图标显示大小一致bug重现:我们看了一下,在手机状态栏中没有sim的图标有一点确实是有一点大。初步分析:这是一个非常细节的bug,根据...

    这里写图片描述

    问题描述:

    测试提了一个bug:

    不插SIM卡开机,状态栏SIM卡图标偏大,请改为与其他图标显示大小一致

    bug重现:

    我们看了一下,在手机状态栏中没有sim卡的图标有一点确实是有一点大。

    这里写图片描述

    初步分析:

    这是一个非常细节的bug,根据开发经验,这应该就是一张图片,我们只要找到这张图片,将其改小,就OK了。

    哈哈,应该非常简单。

    bug解决:

    根据开发经验,此图片应该就是在/frameworks/base/packages/SystemUI目录下,我直接到此目录下res/drawable-hdpi,查看图片。啊噢,找遍目录,没有找到此图片。

    难道目录不对。

    好,我再去frameworks/base/packages/Keyguard目录下查找,还是没有找到。好吧,我再去frameworks/base/core/res/res/drawable-hdpi,见鬼了,还是没有。

    不对啊,此图片只有可能在此三个地方,但是都没有找到。

    怎么办,我猜此张图片可能是被项目覆盖了,我在整个工程中查找SystemUI:

    find ./ -name “SystemUI”

    再把所有的SystemUI目录下查找此张图片,还是没有找到此宝宝。

    见鬼了………

    最后,我问了一下旁边的一位同事,和他说了一下当前的情况,他猜测这张图片可能不是一张图片,应该是一张矢量图片,他找了一下,猜测可能是这张图片:

    frameworks/base/packages/SystemUI/res/drawable/ic_qs_no_sim.xml
    <vector xmlns:android="http://schemas.android.com/apk/res/android"
            android:width="32dp"
            android:height="32dp"
            android:viewportWidth="28.0"
            android:viewportHeight="28.0">
    
        <path
            android:fillColor="#FFFFFFFF"
            android:pathData="M19.0,5.0c0.0,-1.1 -0.9,-2.0 -2.0,-2.0l-7.0,0.0L7.7,5.3L19.0,16.7L19.0,5.0zM3.7,3.9L2.4,5.2L5.0,7.8L5.0,19.0c0.0,1.1 0.9,2.0 2.0,2.0l10.0,0.0c0.4,0.0 0.7,-0.1 1.0,-0.3l1.9,1.9l1.3,-1.3L3.7,3.9z"/>
    </vector>

    我试了一下,修改此文件:

            android:width="20dp"
            android:height="20dp"

    确实是此文件,并且大小改小了,效果如下:

    这里写图片描述

    代码分析

    那么为什么此xml就是我们要找的图片:

    在./frameworks/base/packages/SystemUI/res/values/arrays.xml文件,我们定义了一个没有sim卡图片的数组:

        <string-array name="multi_no_sim">
            <item>drawable/ic_qs_no_sim</item>
            <item>drawable/ic_qs_no_sim</item>
            <item>drawable/ic_qs_no_sim</item>
        </string-array>

    在./frameworks/base/packages/SystemUI/src/com/android/systemui/statusbar/policy/TelephonyIcons.java文件中:

    mNoSimArray = mRes.getStringArray(
                        R.array.multi_no_sim);

    再查找到mNoSimArray:

        static int getNoSimIcon(int sub){
            if (mNoSimArray == null) {
                return 0;
            }
            String resName = mNoSimArray[sub];
            log(TAG, "no sim icon name: " + resName);
            int resId = mRes.getIdentifier(resName, null, NS);
            return resId;
        }

    再查找getNoSimIcon:

    在./frameworks/base/packages/SystemUI/src/com/android/systemui/statusbar/policy/NetworkControllerImpl.java文件:

        private final void updateSimIcon() {
            if (DEBUG) Log.d(TAG,"In updateSimIcon simState= " + mSimState);
            if (mSimState ==  IccCardConstants.State.ABSENT) {
                mNoSimIconId = TelephonyIcons.getNoSimIcon();
            } else {
                mNoSimIconId = 0;
            }
            refreshViews();
        }

    再查找:mNoSimIconId

     cluster.setMobileDataIndicators(
                        mHasMobileDataFeature,
                        mShowPhoneRSSIForData ? mPhoneSignalIconId : mDataSignalIconId,
                        mMobileActivityIconId,
                        mDataTypeIconId,
                        mContentDescriptionPhoneSignal,
                        mContentDescriptionDataType,
                        mDataTypeIconId == TelephonyIcons.ROAMING_ICON,
                        isTypeIconWide(mDataTypeIconId),
                        mNoSimIconId);

    再查找方法:setMobileDataIndicators

    在./frameworks/base/packages/SystemUI/src/com/android/systemui/statusbar/SignalClusterView.java文件中:

    public void setMobileDataIndicators(boolean visible, int strengthIcon,
                int activityIcon, int typeIcon, String contentDescription,
                String typeContentDescription, boolean roaming,
                boolean isTypeIconWide, int noSimIcon) {
            mMobileVisible = visible;
            mMobileStrengthId = strengthIcon;
            mMobileActivityId = activityIcon;
            mMobileTypeId = typeIcon;
            mMobileDescription = contentDescription;
            mMobileTypeDescription = typeContentDescription;
            mRoaming = roaming;
            mIsMobileTypeIconWide = isTypeIconWide;
            mNoSimIconId = noSimIcon;
    

    再查找mNoSimIconId:

    private void updateMobile() {
            mMobile.setImageResource(mMobileStrengthId);
            mMobileType.setImageResource(mMobileTypeId);
            mMobileActivity.setImageResource(mMobileActivityId);
            mNoSimSlot.setImageResource(mNoSimIconId);

    在查找mNoSimSlot:

     mNoSimSlot      = (ImageView) findViewById(R.id.no_sim);

    mNoSimSlot就是显示没有sim卡图片的控件。

    总结:

    再回首此问题解决的过程,用无奈的口吻自我调侃一下:“有点意思”。

    为什么会有这么多波折,其实非常简单,方向不对!

    根据开发验证,我以为会是一张实实在在的图片,但是最后的结果告诉我们,这是一张矢量图片。

    方向的不对,导致了缘木求鱼,当然是空折腾,竹篮打水一场空。

    所以,开发经验是一个双面的东东,平时好好的利用有事半功倍的效果,但是如果被开发经验束缚了,那会导致了死循环。

    还有一个就是对于这些具体细节的bug,我们只要根据代码一步一步分析,是可以查找问题所在,一般都可以解决的。

    这要求开发者要以代码为基本出发点,借助开发经验,综合自己的逻辑分析能力,对其实施一次精准的“外科手术”。

    展开全文
  • 虚拟机上找到网卡问题

    千次阅读 2018-06-27 14:42:00
    以下问题克隆的虚拟机找到网卡提供解决方法:配置好的Vmware vmdk,在其他电脑上用使用,会出现一个问题--找到网卡了,提示"No such device eth0"…… 原因是Vmware保存的硬件配置文件*.vmx里记录...

    以下问题为克隆的虚拟机找不到网卡提供解决方法:

    配置好的Vmware vmdk,在其他电脑上用使用,会出现一个问题--找不到网卡了,提示"No such device eth0"……

      原因是Vmware保存的硬件配置文件*.vmx里记录了网卡的MAC地址,而linux也会记录MAC地址,这样在克隆虚拟机的时 候,Vmware会为Ubuntu分配一个新的eth0网卡,但是由于被之前的eth0占用,所以它会变成eth1。再因为eth0是默认的网卡,显然这 个网卡不存在,所以就提示"No such device eth0"..

      linux保存MAC地址的配置文件为"/etc/udev/rules.d/70-persistent-net.rules",

      方法1:直接删除配置文件

      直接删除配置文件,重启之后Ubuntu就会找到新的网卡了。

      sudo rm /etc/udev/rules.d/70-persistent-net.rules

      方法2:修正配置文件

      修改配置文件,将原本的eth0删除,然后修改eth1的NAME="erh1"为NAME="eth0",重启之后linux就会使用新的配置文件设置网卡了。

      修改前的 /etc/udev/rules.d/70-persistent-net.rules 像这样:

      # PCI device 0x1022:0x2000 (pcnet32)

      SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:29:50:XX:XX", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"

      # PCI device 0x1022:0x2000 (pcnet32)

      SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:29:85:XX:XX", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth1"

      将它修改为:

      # PCI device 0x1022:0x2000 (pcnet32)

      SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:29:85:XX:XX", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"

      [备注]

      重启后使用网络管理配置IP时可能会出现,system-config-network无法编辑的错误

      查看/etc/sysconfig/network-scripts/ifcfig-eth0,发现内容为空.按以下格式进行编辑,保存即可

      DEVICE=eth0

      ONBOOT=yes

      BOOTPROTO=none

      HWADDR=00:0C:29:C6:A1:AB

      IPADDR=192.168.1.60

      NETMASK=255.255.255.0

      GATEWAY=192.168.1.1

      NM_CONTROLLED=yes

      MODE=Manager

      DNS1=192.168.1.1

      MTU=1500

      TYPE=Ethernet

      IPV6INIT=no

      USERCTL=no

      PREFIX=24

      NAME="System eth0"

      UUID=5fb06bd0-0bb0-7ffb-45f1-d6edd65f3e03

      此处的MAC即为修改/etc/udev/rules.d/70-persistent-net.rules 前eth1的MAC



    展开全文
  • 在虚拟机上yuv420可以正常显示 ,而945(D525)模块上却无法显示 ,后来验证了directdraw的yuv420也无法显示 ,由此怀疑显卡支持 ,后把420转换422显示。 420显示如下: /* 编译命令:arm-linux-gcc -o show...
  • 使用FFmpeg调用NVIDIA GPU实现H265转码H264背景H265和H264一些基本知识H265码流nalu头H264码流nalu头补充:IDR帧和I帧的关系转码的一些基本知识软编码和硬编码如何区分软编码和硬编码比较目前的主流GPU加速平台目前...
  • 读取SD上的图片并显示在1.14IPS屏幕
  • 一劳永逸 维基百科公式不显示怎么办? 注册1个wiki账号, 参数设置, 显示选项,最后的PNG图片点上; 成功; 2 粗一点 or 找到latex公式真么办? 想注册账号? 拷贝wiki原文,放入latex解析功能的文档中;...
  • 为什么我的 Python 程序住啦!

    千次阅读 2019-11-20 11:39:06
    所谓“工作”就是指程序不再响应新的请求,处在了某种自娱自乐的状态,英语有一个很形象但的单词“hung”,但我知道怎么翻译,姑且称之住”吧。本人遇到过的有两种情况,一种是在系统调用,如常见的磁盘...
  • 市面上有很多种H.264硬压采集, ... 在它的回调函数中输出的码流知道是啥子格式,而我需要标准的H.264码流,保存成flv并同时使用RTMP发布。如果解码后重新编码加重了CPU的负担,符合要求。难道这就是传说中的海康码?
  • Windows为什么越用越慢而Linux却不会?

    万次阅读 多人点赞 2019-07-25 22:07:34
    依然,先说是不是,再问为什么。 别人我知道,反正我的经验,Windows就是越用越慢。这是为什么呢? 本文是下文的姊妹篇: 为什么Windows/iOS操作很流畅而Linux/Android却很卡顿呢? ...
  • df -h无响应问题解决

    万次阅读 2018-05-31 21:41:35
    一、问题描述1、linux下执行df -h 查看已挂在各分区的空间和目录情况,但执行后无反馈二、影响1、由于脚本程序调用df -h 判断磁盘空间情况进行日志等清理,故障导致磁盘空间占满能清理,服务器能访问。...
  • DVI原理上是将待显示的R.G.B数字信号与H.V信号进行组合编码,每个像素点按10bit的数字信号按最小非归零编码方式进行并→串转换,把编码后的R.G..B数字串行码流与像素时钟等4个信号按照平衡方式进行传输,其每路码流...
  • 转载自:...很多玩家,为了达到“4K”标准,不得去升级自己的设备。最近又推出了HEVC/H.265视频编码标准,相较于之前的H.264标准有了相当大的改善。 H.2
  • 一、项目配置1、新建项目文件夹"TimSeg";2、通过Keil5创建新项目,保存在所创建的文件夹中(设项目名pTimSeg),选择MCU芯片"STM32F103ZE"(本程序使用的硬件:STM32-PZ6806L开发板)3、在...
  • 比如我的配置文件, cd /etc/sysconfig/network-scripts/ifcfg-Auto_eth0是这个名称,但是我使用ifconfig显示的信息却是 eth6 Link encap:Ethernet HWaddr 08:00:27:3F:55:54  inet addr:192.168.137.103 ...
  • IC和ID以及两者的比较

    万次阅读 2018-12-06 20:14:41
    IC (Integrated Circuit Card,集成电路),也称智能(Smart card)、智慧(Intelligent card)、微电路(Microcircuit card)或微芯片等。它是将一个微电子芯片嵌入符合ISO 7816标准的卡基中,做成卡片形式。...
  • 读取SD里面的BMP文件 显示到TFT上

    千次阅读 2013-04-23 21:03:27
    读取SD里面的BMP文件 显示到TFT上  我刚好最近做了一个BMP565格式的图片显示 大家一起交流 首先是从sd里面读取BMP文件 然后关于BMP文件的读取 我用的是BMP565格式的图片 下面copy一些关于...
  • H.323详解

    万次阅读 2018-05-26 17:52:08
    H.323详解文章中的某些图粘上去,可到资源页下载word版点击打开链接目 录(TOC Heading)第1章 协议概述... 4第2章 协议概念... 52.1 名词解释.. 52.2 协议模型.. 62.2.2 RAS. 72.2.3 Q.931. 72.2.4 H.245....
  • Android显示之图层合成要点1.图层合成指综合各个窗口的绘制内容,送往LCD显示的过程。从原理上可分为在线合成与离线合成两种方式。 2.在Android的SurfaceFlinger代码流程中,图层合成方式分3D合成(OpenGL)和硬件...
  • 尝试安装OpenGL后,桌面确实起来了.  //sh NVIDIA*.run --no-opengl-files 未尝试换KDE桌面,切换桌面后可直接安装驱动   全程记录: //下面4行应该可不执行 用于检测是否有Nvidia显卡 sudo rpm -...
  • 进监狱全攻略:Mifare1 Card破解

    万次阅读 2019-06-23 16:49:52
    从M1卡的验证漏洞被发现到现今,破解设备层出不穷,所以快速傻瓜式一键破解不是本文的重点,年轻司机将从本文中获得如下技能。 如果你想简单快速的上手,你可以选择ACR122-like,Proxmark3等容易购买到的操作简单的...
  • VGA接口显示方法

    千次阅读 2018-12-17 09:31:11
    VGA(video graphics array)即视频图形阵列,是IBM在1987年随PS/2机一起推出的一种视频传输标准,具有分辨率高、显示速度快、颜色丰富等优点,在彩色显示器领域得到了广泛的应用。 1.CRT显示器原理 CRT(cathode ray...
  • 主板诊断代码含义及处理方法

    万次阅读 2016-08-11 09:16:20
    BIOS灯:BIOS运行灯,正常工作时应不停闪动 CLK灯:时钟灯。正常常亮. OSC灯:基准时钟灯,正常常亮。 RESET灯仅复位灯,正常开机瞬间闪一下,然后熄灭。 RUN灯:运行灯,工作时就不停...
  • ESP32笔记(4) SD的读写

    千次阅读 2019-11-23 12:05:04
    1、平台的条件 1.1 软件平台:esp-idf_v3.3 1.2 硬件平台: esp32 本人的联系方式: QQ: 1297311998 ,如果有什么问题,请高手不吝赐教 2、如何使用 只是介绍代码的使用情况,用的是乐鑫自带的库文件,和一些简单...
  • 解决Ubuntu安装Nvidia显卡驱动的各种坑

    万次阅读 热门讨论 2018-10-20 10:03:06
    1)用U盘安装Ubuntu系统,卡死在logo界面(下面那一排进度点根本动),死活进去; (2)好不容易把(1)解决了,发现分辨率降低成了800*600,安装过程中部分按钮都点到; (3)安装成功后进系统发现没法...
  • 简单的D3d使用(通过surface)

    万次阅读 多人点赞 2017-02-10 20:46:21
    IDirect3D9接口是一个代表我们显示3D图形的物理设备的C++对象。它可以用于获得物理设备的信息和创建一个IDirect3DDevice9接口。例如,可以通过它的GetAdapterDisplayMode()函数获取当前主显卡输出的分辨率,刷新频率...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 104,004
精华内容 41,601
关键字:

d为什么卡1不显示h