<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0">
<channel>
<title><![CDATA[向东博客 专注WEB应用 构架之美 --- 构架之美，在于尽态极妍 | 应用之美，在于药到病除]]></title> 
<link>http://www.jackxiang.com/index.php</link> 
<description><![CDATA[赢在IT，Playin' with IT,Focus on Killer Application,Marketing Meets Technology.]]></description> 
<language>zh-cn</language> 
<copyright><![CDATA[向东博客 专注WEB应用 构架之美 --- 构架之美，在于尽态极妍 | 应用之美，在于药到病除]]></copyright>
<item>
<link>http://www.jackxiang.com/post//</link>
<title><![CDATA[修改/dev/shm的大小]]></title> 
<author>jack &lt;xdy108@126.com&gt;</author>
<category><![CDATA[Unix/LinuxC技术]]></category>
<pubDate>Sat, 14 Jun 2014 07:12:35 +0000</pubDate> 
<guid>http://www.jackxiang.com/post//</guid> 
<description>
<![CDATA[ 
	背景：<br/>root@119.10.*.23:/dev/shm# df -hT&nbsp;&nbsp;&nbsp;&nbsp; <br/>文件系统&nbsp;&nbsp;&nbsp;&nbsp;类型&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;容量&nbsp;&nbsp;已用&nbsp;&nbsp;可用 已用%% 挂载点<br/>/dev/sda3&nbsp;&nbsp;&nbsp;&nbsp; ext4&nbsp;&nbsp;&nbsp;&nbsp; 14G&nbsp;&nbsp;5.4G&nbsp;&nbsp;7.3G&nbsp;&nbsp;43% /<br/>tmpfs&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;tmpfs&nbsp;&nbsp;&nbsp;&nbsp;2.9G&nbsp;&nbsp;&nbsp;&nbsp; 0&nbsp;&nbsp;2.9G&nbsp;&nbsp; 0% /dev/shm<br/>/dev/sda1&nbsp;&nbsp;&nbsp;&nbsp; ext4&nbsp;&nbsp;&nbsp;&nbsp;504M&nbsp;&nbsp; 43M&nbsp;&nbsp;436M&nbsp;&nbsp; 9% /boot<br/>/dev/sdb&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ext4&nbsp;&nbsp;&nbsp;&nbsp; 94G&nbsp;&nbsp;284M&nbsp;&nbsp; 89G&nbsp;&nbsp; 1% /data<br/><br/>vi /etc/fstab<br/>tmpfs&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /dev/shm&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;tmpfs&nbsp;&nbsp; defaults&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;0 0<br/>——————————————文章学习——————————————<br/>修改/etc/fstab的这行： 默认的：<br/>none /dev/shm tmpfs defaults 0 0<br/>改成：<br/>none /dev/shm tmpfs defaults,size=1024M 0 0<br/>size参数也可以用G作单位：size＝1G。<br/>重新mount /dev/shm使之生效：<br/># mount -o remount /dev/shm<br/>马上可以用&quot;df -h&quot;命令检查变化。<br/><br/><br/>------------------------------------------------------------<br/>一、/dev/shm理论<br/>默认的Linux发行版中的内核配置都会开启tmpfs，映射到了/dev/下的shm目录。可以通过df 命令查看结果.<br/>/dev/shm/是linux下一个非常有用的目录，因为这个目录不在硬盘上，而是在内存里。因此在linux下，就不需要大费周折去建ramdisk，直接使用/dev/shm/就可达到很好的优化效果。默认系统就会加载/dev/shm ，它就是所谓的tmpfs，有人说跟ramdisk（虚拟磁盘），但不一样。象虚拟磁盘一样，tmpfs 可以使用您的 RAM，但它也可以使用您的交换分区来存储。而且传统的虚拟磁盘是个块设备，并需要一个 mkfs 之类的命令才能真正地使用它，tmpfs 是一个文件系统，而不是块设备；您只是安装它，它就可以使用了。 <br/>tmpfs有以下优势： <br/>1。动态文件系统的大小，/dev /shm/需要注意的一个是容量问题，在linux下，它默认最大为内存的一半大小，使用df -h命令可以看到。但它并不会真正的占用这块内存，如果/dev/shm/下没有任何文件，它占用的内存实际上就是0字节；如果它最大为1G，里头放有 100M文件，那剩余的900M仍然可为其它应用程序所使用，但它所占用的100M内存，是绝不会被系统回收重新划分的 <br/>2。tmpfs 的另一个主要的好处是它闪电般的速度。因为典型的 tmpfs 文件系统会完全驻留在 RAM 中，读写几乎可以是瞬间的。 <br/>3。tmpfs 数据在重新启动之后不会保留，因为虚拟内存本质上就是易失的。所以有必要做一些脚本做诸如加载，绑定的操作。 <br/><br/>二、修改/dev/shm大小<br/>默认的最大一半内存大小在某些场合可能不够用，并且默认的inode数量很低一般都要调高些，这时可以用mount命令来管理它。<br/>#mount -o size=1500M -o nr_inodes=1000000 -o noatime,nodiratime -o remount /dev/shm<br/>在2G的机器上，将最大容量调到1.5G，并且inode数量调到1000000，这意味着大致可存入最多一百万个小文件。<br/>如果需要永久修改/dev/shm的值，需要修改/etc/fstab<br/>tmpfs /dev/shm tmpfs defaults,size=1.5G 0 0<br/>mount -o remount /dev/shm<br/><br/><br/>三、/dev/shm应用<br/>　　首先在/dev/shm建个tmp文件夹，然后与实际/tmp绑定<br/>　　#mkdir /dev/shm/tmp<br/>　　#chmod 1777 /dev/shm/tmp<br/>　　#mount –bind /dev/shm/tmp /tmp（–bind ）<br/>　　在使用mount –bind olderdir newerdir命令来挂载一个目录到另一个目录后，newerdir的权限和所有者等所有信息会发生变化。挂载后的目录继承了被挂载目录的所有属性，除了名称。Oracle 11g的amm内存管理模式就是使用/dev/shm，所以有时候修改MEMORY_TARGET或者MEMORY_MAX_TARGET会出现ORA-00845的错误<br/><br/>来自：http://blog.csdn.net/heyutao007/article/details/7051269<br/>http://blog.163.com/szu_2011/blog/static/1966020772011101494921603/
]]>
</description>
</item><item>
<link>http://www.jackxiang.com/post//#blogcomment</link>
<title><![CDATA[[评论] 修改/dev/shm的大小]]></title> 
<author> &lt;user@domain.com&gt;</author>
<category><![CDATA[评论]]></category>
<pubDate>Thu, 01 Jan 1970 00:00:00 +0000</pubDate> 
<guid>http://www.jackxiang.com/post//#blogcomment</guid> 
<description>
<![CDATA[ 
	
]]>
</description>
</item>
</channel>
</rss>