User Tools

Site Tools


linux_risc-v

Live Replace

cd /
apt install wget zstd

wget http://mirrors.cernet.edu.cn/archriscv/images/archriscv-latest.tar.zst
mkdir oldroot newroot
cd newroot
tar xf ../archriscv-latest.tar.zst

cd ..
mv archriscv-latest.tar.zst bin etc home lib opt root sbin srv tmp usr var oldroot/

cd newroot
LD_LIBRARY_PATH="$PWD"/lib "$PWD"/lib/ld-linux-riscv64-lp64d.so.1 "$PWD"/usr/bin/mv bin etc home lib opt root sbin srv tmp usr var ../

cd ..
cp -r oldroot/lib/firmware lib/
cp -r oldroot/lib/modules/ lib/

cp oldroot/etc/fstab etc/

echo "nameserver 223.5.5.5" > /etc/resolv.conf

echo -e "[Match]\nName=en*\n\n[Network]\nDHCP=yes\n" > /etc/systemd/network/default.network
systemctl enable systemd-networkd

pacman -S --noconfirm openssh
systemctl enable sshd
mkdir ~/.ssh
echo "<Your Key>" > ~/.ssh/authorized_keys

LicheePi 4A In-place Upgrade (BROKEN, DON'T FOLLOW)

# Local
scp u-boot-with-spl-lpi4a-16g-main.bin $TARGET:
zstd -d boot-lpi4a-20250323_154524.ext4.zst
zstd -d root-lpi4a-20250323_154524.ext4.zst
sudo losetup loop2 boot-lpi4a-20250323_154524.ext4
sudo losetup loop3 root-lpi4a-20250323_154524.ext4
sudo mount /dev/loop3 /mnt
sudo mount /dev/loop2 /mnt/boot
rsync -avP --delete /mnt/boot/ $TARGET:/boot/
rsync -avP --delete /mnt/lib/modules/ $TARGET:/lib/modules/

# Target
echo 0 > /sys/block/mmcblk0boot0/force_ro
dd if=u-boot-with-spl-lpi4a-16g-main.bin of=/dev/mmcblk0boot0
dd if=/dev/zero bs=128K count=1 seek=6 of=/dev/mmcblk0
linux_risc-v.txt · Last modified: 2025/03/27 09:40 by felixonmars