修改 /dev/shm

本文介绍了tmpfs文件系统的优点及其与虚拟磁盘的区别,并详细解释了如何调整/tmpfs的大小,包括修改配置文件及重新挂载等步骤。
    默认系统就会加载/dev/shm,它就是所谓的tmpfs,有人说跟ramdisk(虚拟磁盘),但不一样.象虚拟磁盘一样,tmpfs可以使用您的RAM,但它也可以使用您的交换分区来存储.而且传统的虚拟磁盘是个块设备,并需要一个 mkfs 之类的命令才能真正地使用它,tmpfs 是一个文件系统,而不是块设备;您只是安装它,它就可以使用了.
 
tmpfs有以下优势: 
    1.tmpfs 的另一个主要的好处是它闪电般的速度.因为典型的tmpfs文件系统会完全驻留在RAM 中,读写几乎可以是瞬间的.
    2.tmpfs数据在重新启动之后不会保留,因为虚拟内存本质上就是易失的.所以有必要做一些脚本做诸如加载,绑定的操作.通常使用/dev/shm作共享内(shm_open,shm_unlink)。 /dev/shm是个临时文档系统(tmpfs),能够从/etc/fstab中mount。因此,支持标准的参数例如"size",能够用来增加或减少在/dev/shm上的tmpfs大小.(默认的,他的大小是系统RAM的一半)

查看tmpfs的情况
[oracle@primary ~]#df -h
[oracle@primary ~]$ df -h
文件系统      容量  已用  可用 已用%% 挂载点
/dev/sda2              27G   15G  9.9G  61% /
tmpfs                 1.2G  727M  474M  61% /dev/shm
[oracle@primary ~]top
top - 12:55:03 up 29 min,  4 users,  load average: 1.40, 1.21, 0.63
Tasks: 195 total,   3 running, 192 sleeping,   0 stopped,   0 zombie
Cpu(s): 13.1%us,  7.7%sy,  0.0%ni,  0.0%id, 77.5%wa,  0.0%hi,  1.7%si,  0.0%st
Mem:   2055112k total,  1799452k used,   255660k free,     2012k buffers
Swap:  3583996k total,     2764k used,  3581232k free,  1192364k cached
可以看出/dev/shm的大小是系统物理内存的一半.
 
调整/dev/shm的大小 
1)查看大小 
[oracle@primary ~]#df -h /dev/shm
文件系统      容量  已用  可用 已用%% 挂载点
tmpfs                 1.2G  719M  482M  60% /dev/shm
 
2)修改大小 
[oracle@primary ~]vi /etc/fstab
tmpfs                   /dev/shm                tmpfs   defaults,size=1200M        0 0
 
3)重新挂载 
[oracle@primary ~]mount -o remount /dev/shm
 
4)查看修改后的大小 
[oracle@primary ~]df -h /dev/shm 
### 修改或配置 `/dev/shm` 的方法 #### 配置持久化设置 为了使对 `/dev/shm` 的修改在系统重启后仍然生效,在统信操作系统中可以通过编辑 `fstab` 文件来实现。具体操作如下: 打开终端并使用管理员权限编辑 `/etc/fstab` 文件: ```bash sudo vi /etc/fstab ``` 向文件末尾追加一行,指定新的挂载参数以覆盖默认设置[^1]: ```text tmpfs /dev/shm tmpfs defaults,size=2G 0 0 ``` 这行配置表示将 `tmpfs` 类型的虚拟文件系统挂载至 `/dev/shm` 路径下,并设定其容量上限为2GB。 #### 动态调整当前会话中的 `/dev/shm` 如果仅需临时更改而不希望影响后续启动,则可以直接运行带有适当选项的 `mount` 命令来进行即时调整: ```bash sudo mount -o remount,size=4G /dev/shm ``` 上述命令重新挂载现有的 `/dev/shm` 并将其大小更改为4GB。 #### 绑定其他路径到 `/dev/shm` 对于某些特定需求,可能还需要创建子目录或将外部位置绑定到这里面。例如先建立一个名为 `tmp` 的新文件夹再做绑定[^2]: ```bash mkdir /dev/shm/tmp sudo mount --bind /path/to/source /dev/shm/tmp ``` 这里假设源路径位于 `/path/to/source` 下;此方式允许应用程序透明地访问该共享内存区域内的资源而无需改变原有逻辑。 #### 检查改动效果 完成以上任一形式的操作之后,建议立即验证结果是否符合预期。可以借助于 `df -h` 工具查看最新的空间分配情况[^3]: ```bash df -h /dev/shm ``` 这条指令能清晰展示出目标分区的实际可用存储量以及已占用比例等重要信息。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值