防止应用程序内存不足的最简单方法之一是增加 服务器 中的swap交换空间大小。在本文中,我们将解释如何向Ubuntu服务器增加swap交换空间。
步骤1:检查swap交换空间信息
在开始之前,首先运行以下命令,确保检查系统是否已经有可用的交换空间。
检查Ubuntu中的交换空间
如果您没有看到任何输出,则表示您的系统当前没有可用的交换空间。
您还可以使用free命令确认没有可用的交换空间。
您可以从上面的输出中看到,系统上没有活动交换。
第2步:检查分区上的可用空间
要创建交换空间,首先需要检查当前的磁盘使用情况,并确认有足够的空间在系统上创建交换文件。
检查Ubuntu中的文件系统磁盘使用情况
再的分区有足够的空间可用于创建swap文件。
第3步:在Ubuntu中创建swap文件
现在我们将使用fallocate命令在我们的Ubuntu根(/)目录上创建一个名为“swap.img”的交换文件(大小为1GB),您可以根据需要调整大小。并使用ls命令验证交换的大小 如图所示。
在Ubuntu中创建swap文件
从上面的输出中,您可以看到我们已经创建了具有正确空间量(即1GB)的交换文件。
第4步:在Ubuntu中启用swap文件
要在Ubuntu中启用swap文件,首先需要在文件上设置正确的权限,以便只有root用户才能访问该文件。
在交换文件上swap权限
从上面的输出中,您可以看到只有root用户具有读写权限。
现在运行以下命令将文件标记为swap交换空间,并启用交换文件以开始在系统上使用它。
在Ubuntu中启用swap交换空间
通过运行以下命令验证交换空间是否可用。
验证Ubuntu中的交换空间
从上面的输出中可以看出,我们的新交换文件已经成功创建,我们的Ubuntu系统将在必要时开始使用它。
第5步:在Ubuntu中永久挂载交换文件
要使交换空间永久化,您需要在/etc/fstab文件中添加交换文件信息,并通过运行以下命令对其进行验证。
第6步:调整Ubuntu中的交换设置
您需要配置一些设置,这些设置会影响您在使用交换时的Ubuntu性能。
调整Swappiness值
Swappiness是一个Linux内核参数,用于指定系统将数据从RAM交换到交换空间的频率(以及频率)。 此参数的默认值为“60”,它可以使用“0”到“100”之间的任何值。 值越高,内核使用的交换空间越高。
首先,键入以下命令检查当前的swappiness值。
检查Swappiness值
当前的swappiness值为60非常适合桌面使用,但对于服务器,您必须将其设置为较低的值,即10。
要使此设置永久化,您需要将以下行添加到/etc/sysctl.conf文件中。
vm.swappiness=10
调整缓存压力设置

您可能想要更改的另一个类似设置是vfs_cache_pressure – 此设置指定系统要在其他数据上缓存inode和dentry详细信息的程度。
您可以通过查询proc文件系统来检查当前值。
检查缓存压力设置
当前值设置为100,这意味着我们的系统会过快地从缓存中删除inode信息。 我建议,我们应该将它设置为更稳定的设置,如50。
要使此设置永久化,您需要将以下行添加到/etc/sysctl.conf文件中。
vm.vfs_cache_pressure=50
完成后保存并关闭文件。
第7步:删除Ubuntu中的交换文件
要删除或删除新创建的交换文件,请运行以下命令。
最后,从/etc/fstab文件中删除交换文件条目。
就这样! 在本文中,我们已经解释了如何在Ubuntu发行版上创建swap交换文件。 如果您对本文有任何疑问,请随时在下面的评论部分提出您的问题。
安装ubuntu14.04空闲50g如何分?
/boot100~200M/50Gswap2G/home 剩余的实际上安装Ubuntu只需要 根目录 / 和 交换空swap/boot和/home等都是挂着根目录下的,即使不分出来也会自动调整他们的大小的。即/home等使用多少给你多大的空间
如何装Linux与XP双系统
xp下装linux,有些麻烦,首先linux是不能跟xp共存的,你所说的c盘、d盘只是在微软下的名词,D盘是xp下的,所以是不能在D盘下装linux的!至于装什么版本,既然是实验用的,推荐Red hat 9,理由就是我现在就在用呵呵,建议装纯文本的,跑起来嗷嗷爽快!下面说下如何xp下装linux:(引自鸟哥私房)由于Linux无法安装在Windows的分区上,所以必须在硬盘中分割出一块领地专供Linux使用,这里推荐用分区魔术师进行无损分区。 为了方便讲述,这里先举一个实例来说明:装有Windows XP计算机有一个30GB的硬盘,共分三个区(C盘、D盘、和E盘),其中E盘有16.6GB(有约7GB可用空间)。 我们的目标是将7GB的可用空间剥离出来专供Red Hat使用。 1.首先在Windows XP里启动分区魔术师,从主窗口可以看到磁盘分区的详细信息。 单击右侧详细窗格里的分区E以选中它。 2.单击左侧任务列表里的“调整一个分区的容量”命令,即可弹出一个“调整容量/移动分区”对话框。 3.在该对话框的顶部有一个条状图表示分区E的使用情况,其中左侧的黑色条部分表示已用空间,右侧的绿色条部分表示可用空间。 可以用鼠标直接拖曳绿色条部分对E盘容量进行调整。 很显然,E盘的最小容量就是已用空间的容量(在小就要破坏原有数据了),减小的容量就成了自有空间。 4.单击“确定”按钮,回到主界面,此时我们可以看到新划分出的7GB自由空间。 接下来的步骤非常重要。 尽管这7GB的磁盘空间已经是“自由身”,但是它还是属于Windows的扩展分区,所以要将这7GB的自由空间从Windows扩展分区里划分出去。 5.单击扩展分区以选中它,如图1所示。 用类似的方法将这7GB自由空间从Windows扩展DOS分区里划分出去。 现在我们已经从Windows XP的领地里割出一块7GB的自由空间供Linux专用。 图1 将自由空间从扩展分区里划分出去 注意,一定要将自由空间从Windows扩展分区里划分出去,这是因为Linux的分区格式和Windows并不完全兼容。 如果Red Hat所使用的磁盘空间属于Windows扩展分区,就会导致“水土不服”。 很多朋友反映装上了Red Hat以后,发现Windows速度变得奇慢,就会归咎于Red Hat,其实根本原因在于分区的时候没有将自由空间从扩展分区里剥离出去。 实现Windows与Linux双重引导有多种方法: ◆ 对于具有双硬盘的用户,可以将Linux安装在第二个硬盘上(Windows自然是安装在第一个硬盘上),并且确保将GRUB(LILO)安装在第二个硬盘的主引导扇区,然后每次开机时在BIOS里指定从哪个硬盘引导即可。 ◆ 最常用的方法是借助Linux的引导装载管理器GRUB(LILO),自动接管双重系统的启动选单。 ◆ 可以借助Windows XP的NT引导程序ntldr、来实现双重启动。 这种方法的优点是今后删除Linux比较方便,而且符合我们的使用习惯;缺点是实现起来相对比较复杂,需要获取Linux系统的引导映像文件。 ◆ 可以选择不安装Linux的引导装载管理器(或者不要安装在主引导扇区),但是要记住在安装过程中一定要创建Linux启动盘。 今后需要时,用这张启动盘引导系统进入Linux。 这里介绍了四种双重系统的实现方案,本文将分别介绍比较常见的第二和第三种方法。 使用Linux引导管理器 Linux有GRUB和LILO两种引导管理器。 从Red Hat 7.2版本开始,GRUB取代LILO成为了默认的启动装载程序,可见GRUB有其过人之处。 相对来说,GRUB的使用和配置更加简单,功能更加强大,而且是今后的发展方向。 所以此处推荐大家使用GRUB作为双重系统的引导管理器。 假设使用Red Hat Linux 9.0的安装光盘进行安装。 首先是修改系统BIOS设置,以启用光盘开机,然后用第一张Linux安装光盘引导系统,等出现欢迎屏幕时按回车,即可进入图形化安装界面。 1.选择定制安装 安装过程非常简单,一开始会提示选择安装语言(自然要选择熟悉的简体中文),然后系统会提示进行鼠标、键盘配置。 一般Linux会自动检测出相关设备,无需更改。 接下来将进入安装类型选择页面,一共有五个选项,分别是个人桌面、工作站、服务器、定制和升级现存系统。 这里我们选择自由度最高的“定制”安装类型,如图2所示。 图2 选择安装类型 2.创建Linux分区 创建Linux分区是难点。 此处选择“用Disk Druid手工分区”,在接下来的页面上选中刚刚划分出来的7GB自由空间,然后单击“新建”按钮,即可创建Linux分区。 对于初学者,可以只分三个分区: (1)引导分区 在弹出的“添加分区”对话框上,在剩余空间创建引导分区,挂载点为/boot,容量可以是100MB,文件系统是ext3,如图3所示。 图3 创建引导分区 (2)交换分区 必须要创建交换分区。 交换分区是一个特殊的分区,类似于Windows XP里的页面文件,它没有挂载点的概念。 此处只需选择文件类型为swap,假设内存容量是128MB,则交换分区容量可以设为256MB。 (3)根分区 在弹出的“添加分区”对话框上,选择挂载点为“/”,选择文件系统为ext3,可以将剩余的容量全部分配给根分区(注意应该适当留一点空间,否则系统会报错),容量大小不低于1.5GB。 Linux环境下没有Windows的C、D盘符概念,每一个Linux分区必须挂载到Linux目录树上才可以使用。 这里有一个特殊的分区,就是根目录/,这个目录是必须的,它是Linux目录树的根。 引导管理器的配置 创建好Linux分区,接下来就是重头戏——Linux引导管理器的配置。 图4就是引导装载程序配置界面。 由图4可以看到,图中的引导系统列表里已经出现了两个选项,一个Windows XP(此处认作DOS),另一个自然就是Red Hat了。 在这个安装向导页面,可以做以下设置: 图4 引导装载器的配置 (1)改变默认启动系统 Linux引导管理器默认引导Linux,可以在这里加以修改,例如可以勾选Windows XP(此处是DOS)前面的“默认”复选框,也可以在安装完成后,修改/boot/grub/文件达到同样目的。 (2)添加别的操作系统 有时候,GRUB不一定能够检测出系统里的所有操作系统,这时候就需要进行人工添加。 单击如图4所示页面上的“添加”按钮,即可打开一个“映像”对话框,可以在“标签”文本框输入该操作系统的名称,例如“Windows 98”,在“设备”下拉列表指定该操作系统的系统分区所在的位置,并确定是否选择该操作系统为默认引导系统。 (3)编辑默认项目标签 可能大家早就看不惯Red Hat居然还把Windows XP看成是DOS。 不过单击图4页面上的“编辑”按钮可以指定其标签,如图5所示。 图5 指定启动选单的名称 完成了这一步,Windows与Linux双重系统安装就大局已定。 接下来的操作比较简单,按照屏幕提示即可轻松完成。 不过,千万别忘记创建一张Linux启动盘,以备不时之需。 使用ntldr实现双重引导 使用ntldr引导Windows和Linux双系统,要比GRUB麻烦得多。 这是因为Windows无法识别Linux分区,所以不能检测出Red Hat Linux的存在。 为了能够让ntldr乖乖“听话”,需要对其进行“手术”。 为了方便大家理解,先对Windows引导管理器的原理做一简单介绍。 ntldr是由配置文件提供工作参数的,该文件位于Windows XP系统分区的根目录下,具有隐藏、系统、只读属性。 我们只需要将Red Hat Linux的引导记录作为一个文件备份到C盘的根目录下,并相应地在文件里添加一个项目来指向它们,就可以实现双重系统了。 假设要进行Windows XP和Red Hat Linux双重启动,最好先安装Red Hat Linux,再安装Windows XP。 道理很简单,如果先安装Windows XP,那么后安装的Red Hat会自作主张用它的引导管理器强占ntldr的地盘,导致无法用ntldr来引导多重系统。 下面介绍如何保存Red Hat Linux 9.0引导扇区。 1.在Red Hat环境下备份引导扇区 安装完小红帽以后(假设安装在/dev/hda6分区)别忙着安装Windows XP,先进入小红帽,打开终端窗口,在里面键入以下命令: dd bs=512 count=1 if=/dev/hda6 of= 该命令的作用就是把Red Hat Linux引导扇区保存为一个文件,可以将其备份到软盘上。 然后安装Windows XP(假设安装在C盘上)。 安装完成以后,再把这个文件拷贝到C盘根目录下。 编辑C盘根目录下的文件(注意事先去除其系统、只读属性),在里面添加下面命令: C:\=Red Hat Linux 9.0 保存该文件,请别忘了将、件设置回系统、隐藏和只读属性,以免今后误操作。 需要指出的是,如果先安装Windows XP也可以,不过要记住两点: (1)在安装Linux引导管理器时,切记不要把引导管理器安装在主引导记录上(以免覆盖Windows的引导管理器); (2)千万记住要制作一张Linux引导盘。 后面的任务就简单了,安装完Red Hat Linux,用Linux启动盘引导系统进入Red Hat Linux,然后用同样的dd命令制作文件。 2.在Windows XP环境下备份Linux引导扇区 尽管在Red Hat环境下备份Linux引导扇区比较简单,但是对于大多只熟悉Windows的朋友来说,还是显得有些麻烦。 所以本文将介绍如何在Windows环境下备份Linux引导扇区。 这里可以分两步走,首先是找出Linux引导扇区的扇区数,然后再将该扇区保存为一个备份文件。 (1)用分区魔术师查找Linux的起始扇区 要在Windows环境下保存Linux分区的引导扇区,就必须知道该引导扇区的扇区号。 借助分区魔术师,在分区魔术师8.0的主窗口里定位Linux的/boot分区,用鼠标右键单击该/boot分区,选择“Properties”选单项。 然后在打开的“Partition Properties”对话框切换到“Partition Info”标签页,找到“First physical sector”(第一物理扇区)的扇区数,如图6所示,本例是。 图6 查看引导扇区的扇区号 (2)用Dskprobe备份引导扇区 知道了Linux引导扇区号,就可以借助磁盘工具来备份。 这里推荐大家使用Dskprobe,它位于Windows 2000/XP安装光盘里的\SUPPORT\TOOLS目录下的压缩包下。 先关闭分区魔术师,然后双击图标启动Dskprobe。 由于启动后并未读入任何数据,所以显示的是全零的扇区信息。 接下来单击程序界面上的“Drives”选单→“Pysical Drive”选单项,弹出如图7所示的“Open Pysical Drive”对话框。 图7 选择合适的硬盘 可以看到该对话框里“Available Physical Drives”列表框里列出了两块磁盘,如果是单硬盘系统,将只列出PhysicalDrive0(第一块物理硬盘)。 双击所需的物理硬盘,可以看到“Close Handle”和“Set Active”这两个按钮被激活,先单击“Set Active”按钮,然后再单击“OK”按钮,即可返回到主界面。 单击主界面上的“Sectors”选单→“Read”选单项,打开“Read Sectors”对话框。 在“Starting Sector”文本框里输入刚才通过分区魔术师的扇区数(本例是),在“Number of”文本框里输入1,然后单击“Read”按钮,则显示如图8所示的界面,这就是Linux的/boot分区的引导扇区的内容。 图8 Linux分区引导扇区内容 单击“File”选单→“Save as”选单项,指定保存位置(C盘根目录)、文件名(假设是)即可,然后在文件里添加合适的项C:\=Red Hat Linux 9.0即可。 一切就绪以后,再重启系统。 此时出现了Windows XP启动选单,可以根据需要选定进入哪个系统。
能知道究竟是那个进程使用了swap吗
在linux交换分区由系统管理.对于程序是透明的. 程序本身并不知道自己是处于交换分区,还是在真正的内存里. 程序运行完之后,空间释放与否由操作系统决定. 个人认为,一般情况,如果空间宽裕不会释放.只会标识为未使用.
发表评论