Ubuntu 업데이트 오류를 ​​수정하는 방법

Ubuntu는 안정적인 배포판이지만 apt update/apt install 도중 여러 이유로 실패하는 경우가 잦다. 원인은 크게 세 가지로 나뉜다 — 다른 프로세스가 dpkg 락을 잡고 있는 경우, 이전 설치 작업이 중간에 끊겨…

Continue ReadingUbuntu 업데이트 오류를 ​​수정하는 방법

Ubuntu 24.04에 ftp 서버 설치하기( vsftpd 사용 )

SFTP/SCP가 사실상 표준이 된 지 오래지만, 레거시 임베디드 장비나 구형 소프트웨어 중에는 여전히 FTP만 지원하는 경우가 있고, 외부 노출 없이 내부망에서 간단히 파일을 주고받는 용도로도 FTP는 아직 쓰인다. Ubuntu에서 FTP…

Continue ReadingUbuntu 24.04에 ftp 서버 설치하기( vsftpd 사용 )

VSCODE ssh 연결 실패 해결방법(could not establish connection to “tmp”)

VS Code Remote-SSH로 원격 서버에 붙으려 하면 "Could not establish connection to ..."와 함께 "프로세스에서 없는 파이프에 쓰려고 했습니다"(Windows의 ERROR_PIPE_NOT_CONNECTED)가 뜨는 경우가 있다. SSH 자식 프로세스가 이미 죽어 파이프에 쓸…

Continue ReadingVSCODE ssh 연결 실패 해결방법(could not establish connection to “tmp”)

‘atomic_inc’ from incompatible pointer type [-Werror=incompatible-pointer-types]

벤더 커널을 빌드하다가 아래와 같은 에러를 만났다. /home/worker/.../kernel-source/include/linux/cred.h:258:28: error: passing argument 1 of 'atomic_inc' from incompatible pointer type [-Werror=incompatible-pointer-types] 258 | atomic_inc(&new->usage); | ^~~~~~~~~~~ | | | atomic_long_t * {aka…

Continue Reading‘atomic_inc’ from incompatible pointer type [-Werror=incompatible-pointer-types]

Uboot에서 tftp 다운로드가 멈추는 문제

U-Boot에서 tftp 명령으로 커널 이미지나 rootfs를 받아오다가 진행률이 멈추거나, Loading: * 이후로 아무 반응 없이 프롬프트로 돌아와 버리는 경우가 있다. 케이블도 꽂혀 있고 서버도 떠 있는데 왜 멈추는지는 로그 한…

Continue ReadingUboot에서 tftp 다운로드가 멈추는 문제

Device Tree 이해

같은 SoC를 쓰는 보드라도 UART/GPIO 배선, 메모리 크기, 인터럽트 번호는 보드마다 다르다. 과거 ARM Linux는 이런 정보를 보드별 C 코드(board file)로 하드코딩했는데, 지원 보드가 수백 종으로 늘면서 커널 트리 유지보수가…

Continue ReadingDevice Tree 이해

asm/types.h: No such file or directory 문제 (Yocto pseudo-native)

Yocto 빌드 중 pseudo-native의 do_compile 단계에서 이런 에러를 만날 때가 있다. gcc -c -isystem .../recipe-sysroot-native/usr/include -isystem .../recipe-sysroot-native/usr/include -m32 ... pseudo_util.c In file included from /usr/include/linux/stat.h:5, from /usr/include/bits/statx.h:31, from /usr/include/sys/stat.h:465, from…

Continue Readingasm/types.h: No such file or directory 문제 (Yocto pseudo-native)

seccomp-bpf로 리눅스 커널 시스템 콜 화이트리스트 필터링하기

컨테이너 런타임이나 브라우저 샌드박스가 "이 프로세스는 open, socket 같은 시스템 콜을 못 쓰게 막는다"고 할 때, 그 뒤에는 대부분 seccomp-bpf가 있다. Docker나 systemd의 SystemCallFilter=도 결국 libseccomp을 감싼 것일 뿐, 커널이…

Continue Readingseccomp-bpf로 리눅스 커널 시스템 콜 화이트리스트 필터링하기