우분투 등에서는 sudo가 원칙이지만 공부하는데 귀찮다.
물론 root 남용으로 시스템 맛가면 본인의 책임.
sudo passwd root
이제 su 명령어로 root 권한을 획득해서 root로 진행하자.
커널 소스에서 뭔가를 찾고 싶다.
삼바를 걸거나 wine으로 소스 인사이트 쓰곤하는데 사람이 너무 편해진다.
grep 을 쓰자.
grep “찾을것” * -r
-r을 때리면 리커시브다 하위 디렉토리까 몽창 뒤짐. 시간이 너무 오래 걸리면 해당 경로까지 가서 하자.
커널 소스에서 파일을 찾고 싶다.
find를 쓰자.
find . -name “찾을 것*” -print
.은 현재 디렉토리를 뜻한다.
vim과 ctag, cscope 조합을 이용하면 편리하지만 일단 나중에 배우기로 하자.
vim의 최소 사용법만 알아두자.
vi를 쓰지 말고 vim을 쓰면 대부분의 터미널에서는 커서키가 먹으니 대충 쓸 수 있다.
esc 누르면 이스케이프 모드(명령을 칠 수 있음)
:숫자 -> 해당 라인으로
/찾을 것 -> 찾기 (이 상태에서 n, p 앞으로 뒤로)
g 또는 G 소스 맨 앞으로 맨 뒤로
i 해당 위치부터 입력 시작 (인써트)
w 저장
q 탈출
wq! 강제저장하면서 탈출
이제 vim도 마스터!
vim이 후진 놈이 깔려 있을 수 있다. (예: vim-tiny)
apt-get remove vim-tiny
apt-get install vim
이제 완빵 vim 이 깔렸다.
그럼 패키지는 어케 찾는가?
apt-cache search 찾을 것
풀네임을 몰라도 대충 두드려 보면 비슷한 것이 나온다.
이렇게 grep, find, vim을 이용하면 학습시 유리한 점이 있다.
커널 소스 트리, 파일 위치가 자동으로 머리에 입력된다는 것. 환경이 편안하면 잘 안 된다.
공부할 때는 몸으로 익혀야 할 때도 있는 것.
커널 소스는 /usr/src 밑에 가서 받는다.
man 페이지에 여러개가 걸릴 때는 man -a open 식으로 전체를 까는게 제일 빠르다.
커널 빌드는 램디스크에서 하면 빠르긴 하다.
mount tmpfs -t tmpfs ./myramdsik
이것은 tmpfs다. 원래의 ramdisk와는 다른 개념이다.