반응형

centos 7

리눅스 커널) 모듈 프로그래밍(읽기 쓰기가 가능한 Character Device 모듈 구현)

읽기 쓰기가 가능한 Character Device 모듈 구현 내용 : 리눅스 커널 2.6.36 버전에서 간단한 character device와 그 device driver를 만드는 커널 모듈을 제작한다. 1. 루트 권한을 획득한다. 2. 홈 디렉터리 밑에 module 이라는 디렉터리를 생성하고 그 디렉토리로 이동한다. 3. #yum install -y module-init-tools를 수행한다. 4. #cp minibuf.c minibuf2.c를 수행한다. 5. vi minibuf2.c를 수행하여 기존 코드의 device_write() 함수 내부를 아래와 같이 작성한다. #define DEV_MAJOR 254 #define DEV_MINOR 6 ssize_t device_write(struct file ..

C & Docker & LINUX 2017.05.10

리눅스 커널) 모듈 프로그래밍(간단한 Char Device 모듈 구현)

간단한 Char Device 모듈 구현 - 커널 모듈 프로그래밍** 리눅스 커널 2.6.36 버전에서 간단한 character device와 그 device driver를 만드는 커널 모듈을 제작한다. 1. 루트 권한을 획득한다. 2. 홈 디렉터리 밑에 module 이라는 디렉토리를 생성하고 그 디렉토리로 이동한다. 3. #yum install -y module-init-tools를 수행한다. 4. #vi minibuf.c를 수행하여 아래와 같이 코딩한다. #include #include #include #include #include #include #include #define DEVICE_NAME "Minibuf" #define BUFFER_LEN 1024 #define DEV_MAJOR 254 #..

C & Docker & LINUX 2017.05.01

리눅스 커널 컴파일

리눅스 커널 컴파일 전체적인 순서 (Centos 기준)1. 루트 권한 획득 후 커널 버전 확인 및 필요 패키지 설치2. 커널 소스코드 다운로드3. 기존 커널 옵션 초기화4. 커널 옵션 설정5. 새 커널 컴파일 및 설치6. 재부팅 1. 루트 권한 획득 후 현재 커널 버전 확인 및 필요 패키지 설치#su root -> 패스워드 입력 이후 루트 권한 획득 #uname -r 현재 커널의 버전 확인 #yum install -y gcc* ncurses-devel 커널 컴파일을 위한 패키지 설치 2. 커널 소스코드 다운로드- http://www.kernel.org/pub/linux #mv ./Desktop/linux-2.6.36.tar.gz /usr/src 다운로드 받은 커널을 /usr/src로 이동#cd /usr/..

C & Docker & LINUX 2017.04.25

c언어 - stdout, stderr의 차이점

c언어 stdout, stderr의 차이점****리눅스 Centos6에서 실행한 c언어 코딩이므로 다를 수 있습니다**** stdout - 표준 출력 stderr - 표준 에러 둘 다 콘솔화면에 출력하기 때문에 출력부분에서는 큰 차이가 없습니다. 하지만 표준 출력과 표준에러에서 가장 큰 차이점은 버퍼링입니다. 표준 출력(stdout)은 줄 단위의 버퍼링을 하지만 표준 오류(stderr)는 버퍼링 없이 바로 출력됩니다. 즉, 표준출력은 한 줄을 완성해야하고 표준 오류의 경우 한 줄이 완성되지 않아도 출력이 가능합니다. 예를 들면 charstr1과 charstr2로 구성된 c파일에서 순서대로 출력이 됩니다. 주의 깊게 봐야할 부분은 printf문입니다. printf문의 경우 변환명세 부분의 \n(개행문자)이..

C & Docker & LINUX 2016.10.11

alias를 이용하여 파일 휴지통 이동(mv, rm)

alias를 이용하여 파일 휴지통 이동(mv, rm) 리눅스에서 rm명령을 이용하여 파일을 삭제하는 경우 복구가 어렵습니다. 윈도우에서 파일을 삭제하면 휴지통으로 이동하는 방식과 달리 리눅스의 rm명령은 바로 영구삭제입니다. 그래서 alias를 통해서 새로운 명령어를 만들어 삭제하기 이전에 휴지통에 보관하려고 합니다. alias는 익명, 가명이라는 뜻으로 복합적인 명령어에 가명을 붙여 사용할 수 있습니다. 방법은 mv명령을 통해서 파일을 휴지통으로 이동시키는 것입니다. alias del="mv -t /홈디렉터리/계정/.local/share/Trash/files" OS는 Centos7입니다. ----------------------------------------------------------------..

C & Docker & LINUX 2016.10.04

리눅스 -quotacheck 허가거부, cannot guess foromat from fiilename 에러

quotacheck 허가거부 및 Cannot guess fromat from filename on /dev/~ error Centos6.5로 quota 실습을 진행하던 도중 quotacheck -a -u -m 명령을 입력하면 아래와 같은 에러가 발생하였습니다. quotacheck: Cannot guess format from filename on /dev/xvdc1. Please specify format on commandline. quotacheck: Cannot find filesystem to check or filesystem not mounted with quota option. 그리고 허가 거부라는 에러가 발생하였습니다. 이렇게 말입니다. 구글링을 해도 답이 안 나왔습니다. 해결방법) 위의 ..

C & Docker & LINUX 2016.06.01

리눅스 - find명령어

find 명령어 - 시스템 내에 존재하는 파일 및 디렉토리를 찾는 명령으로써 보안에서도 중요하게 여겨진다 - 아무런 옵션 없이 find 명령을 실행하면 ls 명령만큼 많은 파일을 출력한다 find 명령의 사용법 - # find [경로][표현식(option | test | action | operator)] ex) find /tmp -maxdepth 1 (/tmp 디렉터리만 검색하기) 표현식(option) -maxdepth n : 0이 아닌 정수 값으로 경로 깊이를 지정하여 검색할 때 사용 (예를 들어, '-maxdepth 1'은 시작 위치로 지정한 디렉터리만 검색하고 하위 디렉터리는 찾지 않는다) -mindepth n : 지정한 숫자만큼의 깊이부터 그 하위 디렉터리를 검색한다 -follow : 심볼릭 링..

C & Docker & LINUX 2016.04.06
반응형