Jetson emmc를 설정하며...

HanSH·2025년 3월 9일

개인 공부

목록 보기
2/5

결론은 emmc 버전 말고 sd카드 버전 사세요.. 안정성은 모르겠고 sd카드 버전이 더 편합니다.
아니면 ssd로 부팅할 수 있는 carrier board를 사서 거기에 os 까세요.

emmc에 설치하면 apt 저장 경로가 emmc로 되는데, 16GB 공간에 별에 별걸 다 설치한다..? 굳이?
emmc에 설치했다가 용량에 벽 느끼고 ssd에 설치하러 갑니다...

SSH 접속

제가 쓰는 seeed studio J202X 보드는 micro usb를 통해 ssh 접근이 가능합니다.

ssh {{ username }}@192.168.55.1

password: {{ 설치 시 입력한 비밀번호 }}

ssd 설치

  1. df -h - 장착 후 인식 확인

    • 여기에 nvme로 시작하는 것이 있는지 확인합니다.
    • 있다면 7번으로 이동해주세요!
    • 없다면 아래의 내용을 적용해주세요!
  2. lsblk - 장치 확인

    • 만약 nvme로 시작하는 것이 있다면 인식은 잘 되었다는 뜻입니다.
    • 결과가 뜬다면 4로 넘어가주세요.
    • 만약 기존 ssd를 이용하는거라면 다음 순서를 따라주세요!
  3. fdisk - 파티션 생성

    • sudo fdick /dev/nvme***를 통해 파티션을 제거 후 생성합니다.
    • d -> n(기본값 사용) -> w를 통해 파티션 삭제 후 새로운 파티션을 생성합니다.
  4. mkfs.* - 파일 시스템 생성

    • sudo mkfs.ext4 /mnt/nvme**p1을 이용하여 새로운 파일 시스템을 생성합니다.
    • 주로 ext4를 사용하는데, 다른 것을 해도 문제는 없습니다.
  5. mount - ssd 마운트

    • sudo mount /dev/nvme**p1 /mnt/ssd 명령어를 사용하여 특정 폴더에 마운트해줍니다.
    • 만약 /mnt/ssd가 없다면?
      • 접근하기 편한 경로일 뿐입니다. /mnt/nvme/mnt/ssd500이든 원하는 이름으로 만들어주세요!
      • 이후 다시 명령어를 적용해줍시다.
  6. fstab - 자동 마운트

    • echo "/dev/nvme0n1p1 /mnt/ssd ext4 defaults 0 2" | sudo tee /etc/fstab를 입력하여 켜질때마다 ssd를 불러오도록 해줍니다.
  7. 권한 설정

    • 어차피 지금은 단 하나의 유저만 있습니다.
    • sudo chown -R {{ user }}:{{ user }} /mnt/ssd
  8. 심볼릭 링크 설정(선택)

    • vscode에서 ssh 연결할 때 ssd에 접근이 편하도록 하기 위함입니다.
    • ln -s /mnt/ssd ~/ssd
  9. 적용 확인

    • df -h를 통해 /mnt/ssd와 같은 경로가 마운트 되어있는지 확인합니다.

Wi-Fi 설정

제가 쓰는 seeed studio J202X 캐리어 보드는 m.2 a key를 지원하여 m.2 wifi 모듈을 장착하였습니다.
이를 활성화 하는 방법은 아래와 같습니다. (사실 연결하면 열리는 README에 다 있어요!)

sudo nmcli device wifi connect "ssid name" password "password"

apt 패키지 업데이트부터

nano 설치하는데 Unable to locate package nano가 떴습니다. 새로 설치하면 apt 저장소가 업데이트 되지 않나보네요.
항상 새로 설치하면 apt-get update, upgrade부터...

sudo apt-get update && sudo apt-get upgrade -y

jetpack 설치

jetson은 Tegra 아키텍처를 사용하기에 일반적인 gpu 드라이버 설치와는 다릅니다.
os만 설치해놨으니, 나머지는 다 설치해줘야해요!

sudo apt-get install nvidia-jetpack -y
sudo reboot

PyTorch 설치

설치하면서 기본으로 제공되는 torch는 cuda를 못씁니다. 따라서 nvidia에서 제공하는 torch를 설치해줘야 해요!
nvidia가 지원하는 torch whl은 이쪽으로 가서 확인해주세요!

wget https://developer.download.nvidia.cn/compute/redist/jp/v512/pytorch/torch-2.1.0a0+41361538.nv23.06-cp38-cp38-linux_aarch64.whl
sudo apt-get install libopenblas-base libopenmpi-dev
pip3 install --upgrade {{ downloaded torch whl }}

이후 cuda가 불러와지는지 확인합니다.

>> import torch
>> torch.cuda.is_available()

True가 뜨면 정상, False가 뜨면 설치가 잘못된 것 혹은 필요한 패키지가 설치 안된 것

GUI 삭제

GUI에 쓰는 그래픽 성능도 아깝습니다. 지워봅시다!
headless로 쓰는거라 그래픽이 필요 없기도 합니다.

결국 ubuntu를 쓰는거라 jetson nano remove gui를 따라해도 무방합니다!

sudo apt-get remove --purge gnome-* gdm3 # GNOME 관련 모든 패키지 삭제
sudo apt-get autoremove --purge
sudo apt-get autoclean

또한 카메라 옵션은 사용하지 않으니 서비스도 종료해줍니다. jtop 설치하면

sudo systemctl stop nvargus-daemon
sudo systemctl disable nvargus-daemon

jtop 설치

jetson 시리즈의 유구한 전통입니다. 현재 시스템의 상태를 볼 수 있어요!
뭐가 gpu를 사용하는지도 알 수 있고요!

sudo -H pip install -U jetson-stats

파워 모드 설정

파워 모드는 /etc/nvpmodel.conf에 설명되어있습니다.
xavier nx의 경우에는 아래와 같이 되어있네요!

# POWER_MODEL DEFINITIONS #
< POWER_MODEL ID=0 NAME=MODE_15W_2CORE >
< POWER_MODEL ID=1 NAME=MODE_15W_4CORE >
< POWER_MODEL ID=2 NAME=MODE_15W_6CORE >
< POWER_MODEL ID=3 NAME=MODE_10W_2CORE >
< POWER_MODEL ID=4 NAME=MODE_10W_4CORE >
< POWER_MODEL ID=5 NAME=MODE_10W_DESKTOP >
< POWER_MODEL ID=6 NAME=MODE_20W_2CORE >
< POWER_MODEL ID=7 NAME=MODE_20W_4CORE >
< POWER_MODEL ID=8 NAME=MODE_20W_6CORE >

이를 sudo nvpmodel -m {{ ID }}로 적용하면 됩니다.

profile
저는 말하는 싹 난 감자입니다

0개의 댓글