Oracle Linux 6.1 下修改 /etc/fstab 使 tmpfs 生效 方法 说明

在Oracle 11g安装中,会经常遇到如下2种问题:

解决方法都是在:/etc/fstab中添加参数,让系统启动时自动加载配置:

 tmpfs            /dev/shm       tmpfs  defaults,size=3G       0 0 

tmpfs 的值默认情况是为系统内存的一半,这种配置放在,在RedHat 系统下可以正常使用,但是我在Oracle Linux 6.1 下测试,发现这个参数不能生效,即使这里设成3G,OS 启动完毕后,查看tmpfs 的大小还是会变成内存的一半。 

需要在启动之后,手工的mount一下才可以生效:

[root@rac1 ~]# df -lh

Filesystem            Size  Used Avail Use% Mounted on

/dev/sda3              14G   11G 2.4G  83% /

tmpfs                 3.0G     0 3.0G   0% /dev/shm

/dev/sda1             194M   46M 139M  25% /boot

tmpfs                 3.0G     0 3.0G   0% /dev/shm

 

[root@rac1 ~]# cat /etc/fstab

 

#

# /etc/fstab

# Created by anaconda on Tue Nov 2213:02:55 2011

#

# Accessible filesystems, by reference, aremaintained under '/dev/disk'

# See man pages fstab(5), findfs(8),mount(8) and/or blkid(8) for more info

#

UUID=b1d2de8e-de31-4deb-b4e8-755c0ed01616/                       ext4    defaults        1 1

UUID=4df5aa5f-8ef0-473a-931a-51d11e21aa53/boot                   ext4    defaults        1 2

UUID=82085104-5021-4aaf-8e85-f213998107b6swap                    swap    defaults        0 0

tmpfs                   /dev/shm                tmpfs   defaults,size=3G                  0 0

devpts                  /dev/pts                devpts  gid=5,mode=620  0 0

sysfs                   /sys                    sysfs   defaults        0 0

proc                    /proc                   proc    defaults        0 0

[root@rac1 ~]# 

因此如果我们只修改/etc/fstab,在Oracle Linux6.1 下没有影响。 

我们还需要修改另一个配置文件,才可以使fstab中tmpfs的修改生效:/etc/rc.d/rc.sysinit 

第一步:注释如下语句

#mount -f /dev/shm >/dev/null2>&1 

第二步:

在rc.sysinit 中找到如下内容:

# Mount all other filesystems (except forNFS and /proc, which is already

# mounted). Contrary to standard usage,

# filesystems are NOT unmounted in singleuser mode.

if [ "$READONLY" !="yes" ] ; then

       action $"Mounting local filesystems: " mount -a -tnonfs,nfs4,smbfs,ncpfs,cifs,gfs,gfs2 -O no_netdev

else

       action $"Mounting local filesystems: " mount -a -n -tnonfs,nfs4,smbfs,ncpfs,cifs,gfs,gfs2 -O no_netdev

fi 

在如下部分里添加tmpfs 这个类型进去:

if [ "$READONLY" !="yes" ] ; then

       action $"Mounting local filesystems: " mount -a -t tmpfs,nonfs,nfs4,smbfs,ncpfs,cifs,gfs,gfs2 -O no_netdev

else

       action $"Mounting local filesystems: " mount -a -n -t tmpfs,nonfs,nfs4,smbfs,ncpfs,cifs,gfs,gfs2 -Ono_netdev

fi 

然后重启OS:

[root@rac1 ~]# df -lh

Filesystem            Size  Used Avail Use% Mounted on

/dev/sda3              14G   11G 2.4G  83% /

tmpfs                 3.0G   88K 3.0G   1% /dev/shm

/dev/sda1             194M   46M 139M  25% /boot 

现在重启之后,tmpfs 就可以自动按照我们设定的值进行变化了。

相关推荐