分类目录归档:Database

etc目录下的init.ohasd和ohasd文件丢失后如何启动GI

上一遍我们已经知道11.2和12c RAC中的/etc/init.d/init.ohasd是启动RAC所有其他进程的守护进程。 那么如果有人误删除了这个文件或者错误修改了,怎么办呢? 这个解决不难,因为在Standalone环境中,/etc/init.d/init.ohasd来自于$GRID_HOME/crs/init/init.ohasd,而/etc/init.d/ohasd来自于$GRID_HOME/crs/init/ohasd。 我们对比一下$GRID_HOME/crs/init/和/etc/init.d/下的ohasd和init.ohasd,看看文件内容是否一致: [/shell] 可以看到,$GRID_HOME/crs/init/和/etc/init.d/目录下的文件内容是一致的,只是权限不同。/etc/init.d/目录下的文件权限是750,$GRID_HOME/crs/init下的权限是644。 好了,解决方法有了,如果/etc/init.d/init.ohasd或者/etc/init.d/ohasd丢失了,手工创建/etc/init.d/init.ohasd 就可以了: 如果再细心一点,我们会发现$GRID_HOME/crs/init目录下除了这两个文件外,还有一个名称为ohasd.sles的文件。 熟悉SLES Linux的朋友可能猜到了,是的,这个是在SLES Linux上使用的ohasd版本。 检查当前版本是否为SLES: 现在,我们删除/etc/init.d/init.ohasd文件来模拟init.ohasd文件丢失或者损坏: 然后我们使用$GRID_HOME/crs/init/下面的文件复制过来,手工启动试试看: 下面的显示删除/etc/init.d/init.ohasd后reboot系统的结果(也可以使用kill进程的方式,不重启主机): 可以看到,当前没有任何RAC的进程被启动。 我们尝试恢复这个丢失的ohasd守护进程配置文件: 然后reboot系统后,该进程已经启动了:

发表在 Database, Linux, RAC | 标签为 , , | 留下评论

Linux7(CentOS,RHEL,OEL)和Oracle RAC环境系列-11-配置VNC和常见问题处理

在Linux7上配置VNC和以往方法不同(也是由于Linux7上的服务管理方式的变化造成的)。 安装vnc的时候,需要配置yum源,我一般选择配置本地yum源,本地yum源有两种主要方式: 1,使用vbox的共享目录 2,使用虚拟出来的光驱 配制方法跟Linux7以前的版本(Linux6和Linux5)一样,这里不赘述。 . 查看本地yum源里面可以安装的vnc包: 我一般选择tigervnc。 Linux7之前的系统,如果安装vnc一般都需要使用vncserver命令来设置口令,然后配置/etc/sysconfig/vncservers文件。 在Linux7中,仍然还存在这个文件,不过其内容只有一行: 请注意,上面文件中的重要提示,这段提示清晰的告诉我们该如何配置vnc: 好吧,按照提示,我们首先配置root用户的vnc服务启动配置文件: 然后,按照上面文件中(/lib/systemd/system/vncserver@.service)的配置方式 修改前: 修改后: 然后,重新加载systemd的配置: [root@lunar1 ~]# systemctl daemon-reload [root@lunar1 ~]# 然后,我们设置为自动启动: 启动vnc服务: 在Linux7中,VNC使用590x开始的端口号: 只配置IPv4的情况: 配置了IPv4和IPv6的情况: 设置vncserver的密码:vncpasswd root 最终root用户的vnc的配置文件: 然后使用同样的方法配置grid用户和oracle用户即可。 . 有时候vnc启动会报错,例如: 处理思路: 1,查看日志(/var/log/messages)或者使用Linux7中新引入的journalctl查看(参见前面的blog) 2,通常的问题有几类: (1)配置文件有问题。 (2)/tmp/下的临时文件因为某种原因,系统没有自动清理 (3)ghome造成的一些问题,比如修改中文语言或者英文语言后,容易出现问题 . … 继续阅读

发表在 Installation and Deinstall, Linux | 标签为 , , , , | 留下评论

Linux7(CentOS,RHEL,OEL)和Oracle RAC环境系列-10-ABRT-系统启动后自动检查和报告错误

启动vm时,Linux7会自动检查和报告错误: Abrt从Linux 6中引入的一个自动缺陷报告工具。 我们知道,Linux6中开始对新硬件热插拔特性的支持进一步增强(估计也是移动互联网和新硬件层出不穷催生的需求)。 比如,Linux6包括高级数据完整性特性(DIF/DIX),可以通过AER的PCIe设备的增强错误检查,因此就引入了ABRT(自动缺陷报告工具)。 ABRT全程是 Automatic Bug Reporting Tool,它提供了确定和报告系统异常情况,包括内核故障和用户空间应用崩溃等。 . abrt-cli就是这个工具的命令行接口,也可以使用图形界面的ABRT工具例如:gnome-abrt &。 详细信息,请参见Redhat的官方手册: https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/7/html/System_Administrators_Guide/sect-abrt-handling-problems.html . abrt-cli命令的help内容: 现在,我们根据提示查看一下错误列表: 已禁用自动报告功能。请考虑启用该功能,方法是 作为有 root 特权的用户使用命令 ‘abrt-auto-reporting enabled’ [root@lunar1 ~]# 可见,主要是由于gnome引起的,因此推荐Linux使用图形界面的时候还是KDE吧,这个感觉还是比较稳定和靠谱的。 Linux7(CentOS,RHEL,OEL)和Oracle RAC环境系列–1-简介 Linux7(CentOS,RHEL,OEL)和Oracle RAC环境系列-2-修改主机名和hostnamectl工具的使用 Linux7(CentOS,RHEL,OEL)和Oracle RAC环境系列–3-systemd(d.bin和ohasd守护进程) Linux7(CentOS,RHEL,OEL)和Oracle RAC环境系列–4-target(图形界面和字符界面) Linux7(CentOS,RHEL,OEL)和Oracle RAC环境系列–5-防火墙 Linux7(CentOS,RHEL,OEL)和Oracle RAC环境系列–6-开机自动启动或者禁用服务 Linux7(CentOS,RHEL,OEL)和Oracle … 继续阅读

发表在 Installation and Deinstall, Linux | 标签为 , , , , , | 留下评论

Linux7(CentOS,RHEL,OEL)和Oracle RAC环境系列-9-Linux 7.2上的virbr0设备

当我们安装了Linux 7.2(CentOS 7.2和 OEL 7.2都有下面的现象),缺省会安装一个虚拟网卡virbr0。 查看当前的IP信息: 这里我们看到Linux7开始使用enp0s3作为第一个缺省的网络接口名,类似于以前的eth0,当然,你后面可以修改这个缺省的网络接口名。 enp0s8是第二个网络接口名,而enp0s9就是我们新添加的第三个网络接口名。 enp0s3和enp0s8我们在安装时已经配置了网络连接和IP地址,设置了启动自动连接,因此没有问题。 enp0s9需要我们手工配置。 . 可以看出来,Linux7中缺省还有一个virbr0网络接口。 . 从网上摘录了virbr0的部分相关解释: virbr0 是一种虚拟网络接口,这是由于安装和启用了 libvirt 服务后生成的 libvirt 在服务器(host)上生成一个 virtual network switch (virbr0),host 上所有的虚拟机(guests)通过这个 virbr0 连起来。 默认情况下 virbr0 使用的是 NAT 模式(采用 IP Masquerade),所以这种情况下 guest 通过 host 才能访问外部。 . 可以看出来,virbr0是一个虚拟网卡,并且由于在Linux7.2中(CentOS … 继续阅读

发表在 Installation and Deinstall, Linux, ORACLE 12C, RAC | 标签为 , , , , , , | Comments Off on Linux7(CentOS,RHEL,OEL)和Oracle RAC环境系列-9-Linux 7.2上的virbr0设备

Linux7(CentOS,RHEL,OEL)和Oracle RAC环境系列-8-在Linux7上安装11.2 RAC和12.1 RAC需要禁用哪些服务

安装Oracle RAC的时候,通常我们会禁用一些服务,比如:防火墙,avahi-daemon等等。 avahi-daemon是一种Linux操作系统上运行在客户机上实施查找基于网络的Zeroconf service的服务守护进程。 该服务可以为Zeroconf网络实现DNS服务发现及DNS组播规范,它可以在没有 DNS 服务的局域网里发现基于 zeroconf 协议的设备和服务。 用户程序通过Linux D-Bus信息传递接收发现到网络服务和资源的通知。 一般安装Oracle RAC,建议禁用该服务。 . 我们看一下,在Linux7(Linux5和Linux6中)以前我们一般禁用的服务列很多 例如: 等等 然后,在linux7下,已经不适用chkconfig命令了,而且很多以前的服务名称和启动配置都变化了(参考blog中Linux7管理开机启动服务的相关文章) 那么我们现在怎么禁用服务,禁用哪些呢? 首先,看看系统中当前运行了哪些服务: 在前面的blog中已经有了禁用防火墙的描述,这里不赘述。 安装Oracle,除了防火墙和SELINUX以外,通常还需要禁用以下服务 Linux7以前的命令: 在Linux7中使用systemctl stop和systemctl disable: 在Linux6以前,我们使用chkconfig –list查看当前的服务,但是在Linux7中,大部分情况我们使用systemctl 如果使用chkconfig –list,则输出类似如下: 执行chkconfig的命令提示很清晰,他告诉我们,使用chkconfig将只显示SysV的服务,不包含原生 systemd服务。 我们查询一下在Linux5和6时,咱们经常禁用的服务,在Linux7中的状态: 根据上面输出,可以总结出来,还需要禁用下面这些开机自动启动的服务: (systemctl disable的作用类似于以前的chkconfig –level 2345 avahi-daemon off) … 继续阅读

发表在 Installation and Deinstall, Linux, ORACLE 12C, RAC | 标签为 , , , , , | Comments Off on Linux7(CentOS,RHEL,OEL)和Oracle RAC环境系列-8-在Linux7上安装11.2 RAC和12.1 RAC需要禁用哪些服务

Linux7(CentOS,RHEL,OEL)和Oracle RAC环境系列-7-网络管理之修改网络接口名

由于Linux7中采用了固定的网络接口名的方式,目的是如果网卡损坏可以方便的使用类似新增网卡的方法进行替换,非常简便 但是如果由于某种原因,需要修改网络接口名就很麻烦,例如想修改为以前的eth0的名称。 Linux7中,使用nmtui修改网络连接和IP地址后,可以使用重建加载配置文件的方式使新的配置生效。 需要注意的是,网络接口名称不能通过nmtui来修改(可以修改,但是修改是无效的,会被自动还原为缺省的网络接口名)。 . 下面是通过修改网络配置文件的方法来修改网络设备接口名称的过程(注意,结论是不能用此方法修改): 修改/etc/sysconfig/network-scripts/ifcfg-eth1中的两个地方: DEVICE=eth1 ———-设备名称(device) NAME=eth1 ———-连接名称(connect) 修改后: 修改后重新加载配置文件: 这样只能修改连接的名称,但是不能修改设备名称: 错误:没有找到设备 ‘eth1’。 在Linux7中修改设备名称只能禁用一致和可预测的网络设备命名规则,即,修改grub,还原到Linux6的设备命名方法: 至此,我们看到,不能通过修改配置文件的方法来改变网络接口设备名称。 那么如果一定要在Linux7中将网络设备接口名修改回以前很土的eth0有方法么? 答案是:yes。 . 我们可以通过禁用可命名规则,编辑/etc/default/grub文件来实现。 在该文件的GRUB_CMDLINE_linux=”rhgb quiet”改为GRUB_CMDLINE_LINUX=”net.ifnames=0 biosdevname=0 rhgb quiet” 运行命令grub2-mkconfig -o /boot/grub2/grub.cfg来重新生成grub配置并更新内核参数: 这里我们看到了熟悉的类似Linux6中的UDEV绑定网络设备的方式。 然后,我们reboot后,可以看到,网络接口名已经还原到了以前的样子: 现在,我们再还原回到可预测的网络设备命名网络接口的方法: Linux7(CentOS,RHEL,OEL)和Oracle RAC环境系列–1-简介 Linux7(CentOS,RHEL,OEL)和Oracle RAC环境系列-2-修改主机名和hostnamectl工具的使用 Linux7(CentOS,RHEL,OEL)和Oracle RAC环境系列–3-systemd(d.bin和ohasd守护进程) Linux7(CentOS,RHEL,OEL)和Oracle … 继续阅读

发表在 Database, Installation and Deinstall, Linux, network | 标签为 , , , , , , , , , | 留下评论

Linux7(CentOS,RHEL,OEL)和Oracle RAC环境系列-7-网络管理之修改IP地址

首先,还是确认NetworkManager服务已经启动(不启动NetworkManager也可以配置IP和connect等等): nmtui的配置和修改会自动更新/etc/sysconfig/network-scripts/下面相关的配置文件: 比如,我们使用nmtui将enp0s9的IP地址修改为192.168.209.15 这时,我们看到,nmtui已经修改了/etc/sysconfig/network-scripts/ifcfg-enp0s9的内容: 但是,此时IP地址还没有修改: [root@lunar1 ~]# ifconfig 我们查看一下名称为enp0s9的网络设备: 看一下当前所有的网络连接: 修改IP后,要使修改后的连接生效,需要重新加载配置文件: 然后重新连接设备enp0s9: 现在IP就修改好了,太方便了: Linux7(CentOS,RHEL,OEL)和Oracle RAC环境系列–1-简介 Linux7(CentOS,RHEL,OEL)和Oracle RAC环境系列-2-修改主机名和hostnamectl工具的使用 Linux7(CentOS,RHEL,OEL)和Oracle RAC环境系列–3-systemd(d.bin和ohasd守护进程) Linux7(CentOS,RHEL,OEL)和Oracle RAC环境系列–4-target(图形界面和字符界面) Linux7(CentOS,RHEL,OEL)和Oracle RAC环境系列–5-防火墙 Linux7(CentOS,RHEL,OEL)和Oracle RAC环境系列–6-开机自动启动或者禁用服务 Linux7(CentOS,RHEL,OEL)和Oracle RAC环境系列-7-网络管理之添加网 Linux7(CentOS,RHEL,OEL)和Oracle RAC环境系列-7-网络管理之修改IP地址 Linux7(CentOS,RHEL,OEL)和Oracle RAC环境系列-7-网络管理之修改网络接口名 Linux7(CentOS,RHEL,OEL)和Oracle RAC环境系列-8-在Linux7上安装11.2 RAC和12.1 RAC需要禁用哪些服务 Linux7(CentOS,RHEL,OEL)和Oracle RAC环境系列-9-Linux 7.2上的virbr0设备 Linux7(CentOS,RHEL,OEL)和Oracle RAC环境系列-10-ABRT-系统启动后自动检查和报告错误 … 继续阅读

发表在 Database, Installation and Deinstall, Linux, network | 标签为 , , , , , , | 留下评论

Linux7(CentOS,RHEL,OEL)和Oracle RAC环境系列-7-网络管理之添加网卡

在Linux5和以前的版本,缺省的网络接口名为eth0 eth1 eth[012..]等网络接口名称(NIC)。 这种方法的问题是不能一目了然的知道网卡的物理特性(如 网卡的物理位置),比如这个网卡是那个PCI插槽等等。 . 从Linux6开始,引入了一致和可预测的网络设备命名网络接口的方法(Consistent Network Device Naming)。 这种一致性网络设备命名法根据网卡的物理位置,是否是集成的还是在PCI插槽中来命名,通过这名称,能够很清楚的知道网卡的物理位置 这种方法是依靠biosdevname程序来实现的,它按照一定的规则改变原来的eth[012..]网卡名。 . 这些特性可以唯一地确定网络接口的名称以使定位和区分设备更容易,并且在这样一种方式下,无论是否重启机器、过了多少时间、或者改变硬件,其名字都是持久不变的。 但是,这种命名规则并不是默认在Liunx6上开启,因此,在Linux6中,依然可以看到网络接口名称(NIC)缺省还是eth0 eth1 eth[012..]。 但是,在Linux6中,开始使用udev来绑定网卡设备:/etc/udev/rules.d/70-persistent-net.rules。 . 从Linux7开始,一致和可预测的网络设备命名网络接口的方法(Consistent Network Device Naming)已经是缺省配置。 它的优点是: 1,根据这一规则,接口名称被自动基于固件,拓扑结构和位置信息来确定。 2,即使添加或移除网络设备,接口名称仍然保持固定,而无需重新枚举,和坏掉的硬件可以无缝替换。 . 在Linux7中/etc/udev/rules.d/70-persistent-net.rules 文件没有了,新添加的网卡NetworkManager自动识别设备名称。 它采用命名的规则类似如下: 基于接口类型的两个字母前缀: 名字类型: 例如,在Linux7中,缺省的第一块网卡名称是enp0s3,第二块是enp0s8,第3块是9……以此类推 并且这些网络接口名称缺省是不能改变的(可以使用修改内核来禁用这个新特性的方法,后续文章会陆续介绍)。 这里面就是我们安装vm时,使用的两个网卡,可以看到系统自动的缺省网络设备接口名分别是enp0s3和enp0s8。 这里还有一个virbr0,也是Linux7的新特性,后面的文章会陆续介绍,这里暂不赘述。 . 从上面的解释来看,enp0s3的含义就很清晰了: 在Linux7中,还有很多关于网络管理命令的改变,例如,在Linux7中,使用ip和ss等命令代替了以前的ifconfig route … 继续阅读

发表在 Database, Installation and Deinstall, Linux, network | 标签为 , , , , , , | 留下评论

Linux7(CentOS,RHEL,OEL)和Oracle RAC环境系列–6-开机自动启动或者禁用服务

测试目的:研究一下Linux7中,如何设置服务的开机自动启动或者不自动启动 当前的OS版本: CRS版本: Linux7使用systemd替换了SysV,Systemd目的是要取代Unix时代以来一直在使用的init系统,兼容SysV和LSB的启动脚本,而且够在进程启动过程并行加载必要的服务。 支持并行化任务 同时采用socket式与D-Bus总线式激活服务; 按需启动守护进程(daemon); 利用 Linux 的 cgroups 监视进程; 支持快照和系统恢复; 维护挂载点和自动挂载点; 各服务间基于依赖关系进行精密控制 . systemd可以创建不同的状态,状态提供了灵活的机制来设置启动时的配置项。 这些状态是由多个unit文件组成的,状态又叫做启动目标(target),unit文件可以控制服务、设备、套接字和挂载点。 systemd配置文件被称为unit单元,使用man systemd可以查看这些unit(单元)的具体定义。 根据类型不同,unit以不同的扩展名结尾。 .service系统服务; .target一组系统服务; .automount自动挂载点; .device能被内核识别的设备; .mount挂载点; .path文件系统的文件或者目录; .scope外部创建的进程; .slice一组分层次管理的系统进程; .snapshot系统服务状态管理; .socket进程间通讯套接字; .swap定义swap文件或者设备; .timer定义定时器。 . 所有可用的unit(单元文件)存放在下面的两个目录下: /etc/systemd/system/ —–优先级更高(这个目录中的内容很少,一般只有十几个) 例如: /usr/lib/systemd/system/ —这个目录是一些Unit的socket,targt等等 … 继续阅读

发表在 Installation and Deinstall, Linux, ORACLE 12C | 标签为 , , , , , | Comments Off on Linux7(CentOS,RHEL,OEL)和Oracle RAC环境系列–6-开机自动启动或者禁用服务

Linux7(CentOS,RHEL,OEL)和Oracle RAC环境系列–5-防火墙

一般安装Oracle,我们会禁用防火墙和SELINUX等一些列服务,并设置开机不自动启动(disable这些服务)。 比如,防火墙,在Linux7以前的命令: service NetworkManager stop service iptables stop service ip6tables stop 还可以使用systemctl查看防火墙服务: 当前防火墙的服务是开启的,并且开机自动启动,开机自动启动时读取/usr/lib/systemd/system/firewalld.service定义文件。 关闭防火墙: 设置开机不自动启动防火墙服务: 这里看到开机不自动启动的本质是在/etc/systemd/system/中删除防火墙服务的定义文件 再次查看防火墙状态: 上述说明防火墙服务已经被安装了,但是没有设置为自动启动。 可以看到,在Linux7中,systemctl disable一个服务,其本质是将该服务的配置文件的link删除。 然后,将该服务实际的配置文件内容修改为开机不启动进程: 其中: 这个表示firewalld.service要先于上面3个服务启动: 下面的设置表示不fork进程,没有pid: 检查iptables和ip6tables: 可以看到当前服务没有启动,且没有安装这个服务: 如果安装的服务会有类似下面的信息: Linux7(CentOS,RHEL,OEL)和Oracle RAC环境系列–1-简介 Linux7(CentOS,RHEL,OEL)和Oracle RAC环境系列-2-修改主机名和hostnamectl工具的使用 Linux7(CentOS,RHEL,OEL)和Oracle RAC环境系列–3-systemd(d.bin和ohasd守护进程) Linux7(CentOS,RHEL,OEL)和Oracle RAC环境系列–4-target(图形界面和字符界面) Linux7(CentOS,RHEL,OEL)和Oracle RAC环境系列–5-防火墙 Linux7(CentOS,RHEL,OEL)和Oracle RAC环境系列–6-开机自动启动或者禁用服务 Linux7(CentOS,RHEL,OEL)和Oracle … 继续阅读

发表在 Installation and Deinstall, Linux, ORACLE 12C, RAC | 标签为 , , , , , | 留下评论