这篇文章主要介绍“Linux系统mkswap命令的用法”,在日常操作中,相信很多人在Linux系统mkswap命令的用法问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Linux系统mkswap命令的用法”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!
mkswap
在Linux设备或者文件中创建交换分区,创建完成之后必须使用swapon来使用它。一般在“/etc/fstab”中有一个交换分区列表,这样开机的时候就可以使用它。
此命令的适用范围:RedHat、RHEL、Ubuntu、CentOS、SUSE、openSUSE、Fedora。
1、语法
mkswap [-c] [-f] [-p PSZ] [-L label] [-U uuid] device [size]
参数device通常是一个磁盘分区(类似于/dev/sdb7),但也可以是一个文件。Linux内核不查看分区ID,但是许多安装脚本将假定十六进制类型82(Linux_SWAP)的分区是交换分区。(警告:Solaris也使用此类型。小心不要关闭Solaris分区。)
参数size是多余的,但为了向后兼容性而保留
PSZ参数指定要使用的页大小。指定它几乎是不必要的(甚至是不明智的),但是某些旧的libc版本是关于页面大小的,所以mkswap有可能弄错了它。症状是后续Swapon失败了,因为没有找到交换签名。PSZ的典型值为4096或8192。
2、选项列表
选项 | 说明 |
-c | 创建交换分区之前,检测坏块。如果有,那么打印出数量。 |
-f | 强制执行。如果没有此选项,mkswap将拒绝擦除带有分区表的设备上的第一个块或整个磁盘上的第一个块(例如/dec/sda)。 |
-p | 设置页大小,默认4096。一般是不需要指定这个参数的 |
-L label | 指定一个label,方便swapon使用。只适用于新的风格交换区域 |
-v1 | 创建v1版本的swap分区,2.5内核之后只支持这种的 |
-U uuid | 指定uuid,默认情况会生成uuid |
3、说明
交换头不触及第一个块。引导加载程序或磁盘标签可以在那里,但不建议安装。建议的设置是为Linux交换区域使用单独的分区。mkswap和许多其他类似mkfs的实用程序一样,擦除了第一块,这样就可以删除磁盘上的旧系统。mkswap拒绝擦除带有磁盘标签的设备上的第一个块,或者整个磁盘。
交换区域的最大有用大小取决于体系结构和内核版本,在i386、PPC、m68k、ARM、sparc上为1 GiB、MIPS上为512 MiB、alpha上为128 GiB、sparc64上为3 TiB。对于2.3.3以后的内核来说,没有这样的限制。请注意,在2.1.117之前,内核为每个页面分配了一个字节,而现在它分配了两个字节,因此使用中的交换区域2 GIB可能需要2个MIB内核内存。
目前,Linux允许32个交换区域(这是Linux2.4.10之前的8个)。使用中的区域可以在文件“/proc/swaps”中看到(自2.1.25以来)。mkswap拒绝10页以下的区域。如果您不知道您的机器使用的页面大小,您可能可以使用“cat /proc/cpuinfo”查找它。
若要设置交换文件,必须在使用mkswap初始化该文件之前创建该文件,例如使用以下命令:
# dd if=/dev/zero of=swapfile bs=1024 count=65536 |
注意,交换文件不能包含任何漏洞(因此,使用cp(1)创建该文件是不可接受的)
4、实例
1)创建交换分区,指定页大小2048
|
2)创建交换分区,指定页大小4096,指定label
|
3)使用交换分区
|
到此,关于“Linux系统mkswap命令的用法”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注亿速云网站,小编会继续努力为大家带来更多实用的文章!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。