Jetson emmc model들의 저장공간은 늘 부족하다.
그래서 지난 시간의 docker의 저장위치 이동에 이은 sd card로 부팅하여 저장공간을 확보하는 내용을 준비했다.
SD card
Jetson Xavier NX
JDK100 (carrier board)
Host PC
cd ~/work
wget https://developer.nvidia.com/embedded/l4t/r32_release_v7.1/t186/jetson_linux_r32.7.1_aarch64.tbz2
wget https://developer.nvidia.com/embedded/l4t/r32_release_v7.1/t186/tegra_linux_sample-root-filesystem_r32.7.1_aarch64.tbz2
tar xpf jetson_linux_r32.7.1_aarch64.tbz2
cd Linux_for_Tegra/rootfs
sudo tar xpf ../../tegra_linux_sample-root-filesystem_r32.7.1_aarch64.tbz2
cd ${L4T}
sudo ./apply_binaries.sh
cd ${L4T}/tools
#sudo ./l4t_create_default_user.sh -u {username} -p {password} -n {hostname} -a --accept-license
sudo ./l4t_create_default_user.sh -u nvidia -p nvidia -n jdk100 -a --accept-license
cd ${L4T}
cp bootloader/t186ref/BCT/tegra19x-mb1-pinmux-p3668-a01.cfg bootloader/t186ref/BCT/tegra19x-mb1-pinmux-p3668-a01.cfg.org
wget -O bootloader/t186ref/BCT/tegra19x-mb1-pinmux-p3668-a01.cfg https://gitlab.com/telelian_public/l4t/jdk100-xaviernx/uploads/d1741c3bcfddc723fc8ceff6d67da0b9/tegra19x-mb1-pinmux-p3668-a01.cfg
wget -O kernel/dtb/jdk100-xaviernx.dtb https://gitlab.com/telelian_public/l4t/jdk100-xaviernx/uploads/a088620adbffdce432e77f98a5f01f2c/jdk100-xaviernx.dtb
wget -O bootloader/kernel_jdk100-xaviernx.dtb https://gitlab.com/telelian_public/l4t/jdk100-xaviernx/uploads/cc46dbf5eb0263ad3ba44dea42b0c9c4/kernel_jdk100-xaviernx.dtb
wget -O bootloader/kernel_jdk100-xaviernx.dtb.sb https://gitlab.com/telelian_public/l4t/jdk100-xaviernx/uploads/726e5885f05ecbae49a314bc117f1132/kernel_jdk100-xaviernx.dtb.sb
cd ${L4T}/tools
sudo ./jetson-disk-image-creator.sh -o sdcard.img -b jetson-xavier-nx-devkit
# sd 카드 파티션 삭제
sudo gdisk /dev/sdX
# type o -> create a new empty GUID partition table (GPT)
# type w -> write table to disk and exit
# 위에서 만든 sdcard.img 를 sd card로 복사
sudo dd if=sdcard.img of=/dev/sdX conv=sync,noerror bs=512 status=progress
sudo parted /dev/sdX
GNU Parted 3.2
Using /dev/sdX
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) p
Warning: Not all of the space available to /dev/sdX appears to be used,
you can fix the GPT to use all of the space (an extra 237504512)
or continue with the current setting?
Fix/Ignore?
sudo parted /dev/sdX
GNU Parted 3.2
Using /dev/sdX
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) p
Model: Generic STORAGE DEVICE (scsi)
Disk /dev/sdX: 63.9GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags:
Number Start End Size File system Name Flags
2 1049kB 68.2MB 67.1MB kernel
3 68.2MB 135MB 67.1MB kernel_b
4 135MB 136MB 459kB kernel-dtb
5 136MB 137MB 459kB kernel-dtb_b
6 137MB 203MB 66.1MB recovery
7 203MB 204MB 524kB recovery-dtb
8 204MB 205MB 262kB kernel-bootctrl
9 206MB 206MB 262kB kernel-bootctrl_b
10 207MB 311MB 105MB RECROOTFS
11 311MB 446MB 134MB UDA
1 446MB 6256MB 5810MB ext4 APP
(parted) resizepart 1 -1
(parted) p
Model: Generic STORAGE DEVICE (scsi)
Disk /dev/sdX: 63.9GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags:
Number Start End Size File system Name Flags
2 1049kB 68.2MB 67.1MB kernel
3 68.2MB 135MB 67.1MB kernel_b
4 135MB 136MB 459kB kernel-dtb
5 136MB 137MB 459kB kernel-dtb_b
6 137MB 203MB 66.1MB recovery
7 203MB 204MB 524kB recovery-dtb
8 204MB 205MB 262kB kernel-bootctrl
9 206MB 206MB 262kB kernel-bootctrl_b
10 207MB 311MB 105MB RECROOTFS
11 311MB 446MB 134MB UDA
1 446MB 63.9GB 63.4GB ext4 APP
(parted) quit
sudo resize2fs /dev/sdX1
resize2fs 1.44.1 (24-Mar-2018)
Resizing the filesystem on /dev/sdX1 to 15482892 (4k) blocks.
The filesystem on /dev/sdX1 is now 15482892 (4k) blocks long.
sudo blkid /dev/sdX1
/dev/sda1: UUID="xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" TYPE="ext4" PARTLABEL="APP" PARTUUID="xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
cd ${L4T}/bootloader/
touch l4t-rootfs-uuid.txt_ext
echo "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" > l4t-rootfs-uuid.txt_ext
/dts-v1/;
/ {
compatible = "nvidia,cboot-options-v1";
boot-configuration {
/* nvme boot-order can be in "nvme:C<n>", "nvme:pcie@<addr>", or "nvme" format */
// boot-order = "sd", "usb", "nvme", "emmc", "net";
// 윗 줄을 아래 줄로 변경
boot-order = "emmc", "sd", "usb", "nvme", "net";
tftp-server-ip = /bits/ 8 <192 168 0 1>;
dhcp-enabled;
/* remove dhcp-enabled if uncommenting static-ip configuration */
/* static-ip = /bits/ 8 <0 0 0 0>;
* ip-netmask = /bits/ 8 <255 255 255 0>;
* ip-gateway = /bits/ 8 <0 0 0 0>;
*/
};
};
lsusb
Bus 001 Device 010: ID 0955:7e19 NVIDIA Corp. APX
cd ${L4T}
sudo ./flash.sh -d kernel/dtb/jdk100-xaviernx.dtb jetson-xavier-nx-devkit-emmc external
df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mmcblk1p1 59G 4.9G 51G 9% /
none 3.5G 0 3.5G 0% /dev
tmpfs 3.8G 4.0K 3.8G 1% /dev/shm
tmpfs 3.8G 21M 3.8G 1% /run
tmpfs 5.0M 4.0K 5.0M 1% /run/lock
tmpfs 3.8G 0 3.8G 0% /sys/fs/cgroup
tmpfs 777M 108K 777M 1% /run/user/1000