# 명령어 chown [-R]
; 파일과 디렉터리의 사용자 소유권과 그룹 소유권을 변경하는 명령어
◦ -R 옵션 : 하위 디렉터리를 포함하여 디렉터리 내부의 모든 파일의 소유권 변경
◦ 예시
#chown -R root Youngjin : 디렉터리 Youngjin의 모든 파일과 하위 디렉터리의 소유권을 root로 변경.
#chown :root TST : 디렉터리 TST의 그룹 소유권을 root로 변경.
#chown -R root :user1 TST1 : 디렉터리 TST1의 모든 파일과 하위 디렉터리의 소유권을 root로, 그룹 소유권을 user1으로 변경.
# 디스크 쿼터 (Disk Quota) 관련 명령어
; 파일 시스템마다 사용자/그룹이 생성할 수 있는 파일의 용량 및 개수를 제한하는 것.
; 쿼터는 사용자별, 파일 시스템 별로 동작됨.
◦ 명령어 quotaoff 쿼터 서비스를 비활성화함. quotaoff user1 ; user1의 디스크쿼터를 비활성화.
◦ 명령어 quotacheck 파일 시스템의 디스크 사용 상태를 검색함.
◦ 명령어 edquota [옵션] [계정명or그룹명] 편집기를 이용하여 사용자/그룹에 디스크 사용량을 할당.
◦ 명령어 setquota [옵션] [계정명or그룹명] [BLock soft limit] [Block hard limit] [inode soft limit] [inode hard limit] [파티션명] 편집기가 기반이 아닌 명령행에서 직접 사용자나 그룹에 디스크 사용량을 할당.
ex) setquota user1 : user1의 디스크쿼터를 설정.
# 명령어 fdisk
; 새로운 파티션 생성 / 기존 파티션 삭제 / 파티션의 타입 결정 등의 작업 수행할 수 있음.
; fdisk 프로그램은 한번에 한 디스크에 대해서만 작업 수행.
; 어떠한 디스크의 파티션을 변경할 것인지 알려주어야함.
[형식] fdisk [옵션] [장치명]
◦ 예시
1. fdisk -l 현재 디스크 및 파티션 보기
2. fdisk -v fdisk 버전 정보 표시
3. fdisk -s /dev/sda 지정된 파티션의 크기를 블록 단위로 표시
4. fdisk 실행과정에서 사용되는 주요 명령어
>>이 명령어들은 fdisk /dev/sda 와 같이 명령어를 적은 후에 fdisk 실행과정에서 사용할 수 있음.
p | 디스크 정보 표시 |
n | 파티션 생성 |
t | 파티션 속성 지정 |
d | 파티션 삭제 |
w | 변경된 파티션 정보 저장 |
q | 파티션 설정 작업 종료 |
# 명령어 fsck
; 파일 시스템의 무결성을 점검하고 대화식으로 복구하는 명령어
; fsck에서 사용하는 디렉터리는 /lost+found 디렉터리 (평상시에는 null파일 링크에 의해서 비어있는 상태로 존재)
[과정] ◦ 손상된 파일을 /lost+found 디렉터리로 연결하여 /lost+found 에서 작업 수행
◦ 정상적으로 복구가 되면 파일이 사라짐.
[형식] fsck [옵션] 장치명
; fsck -A /etc/fstab에 표시된 모든 파일 시스템을 점검 (all)
; fsck -a /dev/sda 질의없이 자동 복구 (auto)
; fsck -r /dev/sda 질의 후 복구
; fsck -t ext4 /dev/sda 점검할 파일 시스템 유형 지정 (type)
# 명령어 e2fsck
; ext2, ext3, ext4 타입의 리눅스 파일 시스템을 점검 및 복구하는 명령어
; fsck가 어떤 타입이든, e2fsck가 ext2,3,4 타입만 다룬다는 차이.
[형식] e2fsck [옵션] [장치명]
; e2fsck -p 파일 시스템을 검사하면서 자동으로 복구 (preen)
; e2fsck -n 모든 질문에 대한 대답을 no로 취급 (only 검사)
; e2fsck -y 모든 질문에 대한 대답을 yes로 취급
; e2fsck -f 깨끗한 파일 시스템까지 강제적으로 점검 (force)
# 명령어 kill
; 프로세스 종료
[형식] kill [옵션] [시그널번호or시그널이름] [PID or %작업번호]
; kill -9 22{1,2,3}9 PID가 2219,2229,2239인 프로세스를 강제 종료
# 시그널
; 시그널은 프로세스 간 메시지를 보내는 통신할 때 이용한다.
◦ kill -l 시그널 리스트 확인 (시그널 이름과 번호 확인 가능)
◦ 시그널 목록 (몇개만)
2 | SIGINT | Ctrl+C 입력 시 | 종료 |
3 | SIGQUIT | Ctrl+\입력 시 | 코어덤프 |
9 | SIGKILL | 프로세스 강제 종료 시 | 종료 |
14 | SIGALRM | 알람 타이머 만료 시 | 코어덤프 |
15 | SIGTERM | Kill 시스템 호출 시 | 종료 |
이외에 SIGHUP SIGABRT SIGPIPE SIGCHLD SIGCONT SIGSTOP SIGTSTP 등이 있음.
# 셸
◦ /sbin/nologin 시스템 계정에 설정되는 셸
◦ /bin/bash 가장 최근에 등장한 셸
◦ bin과 sbin
/bin 기본적인 명령어
/sbin 시스템 관리를 위한 명령어
# cron
; 주기적으로 반복되는 일을 자동적으로 실행될 수 있도록 설정
; 스케줄링 데몬(서비스) "crond"
; 관련 파일은 "/etc/crontab"
# History 기능
◦ !n n번째 명령어 실행 (history n 과 같은 기능)
# 데몬
; 주기적이고 지속적인 서비스 요청을 처리하기 위해 계속 실행되는 백그라운드 프로세스
; 데몬을 실행하는 방법
◦ standalone 데몬 보통 부팅 시에 실행되어 해당 프로세스가 항상 메모리에 상주하면서 클라이언트의 서비스 요청을 처리하는 단독 실행 방식
◦ inetd 데몬 다른 데몬들의 상위에 존재하는 standalone 데몬으로 여러 가지 다른 서비스들을 제어하고 관리
# 파일 .exrc
; vi 편집기의 환경 설정을 등록하여 지정된 설정을 지속적으로 사용하도록 해주는 파일.
; 일반적으로 이 파일 안에 set 명령을 사용 시에는 콜론(:)을 사용하지 않음. 콜론은 작업 중인 파일의 편집모드에서 환경설정을 지정할 때 사용함. ex) :set nu
# 에디터
◦ gedit
- Windows의 메모장처럼 X윈도에서 제공해주는 편리한 에디터
- X윈도 기반이기 떄문에 X윈도를 사용하지 않는 서버 기본 텍스트모드에서는 사용할 수 없다는 제약
* 텍스트 환경 기반의 콘솔 환경에서 사용 가능한 대표적인 편집기 : vi, emacs, pico
◦ vi
- 리눅스 배포판과 유닉스에 기본적으로 포함되어 있음.
- 작업 모드는 명령/입력/편집모드
Q) /etc/hosts 파일을 열면서 ihd라는 문자열이 있는 위치에 커서를 두는 vi 명령 : vi +/ihd /etc/hosts
◦ vim (vi improved)
- vi 편집기와 호환되면서 독자적으로 다양한 기능을 추가해 만든 편집기
◦ gVim
- GUI 기반의 편집기
- 여전히 많은 기능은 CUI 기반으로 사용해야 함.
* vi 편집기의 개발 순서 : vi -> vim -> gVim
◦ vi 편집기로 문자열을 치환할 때 사용하는 정규 표현식 종류
- $ : 줄의 끝을 의미
- ^ : 줄의 시작을 의미
- ^a : a로 시작하는 문자
- $a : a로 끝나는 문자
# CUPS (프린터 인쇄 시스템)
; 애플이 개발한 오픈 소스 프린팅 시스템
; HTTP 기반의 IPP를 사용하여 프린터를 웹 기반으로 제어함.
; CUPS 프린트 데몬의 환경 설정 파일(/etc/cups/cupsd.conf)의 기본 문법이 아파치의 httpd.conf와 유사함.
; CUPS가 제고하는 장치 드라이버는 어도비의 PPD 형식의 텍스트 파일을 이용하여 설정함.
# ALSA (사운드 카드 지원 시스템)
; Advanced Linux Sound Architecture
; 사운드 카드용 장치 드라이버를 제공하기 위한 리눅스 커널 요소
; GPL 및 LGPL 라이센스 기반으로 배포되고 있음.
; 사운드 카드용 장치 드라이버를 위한 API를 제공하는 소프트웨어 프레임 워크.
# 스캐너 관련 명령어
◦ sane-find-scanner SCSI 스캐너와 USB 스캐너 관련 장치 파일을 찾아주는 명령어
◦ scanimage 이미지를 스캔
◦ scanadf 자동 문서 공급 장치가 장착된 스캐너에서 여러 개의 사진을 스캔
◦ xcam GUI 기반으로 평판 스캐너나 카메라로부터 이미지 스캔.
# 리눅스의 패키지 관리 툴 (데비안 계열, 레드햇 계열)
◦ 데비안 계열 : dpkg, apt-get
◦ 레드햇 계열 : RPM, YUM
RPM 새로운 패키지를 설치/업그레이드/삭제 시 유용.
; rpm -i nano nano 패키지 설치
; rpm --nodeps nano nano 패키지를 의존성 관계 무시하고 설치
YUM 네트워크를 통해 기존 RPM 패키지 파일의 업데이트 자동 수행/ 새로운 패키지 설치 및 제거 수행
; RPM의 의존성 문제를 해결하기 위한 유틸리티
; 인터넷을 기반으로 설치하므로 네트워크가 정상적으로 연결된 상태여야만 함.
; yum [-y] install nano 사용자에게 설치 여부를 [묻는 질문에 yes로 간주]물으면서 패키지 설치
; yum remove nano 지정한 패키지 제거
; yum info nano 패캐지 요약 정보 확인
# System V 계열 프린터 명령어
◦ lp 프린터 작업 요청
; lp -n 2 test.txt test.txt파일을 2장씩 인쇄
◦ lpstat 프린터 큐의 상태 확인
; lpstat -p 프린터의 인쇄 가능 여부 출력
◦ cancel 프린트 작업 취소
; cancel 요청ID
; cancel -a 프린터 큐에 있는 모든 작업 취소
# 프로세스의 우선순위를 변경할 때 사용하는 명령어 : nice, renice
# tar
◦ 다수 개의 파일이나 디렉터리를 하나의 파일로 묶는 명령어
[형식] tar [옵션] 파일명
; tar cfv test1 처리하고있는 파일의 정보를 화면에 출력하면서, 파일명은 test1로 생성한다.
; tar cfvz test1 윗 문장에 +gzip으로 압축도 동시에.
; tar ztvf test2 앞축되어 묶여진 test2 파일을 풀지 않고 내용만 확인
# 소스 코드 설치
1. 소스 코드를 압축 해제
2. 컴파일 순서에 따라 프로그램 설치
1단계 환경 설정 | ./configure | 프로그램 설치 과정에서 필요로 하는 환경파일 makefile 생성 |
2단계 컴파일 | make | makefile을 기반으로 소스 파일을 컴파일(make가 끝나면 소스파일->실행파일) |
3단계 파일 설치 | make install | 컴파일된 실행파일을 지정된 속성으로 지정된 디렉터리에 설치 |
>>명령어 make && make install 로 컴파일과 파일 설치를 동시에 처리할 수 있음
'유용한 모든 것' 카테고리의 다른 글
리눅스마스터 2급 2차 [프로세스] (0) | 2020.08.25 |
---|---|
리눅스마스터 2급 2차 [셸] (0) | 2020.08.25 |
리눅스마스터 2급 2차 [파일 시스템] (0) | 2020.08.24 |
리눅스마스터 2급 2차 [프로세스 유틸리티] (0) | 2020.08.11 |
리눅스마스터 2급 1차 공부 (0) | 2020.08.10 |