原作者:Bane Radulovic 译者: 赵恩东 审核: 魏兴华 DBGeeK社群联合出品 当使用ASMLIB 来管理ASM 磁盘时,设备的路径信息是不会在gv$asm_disk视图p
如果你使用Linux比较长时间了,那你就知道,在对待设备文件这块,Linux改变了几次策略。在Linux早期,设备文件仅仅是是一些带有适当的属性集的普通文件,它由mknod命令创建,文件存放在/dev目录下。后来,采用了devfs,一个基于内核的动态设备文件系统,他首次出现在2.3.46 内核中。Mandrake,Gentoo等Linux分发版本采用了这种方式。devfs创建的设备文件是动态的。但是devfs有一些严重的限制,从 2.6.13版本后移走了。目前取代他的便是文本要提到的udev--一个用户空间程序。 目前很多的Linux分发版本采纳了udev的方式,因为它在Linux设备访问,特别是那些对设备有极端需求的站点(比如需要控制上千个硬盘)和热插拔设备(比如USB摄像头和MP3播放器)上解决了几个问题。下面我我们来看看如何管理udev设备。 实际上,对于那些为磁盘,终端设备等准备的标准配置文件而言,你不需要修改什么。但是,你需要了解udev配置来使用新的或者外来设备,如果不修改配置,这些设备可能无法访问,或者说Linux可能会采用不恰当的名字,属组或权限来创建这些设备文件。你可能也想知道如何修改RS-232串口,音频设备等文件的属组或者权限。这点在实际的Linux实施中是会遇到的。 为什么使用udev 在此之前的设备文件管理方法(静态文件和devfs)有几个缺点: * 不确定的设备映射。特别是那些动态设备,比如USB设备,设备文件到实际设备的映射并不可靠和确定。举一个例子:如果你有两个USB打印机。一个可能称为 /dev/usb/lp0,另外一个便是/dev/usb/lp1。但是到底哪个是哪个并不清楚,lp0,lp1和实际的设备没有一一对应的关系,因为他可能因为发现设备的顺序,打印机本身关闭等原因而导致这种映射并不确定。理想的方式应该是:两个打印机应该采用基于他们的序列号或者其他标识信息的唯一设备文件来映射。但是静态文件和devfs都无法做到这点。 *没有足够的主/辅设备号。我们知道,每一个设备文件是有两个8位的数字:一个是主设备号 ,另外一个是辅设备号来分配的。这两个8位的数字加上设备类型(块设备或者字符设备)来唯一标识一个设备。不幸的是,关联这些身边的的数字并不足够。 */dev目录下文件太多。一个系统采用静态设备文件关联的方式,那么这个目录下的文件必然是足够多。而同时你又不知道在你的系统上到底有那些设备文件是激活的。 *命名不够灵活。尽管devfs解决了以前的一些问题,但是它自身又带来了一些问题。其中一个就是命名不够灵活;你别想非常简单的就能修改设备文件的名字。缺省的devfs命令机制本身也很奇怪,他需要修改大量的配置文件和程序。; *内核内存使用,devfs特有的另外一个问题是,作为内核驱动模块,devfs需要消耗大量的内存,特别当系统上有大量的设备时(比如上面我们提到的系统一个上有好几千磁盘时) udev的目标是想解决上面提到的这些问题,他通采用用户空间(user-space)工具来管理/dev/目录树,他和文件系统分开。知道如何改变缺省配置能让你之大如何定制自己的系统,比如创建设备字符连接,改变设备文件属组,权限等。 udev配置文件 主要的udev配置文件是/etc/udev/udev.conf。这个文件通常很短,他可能只是包含几行#开头的注释,然后有几行选项:
目录 使用 df 命令检查 Linux 中的磁盘空间 以人类可读的格式显示磁盘空间使用情况 检查特定文件系统磁盘空间 查看输出中的特定字段 检查 Linux 上的 inode 使用情况 使用 du 命令检查 Linux 中的磁盘空间 检查文件磁盘使用情况 检查目录磁盘使用情况 这 df 命令代表 disk filesystem. 它用于获取Linux 系统上文件系统的可用和已用磁盘空间使用情况的完整摘要。 这 du 命令,简称 disk usage, 用于估计文件空间使用情况。该du命令可用于跟踪占用硬盘驱
存储的配置总结下只有2步:持久化配置 和 权限配置 。一般来说这两步是可以合在一起的,只是使用多路径软件时需要分开来讲(多路径软件多了一个多路径聚合的步骤)。
描述: Linux 用户常常会很难鉴别同一类型的设备名,比如 eth0, eth1, sda, sdb 等等。通过观察这些设备的内核设备名称,用户通常能知道这些是什么类型的设备,但是不知道哪一个设备是他们想要的
This chapter is a basic tour of the kernel-provided device infrastructure in a functioning Linux system.
起因:一个客户的实际故障,该故障非常典型,其他客户类似的环境也非常多,所以很值得梳理并记录下来。 环境:Oracle 11.2.0.4 RAC(2 nodes)+ RHEL 6.6 共享存储:EMC powerpath 做的多路径绑定
文件按分配单元AUs(allocation units)平衡分布在磁盘组的所有磁盘中,ASM使用索引技术来跟踪每个AUs的位置
◆ 一、概述 RAC数据库扩容存储空间,新挂载过来的盘没有识别到,通过fdisk -l命令没有看到。经查询需要重启或者扫描来看到新挂载的磁盘,今天分享一下具体的方法 环境:OEL 6.4 和 RAC 11.2.0.4 ◆ 二、关键事项 不要使用/dev/sdX 或 /dev/dm-XX 作为设备名称,因为此设备名称在重新启动后可能会更改 使用WWID 识别设备 全局标识符 (WWID) 可用于可靠地识别磁盘设备。 WWID 是 SCSI 标准要求所有 SCSI 设备提供的持久的、独立于系统的 ID。 ◆ 三
在 Linux 上查找可用磁盘空间的最简单的方法是使用 df 命令 。df 命令从字面意思上代表着 磁盘可用空间(disk free),很明显,它将向你显示在 Linux 系统上的可用磁盘空间。
Linux平台 Oracle 19c RAC安装指导: Part1:Linux平台 Oracle 19c RAC安装Part1:准备工作 Part2:Linux平台 Oracle 19c RAC安装Part2:GI配置 Part3:Linux平台 Oracle 19c RAC安装Part3:DB配置
一、initramfs是什么 在2.6版本的linux内核中,都包含一个压缩过的cpio格式的打包文件。当内核启动时,会从这个打包文件中导出文件到内核的rootfs文件系统,然后内核检查rootfs中是否包含有init文件,如果有则执行它,作为PID为1的第一个进程。这个init进程负责启动系统后续的工作,包括定位、挂载“真正的”根文件系统设备(如果有的话)。如果内核没有在rootfs中找到init文件,则内核会按以前版本的方式定位、挂载根分区,然后执行 /sbin/init程序完成系统的后续初始化工作。 这个压缩过的cpio格式的打包文件就是initramfs。编译2.6版本的linux内核时,编译系统总会创建initramfs,然后把它与编译好的内核连接在一起。内核源代码树中的usr目录就是专门用于构建内核中的initramfs的,其中的initramfs_data.cpio.gz文件就是initramfs。缺省情况下,initramfs是空的,X86架构下的文件大小是134个字节。
云平台客户的服务器可能会随着业务量的不断增长造成磁盘空间不足的情况,比如:共享文件服务器硬盘空间不足,在这个时候就需要增加磁盘空间,来满足线上的业务;又或者我们在使用linux的过程中, 有时会因为安装系统时分区不当导致有的分区空间不足,而有的分区空间过剩的情况,都可以是使用fdisk分区工具来动态调整分区的大小;
索引节点(inode)是持久化存储到磁盘中的,而目录项(dentry)是由内核维护(目录项缓存)的。
在 Level 5 中,硬件团队会在内部运营自己的 AV 车队。由于现在 AV 发展仍处于初期阶段,因此车队必须提供两种截然不同的用例。一个是运营团队执行诸如班车服务和数据收集等任务的稳定平台,另一个则是为不断改进堆栈的软件工程师的开发平台。这两组用户的要求完全不同:运营团队需要具有最少选项和高度可预测行为的一站式设备平台,而工程师需要最大的灵活性,以便他们可以快速迭代。
Openfiler是一款网络存储软件,在Oracle RAC部署的时候,可以用来模拟共享存储,并实现多路径(Multipath)。多路径简单来说,就是连接磁盘的多条链路,避免单条链路中断导致的数据库不可用,另外多条链路间还能实现负载均衡。
RHEL 7.2使用EMC Powerpath扩容2T磁盘空间,需要添加至以用12C RAC for ASM系统中。下面是具体步骤,主机人员告知扩容别名为data_center_16、data_center_17
udev 是一个为你的计算机提供设备事件的 Linux 子系统。通俗来讲就是,当你的计算机上插入了像网卡、外置硬盘(包括 U 盘)、鼠标、键盘、游戏操纵杆和手柄、DVD-ROM 驱动器等等设备时,代码能够检测到它们。这样就能写出很多可能非常有用的实用程序,而它已经很好了,普通用户就可以写出脚本去做一些事情,比如当某个硬盘驱动器插入时,执行某个任务。
磁盘的 UUID 是唯一且不随主机重启改变,因此绑定磁盘时需要用到 UUID,那么如何获取 UUID呢?
Linux根目录磁盘空间不够用了,当修改了虚拟机模版增加磁盘大小或者插入了一块新硬盘,但是发现系统里的大小还是没改变。
关于RHEL6安装RAC权限绑定问题 红帽企业版 Linux 6.0 开始弃用 /etc/multipath.conf 配置文件中的mode、uid 和 gid 参数。device-mapper 设备的权限(包括 multipath 映射)由 udev 规则设定,在我们安装RAC的过程中,对权限的给予是一个比较麻烦的问题,一般来说,无论是RHEL5还是RHEL6我们都会通过UDEV来对权限做很好的控制,一下说明在RHEL6下通过两种方法对磁盘权限做控制
首先,需要安装Openfiler系统(类似安装Linux),我这里设定的IP地址:10.10.10.10(与RAC服务器网络相通)。安装完毕后通过web访问管理 https://10.10.10.10:446
如果存储服务器到交换机只有一条线路的时候,那么一条线路出线故障,整个就没法使用了,所以多线路可以解决这个问题,避免单点故障。
如果将一个设备连接到Linux系统时,通常需要一个设备驱动程序才能正常工作。你可以通过设备文件或设备节点与设备驱动程序交互,这些是看起来像普通文件的特殊文件。由于这些设备文件就像普通文件一样,你可以使用ls、cat等程序与它们交互。这些设备文件一般存放在/dev目录下。继续并在你的系统上通过命令ls /dev查看/dev目录,你将看到系统上有大量的设备文件。
今天在折腾我的 NVIDIA Xavier NX 的边缘计算盒子的时候,发现在我执行 lsblk 命令的时候,在块设备列表下面,挂载有 zram 的设备,所以就花点时间去研究了下 zram 相关的技术,在学习的过程中,不断的对未知的知识进行探索,各个击破,融会贯通,这就是学习的过程,写教程分享,也是为了记录自己学习的过程,跟大家一起探讨;
测试环境突然一个节点的数据库无法启动,报错很清楚,找不到控制文件,而控制文件在ASM上,第一个节点正常,下面是处理流程。
最近手头一台运行在 Hyper-V 下面抓数据的服务器 (Ubuntu 16.04) 磁盘空间不够了,之前也没有把数据单独放到一个分区,所以只能想办法把根目录给搞大一点。之前没有处理过这样的问题,网上搜了很多资料,现在把拓展方法记录,分享出来。
在Linux系统中,mknod命令是一个强大而灵活的工具,用于创建设备文件节点和命名管道(FIFO)。本文将带您深入了解mknod命令的各个方面,包括其定义、工作原理、主要特点、应用示例以及使用时的注意事项和最佳实践。
环境说明: Windows操作系统:Window 10 企业版 Linux系统镜像:CentOS-6.6-x86_64-bin-DVD1.iso VMware-workstation:VMware-workstation-full-12.0.0-2985596
完整克隆是和原始虚拟机完全独立的一个拷贝,它不和原始虚拟机共享任何资源。可以脱离原始虚拟机独立使用。
首先要明确分区是针对磁盘进行的操做,磁盘分区会创建分区表,类似vda,sda的是磁盘,vda1,sda1的是分区
UUID 意即 通用唯一识别码(Universally Unique Identifier),它可以帮助 Linux 系统识别一个磁盘分区而不是块设备文件。
裸设备,是没有经过格式化的分区或磁盘,也叫裸分区(原始分区),不被Unix通过文件系统来读取的特殊字符设备。它由应用程序负责对 它进行读写操作。不经过文件系统的缓冲,是不被操作系统直接管理的设备。由于跨过操作系统管理,使得I/O效率更高。在基于SUSE Linux 10上安装Oracle 10g RAC的话,由于Oracle 10g 不支持将ocr与votingdisk 存放在ASM 磁盘中,因此,依然需要为其使用裸设备方式。SUSE Linux裸设备的配置与其他的Linux稍有差异,下面将具体描述。
Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part1:准备工作
这两天看到有朋友咨询 SUSE 15 SP3 安装 Oracle 19C RAC 遇到点问题,趁着周末有时间,抱着学习的心态,研究了一下如何安装,接下来就分享一下从零开始部署的流程!
个人博客纯净版:https://www.fangzhipeng.com/db/2019/09/10/linux-disc.html
电脑因为根目录看见不足,造成开机一直处于登录界面,经过我在终端折腾半天,删除了opt目录等操作,才终于进入xwindows桌面,所以决定增大\目录的大小,文章同步进行,解决成功,发文,解决这个只是时间问题
现在磁盘最常用的可简单分为普通的机械盘和SSD(Solid-state drive或Solid-state disk)两种,他们都已不同的接口协议和主板链接,在了解命令之前,我们先来看下,现在服务器磁盘的接口协议。这样可以更好的了解磁盘。
就是说,我们会 chroot 进入之前准备好的临时迷你 Linux 系统,做一些最后的准备工作,然后就开始安装软件包。
这两天看到交流群里有朋友咨询 SUSE 15 SP3 安装 Oracle 19C RAC 遇到点问题,趁着周末有时间,抱着学习的心态,研究了一下如何安装,接下来就分享一下从零开始部署的流程!
环境准备:一个已经安装好的虚拟机 要求: 删除了 /etc/udev/rules.d/70-persistent-net.rules 这个文件后,关机,保存快照,并且在克隆其他机器之前没有开机,否则/etc/udev/rules.d/70-persistent-net.rules会生成两个MAC地址,导致克隆出来的虚拟机的eth0网卡不能使用
最近公司规定晚上走人后必须关闭电脑,但是像我们这样的人,经常会忘记了关闭电脑,而且关闭电脑之后再恢复工作环境也是件挺麻烦的事情,无奈之下只能折腾一下,让linux定时休眠了。
事情是这样的,各位看官且看之,中秋国庆期间测试机房由于线路变更需要断电,故需要关掉所以测试机器,等待变更完成后,测试环境的 RAC 有一个节点数据库启动不了,检查发现节点 2 的 ARCH 磁盘没有正常挂载。
需求描述 默认情况下磁盘可以使用by-id/by-partlabel/by-parttypeuuid/by-partuuid/by-path/by-uuid等多种形式的名称对磁盘设备进行管理,但是在ceph中,如果磁盘数量过多,加上为了更好的区别每一个OSD对应的磁盘分区用途(比如filestore or journal),同时确保物理磁盘发生变更(故障盘替换后)后对应的名称不变,对OSD对应的磁盘设备命名提出新的管理需求。 本例使用udev的方式,将磁盘按照osd[N]的方式进行命名,比如/dev/osd
linux系统的启动过程 在介绍破解Linux系统root密码之前先了解一下linux系统的启动过程: 1 开机自检(POST),初始化部分硬件 2 搜素可用于引导的启动设备(如磁盘的MBR) 3 读取并将控制权交给系统启动加载器(grub2) 4 启动加载器加载器配置,显示可用配置菜单 5 启动加载器加载内核及initramfs,置入内存 6 启动加载器将控制权交给内核 7 由内核查找initramfs中的硬件驱动,作为PID=1从initramfs执行/sbin/init (在RHEL
如上图的100ask6ull开发板,⑦为USB口,U盘从这里插入;⑱为mico sd卡槽,micro sd卡可以直接从这里插入。
CentOS 7.x系列只有64位系统,没有32位。生产服务器建议安装CentOS-7-x86_64-Minimal-1611.iso版本
本篇的目的是:梳理一份CentOS/RHEL7+11gR2 RAC部署的较标准文档。 结合了公司内部文档及mos等多方材料,尽可能梳理完整。
领取专属 10元无门槛券
手把手带您无忧上云