분류 전체보기 696

01_02_06_텍스트 관련 명령어

텍스트 관련 명령어 텍스트 관련 명령어에는 cat, head, tail, more, less, grep, wc, sort, cut, split 등이 있다. cat 텍스트 파일의 내용을 보거나 텍스트 파일을 다른 새로운 파일로 복사하거나 또는 기존의 텍스트 파일과 합치는 기능을 수행한다. 형식: cat [option] file 옵션 -b, --number-nonblank: 빈 줄을 제외하고 행 번호를 붙여준다. -n, --number: 모든 줄에 행 번호를 붙인다. -E, --show-ends: 각 줄의 끝에 '$'를 표시한다. -T, --show-tabs: 탭 문자로 '^'로 표시한다. -v --show-nonprinting: 인쇄 불가한 문자도 표시한다. -A, --show-all: -vET 명령어와 ..

01_02_05_파일 시스템 관리_파일 관리

파일 관리 ls 지정한 경로에 존재하는 파일과 디렉터리의 리스트를 출력한다. 파일의 크기, 소유자, 수정한 시간 등 다양한 정보도 함께 보여준다. 옵션 지정이 없으면 현재 디렉터리의 파일 및 디렉터리를 알파벳 순서로 보여준다. 형식: # ls [optison] file ... 옵션 -a, --all -d, --directory: 디렉터리 자체에 대한 정보를 출력한다. -F, --classify: 각 파일명마다 파일의 유형을 뜻하는 문자를 붙여 준다. @: 심볼릭 링크 *: 실행 파일 =: 소켓 |: 파이프 /: 디렉터리 -t: 마지막 수정 시간을 최신 기준으로 정렬하여 출력한다. -u: -lt 옵션과 함께 마지막 수정 시간 대신 접근 시간을 출력한다. -i, --inode: 각 파일의 아이노드 번호를 출..

01_02_04_파일시스템 관리_디렉터리 관리

디렉터리 관리 pwd 현재 파일 시스템상 어떤 디렉터리에 있는지 출력한다. 이 디렉터리를 보통 작업 디렉터리(working directory)라고 부른다. 현재 작업 디렉터리를 확인하기 위해서는 옵션 없이 명령어 'pwd'를 입력한다. pwd는 셸에 내장된 명령어와 bin 디렉터리에 위치한 외부 명령어의 2가지가 있다. 현재 사용하는 pwd가 무엇인지 알고자 할 때는 'type' 명령어를 사용한다. cd 작업 디렉터리를 변경하기 위해 사용한다. 디렉터리 변경 시 상대 경로, 절대 경로, 현재 경로, 부모 경로, 홈 디렉터리, 이전 디렉터리 등으로 이동이 가능하다. '/'는 루트 디렉터리다. 디렉터리가 '/'로 시작하면 루트 디렉터리를 기점으로 생성된 경로를 의미한다. 이를 '절대 경로'라 부른다. '/'..

01_02_03_리눅스 파일 시스템 관리_파일 링크

파일 링크(File link) 파일 링크 개요 리눅스에는 윈도의 바로가기 기능과 같이 시스템에 이미 존재하는 파일에 대한 포인터를 갖는 파일 링크 기능을 제공한다. 리눅스의 파일 링크는 크게 하드 링크(Hard link)와 심볼릭 링크(Symbolic link)가 있다. 하드 링크는 해당 파일의 아이노드를 가리키고 심볼릭 링크는 해당 파일의 경로를 가리킨다. 하드 링크의 경우 대상 파일이 사라지더라도 해당 파일에 대한 참조가 0이 아니기 때문에 삭제되지 않으므로 링크를 통해 실제 파일에 접근이 가능하다. 심볼릭 링크는 소프트 링크(Soft link)라고도 한다. 심볼릭 링크의 경우 단순히 경로만을 참조하므로 대상 파일이 삭제되면 심볼릭 링크는 존재하지 않는 파일을 가리키게 된다. 스티키 비트를 설정하지 ..

01-02-02 파일 시스템 관리_특수 권한

특수 권한 특수 권한의 개요 파일의 소유자 허가권, 그룹 허가권, 다른 사용자 허가권, 사용자 소유권, 그룹 소유권 그리고 읽기, 쓰기, 실행 권한만으로는 시스템을 운영할 때 한계가 있다. 이를 위해 Set-UID 권한 비트, Set-GID 권한 비트, 스티키 비트라는 특수 권한이 존재한다. Set-UID 권한 비트(Set User ID bit) 파일에 Set-UID 비트가 설정되면 사용자가 파일을 실행했을 때 해당 사용자의 권한이 아닌 파일의 소유자 권한으로 실행된다. 대표적인 예로 /usr/bin/passwd 프로그램 파일은 root만이 읽기 가능한 /etc/shadow 파일에 접근할 수 있도록 설정되어 있다. 이 설정대로라면 일반 사용자는 passwd 프로그램을 사용하지 못한다. 그러나 passwd..

01-02-01 파일 및 디렉터리 관리

파일 및 디렉터리 관리 소유권과 허가권 소유권과 허가권 확인하기 파일이나 디렉터리의 소유권과 허가권을 확인하기 위해서는 'ls -l' 명령어나 'ls -n' 명령어를 사용한다. # ls -l [file] -rw-r--r-- 1 apple apple 60 Jan 31 20.21 [file] 파일 유형 -: 일반 파일 d: 디렉터리 l: 심볼릭 링크 b: 블록 디바이스 c: 캐릭터 디바이스 p: FIFO s: 소켓 허가권(permission) 허가권은 소유자 허가권, 그룹 허가권, 다른 사용자 허가권으로 구분된다. 소유자 허가권: 파일이나 디렉터리를 소유한 사용자의 허가권을 의미한다. 그룹 허가권: 파일이나 디렉터리를 소유한 그룹의 허가권을 의미한다. 즉 그룹에 속한 사용자에 대한 허가권이다. 다른 사용자 ..

01-01-07 사용자 및 그룹 정보 관련 명령어

사용자 및 그룹 정보 관련 명령어 users 설명 현재 호스트에 로그인되어 있는 모든 사용자를 출력한다. 형식 users 주요 예제 users who 설명 현재 호스트에 로그인되어 있는 모든 사용자의 정보를 출력한다. 터미널 종류, 로그인 시각 등이 기본적으로 출력된다. 형식 who [options] 옵션 -a, --all: 모든 옵션을 준 것과 같음 -b, --boot: 마지막 부팅 시간을 출력 -d, --dead: 좀비 프로세스를 출력 -H, --heading: 출력하는 각 컬럼의 헤더를 출력 -l, --login: 시스템 로그인 프로세스를 출력 -m: 표준 입력과 관련된 사용자만 출력 -p, --process: init 프로세스가 생성한 프로세스를 출력 -q, --count: 로그인한 모든 사용자의..

01-01-06 사용자 환경설정 파일

사용자 환경설정 파일 사용자 계정과 그룹 정보는 /etc 디렉터리 이하에 존재한다. 또한 useradd를 통해 사용자 추가 시 기본 설정이나 홈 디렉터리 구성이 필요한 정보를 담고 있는 설정 파일도 존재한다. 구분 파일명 설명 계정 및 그룹 설정 파일 /etc/passwd 사용자 계정의 아이디, 그룹 정보 등 계정 정보 /etc/shadow 암호화된 패스워드 및 정책 설정 정보 /etc/group 사용자 그룹의 기본 정보 /etc/gshadow 사용자 그룹의 암호화된 패스워드 정보 계정 환경 설정 파일 /etc/default/useradd useradd 명령을 사용할 때 기본 설정 /etc/login.defs 로그인 수행 시 기본 설정 /etc/skel 홈 디렉터리 생성 시 기본으로 제공할 파일 /etc..

01-01-05 그룹 계정 관리

01-01-05 그룹 계정 관리 그룹의 개요 그룹이란 사용자를 하나로 묶어 관리 가능하게 하는 메커니즘. 사용자를 그룹을 통해 관리하면 각 그룹에게 보안 설정, 접근 설정, 권한 등을 주고 일괄적으로 그룹에 속한 사용자에게 적용할 수 있어 편리하다. 또한 파일, 디렉터리, 장치에 대한 접근도 그룹 단위로 설정할 수 있다. 레드햇 계열은 사용자를 생성할 때 사용자 이름과 동일한 그룹을 생성하여 포함시키는데, 이는 시스템 관리자가 의도하지 않게 사용자를 기본 그룹에 추가하여 기본 권한을 갖는 것을 방지하기 위함이다. groupadd를 통한 그룹 생성 설명 groupadd는 새 그룹을 생성하기 위한 명령어이다. GID 값을 지정하여 특정 값으로 설정할 수도 있다. 그렇지 않으면 기본값으로 설정된다. 형식 gr..

01-01-04 사용자 계정 관리

01-01-04 사용자 계정 관리 사용자 계정 설명 설명 일반적인 사용자들은 일반 사용자 계정으로 생성된다. 시스템 파일과 디렉터리에 제한적으로 접근하도록 설정하여 시스템을 보호한다. 일반 사용자 계정은 그룹에 속할 수 있고, 리눅스는 그룹 단위로 파일 접근 권한 설정과 프로세스 관리를 수행할 수 있다. UID 레드햇 또는 CentOS 6 버전 계열의 UID는 500 이상의 값을 갖는다. 그러나 레드햇 또는 CentOS 7 버전과 오픈수세, 데비안의 UID는 1000 이상의 값을 갖는다. 일반 사용자 계정의 UID 범위는 /etc/login.defs에 정의되어 있다. 사용자 생성하기 useradd를 통한 사용자 계정 생성 사용자를 생성하기 위해서는 useradd 명령어나 adduser 명령어를 사용한다...