温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Linux中怎么创建swap交换分区

发布时间:2021-07-28 15:53:30 来源:亿速云 阅读:153 作者:Leah 栏目:系统运维

Linux中怎么创建swap交换分区,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。

一、新建磁盘分区作为swap分区
1.以root身份进入控制台(登录系统),输入

代码如下:


# swapoff -a #停止所有的swap分区


2. 用fdisk命令(例:# fdisk /dev/sdb)对磁盘进行分区,添加swap分区,新建分区,在fdisk中用“t”命令将新添的分区id改为82(Linux swap类型),最后用w将操作实际写入硬盘(没用w之前的操作是无效的)。

3.

代码如下:

# mkswap /dev/sdb2 #格式化swap分区,这里的sdb2要看您加完后p命令显示的实际分区设备名

4.

代码如下:

# swapon /dev/sdb2 #启动新的swap分区

5. 为了让系统启动时能自动启用这个交换分区,可以编辑/etc/fstab,加入下面一行

代码如下:


/dev/sdb2 swap swap defaults 0 0

二、调整swap分区大小
有的时候,我们要增加swap的大来,例如,安装oracle。下面说一下如何来增加交换分区的大小。

代码如下:


root@ubuntu:/home/zhangying# free -m
total used free shared buffers cached
Mem: 3449 3256 193 0 723 1687
-/+ buffers/cache: 845 2604
Swap: 254 0 254

代码如下:


root@ubuntu:/home/zhangying# mkdir swap
root@ubuntu:/home/zhangying# cd swap/
root@ubuntu:/home/zhangying/swap# dd if=/dev/zero of=swaptmp bs=9024 count=100000


记录了100000+0 的读入
记录了100000+0 的写出
902400000字节(902 MB)已复制,12.5008 秒,72.2 MB/秒

代码如下:


root@ubuntu:/home/zhangying/swap# mkswap swaptmp
mkswap: swaptmp: warning: don't erase bootbits sectors
on whole disk. Use -f to force.
Setting up swapspace version 1, size = 881244 KiB
no label, UUID=ed24d0cc-3af5-4278-b41a-df1ab7433f83
root@ubuntu:/home/zhangying/swap# swapon swaptmp
root@ubuntu:/home/zhangying/swap# free -m
total used free shared buffers cached
Mem: 3449 3359 90 0 637 1930
-/+ buffers/cache: 791 2657
Swap: 1115 0 1115


这种只是临时的,如果重起电脑的话,交换分区的大小还是还原成原来的,如果不重起想还原成原来的,看下面的方法。

代码如下:


root@ubuntu:/home/zhangying/swap# swapoff swaptmp
root@ubuntu:/home/zhangying/swap# rm swaptmp
root@ubuntu:/home/zhangying/swap# free -m
total used free shared buffers cached
Mem: 3449 3368 81 0 732 1895
-/+ buffers/cache: 739 2710
Swap: 254 6 248


还有一种情况是这种临时的swap,变成非临时的。

代码如下:


nano /etc/fstab
/home/zhangying/swap/swaptmp swap swap defaults 0 0


注释:这种启动的时候自动加载,根加载windows下的硬盘是一样的,如果swaptmp文件丢失,也无法增加swap的大小。

三、用文件作为Swap分区
1.创建要作为swap分区的文件:增加1GB大小的交换分区,则命令写法如下,其中的count等于想要的块的数量(bs*count=文件大小)。

代码如下:


# dd if=/dev/zero of=/root/swapfile bs=1M count=1024


2.格式化为交换分区文件:

代码如下:


# mkswap /root/swapfile #建立swap的文件系统


3.启用交换分区文件:

代码如下:


# swapon /root/swapfile #启用swap文件


4.使系统开机时自启用,在文件/etc/fstab中添加一行:

代码如下:


/root/swapfile swap swap defaults 0 0


新建和增加交换分区用到的命令为:mkswap、swapon等,而想关闭掉某个交换分区则用“swapon /dev/sdb2”这样的命令即可。

下面的操作命令演示了用文件作为Swap的操作过程(包括前后的一些检查)。

代码如下:


[root@jay-linux ~]# free -m
            total       used       free     shared    buffers     cached
Mem:          3979       3179        800          0        266       1873
-/+ buffers/cache:       1039       2940
Swap:         4095          0       4095

代码如下:


[root@jay-linux ~]# cat /etc/fstab
# 已省略与主题无关的部分输出
/dev/sda3               swap                    swap    defaults        0 0

代码如下:


[root@jay-linux ~]# dd if=/dev/zero of=/root/swapfile bs=1M count=1024
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB) copied, 4.09017 s, 263 MB/s
[root@jay-linux ~]# mkswap /root/swapfile
Setting up swapspace version 1, size = 1048572 KiB
no label, UUID=48a7ffd5-392f-4963-904c-3e67f0e5dfbe

代码如下:


[root@jay-linux ~]# swapon /root/swapfile
[root@jay-linux ~]# free -m
            total       used       free     shared    buffers     cached
Mem:          3979       3945         34          0        261       2628
-/+ buffers/cache:       1054       2924
Swap:         5119          0       5119

代码如下:


[root@jay-linux ~]# swapoff /dev/sda3
[root@jay-linux ~]# free -m
            total       used       free     shared    buffers     cached
Mem:          3979       3945         34          0        261       2629
-/+ buffers/cache:       1053       2925
Swap:         1023          0       1023

代码如下:


[root@jay-linux ~]# swapoff /root/swapfile
[root@jay-linux ~]# free -m
            total       used       free     shared    buffers     cached
Mem:          3979       3945         34          0        261       2629
-/+ buffers/cache:       1053       2926
Swap:            0          0          0

代码如下:


[root@jay-linux ~]# swapon /dev/sda3
[root@jay-linux ~]# free -m
            total       used       free     shared    buffers     cached
Mem:          3979       3946         33          0        261       2629
-/+ buffers/cache:       1054       2924
Swap:         4095          0       4095

代码如下:


[root@jay-linux ~]# free -m
            total       used       free     shared    buffers     cached
Mem:          3979       3179        800          0        266       1873
-/+ buffers/cache:       1039       2940
Swap:         4095          0       4095

代码如下:


[root@jay-linux ~]# cat /etc/fstab
# 已省略与主题无关的部分输出
/dev/sda3               swap                    swap    defaults        0 0

代码如下:


[root@jay-linux ~]# dd if=/dev/zero of=/root/swapfile bs=1M count=1024
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB) copied, 4.09017 s, 263 MB/s
[root@jay-linux ~]# mkswap /root/swapfile
Setting up swapspace version 1, size = 1048572 KiB
no label, UUID=48a7ffd5-392f-4963-904c-3e67f0e5dfbe

代码如下:


[root@jay-linux ~]# swapon /root/swapfile
[root@jay-linux ~]# free -m
            total       used       free     shared    buffers     cached
Mem:          3979       3945         34          0        261       2628
-/+ buffers/cache:       1054       2924
Swap:         5119          0       5119

代码如下:


[root@jay-linux ~]# swapoff /dev/sda3
[root@jay-linux ~]# free -m
            total       used       free     shared    buffers     cached
Mem:          3979       3945         34          0        261       2629
-/+ buffers/cache:       1053       2925
Swap:         1023          0       1023

代码如下:


[root@jay-linux ~]# swapoff /root/swapfile
[root@jay-linux ~]# free -m
            total       used       free     shared    buffers     cached
Mem:          3979       3945         34          0        261       2629
-/+ buffers/cache:       1053       2926
Swap:            0          0          0

代码如下:


[root@jay-linux ~]# swapon /dev/sda3
[root@jay-linux ~]# free -m
            total       used       free     shared    buffers     cached
Mem:          3979       3946         33          0        261       2629
-/+ buffers/cache:       1054       2924
Swap:         4095          0       4095

看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注亿速云行业资讯频道,感谢您对亿速云的支持。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI