---
title: openEuler系统下内存页Page Size如何从64K切换到4K
description: "内核版本为4.19对应的openEuler 20.03系列操作系统默认pagesize为64KB，可以通过执行getconf PAGESIZE命令查看。您可以根据业务需要进行修改。具体修改方法如下："
url: https://www.hikunpeng.com/document/detail/zh/kunpengfaq/productfaq/osfaq/os_faq_0010.html
sourcePath: /source/zh/kunpengfaq/productfaq/osfaq/os_faq_0010.html
indexId: f79f814c9342aad347424b9d59488180d47085ceb624c427112579fba0f3c7bb55
---
# openEuler系统下内存页Page Size如何从64K切换到4K

内核版本为4.19对应的openEuler 20.03系列操作系统默认pagesize为64KB，可以通过执行getconf PAGESIZE命令查看。您可以根据业务需要进行修改。具体修改方法如下：

1. 查看当前内存页大小。

```
getconf PAGESIZE
```


  回显信息为“65536”，表示为64K。

2. 获取内核源码。

  a. 创建目录并进入该目录。

```
mkdir -p /home/kernel-bcache
cd /home/kernel-bcache
```


  b. 下载    内核源码包(https://repo.openeuler.org/openEuler-20.03-LTS-SP1/source/Packages/)
至“/home/kernel-bcache”目录。
  c. 解压源码包。

```
rpm2cpio kernel-4.19.90-2109.1.0.0108.oe1.src.rpm | cpio -divm
tar -zxvf kernel.tar.gz
```


  d. 配置镜像源。

    1. 下载      openEuler-20.03-LTS-SP1-everything-aarch64-dvd.iso(https://repo.huaweicloud.com/openeuler/openEuler-20.03-LTS-SP1/ISO/aarch64/openEuler-20.03-LTS-SP1-everything-aarch64-dvd.iso)
。
    2. 通过SFTP工具将“openEuler-20.03-LTS-SP1-everything-aarch64-dvd.iso”上传到服务器上“/root”目录下。
    3. 创建一个本地文件夹用于挂载本地镜像。

```
mkdir -p /iso
```


    4. 将iso文件挂载到本地文件夹。

```
mount /root/openEuler-20.03-LTS-SP1-everything-aarch64-dvd.iso /iso
```


  e. 创建镜像Yum源。

    1. 打开配置文件。

```
vi /etc/yum.repos.d/openEuler.repo
```


    2. 按“i”进入编辑模式，在文件中加入以下内容。

```
[Base]
name=Base
baseurl=file:///iso
enabled=1
gpgcheck=0
priority=1
[openEuler-source]
name=openEuler-source
baseurl=http://repo.openeuler.org/openEuler-20.03-LTS-SP1/source/
enabled=1
gpgcheck=1
gpgkey=http://repo.openeuler.org/openEuler-20.03-LTS-SP1/source/RPM-GPG-KEY-openEuler
[openEuler-os]
name=openEuler-os
baseurl=http://repo.openeuler.org/openEuler-20.03-LTS-SP1/OS/aarch64/
enabled=0
gpgcheck=1
gpgkey=http://repo.openeuler.org/openEuler-20.03-LTS-SP1/OS/aarch64/RPM-GPG-KEY-openEuler
[openEuler-everything]
name=openEuler-everything
baseurl=http://repo.openeuler.org/openEuler-20.03-LTS-SP1/everything/aarch64/
enabled=0
gpgcheck=1
gpgkey=http://repo.openeuler.org/openEuler-20.03-LTS-SP1/everything/aarch64/RPM-GPG-KEY-openEuler
[openEuler-EPOL]
name=openEuler-epol
baseurl=http://repo.openeuler.org/openEuler-20.03-LTS-SP1/EPOL/aarch64/
enabled=1
gpgcheck=0
[openEuler-update]
name=openEuler-update
baseurl=http://repo.openeuler.org/openEuler-20.03-LTS-SP1/update/aarch64/
enabled=1
gpgcheck=0
```


    3. 按“Esc”键退出编辑模式，输入“:wq!”后按“Enter”键保存并退出文件。
  f. 安装依赖。

```
dnf -y install ncurses-devel bison m4 flex rpm-build rpmdevtools asciidoc audit-libs-devel binutils-devel elfutils-devel elfutils-libelf-devel gtk2-devel java-1.8.0-openjdk-devel xz-devel libbabeltrace-devel libunwind-devel newt-devel numactl-devel openssl-devel pciutils-devel perl-generators python3-devel python3-docutils xmlto zlib-devel
createrepo
genisoimag
e
```


3. 修改内核配置文件。
  1 2 3 cd /home/kernel-bcache/kernel cp arch/arm64/configs/openeuler_defconfig .config make menuconfig

4. 修改内核Page size大小为4KB。

  a. 选择“Kernel Features”。
  b. 按“Enter”键进入下一级菜单，选择“Page size（64KB）”。
  c. 按“Enter”键进入选择，按“Space”键选择4KB。
  d. 按两次“Exit”保存并退出。
5. 确认Page size是否已修改为4K。

```
vi .config
```


  如果回显信息中“CONFIG_ARM64_4K_PAGES=y”，则表示已正确配置。

6. 覆盖默认配置文件。

```
cp .config arch/arm64/configs/openeuler_defconfig
```


  输入“y”确认。

7. 生成内核RPM包。

  a. 安装依赖包。

```
yum install
-y ncurses-devel bc openssl-devel rpm-build bison flex
```


  b. 切换到源码根目录下。

```
cp /boot/config-$(uname -r) .
```


  c. 编译RPM包。

```
make binrpm-pkg -j48
```


    建议不要满核编译，例如对于64核处理器，建议运行make binrpm-pkg -j48；对于96核处理器，建议运行make binrpm-pkg -j72，编译过程中尽量不要做其他操作，避免卡死。

  d. 查看生成的内核RPM包。

```
ls /home/rpmbuild/RPMS/aarch64/
```


8. 安装内核。

  a. 将生成的内核RPM包上传至服务器的“/home/kernel-rpm”目录。

```
mkdir -p /home/kernel-rpm
cd /home/kernel-rpm
dnf -y install kernel-4.19.90-1.aarch64.rpm
```


  b. 查看默认内核启动项。

```
grub2-editenv list
```


    - 如果默认版本是新安装的内核版本，则执行      8.d
。
    - 如果默认版本不是新安装的内核版本，则执行      8.c
。
  c. 修改默认内核启动项。

```
cat /etc/grub2-efi.cfg  | grep openEuler
```


    其中“openEuler (4.19.90) 20.03 (LTS-SP1)”为新安装内核版本。

```
grub2-set-default "openEuler (4.19.90) 20.03 (LTS-SP1)"
```


  d. 重启系统。
    1 reboot

9. 系统重启后通过执行getconf PAGESIZE命令，确认Page size是否为4K。
