20250426在ubuntu20.04.2系统上解决问题mkfs.exfat command not found
20250426在ubuntu20.04.2系统上解决问题mkfs.exfat command not found
2025/4/26 21:11
缘起,使用NanoPi NEO开发板,编译FriendlyCore系统,打包eMMC固件的时候报错。
./build.sh emmc-img -pack sd-card image, used to write friendlywrt to emmc
./mk-sd-image.sh: line 142: mkfs.exfat: command not found
百度:exfat-utils 源码安装
百度为您找到以下结果
exfat-utils 源码安装
exfat-utils 是一个用于读写 exFAT 文件系统的工具集,它包括了 fsck.exfat、mount.exfat 等工具。如果你想从源码安装 exfat-utils,你可以按照以下步骤进行:
1. 安装依赖
首先,你需要确保你的系统上安装了所有必要的编译工具和库。对于大多数 Linux 发行版,你需要安装 build-essential(或等效的包,如 gcc、make 等)和 libfuse-dev(如果需要支持 FUSE)。
对于 Ubuntu/Debian 系统:
sudo apt-get update
sudo apt-get install build-essential libfuse-dev
对于 Fedora/CentOS 系统:
sudo dnf install gcc make fuse-devel
2. 下载源码
你可以从 GitHub 上获取 exfat-utils 的源码。打开终端,使用以下命令下载源码:
git clone https://github.com/relan/exfat.git
cd exfat
3. 编译和安装
在源码目录中,使用以下命令来编译和安装 exfat-utils:
./configure
make
sudo make install
4. 验证安装
安装完成后,你可以通过运行以下命令来检查 fsck.exfat 和 mount.exfat 是否正确安装:
fsck.exfat --version
mount.exfat --version
如果这些命令返回了版本信息,那么说明 exfat-utils 已经成功安装。
5. 使用 exfat-utils
安装完成后,你可以使用 mount.exfat 来挂载 exFAT 分区,例如:
sudo mount.exfat /dev/sdx1 /mnt/exfat_drive
替换 /dev/sdx1 为你的 exFAT 分区设备名,/mnt/exfat_drive 为挂载点。
6. 注意事项
确保在编译和安装过程中没有遇到任何错误。如果遇到问题,检查依赖是否完整或查看编译输出中的错误信息。
如果你的系统已经包含了这些工具(例如 Ubuntu 16.04 及以后版本通常自带),你可能不需要重新编译。可以使用包管理器(如 apt 或 yum)来安装。例如,在 Ubuntu 上:
sudo apt-get install exfat-utils exfat-fuse
以上就是从源码安装 exfat-utils 的基本步骤。希望这可以帮助你成功安装和使用 exFAT 文件系统工具!
提示:AI自动生成,仅供参考
收起
复制
All done.
./mk-sd-image.sh: line 142: mkfs.exfat: command not found
rootroot@ubuntu:~/friendlywrt-h3$
rootroot@ubuntu:~/friendlywrt-h3$
rootroot@ubuntu:~/friendlywrt-h3$ sudo apt-get install exfat-utils
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following additional packages will be installed:
exfat-fuse
The following NEW packages will be installed:
exfat-fuse exfat-utils
0 upgraded, 2 newly installed, 0 to remove and 623 not upgraded.
Need to get 65.3 kB of archives.
After this operation, 302 kB of additional disk space will be used.
Do you want to continue? [Y/n] y
Get:1 http://us.archive.ubuntu.com/ubuntu focal/universe amd64 exfat-fuse amd64 1.3.0-1 [24.6 kB]
Get:2 http://us.archive.ubuntu.com/ubuntu focal/universe amd64 exfat-utils amd64 1.3.0-1 [40.7 kB]
Fetched 65.3 kB in 3s (20.2 kB/s)
Selecting previously unselected package exfat-fuse.
(Reading database ... 194685 files and directories currently installed.)
Preparing to unpack .../exfat-fuse_1.3.0-1_amd64.deb ...
Unpacking exfat-fuse (1.3.0-1) ...
Selecting previously unselected package exfat-utils.
Preparing to unpack .../exfat-utils_1.3.0-1_amd64.deb ...
Unpacking exfat-utils (1.3.0-1) ...
Setting up exfat-utils (1.3.0-1) ...
Setting up exfat-fuse (1.3.0-1) ...
Processing triggers for man-db (2.9.1-1) ...
rootroot@ubuntu:~/friendlywrt-h3$
rootroot@ubuntu:~/friendlywrt-h3$ ./build.sh emmc-img
参考资料:
https://wiki.friendlyelec.com/wiki/index.php/NanoPi_NEO/zh
NanoPi NEO/zh
7 如何编译FriendlyCore系统
7.1 使用开源社区主线BSP
7.2 使用全志原厂BSP
7.2.1 准备工作
7.2.2 安装交叉编译器
7.2.3 编译lichee源码
7.2.4 编译U-boot
7.2.5 编译Linux内核
7.2.6 清理lichee源码
完整的LOG:
rootroot@ubuntu:~$ ifconfig
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.221.129 netmask 255.255.255.0 broadcast 192.168.221.255
inet6 fe80::5363:b466:6c6:19b8 prefixlen 64 scopeid 0x20<link>
ether 00:0c:29:87:5d:3a txqueuelen 1000 (Ethernet)
RX packets 149 bytes 28923 (28.9 KB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 233 bytes 27798 (27.7 KB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 1000 (Local Loopback)
RX packets 138 bytes 12849 (12.8 KB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 138 bytes 12849 (12.8 KB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
rootroot@ubuntu:~$
rootroot@ubuntu:~$
rootroot@ubuntu:~$ ll
total 92
drwxr-xr-x 17 rootroot rootroot 4096 Apr 26 11:12 ./
drwxr-xr-x 3 root root 4096 Apr 1 2021 ../
drwxr-xr-x 2 rootroot rootroot 4096 Apr 26 11:02 07_源代码/
-rw------- 1 rootroot rootroot 2076 Apr 26 11:43 .bash_history
-rw-r--r-- 1 rootroot rootroot 220 Apr 1 2021 .bash_logout
-rw-r--r-- 1 rootroot rootroot 3771 Apr 1 2021 .bashrc
drwxrwxr-x 11 rootroot rootroot 4096 Apr 26 10:52 .cache/
drwx------ 12 rootroot rootroot 4096 Apr 26 20:58 .config/
drwxr-xr-x 2 rootroot rootroot 4096 Apr 1 2021 Desktop/
drwxr-xr-x 2 rootroot rootroot 4096 Apr 1 2021 Documents/
drwxr-xr-x 2 rootroot rootroot 4096 Apr 1 2021 Downloads/
drwxrwxr-x 11 rootroot rootroot 4096 Apr 26 11:37 friendlywrt-h3/
drwx------ 3 rootroot rootroot 4096 Apr 1 2021 .gnupg/
drwxr-xr-x 3 rootroot rootroot 4096 Apr 1 2021 .local/
drwxr-xr-x 2 rootroot rootroot 4096 Apr 1 2021 Music/
drwxr-xr-x 2 rootroot rootroot 4096 Apr 1 2021 Pictures/
-rw-r--r-- 1 rootroot rootroot 807 Apr 1 2021 .profile
drwxr-xr-x 2 rootroot rootroot 4096 Apr 1 2021 Public/
-rw-rw-r-- 1 rootroot rootroot 2 Apr 26 11:07 .repo_.gitconfig.json
drwx------ 2 rootroot rootroot 4096 Apr 1 2021 .ssh/
-rw-r--r-- 1 rootroot rootroot 0 Apr 1 2021 .sudo_as_admin_successful
drwxr-xr-x 2 rootroot rootroot 4096 Apr 1 2021 Templates/
drwxr-xr-x 2 rootroot rootroot 4096 Apr 1 2021 Videos/
-rw------- 1 rootroot rootroot 104 Apr 26 11:12 .Xauthority
rootroot@ubuntu:~$ cd friendlywrt-h3/
rootroot@ubuntu:~/friendlywrt-h3$ ll
total 480580
drwxrwxr-x 11 rootroot rootroot 4096 Apr 26 11:37 ./
drwxr-xr-x 17 rootroot rootroot 4096 Apr 26 11:12 ../
lrwxrwxrwx 1 rootroot rootroot 16 Apr 26 11:07 build.sh -> scripts/build.sh*
drwxrwxr-x 3 rootroot rootroot 4096 Apr 26 11:07 configs/
lrwxrwxrwx 1 rootroot rootroot 41 Apr 26 11:17 .current_config.mk -> device/friendlyelec/h3/nanopi_neo_core.mk
drwxrwxr-x 3 rootroot rootroot 4096 Apr 26 11:07 device/
drwxrwxr-x 14 rootroot rootroot 4096 Apr 26 11:07 friendlywrt/
drwxrwxr-x 27 rootroot rootroot 4096 Apr 26 11:38 kernel/
-rw-rw-r-- 1 rootroot rootroot 164308041 Apr 26 11:11 kernel2.tgz
-rw-rw-r-- 1 rootroot rootroot 311279142 Apr 26 11:37 kernel5编译后的.tgz
lrwxrwxrwx 1 rootroot rootroot 19 Apr 26 11:07 out -> scripts/sd-fuse/out/
drwxrwxr-x 2 rootroot rootroot 4096 Apr 17 2020 pre-download/
drwxrwxr-x 7 rootroot rootroot 4096 Apr 17 2020 .repo/
drwxrwxr-x 4 rootroot rootroot 4096 Apr 26 11:07 scripts/
drwxrwxr-x 5 rootroot rootroot 4096 Apr 26 11:07 toolchain/
drwxrwxr-x 27 rootroot rootroot 4096 Apr 26 11:17 u-boot/
-rw-rw-r-- 1 rootroot rootroot 16476681 Apr 26 11:10 u-boot1.tgz
rootroot@ubuntu:~/friendlywrt-h3$ ll *.sh
lrwxrwxrwx 1 rootroot rootroot 16 Apr 26 11:07 build.sh -> scripts/build.sh*
rootroot@ubuntu:~/friendlywrt-h3$
rootroot@ubuntu:~/friendlywrt-h3$ ./build.sh
USAGE: ./build.sh <parameter>
# select board:
./build.sh nanopi_m1.mk
./build.sh nanopi_neo_core.mk
./build.sh nanopi_neo_air.mk
./build.sh nanopi_duo2.mk
./build.sh nanopi_r1s_h3.mk
./build.sh nanopi_neo_s.mk
./build.sh nanopi_m1_plus.mk
./build.sh nanopi_r1.mk
./build.sh nanopi_neo.mk
./build.sh zeropi.mk
# build module:
./build.sh all -build all
./build.sh uboot -build uboot only
./build.sh kernel -build kernel only
./build.sh friendlywrt -build friendlywrt rootfs only
./build.sh sd-img -pack sd-card image, used to create bootable SD card
./build.sh emmc-img -pack sd-card image, used to write friendlywrt to emmc
# clean
./build.sh cleanall
rootroot@ubuntu:~/friendlywrt-h3$
rootroot@ubuntu:~/friendlywrt-h3$ ./build.sh sd-img
[INFO]: Copying /home/rootroot/friendlywrt-h3/friendlywrt/build_dir/target-arm_cortex-a7+neon-vfpv4_musl_eabi/root-sunxi to /home/rootroot/friendlywrt-h3/scripts/sd-fuse/out/rootfs.J5lnqTyPt/
cp: cannot stat '/home/rootroot/friendlywrt-h3/friendlywrt/build_dir/target-arm_cortex-a7+neon-vfpv4_musl_eabi/root-sunxi/*': No such file or directory
[INFO]: Applying device/friendlyelec/h3/default-settings to /home/rootroot/friendlywrt-h3/scripts/sd-fuse/out/rootfs.J5lnqTyPt
sed: can't read ./etc/config/firewall: No such file or directory
[INFO]: Applying device/friendlyelec/h3/common-files to /home/rootroot/friendlywrt-h3/scripts/sd-fuse/out/rootfs.J5lnqTyPt
Re-running script under sudo...
[sudo] password for rootroot:
Sorry, try again.
[sudo] password for rootroot:
[INFO]: prepare boot.img ...
Re-running script under sudo...
0+0 records in
0+0 records out
0 bytes copied, 0.000374109 s, 0.0 kB/s
generating ./friendlywrt_4.14_armhf/boot.img done.
[INFO]: prepare rootfs.img ...
Re-running script under sudo...
Creating filesystem with parameters:
Size: 159383552
Block size: 4096
Blocks per group: 32768
Inodes per group: 4864
Inode size: 256
Journal blocks: 1024
Label: rootfs
Blocks: 38912
Block groups: 2
Reserved block group size: 15
Suggest size: 67108864
Created filesystem with 1434/9728 inodes and 11856/38912 blocks
'/home/rootroot/friendlywrt-h3/scripts/sd-fuse/prebuilt/partmap.template' -> 'friendlywrt_4.14_armhf/partmap.txt'
generating friendlywrt_4.14_armhf/partmap.txt done.
0
generating friendlywrt_4.14_armhf/rootfs.img done.
0
Generating empty userdata.img (size:104857600)
Creating filesystem with parameters:
Size: 104857600
Block size: 4096
Blocks per group: 32768
Inodes per group: 6400
Inode size: 256
Journal blocks: 1024
Label: userdata
Blocks: 25600
Block groups: 1
Reserved block group size: 7
Suggest size: 25165824
Created filesystem with 11/6400 inodes and 1438/25600 blocks
[INFO]: clean ...
Re-running script under sudo...
Creating RAW image: out/FriendlyWrt_20250426_NanoPi-NEO-Core_armhf_sd.img (640 MB)
---------------------------------
0+0 records in
0+0 records out
0 bytes copied, 0.000329701 s, 0.0 kB/s
Using device: /dev/loop12
---------------------------------
Friendlywrt_4.14_armhf filesystem fusing
Image root: ./friendlywrt_4.14_armhf
----------------------------------------------------------------
[/dev/loop12] capacity = 610MB, 640000000 bytes
current /dev/loop12 partition:
MBR.0 start : 0x0000100000 size 0x002615a000 kB
----------------------------------------------------------------
parsing ./friendlywrt_4.14_armhf/partmap.txt:
part.0 flash=mmc,0:boot0:raw:0x2000,0x17fe000:u-boot-sunxi-with-spl.bin:[RAW] ./friendlywrt_4.14_armhf/u-boot-sunxi-with-spl.bin
part.1 flash=mmc,0:boot:fat:0x1800000,0x2800000:boot.img:[MBR] ./friendlywrt_4.14_armhf/boot.img
part.2 flash=mmc,0:rootfs:ext4:0x4000000,0x9800000:rootfs.img:[MBR] ./friendlywrt_4.14_armhf/rootfs.img
part.3 flash=mmc,0:userdata:ext4:0xd800000,0x0:userdata.img:[MBR] ./friendlywrt_4.14_armhf/userdata.img
----------------------------------------------------------------
create new MBR 3:
[MBR.0] start : 0x0001800000 size 0x0002800000
[MBR.1] start : 0x0004000000 size 0x0009800000
[MBR.2] start : 0x000d800000 size 0x0000000000
----------------------------------------------------------------
copy from: ./friendlywrt_4.14_armhf to /dev/loop12
[RAW. 0]: 2040 KB | ./friendlywrt_4.14_armhf/u-boot-sunxi-with-spl.bin > 100% : done.
[MBR. 0]: 40960 KB | ./friendlywrt_4.14_armhf/boot.img > 100% : done.
[MBR. 1]: 46164 KB | ./friendlywrt_4.14_armhf/rootfs.img > 100% : done.
[MBR. 2]: 5752 KB | ./friendlywrt_4.14_armhf/userdata.img > 100% : done.
----------------------------------------------------------------
/dev/loop12: msdos partitions 1 2 3
### try to resize2fs: /dev/loop12p3
resize2fs 1.45.5 (07-Jan-2020)
Resizing the filesystem on /dev/loop12p3 to 100954 (4k) blocks.
The filesystem on /dev/loop12p3 is now 100954 (4k) blocks long.
---------------------------------
Friendlywrt_4.14_armhf is fused successfully.
All done.
---------------------------------
RAW image successfully created (20:59:42).
-rw-r--r-- 1 root root 640000000 Apr 26 20:59 out/FriendlyWrt_20250426_NanoPi-NEO-Core_armhf_sd.img
Tip: You can compress it to save disk space.
-----------------------------------------
Run the following command for sdcard install:
sudo dd if=out/FriendlyWrt_20250426_NanoPi-NEO-Core_armhf_sd.img bs=1M of=/dev/sdX
-----------------------------------------
rootroot@ubuntu:~/friendlywrt-h3$
rootroot@ubuntu:~/friendlywrt-h3$ ./build.sh .
Can't find a build config file, please check again
USAGE: ./build.sh <parameter>
# select board:
./build.sh nanopi_m1.mk
./build.sh nanopi_neo_core.mk
./build.sh nanopi_neo_air.mk
./build.sh nanopi_duo2.mk
./build.sh nanopi_r1s_h3.mk
./build.sh nanopi_neo_s.mk
./build.sh nanopi_m1_plus.mk
./build.sh nanopi_r1.mk
./build.sh nanopi_neo.mk
./build.sh zeropi.mk
# build module:
./build.sh all -build all
./build.sh uboot -build uboot only
./build.sh kernel -build kernel only
./build.sh friendlywrt -build friendlywrt rootfs only
./build.sh sd-img -pack sd-card image, used to create bootable SD card
./build.sh emmc-img -pack sd-card image, used to write friendlywrt to emmc
# clean
./build.sh cleanall
rootroot@ubuntu:~/friendlywrt-h3$ ./build.sh emmc-img
[INFO]: Copying /home/rootroot/friendlywrt-h3/friendlywrt/build_dir/target-arm_cortex-a7+neon-vfpv4_musl_eabi/root-sunxi to /home/rootroot/friendlywrt-h3/scripts/sd-fuse/out/rootfs.2ZenZBFIN/
cp: cannot stat '/home/rootroot/friendlywrt-h3/friendlywrt/build_dir/target-arm_cortex-a7+neon-vfpv4_musl_eabi/root-sunxi/*': No such file or directory
[INFO]: Applying device/friendlyelec/h3/default-settings to /home/rootroot/friendlywrt-h3/scripts/sd-fuse/out/rootfs.2ZenZBFIN
sed: can't read ./etc/config/firewall: No such file or directory
[INFO]: Applying device/friendlyelec/h3/common-files to /home/rootroot/friendlywrt-h3/scripts/sd-fuse/out/rootfs.2ZenZBFIN
Re-running script under sudo...
[INFO]: prepare boot.img ...
Re-running script under sudo...
0+0 records in
0+0 records out
0 bytes copied, 0.000316074 s, 0.0 kB/s
generating ./friendlywrt_4.14_armhf/boot.img done.
[INFO]: prepare rootfs.img ...
Re-running script under sudo...
Creating filesystem with parameters:
Size: 159383552
Block size: 4096
Blocks per group: 32768
Inodes per group: 4864
Inode size: 256
Journal blocks: 1024
Label: rootfs
Blocks: 38912
Block groups: 2
Reserved block group size: 15
Suggest size: 67108864
Created filesystem with 1434/9728 inodes and 11856/38912 blocks
'/home/rootroot/friendlywrt-h3/scripts/sd-fuse/prebuilt/partmap.template' -> 'friendlywrt_4.14_armhf/partmap.txt'
generating friendlywrt_4.14_armhf/partmap.txt done.
0
generating friendlywrt_4.14_armhf/rootfs.img done.
0
Generating empty userdata.img (size:104857600)
Creating filesystem with parameters:
Size: 104857600
Block size: 4096
Blocks per group: 32768
Inodes per group: 6400
Inode size: 256
Journal blocks: 1024
Label: userdata
Blocks: 25600
Block groups: 1
Reserved block group size: 7
Suggest size: 25165824
Created filesystem with 11/6400 inodes and 1438/25600 blocks
[INFO]: clean ...
Re-running script under sudo...
Creating RAW image: out/h3_eflasher-20250426.img (7800 MB)
---------------------------------
0+0 records in
0+0 records out
0 bytes copied, 0.000562631 s, 0.0 kB/s
Using device: /dev/loop12
---------------------------------
Eflasher filesystem fusing
Image root: ./eflasher
----------------------------------------------------------------
[/dev/loop12] capacity = 7438MB, 7799999488 bytes
current /dev/loop12 partition:
MBR.0 start : 0x0000100000 size 0x01d0da8c00 kB
----------------------------------------------------------------
parsing ./eflasher/partmap.txt:
part.0 flash=mmc,0:boot0:raw:0x2000,0x1fe000:u-boot-sunxi-with-spl.bin:[RAW] ./eflasher/u-boot-sunxi-with-spl.bin
part.1 flash=mmc,0:env:raw:0x200000,0x20000:env_eflasher.bin:[RAW] ./eflasher/env_eflasher.bin
part.2 flash=mmc,0:FriendlyARM:fat:0x70900000,0x0:FriendlyARM.img:[MBR] ./eflasher/FriendlyARM.img
part.3 flash=mmc,0:boot:fat:0x1800000,0x2800000:boot.img:[MBR] ./eflasher/boot.img
part.4 flash=mmc,0:rootfs:ext4:0x4000000,0x6c900000:rootfs.img:[MBR] ./eflasher/rootfs.img
----------------------------------------------------------------
create new MBR 3:
[MBR.0] start : 0x0070900000 size 0x0000000000
[MBR.1] start : 0x0001800000 size 0x0002800000
[MBR.2] start : 0x0004000000 size 0x006c900000
----------------------------------------------------------------
copy from: ./eflasher to /dev/loop12
[RAW. 0]: 2040 KB | ./eflasher/u-boot-sunxi-with-spl.bin > 100% : done.
[RAW. 1]: 128 KB | ./eflasher/env_eflasher.bin > 100% : done.
[MBR. 0]: 163840 KB | ./eflasher/FriendlyARM.img > 100% : done.
[MBR. 1]: 40960 KB | ./eflasher/boot.img > 100% : done.
[MBR. 2]: 651766 KB | ./eflasher/rootfs.img > 100% : done.
----------------------------------------------------------------
/dev/loop12: msdos partitions 2 3 1
---------------------------------
Eflasher is fused successfully.
All done.
./mk-sd-image.sh: line 142: mkfs.exfat: command not found
rootroot@ubuntu:~/friendlywrt-h3$
rootroot@ubuntu:~/friendlywrt-h3$
rootroot@ubuntu:~/friendlywrt-h3$ sudo apt-get install exfat-utils
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following additional packages will be installed:
exfat-fuse
The following NEW packages will be installed:
exfat-fuse exfat-utils
0 upgraded, 2 newly installed, 0 to remove and 623 not upgraded.
Need to get 65.3 kB of archives.
After this operation, 302 kB of additional disk space will be used.
Do you want to continue? [Y/n] y
Get:1 http://us.archive.ubuntu.com/ubuntu focal/universe amd64 exfat-fuse amd64 1.3.0-1 [24.6 kB]
Get:2 http://us.archive.ubuntu.com/ubuntu focal/universe amd64 exfat-utils amd64 1.3.0-1 [40.7 kB]
Fetched 65.3 kB in 3s (20.2 kB/s)
Selecting previously unselected package exfat-fuse.
(Reading database ... 194685 files and directories currently installed.)
Preparing to unpack .../exfat-fuse_1.3.0-1_amd64.deb ...
Unpacking exfat-fuse (1.3.0-1) ...
Selecting previously unselected package exfat-utils.
Preparing to unpack .../exfat-utils_1.3.0-1_amd64.deb ...
Unpacking exfat-utils (1.3.0-1) ...
Setting up exfat-utils (1.3.0-1) ...
Setting up exfat-fuse (1.3.0-1) ...
Processing triggers for man-db (2.9.1-1) ...
rootroot@ubuntu:~/friendlywrt-h3$
rootroot@ubuntu:~/friendlywrt-h3$ ./build.sh emmc-img
[INFO]: Copying /home/rootroot/friendlywrt-h3/friendlywrt/build_dir/target-arm_cortex-a7+neon-vfpv4_musl_eabi/root-sunxi to /home/rootroot/friendlywrt-h3/scripts/sd-fuse/out/rootfs.ysGv1Yoeh/
cp: cannot stat '/home/rootroot/friendlywrt-h3/friendlywrt/build_dir/target-arm_cortex-a7+neon-vfpv4_musl_eabi/root-sunxi/*': No such file or directory
[INFO]: Applying device/friendlyelec/h3/default-settings to /home/rootroot/friendlywrt-h3/scripts/sd-fuse/out/rootfs.ysGv1Yoeh
sed: can't read ./etc/config/firewall: No such file or directory
[INFO]: Applying device/friendlyelec/h3/common-files to /home/rootroot/friendlywrt-h3/scripts/sd-fuse/out/rootfs.ysGv1Yoeh
Re-running script under sudo...
[INFO]: prepare boot.img ...
Re-running script under sudo...
0+0 records in
0+0 records out
0 bytes copied, 0.000541491 s, 0.0 kB/s
generating ./friendlywrt_4.14_armhf/boot.img done.
[INFO]: prepare rootfs.img ...
Re-running script under sudo...
Creating filesystem with parameters:
Size: 159383552
Block size: 4096
Blocks per group: 32768
Inodes per group: 4864
Inode size: 256
Journal blocks: 1024
Label: rootfs
Blocks: 38912
Block groups: 2
Reserved block group size: 15
Suggest size: 67108864
Created filesystem with 1434/9728 inodes and 11856/38912 blocks
'/home/rootroot/friendlywrt-h3/scripts/sd-fuse/prebuilt/partmap.template' -> 'friendlywrt_4.14_armhf/partmap.txt'
generating friendlywrt_4.14_armhf/partmap.txt done.
0
generating friendlywrt_4.14_armhf/rootfs.img done.
0
Generating empty userdata.img (size:104857600)
Creating filesystem with parameters:
Size: 104857600
Block size: 4096
Blocks per group: 32768
Inodes per group: 6400
Inode size: 256
Journal blocks: 1024
Label: userdata
Blocks: 25600
Block groups: 1
Reserved block group size: 7
Suggest size: 25165824
Created filesystem with 11/6400 inodes and 1438/25600 blocks
[INFO]: clean ...
Re-running script under sudo...
Creating RAW image: out/h3_eflasher-20250426.img (7800 MB)
---------------------------------
0+0 records in
0+0 records out
0 bytes copied, 0.000339886 s, 0.0 kB/s
Using device: /dev/loop13
---------------------------------
Eflasher filesystem fusing
Image root: ./eflasher
----------------------------------------------------------------
[/dev/loop13] capacity = 7438MB, 7799999488 bytes
current /dev/loop13 partition:
MBR.0 start : 0x0000100000 size 0x01d0da8c00 kB
----------------------------------------------------------------
parsing ./eflasher/partmap.txt:
part.0 flash=mmc,0:boot0:raw:0x2000,0x1fe000:u-boot-sunxi-with-spl.bin:[RAW] ./eflasher/u-boot-sunxi-with-spl.bin
part.1 flash=mmc,0:env:raw:0x200000,0x20000:env_eflasher.bin:[RAW] ./eflasher/env_eflasher.bin
part.2 flash=mmc,0:FriendlyARM:fat:0x70900000,0x0:FriendlyARM.img:[MBR] ./eflasher/FriendlyARM.img
part.3 flash=mmc,0:boot:fat:0x1800000,0x2800000:boot.img:[MBR] ./eflasher/boot.img
part.4 flash=mmc,0:rootfs:ext4:0x4000000,0x6c900000:rootfs.img:[MBR] ./eflasher/rootfs.img
----------------------------------------------------------------
create new MBR 3:
[MBR.0] start : 0x0070900000 size 0x0000000000
[MBR.1] start : 0x0001800000 size 0x0002800000
[MBR.2] start : 0x0004000000 size 0x006c900000
----------------------------------------------------------------
copy from: ./eflasher to /dev/loop13
[RAW. 0]: 2040 KB | ./eflasher/u-boot-sunxi-with-spl.bin > 100% : done.
[RAW. 1]: 128 KB | ./eflasher/env_eflasher.bin > 100% : done.
[MBR. 0]: 163840 KB | ./eflasher/FriendlyARM.img > 100% : done.
[MBR. 1]: 40960 KB | ./eflasher/boot.img > 100% : done.
[MBR. 2]: 651766 KB | ./eflasher/rootfs.img > 100% : done.
----------------------------------------------------------------
/dev/loop13: msdos partitions 2 3 1
---------------------------------
Eflasher is fused successfully.
All done.
mkexfatfs 1.3.0
Creating... done.
Flushing... done.
File system created successfully.
---------------------------------
RAW image successfully created (21:06:03).
-rw-r--r-- 1 root root 7799999488 Apr 26 21:06 out/h3_eflasher-20250426.img
Tip: You can compress it to save disk space.
FUSE exfat 1.3.0
copying /home/rootroot/friendlywrt-h3/scripts/sd-fuse/friendlywrt_4.14_armhf/* to /tmp/media_exfat/friendlywrt_4.14_armhf ...
-rw-r--r-- 1 root root 7799999488 Apr 26 21:06 out/FriendlyWrt_20250426_NanoPi-NEO-Core_armhf_eflasher.img
all done.
-----------------------------------------
Run the following command for sdcard install:
sudo dd if=out/FriendlyWrt_20250426_NanoPi-NEO-Core_armhf_eflasher.img bs=1M of=/dev/sdX
-----------------------------------------
rootroot@ubuntu:~/friendlywrt-h3$
rootroot@ubuntu:~/friendlywrt-h3$ ifconfig
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.221.129 netmask 255.255.255.0 broadcast 192.168.221.255
inet6 fe80::5363:b466:6c6:19b8 prefixlen 64 scopeid 0x20<link>
ether 00:0c:29:87:5d:3a txqueuelen 1000 (Ethernet)
RX packets 328 bytes 143994 (143.9 KB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 310 bytes 42067 (42.0 KB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 1000 (Local Loopback)
RX packets 150 bytes 14363 (14.3 KB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 150 bytes 14363 (14.3 KB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
rootroot@ubuntu:~/friendlywrt-h3$
rootroot@ubuntu:~/friendlywrt-h3$
rootroot@ubuntu:~/friendlywrt-h3$
rootroot@ubuntu:~/friendlywrt-h3$ cat /etc/issue
Ubuntu 20.04.2 LTS \n \l
rootroot@ubuntu:~/friendlywrt-h3$
rootroot@ubuntu:~/friendlywrt-h3$ uname -a\
> ^C
rootroot@ubuntu:~/friendlywrt-h3$ uname -a
Linux ubuntu 5.8.0-48-generic #54~20.04.1-Ubuntu SMP Sat Mar 20 13:40:25 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
rootroot@ubuntu:~/friendlywrt-h3$
相关文章:
20250426在ubuntu20.04.2系统上解决问题mkfs.exfat command not found
20250426在ubuntu20.04.2系统上解决问题mkfs.exfat command not found 2025/4/26 21:11 缘起,使用NanoPi NEO开发板,编译FriendlyCore系统,打包eMMC固件的时候报错。 ./build.sh emmc-img -pack sd-card image, used to write frie…...
IDE使用技巧与插件推荐
一、高效使用技巧 1. 快捷键与操作优化 VS Code: 快速导航:Ctrl+P(Windows/Linux)或Cmd+P(macOS)打开文件搜索,输入文件名快速定位。多光标编辑:按住Alt(Windows/Linux)或Option(macOS)点击多个位置,同时编辑多处代码。Zen 模式:Ctrl+K Z(Windows/Linux)或Cmd…...
防火墙规则配置错误导致的网络问题排查
# 防火墙规则配置错误导致的网络问题排查指南 防火墙规则配置错误是网络连接问题的常见原因之一。以下是一套系统的排查步骤和方法: ## 1. 初步症状确认 - **常见表现**: - 特定服务无法访问 - 网络连接时断时续 - 部分IP地址或端口无法通信 …...
线性代数(一些别的应该关注的点)
一、矩阵 矩阵运算:线性变换 缩放、平移、旋转 无所不能的矩阵 - 三维图形变换_哔哩哔哩_bilibili...
思科路由器重分发(静态路由+OSPF动态路由+RIP动态路由)
路由器重分发(静态路由OSPF动态路由RIP动态路由) 开通端口并配置IP地址 OSPF路由 R1 Router>en Router#conf t Router(config)#int g0/0 Router(config-if)#no shut Router(config-if)#no shutdown Router(config-if)#ip add 192.168.10.254 255.…...
2.3java运算符
运算符 1. 算术运算符 算术运算符用于执行基本的数学运算,像加、减、乘、除等。 运算符描述示例加法int a 5 3; // a 的值为 8-减法int b 5 - 3; // b 的值为 2*乘法int c 5 * 3; // c 的值为 15/除法int d 6 / 3; // d 的值为 2%取模(取余&…...
元数据驱动的 AI 开发:从数据目录到模型训练自动化
元数据驱动的 AI 开发:从数据目录到模型训练自动化 一、引言 在人工智能技术蓬勃发展的当今时代,AI 开发已成为各行业实现创新的核心驱动力。然而,数据规模爆炸式增长、类型复杂多样、来源分散等问题,导致数据管理混乱、模型训练…...
从OpenAI收购实时数据引擎揭示AI数据库进化方向
第一章:一场技术并购背后的“数据战争” 1.1 OpenAI为何盯上Rockset? 当OpenAI宣布收购Rockset时,数据库圈层炸开了锅。这家成立于2016年的公司,其创始人团队堪称“数据库界梦之队”:CTO Dhruba Borthakur曾主导Face…...
Linux0.11内存管理:相关代码
ch13_2 源码分析 boot/head.s 页表初始化: 目标:初始化分页机制,将线性地址空间映射到物理内存(前 16MB),为保护模式下的内存管理做准备。核心流程 分配页目录表和页表的物理内存空间(通过 .…...
ShaderToy学习笔记 03.多个形状和旋转
1. 正方形和旋转 1.1. 正方形 要绘制一个正方形,我们需要定义一个点到正方形边界的距离函数。对于中心在原点的正方形,其数学表达式为: 对于一个点 p(x,y) 到正方形边界的距离函数可以表示为: d max(|x|, |y|) - r 其中: |x| 和 |y| 分…...
Arduino+ESP01S烧录
这种办法不使用与ThonnyMircopython 前言 这里我们使用烧录器烧录,淘宝十几块钱一个的东西,ESP01S做一个WIFI继电器还是蛮有用的,就是烧录起来不太方便,传统的办法接线麻烦,需多次上电,也可能因为电源问题…...
什么是Lua模块?你会如何使用NGINX的Lua模块来定制请求处理流程?
大家好,我是锋哥。今天分享关于【什么是Lua模块?你会如何使用NGINX的Lua模块来定制请求处理流程?】面试题。希望对大家有帮助; 什么是Lua模块?你会如何使用NGINX的Lua模块来定制请求处理流程? 1000道 互联…...
小白自学python第三天
学习python第三天 一、函数 1、函数介绍 函数就是组织好的,可重复使用的,用以实现特定功能的代码块。 现在我们现在需要统计多个字符串长度并且不考虑使用内置函数,你会怎么做?我们先用一种原始人办法看看吧: str…...
【CF】Day44——Codeforces Round 908 (Div. 2) C + Codeforces Round 1020 (Div. 3) DE
C. Anonymous Informant 题目: 思路: 比这场的D难,虽然也不是很难 一个很容易想到的就是由当前状态推出初始状态,那么怎么推呢? 一个性质就是如果对于某一个 x 它可以执行左移操作的话,那么它一定会到数组…...
深入理解HashMap:Hash冲突的解决机制
引言 HashMap 是 Java 集合框架中最常用的数据结构之一,它通过键值对的形式存储数据,并利用哈希算法实现高效的插入、删除和查询操作。然而,在实际使用中,由于哈希函数的有限性和哈希桶数量的限制,不可避免地会出现 哈…...
Datawhale AI春训营二期---使用AI实现老人的点餐效果(关于task2的相关思考)
文章目录 1.多次测试的结果2.分数是如何提高的3.关于上分点拨4.关于task2的收获 1.多次测试的结果 第一次和第二次的,都是使用的baseline: 第三次的: 2.分数是如何提高的 之前的几次都是通过这个baseline进行运行的,然后今天是了解了一下这…...
摩尔投票法详细介绍
原理 摩尔投票法(Boyer-Moore Voting Algorithm)是一种用于在存在多数元素的数组中,高效找出出现次数超过数组长度一半的元素的算法。其核心思想是通过元素抵消策略,逐步缩小候选范围,最终确定多数元素。 核心假设&a…...
DP之书架
现按一定顺序给出所有要放置于书架上的书,共有 n 本,第 i 本书有一个长度 hi。 书架有若干层,层与层之间的宽度不一定相等,但是一层的宽度不能小于其上所摆放的任何一本书的长度。同时,每层上的书的长度之和不能超过…...
Python Cookbook-6.11 缓存环的实现
任务 你想定义一个固定尺寸的缓存,当它被填满时,新加入的元素会覆盖第一个(最老的)元素。这种数据结构在存储日志和历史信息时非常有用。 解决方案 当缓存填满时,本节解决方案及时地修改了缓存对象,使其从未填满的缓存类变成了…...
计算机网络基本概念
层次名称主要功能第七层应用层直接面向用户,提供应用服务(如浏览网页、发邮件)第六层表示层处理数据格式、加密解密、压缩解压第五层会话层建立、管理、终止会话(连接)第四层传输层提供端到端的数据传输(如…...
Eigen线性代数求解器(分解类)
1. 核心分解类概览 Eigen 提供多种矩阵分解方法,适用于不同矩阵类型(稠密/稀疏、正定/非正定等): 分解类适用矩阵类型分解形式典型应用场景PartialPivLU方阵(可逆)APLUAPLU通用线性方程组求解FullPivLU任…...
【Android】四大组件之Service
目录 一、什么是Service 二、启停 Service 三、绑定 Service 四、前台服务 五、远程服务扩展 六、服务保活 七、服务启动方法混用 你可以把Service想象成一个“后台默默打工的工人”。它没有UI界面,默默地在后台干活,比如播放音乐、下载文件、处理…...
VO包装类和实体类分别是什么?区别是什么?
VO包装类和实体类 1. 实体类(Entity Class)是什么?2. VO包装类(Value Object Class)是什么?3. VO包装类和实体类的区别4. 实际应用中的区别5. 举例5.1. 实体类(Entity Class)的定义与…...
如何创建一个C#项目(基于VS2022版)
一.先找到要保存项目的位置,新建一个文件夹 二.打开VisualStudio,选择创建新项目 三.选择模版: 选择操作语言和操作系统 这个是跨平台的 初学在windows系统上,可选择其他,下面这个是不带窗体模版 也可根据需要选择带窗体模版 点击下一步 填写项目名称,选择项目保存位置,填写解…...
RabbitMQ 四种交换机(Direct、Topic、Fanout、Headers)详解
本文是博主在梳理 RabbitMQ 知识的过程中,将所遇到和可能会遇到的基础知识记录下来,用作梳理 RabbitMQ 的整体架构和功能的线索文章,通过查找对应的知识能够快速的了解对应的知识而解决相应的问题。 文章目录 一、直连交换机(Dire…...
聚合分销系统开发:短剧小说外卖网盘电商cpscpa系统
聚合分销系统是一种整合了多种分销项目和功能的综合性平台,其核心在于通过CPS(按销售付费)和CPA(按行为付费)两种模式,为推广者提供多样化的赚钱机会。以下是聚合分销系统的主要项目和功能: 一…...
【Flume 】Windows安装步骤、配置环境
🛠 Flume 是什么? Apache Flume 是一个高效、可靠、可扩展的数据收集系统,通常用于收集日志、流数据,比如收集数据到 HDFS、Kafka 等。 虽然 Flume 本身是为 Linux 服务器设计的,但 在 Windows 本地也是能跑起来的&a…...
【信息系统项目管理师】高分论文:论质量管理和进度管理(智慧旅游平台建设项目)
更多内容请见: 备考信息系统项目管理师-专栏介绍和目录 文章目录 论文1、规划质量管理2、质量保证3、质量控制论文 2019年3月,我作为项目经理,参加了某市智慧旅游平台建设项目,负责项目的全面管理, 该项目以打造一流的国内外生态旅游城市为目标,旨在大数据云平台建设的基…...
一致性哈希详解:优雅地扩展分布式系统
引言 对于哈希算法,相信大家一定不会陌生。它经常被用在负载均衡、分库分表等场景中。例如,在进行分库分表时,我们可能初步根据业务分析,确定 128 张表足以满足当前的数据量需求。此时,当需要插入或查询一条记录时&am…...
pytest 技术总结
目录 一 pytest的安装: 二 pytest有三种启动方式: 三 用例规则: 四 配置框架: 一 pytest的安装: pip install pytest # 安装 pip install pytest -U # 升级到最新版 二 pytest有三种启动方式: 1…...
数据库MySQL学习——day5(总结与复习实践)
文章目录 1、复习总结1.1. 数据库基础1.2. 表操作1.3. 数据操作1.4. 更新与删除 2、实践任务:创建学生管理系统数据库2.1. 数据库设计2.2. 创建表的SQL语句2.3. 插入示例数据2.4. 查询与数据操作示例 3、调试与练习4、 今日小结 1、复习总结 1.1. 数据库基础 数据…...
unity bug
发现一个奇怪的bug,就是某些unity版本打包apk时候不允许StreamingAssets里面有中文文件或者中文路径。比如下图这面这俩都是不行的。 解决方案:中文改为英文即可。 一般报错信息如下: > Configure project :launcher WARNING:The option s…...
苹果计划2026年底前实现美版iPhone“印度造”,以减轻关税及地缘政治风险
基于 6 个来源 据多家媒体报道,苹果公司计划在2026年底前,实现在印度组装销往美国的大部分或全部iPhone手机,以减轻关税和地缘政治紧张局势带来的风险。这一目标意味着苹果需将印度的iPhone产量增加一倍以上,凸显其供应链多元化战…...
新增Webhook通知功能,文档目录树展示性能优化,zyplayer-doc 2.5.1 发布啦!
zyplayer-doc是一款适合企业和个人使用的WIKI知识库管理工具,支持在线编辑富文本、Markdown、表格、Office文档、API接口、思维导图、Drawio以及任意的文本文件,支持基于知识库的AI问答,专为私有化部署而设计,最大程度上保证企业或…...
【量化交易笔记】17.多因子的线性回归模型策略
前言 上一篇介绍了 因子的评价和分析方法,让我知道如何判断该因子的作用,以及对最终结果的影响,其最大的问题,他只能评价和分析单因子,而对多个因子,不能直接加以评价。我们自然会想到,如果是多…...
五年经验Java开发如何破局创业
🤟致敬读者 🟩感谢阅读🟦笑口常开🟪生日快乐⬛早点睡觉📘博主相关 🟧博主信息🟨博客首页🟫专栏推荐🟥活动信息文章目录 五年经验Java开发如何破局创业一、创业方向筛选与优劣势分析**方向1:技术教育/在线课程开发****方向2:企业级技术服务外包****方向3:技…...
定制一款国密浏览器(11):SM2算法的椭圆曲线参数定义
在国密算法中,SM2 算法是最复杂的,不仅是算法本身比较复杂,其应用场景也复杂。不管 SM2 算法本身有多复杂,作为开发者,我们需要知道的是 SM2 算法是建立在椭圆曲线算法(ECC)之上。关于 SM2 算法和椭圆曲线算法之间的关系,参考我之前的一篇文章: 解读国密非对称加密算…...
RAG技术与应用---0426
大语言模型>3.10 课程中会用到python 工具箱: faiss,modelscope,langchain,langchain_community,PyPDF2 1)大模型应用开发的三种模式 提示词没多少工作量,微调又花费时间费用,RAG是很多公司招聘用来对LLM进行应用…...
STM32的开发环境介绍
目录 STM32软件环境 Keil软件在线安装 其他软件环境安装 STM32开发的几种方式 STM32寄存器版本和库函数版本 标准外设库的作用: STM32软件环境 STM32 的集成开发环境(IDE):编辑编译软件 常见的环境: (1)KEIL&a…...
【生成式AI】从原理到实践的创造性革命
目录 前言技术背景与价值当前技术痛点解决方案概述目标读者说明 一、技术原理剖析核心概念图解核心作用讲解关键技术模块说明技术选型对比 二、实战演示环境配置要求核心代码实现(文生图) 三、性能对比测试方法论量化数据对比结果分析 四、最佳实践推荐方…...
Win下Pycharm运行/调试配置脚本形参执行替换Linux下终端执行,进行调试需要注意的
Linux下终端执行 python demo/image_demo.py demo/demo.jpg rtmdet_tiny_8xb32-300e_coco.py --weights rtmdet_tiny_8xb32-300e_coco_20220902_112414-78e30dcc.pth --device cpuWin下Pycharm运行/调试配置脚本形参执行 主要改红色两处 如果工作目录正确,脚本形参…...
Pytorch(无CPU搭建)+Jupyter
2024年最新最简洁深度学习环境配置:AnacondaPyTorch(CPU、GPU)VScodePycahrm_哔哩哔哩_bilibili 跟 PyCharm說再見, [VSCode] PythonJupyter 超牛逼的功能 ! 5分鐘大幅提升編碼效率~ 數據分析、AI大神必備_哔哩哔哩_bilibili...
类的高级特性与语法细节
static 静态关键字 Java中的static关键字用于修饰类的成员(属性或方法),表示“静态”的含义,即属于类本身,而非某个对象。静态成员在内存中只有一份,在类加载时初始化,生命周期贯穿程序运行始终…...
基于 RAG 的 Text2SQL 全过程的 Python 实现详解,结合 LangChain 框架实现自然语言到 SQL 的转换
什么是RAG 一、核心流程:三阶段协同 RAG的核心流程分为检索(Retrieval)、增强(Augmentation)、生成(Generation)三个阶段,形成“检索→知识整合→生成”的闭环。 1. 检索ÿ…...
使用 OpenCV 进行视觉图片调整的几种常见方法
以下是使用 OpenCV 进行视觉图片调整的几种常见方法: 调整图片大小 指定目标尺寸:使用cv2.resize()函数,通过设定目标图像的宽度和高度来调整图片大小。例如,将图片调整为 200x200 像素: import cv2 image cv2.imre…...
【特殊场景应对9】视频简历的适用场景与风险分析
写在最前 作为一个中古程序猿,我有很多自己想做的事情,比如埋头苦干手搓一个低代码数据库设计平台(目前只针对写java的朋友),比如很喜欢帮身边的朋友看看简历,讲讲面试技巧,毕竟工作这么多年,也做到过高管,有很多面人经历,意见还算有用,大家基本都能拿到想要的offe…...
Dify 1.3.0 为 LLM 节点引入了结构化输出支持
Dify 1.3.0 为 LLM 节点引入了结构化输出支持 0. 引言1. 使用方法 0. 引言 Dify 1.3.0 开始,在 LLM 节点支持结构化输出:Dify 已经为 LLM 节点引入了结构化输出支持。这意味着您的语言模型现在可以返回整齐组织且易于处理的数据。后端实现由 Nov1c444 在…...
【Linux网络】HTTP协议全解析 - 从请求响应到方法与Header
📢博客主页:https://blog.csdn.net/2301_779549673 📢博客仓库:https://gitee.com/JohnKingW/linux_test/tree/master/lesson 📢欢迎点赞 👍 收藏 ⭐留言 📝 如有错误敬请指正! &…...
JSP实现用户登录注册系统(三天内自动登录)
JSP实现用户登录注册系统 引言 在Web开发中,用户认证是最基础且核心的功能之一。本文基于JSP技术,实现了一个包含注册、登录、自动登录(3天内)、退出等功能的用户系统,并在过程中解决了Cookie字符错误、错误信息回显…...
大数据模型现状分析
大数据模型现状分析 一、引言 在当今数字化时代,数据以前所未有的速度增长,大数据已成为推动各行业发展的核心动力。大数据模型作为挖掘数据价值的关键工具,正受到广泛关注与深入研究。通过对海量、多样且高速产生的数据进行处理和分析&…...