리눅스 디렉터리
/proc/modules : 현재 시스템에 설치되어 있는 모듈을 보여줌
/proc/ksyms : Symbol table을 가지고 있는 텍스트 형태의 파일
/usr/include/linux : 커널 라이브러리
/usr/src/ : 커널 소스 코드
/ : 최상위 디렉터리
/root : 시스템 관리자인 root 사용자의 홈 디렉터리
/bin : 시스템을 사용하기 위한 기본적인 명령어들이 존재
/boot : 부팅에 필요한 커널과 부팅할 때 필요한 핵심 파일들이 존재,
부팅할 때 부트로더가 /boot 디렉터리에 있는 커널의 위치를 참조
/dev : 디바이스 파일 (device file)들이 존재
/etc : 시스템 환경 설정 파일들과 응용 프로그램 및 서버 프로그램 등의 환경 설정에 필요한 설정 파일들이 존재
/usr : 프로그램을 설치할 때, 패키지에 포함된 대부분의 파일이 설치되는 공간
/lib : 시스템 운영 및 프로그램 구동할 때 필요한 공유 라이브러리와 부팅할 때 사용되는 커널 모듈들이 포함되어 있음
/lost+found : 파일 시스템의 진단 및 오류 수정은 리눅스 명령어 fsck (file system check) 수행 시 발생하는 모든 결과들은 lost+found 디렉토링 저장되며, 개별 파일 시스템의 최상위 디렉터리마다 존재
/mnt : 외부 장치들을 시스템에 사용하고자 마운트 할 때 사용하는 마운트 지점들을 모아두는 공간
/opt : add-on 패키지가 설치되는 디렉터리로서 리눅스 배포판에 존재하지 않는 패키지들은 이 디렉터리에 설치됨.
/proc : 프로세스와 관련된 시스템 정보를 제공하기 위한 곳으로 커널, 파일 시스템, 메모리, 프로세스 등의 정보가 저장되는 곳
/tmp : 프로세스 생성 과정에서 임시 파일 저장 공간
/sbin : 시스템 운영에 필요한 관리자용 명령어들이 존재
/var : 시스템 운영 시 발생되는 다양한 로그들이 저장됨
/home : 일반 사용자의 홈 디렉터리들이 만들어지는 공간
vim 명령
[VIM Part]
명령 모드, 입력 모드, 라인 모드
vi -R [filename]
- 파일을 읽기 전용으로 열기
vi -r [filename]
- 손상된 파일을 복구하기
vi +10 [filename]
- 1010번째 행으로 파일 열기
[명령 모드]
zz : 지정된 파일 이름으로 저장되면서 종료
:1,5w test.txt : 1~5번 행까지 내용을 test.txt에 적음 (Write)
:r test.txt : 현재 행 아래에 test.txt의 내용을 삽입하기 (Read)
:5r test.txt : 5번 행 다음에 test.txt의 내용 삽입
:e! : 현재까지 수정한 내용을 다 무시하고, 현재 파일을 다시 열기
:e test.txt : test.txt 파일 열기
cf(change forward) : cf 명령을 주고 찾은 문자 위치까지 삭제
Forward
- []what is this?
f s 하면 문자 s가 위치한 곳으로 커서 이동
시작 커서에서 ma, 마지막 커서에서 mb
- Maker 지정해서 명령 모드에서 :’a,’by 하면 그 부분 복사 :’a,’bd 그 부분 삭제
xp
- 앞 뒤 문자 바꿀 때 (x: 한 글자 삭제, p: paste)
w
- 커서를 한 단어씩 뛰어넘을 때
Ctrl + R
- 앞으로 가기
cw
- 단어 바꾸기
리눅스 명령
ls 명령
- a : 모든 파일 보여주기
- l : 자세히 보여주기
- s : 파일 크기 보여주기
- R : 하위 디렉터리 파일 목록까지 보여주기
- F : 파일 형식을 알리는 문자를 각 파일 뒤에 추가하기
cp 명령
- i : 복사 대상 파일이 있을 경우 확인하기
- a : 원본 파일의 속성, 링크 정보들을 그대로 유지하며 변경
- r : 경로를 복사할 경우 그 안에 포함된 모든 하위 경로의 파일들을 복사
rm 명령
- i : 파일 삭제 시 확인하기
- f : 강제로 삭제하기
- r : 디렉터리 삭제 시 하위 디렉터리와 파일을 모두 삭제
tar 명령
- c : 아카이브 파일 생성
- t : 아카이브 파일 목록 보기
- x : 아카이브 파일 추출
- f : 아카이브 파일 이름 지정
- v : 작업 중 자세한 정보 보여주기
- j : bunzip으로 압축되어 있는 파일 풀기
- z : gzip으로 압축되어 있는 파일 풀기
예제 1) tar xvfz blob_pro3.tar.gz
예제 2) tar xvfj kernel-2.6.tar.bz2
dd
- 파일을 복사하거나, 생성하거나 포맷을 컨버팅 하는 데 사용. 추가적으로, 하드디스크 복제, 데이터를 완벽히 제거하는데 주로 사용
dd if=[input_file] of=[output_file]
예제 1) df if=/dev/zero of=my_zero.txt count=1000, Default blocksize = 512 bytes
df
- 시스템을 구성하는 파일 시스템의 정보를 출력
df [OPTION] … [FILE]
du
- 파일 시스템 내의 디렉터리 및 파일 개수 확인
df
- 마운트 된 디스크 파일 시스템 보여주기
mount -t [파일 타입] [마운트 할 블록 파일 시스템] [마운트 지점]
예제 1) mount -t ext2 -o loop /usr/local/pxa255/ramdisk_mmc ramdisk (블록 시스템일 경우 -o loop)
예제 2) mount -t nfs 192.168.10.70:/root/work_nfs_share
apt-get update
- 업데이트 목록을 갱신
apt-get remove
- 설치된 패키지 제거
apt-get upgrade
- 시스템 업그레이드 또는 업데이트된 패키지 등을 업그레이드한다.
netstat
네트워크의 연결 상태와 라우팅 테이블, 인터페이스 관련 정보 등을 출력하며 시스템에서 사용하고 있는 포트에 대한 정보 출력
- a : 모든 소켓 정보 출력
- r : 라우팅 정보 출력
- n : IP 주소를 출력
- p: 특정 소켓과 관련된 프로세스 이름과 프로세스 ID를 출력
예시 1) 포트가 사용 중인지 확인 : netstat -an
route
라우팅 테이블 (내부 또는 외부 연결 관계를 가진 테이블)을 편집하거나 출력
- add : 라우팅 정보 추가
- del : 라우팅 정보 제거
예시 1) 디폴트 게이트웨이 추가
route add default gw 192.168.133.1
예시 2)
route add -host [ ] -dev [ ]
예시 3)
route add -net [ ] netmask [ ] gw [ ]
top
- CPU와 RAM 등의 사용률을 확인하고, 시스템에서 실행 중인 프로세스들의 CPU 및 메모리 점유들을 반복적으로 갱신되는 화면을 볼 수 있음.
free
- 현재 시스템 전체 메모리와 사용 메모리, 스왑 메모리 상태를 출력
mkswap
- 스왑 파일을 생성하기 위해서 사용
예시 1) mkswap /tmp/swapfile 4096
swapon
- 스왑 메모리를 시스템에 적용하기 위해 사용된다.
예시 2) swapon /tmp/swapfile
swapoff
- 스왑 메모리를 사용하지 않을 경우 사용한다.
dmesg
- log 보기
ps
- 현재 돌아가고 있는 프로세스 목록 보기
fg
- 백그라운드에서 돌고 있는 걸 포그라운드로 옮김.
'Computer Science > OperatingSystem' 카테고리의 다른 글
[Operating System Concept] Processes - Chapter 3 (0) | 2023.07.23 |
---|---|
[Operating System Concept] Operating System Structures - Chapter 2 (1) | 2023.07.22 |
디바이스 드라이버 (Device Driver) 개념 (0) | 2021.11.26 |
운영체제(OS) 역할 (0) | 2021.10.30 |