linux swap分区
DeepinLinux手动配置Swap分区
DeepinLinux手动配置 Swap分区
1. 进入终端,并进入超级管理员模式:
sudo su
2. 切换目录到/dev,并赋予所有设备权限
cd /dev chmod 777 -R /dev
格式化你要作为swap盘的设备,这里是/dev/sda4
Mem:
11Gi 1.3Gi 8.1Gi 391Mi 1.8Gi 9.2Gi
Swap:
15Gi
0B 15Gi
5. 使deepin在开机启动时,自动启用swap。
方法:在/etc/fstab文件的末尾加一行 /dev/sda4 swap swap defaults 0 0
vim /etc/fstab
/dev/sda4 swap swap defaults 0 0
保存,重启后应该就没问题了。
mkswap /dev/sda4
* 注意,可以先用e2label看一看卷标,确定没搞错:
e2label /dev/sda4
4. 开始使用swap盘:
swapon /dev/sda4
* 开启之后,可以用free命令查看是否开启成功
free -h
total used free shared buff/cache available
Linux中有几个分区?分别是什么?
Linux中有几个分区?分别是什么?在Linux系统中,默认可分为三个分区,分别是:boot分区、swap分区、根分区,接下来小编通过这篇文章详细为大家介绍一下这三个分区。
1、boot分区在Linux中,boot是存储内核及在引导过程中使用文件的分区,是启动Linux时使用的一些核心文件;在boot中包括了系统kernel的配置文件、启动管理程序GRUB的目录、启动时的模块供应的主要来源Initrd文件和vmlinuz文件。
/boot分区就是操作系统的内核及在引导过程中使用的文件,一般是几年前的版本要求划分的一个区,大小为100MB左右,但现在的新版本都不需要对这个分区进行单独划分,也就是说你完全可以不分/boot。
安装Linux只要求两个基本分区,即根分区及交换分区,如果你的磁盘空间足够大,可以多划分空间给根分区,你也可以把常用的目录新建到桌面,如下载的软件包,放到桌面不影响你进入Linux系统的速度,当然这要求你有足够大的根分区。
2、swap分区swap就是Linux下的虚拟内存分区,它的作用是在物理内存使用完之后,将磁盘空间虚拟成内存来使用。
它和Windows系统的交换文件作用类似,但是它是一段连续的磁盘空间,并且对用户不可见。
需要注意的是,虽然这个swap分区能够作为虚拟的内存,但它的速度比物理内存可是慢多了,因此如果需要更快的速度的话,并不能寄厚望于SWAP,最好的办法仍然是极大物理内存。
SWAP分区只是临时的解决办法。
交换分区的合理值一般在内存的2倍左右?一种流行的说法是,安装Linux系统时,交换分区swap的大小应该是内存的两倍。
也就是说,如果内存是2G,那么就应该分出4G的硬盘空间作为交换空间。
其实这是严重的浪费。
真实的情况是:可以根据你系统内存的大小,以及所使用的程序,自行决定交换分区的大小,甚至可以完全不用交换分区。
3、根分区所谓根分区,说白了就是系统分区,是root分区,所有的东西都放在这里面。
linuxswap扩容的操作和流程
linuxswap扩容的操作和流程在Linux系统中,Swap是一块专门用于存储暂时不活动的内存数据的磁盘空间,可以作为物理内存的扩展。
当物理内存不足时,系统会将一部分暂时不活动的数据从内存中交换出来,释放出物理内存空间供活动数据使用。
当Swap分区的大小不足时,可以进行扩容操作来增加Swap分区的大小。
下面是Linux系统中扩容Swap的流程和操作步骤:1.检查当前Swap分区的情况:打开终端,并使用以下命令查看当前Swap分区的信息:```swapon --show # 查看当前的Swap情况free -h # 查看内存和Swap的使用情况cat /etc/fstab # 查看是否有Swap分区的配置信息```2.创建新的Swap分区:如果系统没有预留的未分配空间用于扩展Swap分区,需要通过新建分区来获得更多的空间。
- 使用fdisk工具创建新的分区:1. 运行`sudo fdisk -l`命令来列出系统上的磁盘分区信息,找到一个未分配的空间。
2. 运行`sudo fdisk /dev/sdX`命令,将sdX替换为找到的未分配空间所在的磁盘。
3. 进入fdisk界面,按下`n`键新建分区,按照提示选择分区类型和大小。
4. 按下`w`键保存分区表并退出fdisk。
3.格式化新的Swap分区:- 运行`sudo mkswap /dev/sdXN`命令,将sdXN替换为新创建的Swap分区的设备名。
- 运行`sudo swapon /dev/sdXN`命令来启用新创建的Swap分区。
- 运行`sudo swapon --show`命令,确认新的Swap分区已经成功启用。
4.更新/etc/fstab文件:- 运行`sudo nano /etc/fstab`命令,打开fstab文件。
- 在文件的最后添加一个新的Swap分区的配置行,格式为`/dev/sdXN swap swap defaults 0 0`,将sdXN替换为新创建的Swap分区的设备名。
linux和solaris下增加swap分区
Partition number (1-4): 1
First cylinder (1-13054, default 1):
Using default value 1
Last cylinder or +size or +sizeM or +sizeK (1-13054, default 13054): +100M
5. 启用swap
# swapon /swapfile
6.验证swap是否启用
# swapon -s
Filename Type Size Used Priority
/swapfile file 92 0 -3
Solaris
一、创p空间信息:
二,删除创建的swap片:
# swap -d /dev/dsk/c1t3d0s1或者从/etc/vfstab 文件中删除
三、删除swap文件:
1、从当前的swap配置文件中删除swap文件:
# swap -d /usr/local/swap/swapfile
2、删除swap文件占用的磁盘空间:
linux/solaris下增加swap分区
Linux
一、分区方式
1.创建swap分区,例如:
# fdisk /dev/sdb
Command (m for help): n
Command action
e extended
p primary partition (1-4)
4、向系统swap空间中添加swap文件:
# swap -a /usr/local/swap/swapfile
5、列出修改后的swap空间信息:
linuxmint swap分区未使用
linuxmint swap分区未使用Linux Mint是一个基于Ubuntu的Linux操作系统,它以其简洁易用和稳定性而受到许多用户的喜爱。
在Linux Mint中,swap分区是一个重要的组成部分,它可以提高系统的性能和稳定性。
然而,有时候我们会发现swap分区并未被充分利用。
这可能是因为我们的系统使用的内存较少,或者我们的应用程序并没有产生过多的内存压力。
无论是哪种情况,我们都可以通过一些方法来优化swap分区的使用。
我们可以通过调整系统的swapiness值来改变系统对swap分区的使用程度。
swapiness值是一个表示系统在何时开始使用swap分区的参数。
我们可以使用以下命令来查看当前系统的swapiness值:```cat /proc/sys/vm/swappiness```默认情况下,Linux Mint的swapiness值为60。
如果我们希望系统更积极地使用swap分区,我们可以将swapiness值调低,例如设置为10。
这样,当系统的内存使用率达到90%时,系统就会开始使用swap分区。
我们可以通过增加swap分区的大小来提高其利用率。
通常情况下,swap分区的大小应该等于系统内存的两倍。
如果我们的系统内存较小,我们可以考虑增加swap分区的大小,以确保系统有足够的空间来处理内存压力。
我们可以使用以下命令来查看当前系统的swap分区情况:```sudo swapon --show```如果我们发现swap分区的大小不够,我们可以通过创建一个新的swap分区来增加其大小。
首先,我们需要查看当前系统的磁盘分区情况,可以使用以下命令:```sudo fdisk -l```然后,我们可以选择一个空闲的分区,并使用以下命令来创建一个swap分区:```sudo mkswap /dev/sdX```其中,/dev/sdX是我们选择的分区。
最后,我们可以使用以下命令将新的swap分区添加到系统中:```sudo swapon /dev/sdX```通过以上方法,我们可以充分利用swap分区,提高系统的性能和稳定性。
Linux之内存交换分区(swap)
Linux之内存交换分区(swap)1、什么是内存交换分区(swap)物理内存:计算机内存的⼤⼩,即内存条的⼤⼩;虚拟内存:计算机拿出⼀部分硬盘的空间来充当内存;交换分区(swap):当物理内存不够⽤时,可以拿这个部分来存放内存中较少被使⽤的数据。
2、使⽤物理分区创建内存交换分区2.1使⽤物理分区创建swap建⽴swap的步骤:1. 分区:先使⽤【gdisk】在你的磁盘中划分出⼀个分区给系统作为swap,由于Linux的【gdisk】默认会将分区的ID设置为Linux的⽂件系统,所以可能还得要设置【system ID】2. 格式化:利⽤建⽴swap格式的【mkswap 设备⽂件名】就能够格式化该分区成为swap格式3. 使⽤::启动swap设备,【swapon 设备⽂件名】4. 观察::通过【free】与【swapon -s】来观察内存的使⽤量(1)先进⾏分区操作[root@study ~] gdisk /dev/vdaCommand (? for help) : n #【n】 add a new partitionPartition number (6-128, default 6):First sector (34-83886046, default = 69220352) or {+-}size{KMGTP}:Last sector (69220352-83886046, default = 83886046) or {+-}size{KMGTP}: +512MCurrent type is 'Linux filesystem'Hex code or GUID (L to show codes, Enter = 8300): 8200 #在分区内的可能的⽂件系统类型Linux为8300,swap为8200Changed type of partition to 'Linux swap'Command (? for help) : p #【p】print the partition tableNumber Start (sector) End (sector) size Code Name6 69220352 70268927 512.0 MiB 8200 Linux swapCommand (? for help) : w #上述操作⽣效,write table to disk and exitDo you want to proceed? (Y/N) : y[root@study ~] partprobe #更新Linux内核的分区表信息[root@study ~] lsblk #列出系统上的所有磁盘列表NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTvda 252:0 0 40G 0 disk......-vda 252:6 0 512M 0 part#结果中有了⼀个 /dev/vda6 可以⽤于swap(2)开始创建swap格式[root@study ~] mkswap /dev/vda6 #将【/dev/vda6】这个⽂件格式化为内存交换⽂件的⽂件格式Setting up swapspace version 1, size = 524284 KiBno label, UUID=6b17e4ab-9bf9-43d6-88a0-73ab47855f9d[root@study ~] blkid /dev/vda6/dev/vda6: UUID="6b17e4ab-9bf9-43d6-88a0-73ab47855f9d" TYPE="swap" #格式化成功(3)观察与挂载[root@study ~] free #观察内存和硬盘的swaptotal used free shared buff/cache availableMem: 1275140 227244 330124 7804 717772 875536 #物理内存Swap: 1048572 101340 947232 #swap相关#1275140K的物理内存,使⽤227244K,剩余330124K,使⽤掉的内存有717772K被缓存使⽤#swap有1048572K[root@study ~] swapon /dev/vda6 #观察/dev/vda6容量[root@study ~] free #观察内存和硬盘的swaptotal used free shared buff/cache availableMem: 1275140 227244 330124 7804 717772 875536 #物理内存Swap: 1572856 101260 1471596 #这⾥total、free均有增加,used有减少[root@study ~] swapon -s #【-s】:显⽰交换区的使⽤状况Filename Type Size Used Priority/dev/dm-1 partition 1048572 101260 -1/dev/vda6 partition 524284 0 -2[root@study ~] nano /etc/fstab # 写⼊配置⽂件,启动时⾃动挂载UUID="6b17e4ab-9bf9-43d6-88a0-73ab47855f9d" swap swap defaults 0 0# 不是⽂件系统,所以没有挂载点,第⼆栏写⼊swap# [设备 / UUID等] [挂载点] [⽂件系统] [⽂件系统参数] [dump] [fsck]3、使⽤⽂件创建内存交换分区(1)使⽤【dd】命令在【/tmp】下新增⼀个 128MB的⽂件[root@study ~] dd if=/dev/zero of=/tmp/swap bs=1M count=128 #从/dev/zero中读⼊128M的0到/tmp/swap中128+0 records in #读⼊128条数据128+0 records out #输出128条数据134217728 Bytes (134 MB) copied, 1.7066 seconds, 78.6 MB/s[root@study ~] ll -h /tmp/swap-rw-r--r-- 1 root root 128M Jun 26 17:47 /tmp/swap# if : input file,输⼊⽂件,/dev/zero 是会⼀直输出 0 的设备# of : output file,将⼀堆 0 写⼊到后⾯的⽂件中(这⾥是/srv/loopdev)# bs : 是block的size,就像⽂件系统那样的block意义# count : 总共bs的个数,⽂件容量=bs*count(2)使⽤【mkswap】将【/tmp/swap】这个⽂件格式化为内存交换⽂件的⽂件格式[root@study ~] mkswap /tmp/swap #写此命令时注意不要写错字符,否则可能使⽂件系统挂掉Setting up swapspace version 1, size = 131068 KiBno label,UUID=4746c8ce-3f73-4f83-b883-33b12fa7337c(3)使⽤【swapon】来将【/tmp/swap】启动[root@study ~] swapon /tmp/swap #观察 /tmp/swap 的容量[root@study ~] swapon -s #【-s】:显⽰交换区的使⽤状况Filename Type Size Used Priority/dev/dm-1 partition 1048572 101260 -1/dev/vda6 partition 524284 0 -2/tmp/swap file 131068 0 -3(4)使⽤【swapoff】关闭swap file,并设置⾃动启⽤[root@study ~] nano /etc/fstab #nano⽂本编辑器来编辑启动时的配置⽂件【/etc/fstab】/tmp/swap swap swap defaults 0 0# [设备 / UUID等] [挂载点] [⽂件系统] [⽂件系统参数] [dump] [fsck]# 为什么这⾥第⼀栏不使⽤UUID,因为系统仅会查询区块设备(block device)不会查询⽂件[root@study ~] swapoff /tmp/swap /dev/vda6 #关闭swap file[root@study ~] swapon -s #【-s】:显⽰交换区的使⽤状况Filename Type Size Used Priority/dev/dm-1 partition 1048572 101260 -1[root@study ~] swapon -a #【-a】:将/etc/fstab⽂件中所有设置为swap的设备,启动为交换区本⽂学习内容来⾃:《鸟哥的Linux私房菜》2021-07-02 11:59:40。
linux分区方案
linux分区方案Linux是一种自由和开放源代码的操作系统,可以在各种设备上运行,包括个人电脑、服务器、移动设备等。
而分区是在硬盘上划分出不同的区域,用于存储数据和管理文件系统。
Linux上有多种分区方案可以选择,下面将介绍几种较常用的方案。
1. 根分区(/):根分区是Linux系统的核心分区,所有的文件和目录都存储在此分区中。
这个分区是必须的,同时也是最重要的。
通常建议将根分区单独挂载,不与其他分区共享同一个分区。
根分区的大小需要根据实际情况进行调整,一般建议至少20GB以上。
2. 交换分区(swap):交换分区用于存放不常用的内存数据。
当系统的物理内存不足时,会将部分内存数据存放到交换分区中,以释放出物理内存供其他程序使用。
一般来说,交换分区的大小应该与系统的物理内存大小相当,但最大不超过2倍。
通常建议单独创建交换分区。
3. /boot分区:/boot分区用于存放启动相关的文件,包括内核文件和引导加载程序等。
这个分区在UEFI启动的系统中往往不需要,但在传统的BIOS系统中是必需的。
一般来说,推荐将/boot分区的大小设置为200MB。
4. /home分区:/home分区用于存放用户的个人数据和配置文件。
通过单独创建/home分区,可以方便地对用户数据进行备份、迁移和恢复。
这样在系统发生故障或需要重新安装系统时,用户的个人数据可以得到保留。
推荐将/home分区大小设置为足够大,以满足用户数据的存储需求。
5. 其他分区:除了上述常见的分区外,还可以根据需要创建其他分区,如数据分区、应用程序分区等。
数据分区用于存放用户数据,可以单独进行备份和管理。
应用程序分区用于存放系统和应用程序文件,可以单独进行系统升级和恢复。
总之,Linux分区方案的选择需要根据具体的应用需求和硬件配置来决定。
上述介绍的分区方案只是常见的几种,实际应用中还有更多的可选方案。
根据实际情况进行灵活的调整,可以提高数据存储的安全性和系统的稳定性。
linux增加swap分区和删除swapfile文件的方法
linux增加swap分区和删除swapfile⽂件的⽅法创建swapfile⽂件执⾏命令:dd if=/dev/zero of=swapfile bs=1024 count=5000000注:可根据实际需要更改count值的⼤⼩,这⾥设置5000000,⼤概就是4G多[root@node2 var]# dd if=/dev/zero of=swapfile bs=1024 count=500000500000+0 records in500000+0 records out512000000 bytes (512 MB) copied, 5.92783 s, 86.4 MB/s[root@node2 var]# ls -alhtotal 489Mdrwxr-xr-x. 19 root root 283 May 9 13:21 .dr-xr-xr-x. 20 root root 269 Apr 1 09:47 ..drwxr-xr-x. 2 root root 6 Apr 11 2018 admdrwxr-xr-x. 5 root root 44 Jan 7 19:37 cachedrwxr-xr-x. 2 root root 6 Aug 8 2019 crashdrwxr-xr-x. 3 root root 34 Mar 2 16:10 dbdrwxr-xr-x. 3 root root 18 Jan 7 19:37 emptydrwxr-xr-x. 2 root root 6 Apr 11 2018 gamesdrwxr-xr-x. 2 root root 6 Apr 11 2018 gopherdrwxr-xr-x. 3 root root 18 Sep 14 2019 kerberosdrwxr-xr-x. 34 root root 4.0K Apr 20 11:39 libdrwxr-xr-x. 2 root root 6 Apr 11 2018 locallrwxrwxrwx. 1 root root 11 Jan 7 19:37 lock -> ../run/lockdrwxr-xr-x. 10 root root 4.0K May 9 13:11 loglrwxrwxrwx. 1 root root 10 Jan 7 19:37 mail -> spool/maildrwxr-xr-x. 2 root root 6 Apr 11 2018 nisdrwxr-xr-x. 2 root root 6 Apr 11 2018 optdrwxr-xr-x. 2 root root 6 Apr 11 2018 preservelrwxrwxrwx. 1 root root 6 Jan 7 19:37 run -> ../rundrwxr-xr-x. 8 root root 87 Jan 7 19:37 spool-rw-r--r-- 1 root root 489M May 9 13:21 swapfiledrwxrwxrwt. 4 root root 112 May 9 13:11 tmp-rw-r--r--. 1 root root 163 Jan 7 19:37 .updateddrwxr-xr-x. 2 root root 6 Apr 11 2018 yp[root@node2 var]# free -htotal used free shared buff/cache availableMem: 1.8G 495M 186M 9.5M 1.1G 1.1GSwap: 3.9G 0B 3.9G将swapfile设置为swap空间执⾏命令:mkswap swapfile[root@node2 var]# mkswap swapfileSetting up swapspace version 1, size = 499996 KiBno label, UUID=c67544b9-60b6-426e-8349-5f62813d9deb[root@node2 var]# free -htotal used free shared buff/cache availableMem: 1.8G 497M 180M 9.6M 1.1G 1.1GSwap: 3.9G 0B 3.9G启⽤交换空间执⾏命令:swapon swapfile[root@node2 var]# swapon swapfileswapon: /var/swapfile: insecure permissions 0644, 0600 suggested.[root@node2 var]# free -htotal used free shared buff/cache availableMem: 1.8G 497M 180M 9.6M 1.1G 1.1GSwap: 4.4G 0B 4.4G #将489M的交换⽂件的空间启⽤了删除swapfile如果创建了swapfile之后,想要删除,必须先执⾏以下命令swapoff swapfile[root@node2 var]# swapoff swapfile[root@node2 var]# free -htotal used free shared buff/cache availableMem: 1.8G 497M 180M 9.6M 1.1G 1.1GSwap: 3.9G 0B 3.9G然后再执⾏删除⽂件操作rm swapfile[root@node2 var]# rm swapfilerm: remove regular file ‘swapfile’? y[root@node2 var]# ls -alhtotal 12Kdrwxr-xr-x. 19 root root 267 May 9 14:15 .dr-xr-xr-x. 20 root root 269 Apr 1 09:47 ..drwxr-xr-x. 2 root root 6 Apr 11 2018 admdrwxr-xr-x. 5 root root 44 Jan 7 19:37 cachedrwxr-xr-x. 2 root root 6 Aug 8 2019 crashdrwxr-xr-x. 3 root root 34 Mar 2 16:10 dbdrwxr-xr-x. 3 root root 18 Jan 7 19:37 emptydrwxr-xr-x. 2 root root 6 Apr 11 2018 gamesdrwxr-xr-x. 2 root root 6 Apr 11 2018 gopherdrwxr-xr-x. 3 root root 18 Sep 14 2019 kerberosdrwxr-xr-x. 34 root root 4.0K Apr 20 11:39 libdrwxr-xr-x. 2 root root 6 Apr 11 2018 locallrwxrwxrwx. 1 root root 11 Jan 7 19:37 lock -> ../run/lockdrwxr-xr-x. 10 root root 4.0K May 9 13:11 loglrwxrwxrwx. 1 root root 10 Jan 7 19:37 mail -> spool/maildrwxr-xr-x. 2 root root 6 Apr 11 2018 nisdrwxr-xr-x. 2 root root 6 Apr 11 2018 optdrwxr-xr-x. 2 root root 6 Apr 11 2018 preservelrwxrwxrwx. 1 root root 6 Jan 7 19:37 run -> ../rundrwxr-xr-x. 8 root root 87 Jan 7 19:37 spooldrwxrwxrwt. 4 root root 112 May 9 13:11 tmp-rw-r--r--. 1 root root 163 Jan 7 19:37 .updateddrwxr-xr-x. 2 root root 6 Apr 11 2018 yp[root@node2 var]#注:如果没有执⾏swapoff操作,就执⾏执⾏删除⽂件的操作,系统会报错,不给删除。
linux中的交换分区(swap)及优化
linux中的交换分区(swap)及优化SWAP(交换内存)1、什么是交换内存?在硬盘上创建⼀块区域,当你的物理内存快要被⽤光的时候,内核临时的物理内存上的⽂件数据交换到硬盘上的这段区域上⾯,当物理内存有闲置的时候在把交换内存上的数据调回到物理内存上的。
可能在⼤多数时候,你会发现你的交换内存没有被⽤到,为什么我们的系统在安装的时候强制我们要建⽴交换内存?牺牲⼀定的硬盘空间,给操作系统买份保险!2、创建交换内存:创建的步骤:1、创建新分区,并且更改分区标识符号为82.或者在本机上使⽤dd命令创建⼀个虚拟⽂件。
2、使⽤mkswap对指定设备制作交换内存⽂件系统。
3、 swapon开启交换内存(但是⾮常遗憾,下次启动机器的时候仍然需要⼿动使⽤swapon⼿动开启)建议直接写⼊到/etc/fstab中4、查看free -m ,swapon -s进⾏查看分区类型交换内存:速度快、独⽴分区1、fdisk /dev/sdbn t 82#partprobe /dev/sdb //重新加载分区表2、制作swap# mkswap /dev/sdb7 //以sdb7为例3、写/etc/fstab/dev/sdb7 swap swap defaults 0 0 //永久挂载格式UUID=XXXXXX swap swap defaults 0 0 //⽣产环境blkid查看⽂件系统UUID# swapon -a4、查看:# free -m# swapon -s⽂件类型的交换内存:相对速度慢、⽐较灵活1、创建虚拟⽂件:# dd if=/dev/zero of=/tmp/swap-file1 bs=1M count=N //N为正整数2、制作swap⽂件系统# mkswap /tmp/swap-file13、挂载使⽤/etc/fstab/tmp/swap-file1 swap swap defaults 0 0# swapon -a4、查看:# free -m# swapon -s交换内存的优化及⼈为⼲预:交换内存的调优:可调参数:/proc/sys/vm/swappiness当系统⾮常需要使⽤内存时,内核会把匿名内存(Anonymous memory)和System V的共享内存(shared memory)交换到磁盘上去,⽽真正的⽂件不需要交换到交换内存上去,⽽是直接写会到磁盘⽂件系统上(清掉page cache)。
linux设置开启swap交换分区基本命令(虚拟内存)
linux设置开启swap交换分区基本命令(虚拟内存)在Linux系统下,我们要怎么开启swap交换分区,基本设置命令是什么呢?下面yjbys为大家带来最基本的配置命令,希望对大家有所帮助!1.验证不存在交换分区free-m输出如下:totalusedfreesharedbufferscachedMem:99594747046142-/+buffers/cache:758236Swap:000如果swap选项total是0则表示没有交换分区,开始下一步2.创建swap分区使用dd命令选择swap分区目录以及大小,在此我们给他放到根目录,创建的是2G的.虚拟内存,可以根据自己需要选择大小。
ddif=/dev/zeroof=/swapfilecount=2048bs=1M接下来验证根目录是否存在swapfilels/|grepswapfile不出意外的话你将会看到swapfile3.激活swap分区交换分区不会自动激活,你需要告诉服务器如何格式化文件,使它作为一个有效的交换分区。
出于安全考虑,交交换区权限设置成600chmod600/swapfile使用mkswap命令来设置交换文件:mkswap/swapfile4.开启swap分区swapon/swapfile再次使用free-m查看内存使用情况,输出如下:totalusedfreesharedbufferscachedMem:184017548616231519-/+buffers/cache:2101630Swap:2047020475.设置允许开机启用swap分区sudovi/etc/fstab在后面加上/swapfilenoneswapsw00【linux设置开启swap交换分区基本命令(虚拟内存)】。
Linux系统基础知识:磁盘IO与SWAP分区
Linux系统基础知识:磁盘IO与SWAP分区在了解磁盘IO之前,我们先从硬盘的物理结构说起。
一、硬盘的物理结构硬盘内部主要部件为磁盘盘片、传动手臂、读写磁头和主轴马达。
实际数据都是写在盘片上,读写主要是通过传动手臂上的读写磁头来完成。
实际运行时,主轴让磁盘盘片转动,然后传动手臂可伸展让读取头在盘片上进行读写操作。
由于单一盘片容量有限,一般硬盘都有两张以上的盘片,每个盘片有两面,都可记录信息,所以一张盘片对应着两个磁头。
盘片被分为许多扇形的区域,每个区域叫一个扇区,硬盘中每个扇区的大小固定为512字节。
盘片表面上以盘片中心为圆心,不同半径的同心圆称为磁道,不同盘片相同半径的磁道所组成的圆柱称为柱面。
硬盘上磁盘进行高速旋转,磁头臂在磁盘上来回移动进行数据的读取和写入。
磁盘由圆心向外被划分为多个磁道,所谓摆臂在磁道上来回移动也就是摆臂在磁道间的来回移动。
二、磁盘读写时间在了解了硬盘的基本原理之后,不难推算出,磁盘上数据读取和写入所花费的时间可以分为三个部分。
1、寻道时间所谓寻道时间,其实就是磁臂移动到指定磁道所需要的时间,这部分时间又可以分为两部分:寻道时间=启动磁臂的时间+常数*所需移动的磁道数其中常数和驱动器的的硬件相关,启动磁臂的时间也和驱动器的硬件相关2、旋转延迟旋转延迟指的是把扇区移动到磁头下面的时间。
这个时间和驱动器的转数有关,我们通常所说的7200转的硬盘的转就是这个,旋转延迟只和硬件有关。
3、传输时间传输时间指的是从磁盘读出或将数据写入磁盘的时间,这个时间等于:所需要读写的字节数/每秒转速*每扇区的字节数三、磁盘调度算法通过上面硬盘读写数据所分的三部分时间不难看出,大部分参数是和硬件相关的,操作系统无力优化。
只有所需移动的磁道数是可以通过操作系统来进行控制的,所以减少所需移动的磁道数是减少整个硬盘的读写时间的唯一办法。
因为操作系统内可能会有很多进程需要调用磁盘进行读写,因此合理的安排磁头的移动以减少寻道时间就是磁盘调度算法的目的所在,几种常见的磁盘调度算法如下。
linux lvm扩容swap生效
linux lvm扩容swap生效
要在Linux系统中使用LVM(逻辑卷管理)扩容Swap(交换分区),您可以按照以下步骤进行操作:
1. 确保您的系统上已经存在一个可用的卷组(Volume Group)。
您可以使用`vgdisplay`命令来检查已经存在的卷组。
如果没有可用的卷组,您可以使用
`vgcreate`命令创建一个新的卷组。
2. 创建一个新的逻辑卷(Logical Volume),用于扩容Swap分区。
您可以使用`lvcreate`命令来创建逻辑卷。
例如,以下命令将在名为`vg01`的卷组中创建一个名为`swap_lv`的逻辑卷,大小为2GB:
lvcreate -L 2G -n swap_lv vg01
3. 格式化新创建的逻辑卷。
您可以使用`mkswap`命令来格式化和准备Swap分区,例如:
mkswap /dev/vg01/swap_lv
4. 将新创建的逻辑卷添加到Swap分区列表中。
您可以使用`swapon`命令来将逻辑卷添加到Swap分区列表中,例如:
swapon /dev/vg01/swap_lv
5. 验证Swap分区是否生效。
您可以使用`swapon show`命令来查看已启用的Swap分区列表,例如:
swapon show
这样,您就成功地在Linux系统中使用LVM扩容了Swap分区。
请注意,这些命令可能需要以Root用户或具有适当权限的用户身份来执行。
linux swap机制
linux swap机制Linux是一种流行的操作系统,它具有出色的稳定性和性能。
在使用Linux的过程中,你可能会发现你的计算机出现了卡顿或者运行缓慢的问题。
这个时候,你可以利用Linux的swap机制来缓解这种情况。
一、什么是Swap?Swap(交换分区),也称为交换空间,是指Linux系统中用于存放暂时不用的内存页的一种特殊磁盘分区。
在Linux系统中,内存往往是计算机最稀缺的资源之一,而Swap允许系统在物理内存已满的情况下,使用磁盘上的空间来代替内存使用。
这样,系统可以更高效地管理内存,减少计算机卡顿和死机的风险。
Swap被称为“虚拟内存”,因为它在物理内存已满的情况下,可以扩展系统的内存容量。
在Linux系统中,Swap不是必须的,但如果你的系统需要处理大量的数据或运行多个程序,那么使用Swap是非常必要的。
二、Swap和物理内存的关系是怎样的?在Linux系统中,虽然Swap可以扩展系统的内存容量,但它并不能完全替代物理内存。
Swap是一种缓存,它的速度比物理内存慢得多。
因此,当Swap被用来代替物理内存时,计算机的运行速度会变慢。
另外,当系统运行缓慢时,可能是因为物理内存不足,Swap已经被完全利用,而且需要更多的内存来处理请求。
此时,你需要增加物理内存来解决这个问题。
在Linux系统中,Swap默认是没有开启的,你需要手动创建并启用Swap分区。
以下是创建和使用Swap的步骤:1、检查当前系统的Swap使用情况$ free -m2、创建一个Swap分区$ sudo dd if=/dev/zero of=/swapfile bs=1M count=2048#其中bs=1M count=2048表示创建一个2GB大小的Swap分区,你可以根据自己的需求进行调整。
当然,你还可以创建独立的分区来作为Swap分区。
3、将分区格式化为Swap分区$ sudo mkswap /swapfile5、配置系统开机自动启用Swap分区$ sudo vi /etc/fstab#添加以下行/swapfile swap swap defaults 0 06、检查系统是否正确配置Swap$ swapon -s一旦Swap被启用,你就需要考虑如何最大化其效益。
详细解读linux下swap分区的作用
详细解读linux下swap分区的作⽤本⽂研究的主要是linux下swap分区的相关内容,具体介绍如下。
swap分区介绍嵌⼊式Linux中⽂站消息,Linux系统的Swap分区,即交换区,Swap空间的作⽤可简单描述为:当系统的物理内存不够⽤的时候,就需要将物理内存中的⼀部分空间释放出来,以供当前运⾏的程序使⽤。
那些被释放的空间可能来⾃⼀些很长时间没有什么操作的程序,这些被释放的空间被临时保存到Swap空间中,等到那些程序要运⾏时,再从Swap中恢复保存的数据到内存中。
这样,系统总是在物理内存不够时,才进⾏Swap交换。
其实,Swap的调整对Linux服务器,特别是Web服务器的性能⾄关重要。
通过调整Swap,有时可以越过系统性能瓶颈,节省系统升级费⽤。
如⼤家所知,现代操作系统都实现了“虚拟内存”这⼀技术,不但在功能上突破了物理内存的限制,使程序可以操纵⼤于实际物理内存的空间,更重要的是,“虚拟内存”是隔离每个进程的安全保护⽹,使每个进程都不受其它程序的⼲扰。
可能计算机⽤户会经常遇这种现象。
例如,在使⽤Windows系统时,可以同时运⾏多个程序,当你切换到⼀个很长时间没有理会的程序时,会听到硬盘“哗哗”直响。
这是因为这个程序的内存被那些频繁运⾏的程序给“偷⾛”了,放到了Swap区中。
因此,⼀旦此程序被放置到前端,它就会从Swap区取回⾃⼰的数据,将其放进内存,然后接着运⾏。
另外,并不是所有从物理内存中交换出来的数据都会被放到Swap中(如果这样的话,Swap就会不堪重负),有相当⼀部分数据被直接交换到⽂件系统。
例如,有的程序会打开⼀些⽂件,对⽂件进⾏读写(其实每个程序都⾄少要打开⼀个⽂件,那就是运⾏程序本⾝),当需要将这些程序的内存空间交换出去时,就没有必要将⽂件部分的数据放到Swap空间中了,⽽可以直接将其放到⽂件⾥去。
如果是读⽂件操作,那么内存数据被直接释放,不需要交换出来,因为下次需要时,可直接从⽂件系统恢复;如果是写⽂件,只需要将变化的数据保存到⽂件中,以便恢复。
linuxswap分区作用
linuxswap分区作⽤Linux divides its physical RAM (random access memory) into chucks of memory called pages. Swapping is the process whereby a page of memory is copied to the preconfigured space on the hard disk, called swap space, to free up that page of memory. The combined sizes of the physical memory and the swap space is the amount of virtual memory available.Linux 把物理内存划分作称为分页(Page)的内存区块。
内存交换是⼀个内存分页被复制到⼀个预配置的称为 swap 空间的硬盘空间⾥的过程,以此来释放内存分页。
物理内存与这个 swap 空间的共同⼤⼩称为可⽤的虚拟内存量。
在这⾥,保留 swap 分区有两个重要的原因。
其⼀,当物理内存不⾜以⽀撑系统和应⽤程序(进程)的运作时,这个 swap 空间可以⽤作临时存放使⽤率不⾼的内存分页,把腾出的内存交给急需的应⽤程序(进程)使⽤。
再有,即使你的机器拥有⾜够多的物理内存,也有⼀些程序会在它们初始化时残留的极少再⽤到的内存分页内容转移到 swap 空间,以此让出物理内存空间。
对于有发⽣内存泄漏⼏率的应⽤程序(进程),swap 空间更是重要,因为谁也不想看到由于物理内存不⾜导致系统崩溃。
简单的说就是内存再多也不嫌多。
不够⽤的时候要⽤到swap,够⽤不常⽤就交换到swap。
Linux系统中swap分区的设置与增加删除
Linux系统中swap分区的设置与增加删除1. 什么是swap分区Swap分区在系统的物理内存不够⽤的时候,把物理内存中的⼀部分空间释放出来,以供当前运⾏的程序使⽤。
那些被释放的空间可能来⾃⼀些很长时间没有什么操作的程序,这些被释放的空间被临时保存到Swap分区中,等到那些程序要运⾏时,再从Swap分区中恢复保存的数据到内存中。
swap分区是从磁盘空间划分⽽来,有的是单独使⽤⼀个分区,有的是把⼀个⼤⽂件当做swap。
2. 官⽅关于swap设置Redhat6.4 官⽅推荐(我们使⽤CentOS 6.4)推荐的系统交换空间系统中的RAM数量建议交换空间如果允许休眠,建议使⽤交换空间⩽2GB RAM的2倍 RAM数量的3倍> 2GB - 8GB 等于RAM的数量 RAM的2倍> 8GB - 64GB ⾄少4 GB RAM的1.5倍> 64GB ⾄少4 GB 不建议休眠因为有些系统会允许休眠状态,如果不设置swap会⽆法启动,就像windows系统使⽤休眠设置虚拟内存⼀样。
Mysql 5.6 和5.7的建议mysql5.6是说在物理内存⾜够的情况下,可以删除swap,因为系统在有些情况下会及时内存够⽤使⽤swap,若使⽤会因为I/0变⾼导致mysql故障。
Mysql建议删除。
oracle建议另外在其它博客中看到下⾯⼀个推荐设置,当然我不清楚其怎么得到这个标准的。
是否合理也⽆从考证。
可以作为⼀个参考。
4G以内的物理内存,SWAP 设置为内存的2倍。
4-8G的物理内存,SWAP 等于内存⼤⼩。
8-64G 的物理内存,SWAP 设置为8G。
64-256G物理内存,SWAP 设置为16G。
当然这么多建议标准,很让⼈⽆所适从,不知道该怎么设置。
其实根据系统实际情况和内存的负荷综合考虑,但是实际情况⼜是什么样呢?个⼈建议从如下⼏个考虑:物理内存空间是否在峰值也可以满⾜要求,不满⾜建议设置swap防⽌内存溢出导致主机宕机,当然设置不宜过⼤,占⽤磁盘空间。
linux最佳分区方案
linux最佳分区方案Linux最佳分区方案。
在Linux系统中,分区是非常重要的,它可以帮助我们更好地管理磁盘空间,提高系统的性能和安全性。
选择合适的分区方案对于系统的稳定运行和数据的安全存储至关重要。
下面将介绍一些常见的Linux最佳分区方案,希望对大家有所帮助。
1. 根分区(/)。
根分区是Linux系统中最重要的分区,它包含了系统的所有文件和目录。
在安装Linux系统时,我们需要为根分区分配足够的空间,一般建议至少20GB。
根分区的大小应该根据实际需求来确定,如果系统中有大量的应用程序和数据,那么需要分配更大的空间。
2. 交换分区(swap)。
交换分区是Linux系统中的虚拟内存,当物理内存不够时,系统会将部分数据写入到交换分区中,以提供更多的内存空间。
一般来说,交换分区的大小建议是物理内存的1.5倍到2倍。
但是随着计算机硬件的不断升级,物理内存的容量也在不断增加,因此有些人认为现在已经不需要设置交换分区了。
不过,为了系统的稳定性和安全性,建议还是设置一个适当大小的交换分区。
3. /boot分区。
/boot分区用于存放系统引导文件和内核映像,它通常是一个小型的分区,建议大小为200MB到500MB。
在一些特殊的情况下,比如使用RAID或LVM的时候,可能需要更大一些的/boot分区。
4. /home分区。
/home分区用于存放用户的个人数据和配置文件,它是用户最常用的分区之一。
建议将/home分区单独出来,这样在系统崩溃或需要重新安装时,用户的数据不会丢失。
/home分区的大小应该根据用户的需求来确定,如果有大量的用户数据,那么需要分配更大的空间。
5. /var分区。
/var分区用于存放系统日志文件、软件包、数据库文件等变化较大的数据。
建议将/var分区单独出来,这样可以避免系统日志文件过大影响系统的稳定性。
/var分区的大小应该根据实际需求来确定,如果有大量的日志文件或者数据库文件,那么需要分配更大的空间。
Linux下交换分区与交换文件的设置
Linux下交换分区与交换文件的设置关于swap交换分区的设置:一种流行的、以讹传讹的说法是,安装Linux系统时,交换分区swap的大小应该是内存的两倍。
也就是说,如果内存是2G,那么就应该分出4G的硬盘空间作为交换空间。
其实这是严重的浪费。
真实的情况是:可以根据你系统内存的大小,以及所使用的程序,自行决定交换分区的大小,甚至可以完全不用交换分区!首先解释一下什么是交换分区。
交换分区,英文的说法是swap,意思是“交换”、“实物交易”。
它的功能就是在内存不够的情况下,操作系统先把内存中暂时不用的数据,存到硬盘的交换空间,腾出内存来让别的程序运行,和Windows的虚拟内存(pagefile.sys)的作用是一样的。
做一个假设:如果你的内存足够大,极少出现内存不足的情况,那么你就不需要交换分区。
事实上,这种可能性是完全存在的。
现在的1G内存的电脑不算什么了。
动辄4G内存的电脑也日益普遍。
日常使用的话,很少能用完全部的内存。
在用不完内存容量的情况下,还要划出它两倍的硬盘空间用于内存交换,这不是浪费吗?可以说,在你内存基本够用的情况下,完全可以不要交换空间。
在Windows下也是一样,在系统属性中,把虚拟内存设置为0,系统依然运行的很好。
当然,如果你用的是服务器,还是要有专门的虚拟内存,有备无患。
但是虚拟内存的大小不一定非要内存的两倍。
那么怎么知道你的系统有没有用到交换空间呢?只需要在root用户下,运行下面的命令就可以知道了。
free -m在日常应用中,通过上述命令看到交换空间的使用情况为0,那么你就不需要很大的虚拟内存,甚至可以完全不需要另辟硬盘空间作为虚拟内存。
那么,万一有一天你需要了呢,难道要重装系统?大可不必,在Linux下虚拟内存不单可以放在单独的交换分区,也可以是一个在正常分区下的交换文件。
---------------------------------------------------------------------1 查看swap 空间大小(总计):# free -m 默认单位为k, -m 单位为Mtotal used free shared buffers cachedMem: 377 180 197 0 19 110-/+ buffers/cache: 50 327Swap: 572 0 5722 查看swap 空间(file(s)/partition(s)):包括文件和分区的详细信息# swapon -s等价于# cat /proc/swaps3 添加交换空间两种选择:添加一个交换分区或添加一个交换文件。
linux下查看swap分区被哪些进程占用实现脚本
从2.6.16版本的kernel开始,我们可以使用proc文件系统中的smaps来查找这个问题。下边是一个列出所有进程占用swap分区 情况的列表。可以通过简单修改就可以用于统计在/proc/$PID/smaps查出。以下是脚本: 复制代码 代码如下:
for i in `cd /proc;ls |grep "^[0-9]"|awk ' $0 >100'` ;do awk '/Swap:/{a=a+$2}END{print '"$i"',a/1024"M"}' /proc/$i/smaps ;done |sort -k2nr
登录一台服务器使用free命令查看内存却发现swap分区被占用到底是哪些进程占用了这部分swap分区本文将解决你的疑惑感兴趣的你可以参考下
linux下查看 swap分区被哪些进程占用实现脚本
相信很多的系统管理员可能都遇见过这样的情况,用登录一台服务器,使用free命令查看内存,却发现swap分区被占用。那 么到底是什么进程占用了这部分swap分区呢?
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
最近看到有朋友在我的Blog中问关于Linux环境下swap分区设置的问题,问题如下:“需要设置一个10G的swap分区,是设置成单个10G的好呢,还是5个2G的,还是其他的方案,比如2个5G的分区?”
看来有必要再写一篇Blog来阐述一下这个问题。
在网络上我经常看到这样的经典问答:
问:我的内存大小是xxx,那么我建立的swap多少才合适?
答:大概物理内存的1倍即可。
我认为这种回答是很不负责任的,所谓1倍内存大小或2倍内存大小的swap分区设置,是给那些对Linux系统不是很熟悉的用户的简单建议,这种设置在桌面Linux下是没有什么问题的,最多是占用一些硬盘空间而已。
但是在真正的生产环境下,这种设置是很不合理的一种设置。
一、swap分区大小是怎么确定的?
其实swap分区的大小设置是很考验Linux系统管理员水平的一件事情,swap的大小是这样决定的:
( 内存大小 Swap分区大小 ) * 80%或70% >= 程序需要占用总内存数如果系统内存大小已经大于系统中所有任务最大内存使用大小,那么就根本没有必要设置swap分区了,如果这个时候设置上,那么就是白白占用了那些硬盘空间(当然,如果硬盘足够富裕,可以忽略这些占用了)。
那么有的管理员就会说了:我不知道我系统中所有任务最大内存使用大小是多少啊!
我在这里给你一个方法,可以找到这个大小是多少,下面跟着我一步一步来:
1、用swapoff 关掉所有swap 然后正常运行任务,如果出现内存不足的提示,就需要逐步增加swap
2、一般来讲,物理内存达到256m,在安装时即可不用划分交换分区.。
3、可以在安装后建立交换分区,或者建立交换文件。
BTW:swap还有一个用处,就是在机器lock,出现问题的时候内存的内容会自动copy 到swap上面,这样可以有效防止机器故障带来内存中的内容忽然丢失的情况。
二、为什么swap分区不宜过大?
为什么 swap 分区不宜过大,这是由于 Linux 内存分配的特点——它会尽可能多地使用内存(包括swap 分区)。
尽量使用内存的目的是加快 IO 处理的速度,比如关掉一个程序,原先占有的内存空间并不立即清空,下一次打开时就不用去硬盘找数据,而直接从内存中读取。
但是如果虚拟内存过大,那么保留在内存缓冲区中的数据实际上还是在硬盘中,那对于加快速度就没有多大的作用了。
swap 分区对于物理内存小的机器是必不可少的,假设物理内存只有64M,而某个程序启动最少要256M,如果没有足够的虚拟内存,这个程序是根本打不开的(系统会报内存不足错误,甚至崩溃)。
对于程序而言,物理内存和虚拟内存是没有任何区别的,它们只关心空间是否够大。
在物理内存够用的情况下可以适当分配一些空间给 swap ,这仅仅是为了偶尔同时开很多大家伙时,防止出现内存不足错误。
三、swap是一个大分区还是多个小分区?
我记得有人说过在fedora和debian的文档中看到过说明,建议swap分区大小不要超过2G。
为什么是2G呢?我觉得首先是由于32位机的文件偏移指针是个无符号整型,所以单个文件偏移最大到2的31次方,也就是2G。
其次,旧的文件系统对大文件的支持并不是
很好(有点类似Windows环境下FAT文件格式不能有文件大小限制),所以在文档中建议swap分区大小不超过2G(要知道swap是可以在运行过程中动态加载swap文件的)。
如果各位使用的是2.4 内核或者64位的系统,那么可以放心地把swap分区设置的足够大,IBM在针对其Linux 2.4 kernel的文档中明确表明,2.4.10及以后的linux kernel,支持的每块swap最大不超过24GB。
下面再说说设置多个swap的好处,那就是可以把多个swap分担到多块硬盘上,如果你有多个物理磁盘,建议在把swap分布到每块磁盘上,这时确实可以提高运行速度。