리눅스/정보 14

modprobe와 커널 모듈

modprobe 명령은 커널 모듈을 로드할 때 해당 모듈의 설정을 활성화할 수 있다. modprobe 명령을 사용하여 모듈을 로드하면 모듈 설정을 자동으로 적용할 수 있다. 커널 모듈 컴퓨터 운영 체제인 리눅스의 일부분이다. 리눅스는 컴퓨터를 동작시키고 다양한 일을 수행하는 중요한 역할을 하는 소프트웨어이다. 커널 모듈은 이러한 소프트웨어가 여러 기능을 추가하는데 사용된다. 컴퓨터에 연결된 장치(프린터, 저장 장치 등)와 통신하기 위해 필요한 소프트웨어를 만들 때 커널 모듈을 이용하며, 이 모듈은 장치와 컴퓨터가 통신할 수 있도록 돕는다.

리눅스/정보 2023.09.17

장치 인식, USB 포트 잡기

배터리, PIO 등 센서에 연결된 포트를 고정시키기 위해 이용했다. 1. /dev/tty 로 되어 있는 장치를 확인하기 위해 포트를 확인한다. ls -al /dev/tty* 2. 좀 더 자세한 정보를 보려면 다음 명령을 이용한다. udevadm info -a -n /dev/ttyUSB0 # /dev/ttyUSB0 정보를 알 수 있다. 시리얼 통신(RS-232)을 이용하는 장치를 사용 중이었다. 명령 결과에서 RS232라고 출력되는 포트를 확인하고 코드에서 장치 연결을 해주니 작동이 확인됐다. 하지만 재부팅을 할 때마다 포트가 변경되었고 (ttyUSB0 - ttyUSB1) 포트를 고정시키는 방법을 찾아 해결할 수 있었다. USB 포트 고정시키기 (tistory.com) USB 포트 고정시키기 USB 포트는..

리눅스/정보 2023.09.04

USB 포트 고정시키기

USB 포트는 /etc/udev/rules.d/99-usb_serial.rules 에서 정의해줄 수 있다. 보통 idVendor, idProduct, serial 로 충분한 것 같은데 이 모두가 동일한 경우 ID_USB_INTERFACE_NUM을 정의해줌으로써 해결할 수 있다. idVendor, idProduct, serial는 다음을 통해 확인한다. udevadm info -a -n [장치 이름] | grep '{idVendor}' | head -n1 # 예시 udevadm info -a -n /dev/ttyUSB0 | grep '{idVendor}' | head -n1 udevadm info -a -n [장치 이름] | grep '{idProduct}' | head -n1 udevadm info -a..

리눅스/정보 2023.09.04

파일 목록 표시, ls와 ll

ls : 해당 경로에서의 파일 목록을 표시해준다. ll : ls -l과 같은 역할을 한다. ls -a : 숨겨진 파일까지 표시해준다. ls -l : 권한, 소유자, 갱신일까지 표시해준다. ls -R : 위치한 디렉토리 하부 디렉토리 파일까지 모두 출력해준다. ls -h : 파일을 간단하게 보여준다. ls -r : 출력 결과를 내림차순으로 정렬한다. ls -t : 출력 결과를 파일이 수정된 시간을 기준으로 정렬한다.

리눅스/정보 2023.08.21

백그라운드 실행

ctrl+z 누르면 프로그램이 종료된 것이 아니고 백그라운드로 실행된다. 아래의 명령을 입력하면 작업 중이던 프로그램이 다시 보이게 된다. fg # foreground를 의미한다 아래의 명령을 입력하면 어떤 프로그램이 백그라운드로 돌고 있는지 터미널에 출력해준다. jobs 이때 +가 붙어있는 프로그램이 진행 중인 프로그램이고 그다음 프로그램은 -가 붙어있다. 종료를 시키고 싶으면 예를 들어 4라고 써 있는 프로그램을 종료시키고 싶으면 다음을 실행한다. kill %4 좀 더 확실한 방법은 다음과 같다. kill -9 %4 &가 명령어 뒤에 붙으면 명령어가 실행될 때 백그라운드로 실행된다. ls -alR / > result.txt 2> error.log & 위의 명령은 ls -alR / : 현재 파일 시스템..

리눅스/정보 2023.08.07

파일 찾는 법

1. locate와 find locate는 디렉토리 탐색이 아닌 데이터베이스는 중심으로 찾는다. 사용 전에 sudo updatedb를 해줘야 하고 리눅스 시스템에서 하루 한 번씩 진행되도록 설정되어 있다. find는 디렉토리 탐색이 이루어진다. find usage를 검색하면 여러 사용법이 나온다. find / -name *.log # /는 root에서 .log로 끝나는 모든 파일을 찾는다. # /은 root, ~은 home 2. whereis와 $PATH whereis는 실행 파일을 찾아준다.

리눅스/정보 2023.08.07

프로세스

1. 컴퓨터의 구조 1) 저장장치(Storage): SSD/HDD 2) 메모리: RAM 3) 중앙처리장치(Processor): CPU Storage와 메모리는 둘다 정보를 저장하는 목적을 가지고 있다. Storage는 가격이 싸고 메모리는 비싸다. 가격이 싸다 = 저장용량이 크지만 저장속도가 매우 느리다. CPU는 처리속도가 매우 빨라서 Storage가 따라가기 어렵다. 프로그램은 Storage에 깔려 있는데 프로그램을 동작시킬 때는 프로그램을 읽어와 메모리에 적재시킨다. 사용하지 않는 프로그램은 메모리에 적재시키지 않고 적재된 것은 CPU에서 처리한다. 그리고 실행되고 있는 상태의 프로그램을 프로세스(Process)라고 한다. Storage가 느리기 때문에 메모리에 적재시켜 사용한다. 2. 프로세스 모..

리눅스/정보 2023.08.07

디렉토리 구조

/: root를 의미한다. /bin : User binaries 실행파일 모음이다. 사용자들이 사용하는 명령들이 있다. (cat, ls, chmod..) /sbin: System binaries, root 사용자가 쓰는 시스템 관리용 명령들이 있다. (reboot, halt, fdis..) /etc: 환경 설정 파일들이 있다. /dev: device, 장치들이 파일화 되어 있다. /proc: 현재 실행되고 있는 프로세스들이 파일화되어 저장되어 있다. /var: 시스템 로그가 있고 바뀔 수 있는 내용을 다루는 것들이 있다. /tmp: 임시 저장소이다. /lib: /bin, /sbin에 필요한 라이브러리가 있다.

리눅스/정보 2023.08.07