chown (change owner)
- 형식 : chown [opt][:group] files
- 옵션 : -R 하위 디렉토리까지 포함
chgrp ( change group)
- chgrp -h : 심볼릭링크 파일 그룹 소유권을 변경
chmod
- 유저(u), 그룹(g), 기타 사용자(o), 모든 사용자(a) 순으로 정렬
umask
- 옵션 : -S umask 값을 u,g,o와 r,x,w같은 문자열 (String)으로 나타낸다.
- 기본권한 : 파일 (666), 디렉터리(777)
setUID : 사용자가 사용할 때만 소유자 권한으로 파일을 실행
setGID : 사용자가 사용할 때만 그룹 권한으로 파일 실행
sticky bit : 권한기호 t, /tmp 폴더에는 sticky-bit이 설정됌
파일 시스템마다 사용자/그룹을 생성할 수 있는 파일 용량/개수 제한
edquota : 편집기를 사용해 그룹에 디스크 사용량 할당
setqouta: 명령행에서 직접 디스크 할당
- ext2: 255까지 파일이름, 2gb 단일 파일, 4tb 디스크(저널링 x)
- ext3: ext2를 확장, 저널링 기능
- nfs : 네트워크 파일 시스템, 파일 공유 및 파일 서버
- cifs : SMB의 확장
- NTFS : 윈도우에서 사용하는 파일 시스템, 대용량 파일 저장이 가능
- udf : DVD 파일 시스템
- JFS : IBM이 개발한 저널링 파일 시스템
- 대표적 저널링 파일 시스템 : FJS, XFS, ReiserFX, ext3
- mount : 장치와 디렉토리 연결
- umount : 연결된 장치와 디렉토리 연결 해제
- eject : 이동식 보조기억장치 제거 (eject를 실행하면 먼저 umount가 실행된다.)
- fdisk : 파티션 생성 및 삭제 타입결정
<-l> : 현재 디스크 파티션 테이블 정보를 나타냄
<-v> : fdisk 버전을 나타냄
<-t> : 파일 시스템 유형 결정(type)
<-s> : 파티션의 크기(size)
- mkfs : 마운트 정보 파일 시스템 정보를 확인
- mke2fs : 파일 시스템, 생성, ext2/ext3/ext4
- fsck : 파일시스템 검사 및 수리
- e2fsck : 파일시스템 점검 및 복구 (ext2,3,4)
- du(Disk Usage) : 디스크 사용량 확인
- df (Disk Free) : 디스크의 남은 용량 확인할 때
- blkid : 현재 하드디스크의 파티션의 UUID와 파일 시스템 정보를 확인할 수 있다.
/etc/fstab : 리눅스에서 사용하는 파일 시스템 정보를 저장하는 곳
- 본쉘 계열(bourne shell)
1. 본쉘 : /bin/sh, 벨 연구소의 스티브 본이 개발
2. 콘쉘 : /bin/ksh, AT&T, 데이비드 콘
3. 배쉬쉘 : /bin/bash, 본쉘 기반으로 GNU 프로젝트에 의해 개발
4. zsh : /bin/zsh
- c쉘 계열
1 c쉘 : /bin/csh, 버클리 대학, 빌 조이, c언어 기반
2 tchs : /bin/tcsh, 확장 c셸
- 셸 변경 명령
chsh
- 셸 확인방법
1. echo $SHELL
2. chsh -l
3. cat /etc/shlls
- inetd VS standalone
1 inted : 필요한 서비스이나 자주 사용하지 않는 서비스를 관리할 때 유용.
2 standalone : 독립적으로 수행되며 서비스 요청에 응답하기 위해 항상 메모리에 상주하는 데몬
- fork & exec
1 fork : 새로운 프로세스를 만들 때 기본 프로세스를 복제하는 방식
2 exec : 호출하는 프로세스가 새로운 프로세스로 변경되는 방식
- 명령어
1 halt : 시스템을 종료하는 명령
2 suspend : 작업중인 프로세스를 일시로 중지시키는 명령어
- NI 값
1 조정 가능한 NI값 범위 : -20 ~ 19
2 -20은 가장 높은 우선권을 가지고, 19는 가장 낮은 우선권을 가진다.
3 일반 사용자는 NI값을 증가시키는 것만 가능하고, root 관리자만 NI값을 감소시킬 수 있다
- 시그널 번호
1 SIGINT -> 2 <Ctrl+C> , 종료
2 9 -> 강제종료
3 SIGTERM -> 15
4 SIGSTP -> 20 <ctrl+Z>
- 주요환경 변수
TERM : 터미널 종류 이름
TMOUT : 로그아웃 관련 시간 제어
LANG : 프로그램 사용시 기본 지원 언어
- 환경 설정 파일
1. 전역설정 파일 : /etc/profile, /etc/bashrc
2. 지역설정 파일 : ~/.bash_profile, ~/.bash_history, ~/.bashrc, ~/.bash_logout
3. /etc/profile.d : 몇몇 응용 프로그램이 시작시 자동 실행할 스크립트 파일 경로를 넣어둔다.
- 셸 환경변수
1. /etc/profile : 모든 사용자의 쉘 환경을 제어하는 전역적인 시스템 설정 파일
2. ~/.bash_profile : 일반 사용자가 PATH와 같은 환경변수를 변경할 때 사용하는 지역 설정 파일
3. ~/.bashrc : 별칭과 bash가 수행시 실행되는 함수를 지역적으로 제어
4. bash_history : 사용자가 명령어나 키보드로 입력한 내용들을 파일로 모두 기록
5. /etc/prifle.d : 몇몇 응용프로그램이 시작할 때 필요한 스크립트가 위치하는 디렉터리
- history 기능
!! : 마지막으로 실행했던 명령문 실행
!문자열 : 가장 최근에 문자열로
!?문자열? : 가장 최근에 문자열을 포함하고 있는 단어를 나타냄
!n : n 번째 명령어 실행
- histroy 환경변수
HISTSIZE : 히스토리 스택의 크기
HISTFILE : 히스토리 파일의 위치
HISFILESIZE : 물리적인 히스토리 파일 크기
- ps (process status)
실행중인 프로세스 상태를 보여준다.
- pstree
실행중인 프로세스를 트리 구조로 나타낸다.
- jobs
작업이 중지된 상태, 백그라운드로 진행중인 상태, 변경됐지만 보고되지 않은 상태를 표시
- bg 와 fg
1 포그라운드에서 백그라운드로 전환하려면 명령어 뒤에 &를 붙이면 된다.
2 ctrl+c 는 포그라운드를 작업 종료
- kill
프로세스를 종료시킴
- killall
같은 데몬의 여러 프로세서를 한 번에 종료시킨다.
- nice
프로세스 사이의 우선순위를 변경할 수 있는 명령
- renice
이미 실행중인 프로세스의 우선 순위를 변경
- top
리눅스 시스템의 운영 상태를 실시간 모니터링, 프로세스 상태 확인
- tail
마지막 행을 기준으로 지정한 행까지 파일 내용의 일부 출력
- pico
워싱턴 대학의 aboil kasar가 개발한 유닉스 기반 텍스트 에디터
<ctrl+ o> : 파일 저장
<ctrl+ x> : 파일 종료
<ctrl+ a> : 커서를 해당줄 시작으로 이동
<ctrl+ e> : 커서를 해당줄 마지막으로 이동
- vi
1976년 빌 조이가 만듦, 모드형 편집기
-r : 파일 복구 옵션
vi + [num] 파일명 : 해당 줄로 커서 이동
vi + $파일명 : 커서가 줄의 맨 끝으로 이동
vi - 파일명 : 앞줄의 첫 문자로
- vim
브람 무레나르가 만들었다.
편집시 다양한 색상을 이용해 가시성을 높일 수 있다.
- gedit
그놈 데스크톱 환경용으로 자유 소프트웨어 텍스트 편집기
- emacs
리차드 스톨만이 개발
제임스 고슬링이 기능을 추가
- tar
사용방법 : tar [옵션] files
<-x> : 압출 해제
<-c> : 압축 하기
<-r> : 기존 압축에 파일 추가
- 파일 압축과 해제
1. compress, uncompress (Z)
2. gzip, gunzip (gz)
3. bzip, bunzip (bz2)
4. xz, unxz (xz)
압축 성능 gzip < bz2 < xz
- 프린터 설치 및 설정
1. LPRng
- 리눅스 초기에 사용하던 시스템
- /etc/printcap
2. CUPS
- 애플이 개발한 오픈 소스 시스템
- /etc/cups
- 프린터 관련 명령어
1. BSD 계열
- lpr : 프린터 작업요청
- lpq : 프린터 큐의 작업목록 출력
- lprm : 프린터 큐에 대기작업 삭제
- lpc : 라인 프린터 컨트롤러
2. System V 계열
- lp : 프린터 작업요청
- lpstat : 프린터 큐 상태 학인
- cancel : 프린터 작업 취소
- 사운드 카드 설치 및 설정
1. OSS : 리눅스에서 사운드를 만듥 캡쳐하는 인터페이스 표준
2. ALSA : 사운드 카드용 장비 드라이버를 제공하기 위한 리눅스 커널 요소
- 사운드 카드 관련 명령어
1. alsatcl : 사운드 카드 제어
2. alsamixer : 라이브러리 기반의 오디오 프로그램
3. cdparanoia : 오디오 CD로부터 음악 파일을 추출시 사용한다.
- 스캐너 설치 및 설정
1. SANE : 이미지 관련 하드웨어를 제어하는 api
2. XSANE : sane 인터페이스를 이용해 x-window 기반의 스캐너 프로그램
- 스캐너 관련 명령어
1. scan-find-scanner : SCSI 스캐너와 USB 스캐너 정보 출력 명령어
2. scanimage : 이미지 스캔
3. sacnadf : 여러 개의 이미지 사진 스캔
4. scam : GUI 기반을 평판 스캐너나 카메라로부터 이미지 스캔
- 로컬접속 프린트 연결
1. /dev/lp0 : 직렬포트 연결
2. /dev/usb/lp0 : usb 포트 연결
- x윈도우의 특징과 구성요소
1. 개념과 특징
- 네트워크 프로토콜 기반의 클라이언트/서버 시스템
- 오픈 테스크톱 환경으로 KDE, GNOME, XFCE 등이 있다.
2. 구성요소
- XProtocol
- Xlib
- XCB : xlib대체, 쓰레드 기능 향상 및 확장성 우수
- Xtoolkit
- Xfree86
- XF86Cofig
- 용어설명
1. 데스크톱 환경: GUI환경을 이용하기 위해서 사용자에게 제공되는 인터페이스 스타일 (파일간리자, 아이콘, 창 도구 모음, 배경 환경 등이 포함)
2. 윈도우 매니저: x-window에서 윈도우의 배치와 표현을 담당하는 시스템 프로그램
3. 유저 인터페이스: 사람들이 컴퓨터와 상호작용 하는 시스템
4. 디스플레이 매니저: x-window 구성요소 중 사용라 로그인 및 세션 간리 역할 수행
- 용어정리
1. 데스크톱 환경: gui 환경을 이용하기 위해서 사용자에게 제공되는 인터페이스 타입
2. 윈도우 매니저 : 도크, 태스크 바, 프로그램 런처, 데스크톱 아이콘, 바탕화면 등과 같은 다양한 유틸 제공
3. x 프로토콜 : x 윈도우 시스템에서 서버는 디스플레이를 전담학, x 클라이언트의 요구에 따라서 하면 출력 및 사용자 입력처리를 담당
4. 디스플레이 매니저 : 그래픽 모드에서 실행디는 것으로 XDM, GDM, KDM 등이 있다.
- 기타
1. KDE : QT 라이브러리 기반
2. GNOME : LPGL을 따르는 GTK+ 라이브러리 기반
- KDE, GNOME, GRUB
1. 데스크톱 매니저 : KDE, GNOME, Xface
2. GNU 프로젝트 부트로더 : GRUB
3. windows maker : GNOME와 KDE에 통합
- GNOME
1. GNOME : nautilus (파일 관리자)
2. GNOME2 : metaciy (파일 관리자)
3. GNOME3 : Mutter (윈도우 관리자)
- xhost
1. x서버에 접속할 수 있는 클라이언트를 지정하거나 해제
형식 : xhost [+ or -] [ip] [도메인명]
- xauth
1. MMC 방식의 인증 방식을 사용하기 위한 필수 유틸리티
2. xauth list $DISPLAY ( 지정된 호스트 표시창의 쿠키값을 확인하는 명령 )
- X-윈도우 응용 프로그램
1. 오피스 : LibreOffice, gedit, kwrite
2. 그래픽 : GIMP(이미지 편집), imageMagick, eog(이미지 뷰어)
3. 멀티미디어 : totem (동영상 재생)
4. 개발 : eclipse
5. 기타 : KSnapshot (스크린샷 프로그램)
1. 데이터 전송 단위
- 물리 : 비트
- 데이터링크 : 프레임
- 네트워크 계층 : 패킷
- 전송 계층 : -TCP:Segment, -UDP:Datagram
- 세션 : 데이터
다음 중 /etc 디렉터리가 차지하고 있는 전체 용량을 확인할 때 사용하는 명령으로 가장 알맞은 것은?
dk Disk Usage의 약자이다. 디스크 사용량 확인
du 디렉터리나 사용자별 디스크 사용량
df 파티션 단위 사용량, 리눅스 시스템 전체 표기
다음 제시된 프린터 관련 명령어 중 나머지 셋과 비교해서 다른 계열에 속하는 명령으로 알맞은 것은?
lp
BSD 계열 - lpr, lpq, lpc, lprm
System V 계열 - lp, lpstat, cancel
다음 중 IP 주소 및 포트 번호와 관련 있는 기구로 알맞은 것은?
IANA
Internet Assigned Numbers Authority의 약자로서 인터넷 주소 할당 번호 관리기관이다.
ip주소, 포트번호ㅡ 최상위 도메인을 관리한다.
영국 잉글랜드의 한 재단에서 학교와 개도국에서 기초 컴퓨터 과학 교육을 증진시키기 위해 개발한 신용카드 크기의 싱글 보드 컴퓨터이다.
Raspberry Pi
Arduino : 이탈리아, 싱글 보드
Micro Bit : 영국 BBC
Cubie Board : 중국
Q. 다음 명령을 실행했을 때 /dev/sdb1에 생성되는 파일 시스템으로 알맞은 것은?
mke2fs -j /dev/sdb1
A. ext3
-j는 저널링 옵션이다. 자동으로 ext3형식으로 만들어진다.
Q. chgrp의 하위 디렉터리까지 소유권을 바꿔주는 옵션은 ?
A. -R 경로와 그 하위 파일들을 모두 변경해준다.
Q. chsh의 옵션은 ?
A. -l 셸 목록 보기
-s 셸 이름 지정
Q. 최근에 실행한 명령어 10개를 확인하는 명령어는 ?
A. history 10
Q. 사용 가능한 셸의 목록을 확인하는 명령은?
A. cat /etc/shells
사용할 수 있는 쉘의 종류를 보여주는 명령어이다.