mkswap
mkswap设置Linux交换区。
查看英文版
1 mkswap 运行系统环境
2 mkswap 描述
3 mkswap 语法
4 mkswap 例子
mkswap 运行系统环境
Unix&Linux
mkswap 描述
mkswap在设备或文件中设置Linux交换区域。
该器件 参数通常是一个磁盘 分区(类似的/ dev / sdb7),也可以是一个文件。Linux内核不查看分区ID,但是许多安装脚本会假定十六进制类型82(LINUX_SWAP)的分区是交换分区。(Solaris也使用这种类型。请注意不要通过混合使用来意外杀死Solaris分区(如果有)!)
size参数是多余的,但为了向后兼容而包含了该参数。(它以1024字节 块为单位指定交换区域的所需大小。如果省略,mkswap将使用整个分区或文件。指定这样做非常危险:错字可能会破坏您的数据。重复,在指定分区时非常小心手动调整大小!输入错误会破坏磁盘上的数据!)
创建交换区域后,您需要swapon命令才能开始使用它。通常,交换区域在/ etc / fstab中列出,以便在引导时通过某些引导脚本中的swapon -a命令可以使用它们。
重要信息和警告
交换头不接触第一个块。一个引导加载器或磁盘标签可以存在,但它不是一个推荐的设置。推荐的设置是对Linux交换区域使用单独的分区。
像许多其他类似mkfs的实用程序一样,mkswap擦除第一个分区块以使任何先前的文件系统不可见。
但是,mkswap拒绝擦除带有磁盘标签的设备(SUN,BSD等)和整个磁盘(例如/ dev / sda)上的第一个块。
查看英文版
mkswap 语法
mkswap [options] device [size]
选件
-c,--check | 在创建交换区之前,请检查设备(如果是块设备)是否有坏块。如果找到任何坏块,则打印计数。 |
-f,--force |
即使该命令是愚蠢的,也请继续。强制创建大于其所在文件或分区的交换区域。 同样,如果没有此选项,mkswap将拒绝擦除具有分区表的设备以及整个磁盘(例如/ dev / sda)上的第一个块。 |
-L,--label label | 指定设备的标签,以允许按标签交换。 |
-p,-- pagesize size | 指定要使用的页面大小(以字节为单位)。通常不需要此选项。mkswap从内核读取大小。 |
-U,-- uuid UUID | 指定要使用的UUID。默认是生成一个UUID。 |
-v,-- swapversion 1 | 指定交换空间版本。(此选项目前没有意义的,作为老-v 0选项已经过时了,现在只能-v 1是支持的。因为2.5.22(2002年6月)的内核不支持V0交换空间格式。新版本V1是自2.1.117(1998年8月)开始受支持。) |
-h,--help | 显示帮助文本并退出。 |
-V,-- version | 显示版本信息并退出。 |
笔记
交换区的最大可用大小取决于体系结构和内核版本。在i386,PPC,m68k和ARM上大约为2 GiB,在sparc上约为1 GiB ,在mips上约为512 MiB,在alpha上约为128 GiB ,在sparc64上约为3 TiB。对于2.3.3之后的内核(1999年5月),没有这种限制。
请注意,在2.1.117版之前,内核为每个页面分配了一个字节,而现在它分配了两个字节,因此,使用2 GiB的交换区域可能需要2 MiB的内核内存。
目前,Linux允许32个交换区域(在Linux 2.4.10(2001年9月)之前是8个)。可以在文件/ proc / swaps中查看使用中的区域(自2.1.25开始(1997年9月))。
mkswap拒绝小于10页的区域。
如果您不知道计算机使用的页面大小,则可以使用“ cat / proc / cpuinfo ”查找(或者您可能不知道-该文件的内容取决于体系结构和内核版本)。要设置交换文件,必须先使用mkswap初始化该文件,然后再使用以下命令:
dd if = / dev / zero of = swapfile bs = 1024 count = 65536
请注意,交换文件不得包含任何孔(因此,例如,使用cp创建文件是不可接受的)。
查看英文版
mkswap 例子
mkswap /dev/sdc1
准备分区/ dev / sdc1,将其设置为交换分区。然后可以使用swapon命令激活该空间。
查看英文版
未知的网友