首先感谢大佬分享:
姥姥姥姥姥的内核没有添加partprobe命令让我过得好苦啊o(╥﹏╥)o
partprobe主要作用是重读/更新设备分区表。
在使用fdisk命令修改完分区输入w保存后提示分区表未更新,需要重启更新或使用partprobe或kpartx更新分区表,如果不进行更新可能会导致下一步的格式化不完全,进而导致分区无法自动挂载。
下载uid:libuid
下载parted:parted
新建文件夹output的作用:顾名思义就是output,存放编译输出的文件,在交叉编译parted的时候会用到。
tar -zxf libuuid-1.0.3.tar.gz
cd libuuid-1.0.3
mkdir output
./configure --prefix=/你的压缩包路径/libuuid-1.0.3/output/ --host=arm-linux-gnueabihf
make
make install
上面的命令执行完后就可以在你的output下看到生成的头文件等东西了
然后~
看到下面我使用的parted工具版本就知道内核有多老了,最开始下载的3.5版本,出错,按照上面大佬的下载3.1版本,make的时候还是出错,再下载2.2还是出错,我只能换成1.7了(******),好在编译成功了,所以多试几个总能找到合适的(doge)
tar -zxf parted-1.7.1.tar.gz
cd parted-1.7.1
mkdir output
./configure --host=arm-linux-gnueabihf --prefix=/你的压缩包路径/parted-1.7.1/output --disable-device-mapper --without-readline LDFLAGS=-L/你的压缩包路径/libuuid-1.0.3/output/lib/ CFLAGS=-I/你的压缩包路径/libuuid-1.0.3/output/include/
make
make install
最后在output下就可以找到你需要的可执行文件了,然后把output下的文件全部放到该放的地方去,(别忘了lib文件的创建软连接),然后partprobe命令就可以使用了。
最好使用file命令查看一下是否和系统的其他命令架构是一样的。