A. 파일 위치 검색
find [경로] [옵션] [조건] [action] : 기본 파일 찾기
- 옵션
- -name
- -user(소유자)
- -newer(전, 후)
- -perm(허가권)
- -size(크기)
- action
- -exec (외부명령 실행)


B. 시스템 설정
네트워크 = nmtui
방화벽 = ufw
서비스 설정 = rcconf
해당 파트는 추후에 업데이트 예정
C. 작업예약
cron
- 주기적으로 반복되는 일을 자동적으로 실행될 수 있도록 설정
- 관련된 데몬(서비스)은 crond, 관련 파일은 /etc/crontab
- /etc/crontab 형식
- 분 시 일 월 요일 사용자 실행명령
- 예시) 00 05 1 * * root cp -r /homr /backup
at
일회성 작업을 예약
예시)
at <시간>
at 3:00 am tomorrow -> 시간 설정
cp -r /home /back up -> 예약 명령 설정
ctrl + D -> at 설정 모드 나오기
확인 = at -l
취소 = atrm <작업번호>
D. 네트워크 관련
네트워크 장치 명령어
ifconfig [랜카드 이름] = 네트워크 설정 정보
ifdown [랜카드 이름] = 네트워크 장치 정지
ifup [랜카드 이름] = 네트워크 장치 가동
nm-connection-editor
- 네트워크와 관련된 대부분의 작업을 이 명령어에서 수행
- GUI 기반 명령어 (텍스트 모드는 nmtui)
systemctl [start/stop/restart/status] network
네트워크 기본 정보가 설정된 파일
/etc/NetworkManager/system-connections/유선 연결 1
-> GUI
/etc/network/interfaces
-> 텍스트
DNS 설정파일
/etc/resolv.conf
-> 영구적으로 DNS 서버 정보를 변경하려면
/etc/network/interfaces 파일을 직접 편집해야 함
현 컴퓨터의 호스트 이름 및 FQDN이 들어 있는 파일
/etc/hosts
E. 프로세스, 데몬, 서비스
1. 파이프
- 두 개의 프로그램을 연결해 주는 연결통로의 의미
2. 필터
- 필요한 것만 걸러 주는 명령어
- grep, tail, wc, sort, awkm sed 등
- 주로 파이프와 같이 사용
3. 리디렉션
- 표준 입출력의 방향을 바꿔 줌
- ls -l > list.txt
4. 프로세스
- 하드디스크에 저장된 실행코드(프로그램)가, 메모리에 로딩되어 활성화 된 것
Foreground Process
- 실행하면 화면에 나타나서 사용자와 상호작용을 하는 프로세스
- 대부분의 응용프로그램
Background Process
- 실행은 되었지만, 화면에는 나타나지 않고 실행되는 프로세스
- 백신 프로그램, 서버 데몬 등
- &을 붙이면 백그라운드에서 동작함
예시) gedit &
프로세스 번호
- 각각의 프로세스에 할당된 고유번호
작업 번호
- 현재 실행되고 있는 백그라운드 프로세스의 순차번호
부모 프로세스와 자식 프로세스
- 모든 프로세스는 부모 프로세스를 가지고 있다.
- 부모 프로세스를 kill 하면, 자식 프로세스도 자동으로 kill 된다.
프로세스 관련 명령
ps
- 현재 프로세스의 상태를 확인하는 명령어
- ps -ef | grep [프로세스 이름] 을 주로 사용함
kill
- 프로세스를 강제로 종료하는 명령어
- kill -9 [프로세스 번호] = 강제종료
pstree
- 부모 프로세스와 자식 프로세스의 관계를 트리 형태로 보여줌
5. 서비스
- 시스템과 독자적으로 구동되어 제공하는 프로세스를 말한다.
- 예로 웹 서버, DB 서버, FTP 서버 등이 있다.
- systemctl [start/stop/restart] 서비스 이름
- 서비스의 실행 스크립트 파일은 /lib/systemd/system/ 디렉터리에
서비스이름.service란 이름으로 확인할 수 있다.
- 부팅과 동시에 서비스의 자동 실행 여부를 지정할 수 있다.
터미널에서 systemctl list-unit-files 명령을 실행하면
현재 사용과 사용안 함을 확인할 수 있다.
- 또는 rcconf 명령으로 설정할 수도 있다.
6. 소켓
- 서비스는 항상 가동되지만, 소켓은 외부에서 특정 서비스를 요청할
경우에 systemd가 구동시킨다. 그리고 요청이 끝나면 소켓도 종료된다.
- 그래서 소켓으로 설정된 서비스를 요청할 때는 처음 연결되는 시간이
앞에서 설명한 서비스에비교했을 때 약간 더 걸릴 수 있다.
- 왜냐면 systemd가 서비스를 새로 구동하는데 시간이 소요되기 때문이다.
이와 같은 소켓의 대표적인 예로 텔넷 서버를 들 수 있다.
- 소켓과 관련된 스크립트 파일은 /lib/systemd/system/ 디렉터리에
[소켓이름].socket 이름으로 존재한다.
F. 응급복구
- 시스템이 부팅이 되지 않을 경우에 수행
- 몇몇의 문제를 해결할 수 있다.
예시) root 비밀번호 분실 시
1. 부팅시 esc 누른다.
2. ubuntu 사용자 선택 후 e 누른다.
3. GRUB 편집창에서 제일 아래로 내리면 아래와 같은 linux 행이 보인다.
4. end 키를 누르면 ro 끝으로 가는데 init=/bin/sh를 입력한다. (아래 그림 참조)

5. ctrl + x 부팅
6. 루트 사용자로 접속이 된다.
7. 패스워드를 그냥 바꾸려면 안된다.
왜냐면 응급모드는 sda2가 읽기전용으로 마운트 되기 때문이다.
8. mount -o remount, rw / 명령어를 통해 읽기 쓰기로 재마운트 한다.
9. passwd로 패스워드 바꾸면 된다.
당연하지만 실제 운영할 때는 GRUB 편집 창 접근시에도 아무나 접근 못하게 패스워드를 설정한다.
G. GRUB 부트로더
- 부트 정보를 사용자가 임의로 변경해 부팅할 수 있다.
- 다른 여러가지 운영체제와 멀티부팅을 할 수 있다.
- 대화형 설정을 제공하여 커널의 경로와 파일 이름만 알면 부팅이 가능하다.
GRUB2의 장점
- 셀 스크립트를 지원함으로써 조건식과 함수를 사용할 수 있다.
- 동적 모듈을 로드할 수 있다.
- 그래픽 부트 메뉴를 지원하며, 부트 스플래시 성능이 개선되었다.
- ISO 이미지를 이용해 바로 부팅할 수 있다.
GRUB2 설정 방법
- /etc/default/grub 파일과 /etc/grub.d/ 디렉터리의 파일을 수정한 후
grub-mkconfig 명령어를 실행해 설정한다.
- /boot/grub/grub.cfg 설정파일을 직접 변경하면 안된다.
/etc/default/grub 파일

- GRUB 화면 설정파일
vi /etc/default/grub
- GRUB 유저 추가 및 패스워드 설정
vi /etc/grub.d/00_header
맨아래로 내려가서
cat << EOF
set superusers="원하는 유저이름"
password "적은 이름" [비밀번호]
EOF
둘 중 뭐든 수정한 내용있으면
update-grub 명령어 입력 후 재부팅
H. 모듈, 커널 컴파일

커널 = 리눅스의 엔진과 같다.
커널이 시간이 지나갈수록 요구하는 기능이 많아져 크기가 커졌다.
더 커지는 것을 방지하기 위해 필요할 때만 쓸 기능은 모듈로 뺐다.
모듈 = 필요할 때마다 호출하여 사용되는 코드
커널 컴파일

커널 컴파일 = 기존의 엔진을 새로운 엔진으로 교체 혹은 기존의 엔진을 그대로 두고 새로운 엔진 추가를 하는 것
'Linux' 카테고리의 다른 글
| 리눅스 - 하드디스크 관리 Part 2 (0) | 2025.02.02 |
|---|---|
| 리눅스 - 하드디스크 관리 Part 1 (1) | 2025.02.01 |
| 리눅스 기본 정리 - Part 1 (0) | 2025.01.14 |
| KVM 특징 및 설치 방법 - 커널 기반 가상 머신 (0) | 2024.07.30 |
| NFS 개념, 구조, 동작원리 - 파일에 접근할 수 있도록 하는 분산 파일 시스템 프로토콜 (0) | 2024.07.30 |