프로세스 관리와 관련된 명령에는 현재 실행 중인 프로세스의 목록을 보는 명령, 특정 프로세스가 실행 중인지 확인하는 명령, 프로세스를 강제로 종료하는 명령이 있다. 또한 리눅스 GUI인 그놈의 '시스템 감시' 툴에서도 프로세스를 확인하고 종료할 수 있다. 각 명령의 사용법을 자세히 살펴보자. 1. 프로세스 목록 보기현재 실행 중인 프로세스의 목록을 보는 명령은 ps로, ps 명령이 출력하는 PID를 통해 프로세스의 부모-자식 관계도 확인할 수 있다. 우분투에서 ps 명령의 옵션은 다음과 같다.유닉스(SVR4) 옵션 : 묶어서 사용할 수 있고, 붙임표로 시작한다(예 : -ef)BSD 옵션 : 묶어서 사용할 수 있고, 붙임표로 시작하지 않는다(예 : aux)GNU 옵션 : 붙임표 두 개로 시작한다(예 : -..
프로세스는 현재 시스템에서 실행중인 프로그램을 뜻한다. 리눅스는 기본적으로 다중 프로세스 시스템이므로 여러 개의 프로세스가 동시에 실행된다. 리눅스의 운영에 필요한 다양한 기능을 수행하는 시스템 프로세스도 있고, 사용자가 실행한 프로그램인 사용자 프로세스도 있다. 이 절에서는 프로세스의 기본 개념을 살펴본다. 1. 프로세스의 부모-자식 관계리눅스에서 모든 프로세스는 부모 자식 관계를 가지고 있다. 필요에 따라 부모 프로세스는 자식 프로세스를 생성하고, 자식 프로세스는 또 다른 자식 프로세스를 만들 수 있다. 리눅스 시스템을 부팅할 때 스케줄러가 실행한 프로세스인 init와 kthreadd 프로세스를 제외하면 모든 프로세스는 부모 프로세스를 가지고 있다.자식 프로세스는 부모 프로세스에 의해 만들어지는 프로..
리눅스에서는 일반적인 접근 권한 외에 특별한 접근 권한을 제공한다. umask의 결과값 0022에서 맨 앞자리 숫자가 0이면 일반적인 접근 권한이지만 이 숫자가 1, 2, 4이면 특수 접근 권한이 설정된 것이다.특수 접근 권한은 다음과 같이 세 가지가 있다.SetUID : 맨 앞자리가 4SetGID : 맨 앞자리가 2스티키 비트(sticky bit) : 맨 앞자리가 1각각 어떤 특징을 가지고 있는 접근 권한인지 살펴보자. 1. SetUIDSetUID가 설정된 파일을 실행하면 해당 파일이 실행되는 동안에는 파일을 실행한 사용자의 권한이 아니라 파일 소유자의 권한으로 실행할 수 있도록 한다. SetUID가 어떻게 적용되는지 예를 통해 살펴보자. set.exe 파일을 만들고 실행 권한을 부여했다. 이제 Set..
리눅스에서는 파일이나 디렉터리를 생성할 때 기본 접근 권한이 자동적으로 설정된다. 일반 파일의 경우 소유자는 읽기와 쓰기 권한이 설정되고 그룹과 기타 사용자는 읽기 권한만 설정되며, 디렉터리의 경우 소유자는 읽기, 쓰기, 실행 권한이 설정되고 그룹과 기타 사용자는 읽기, 실행 권한만 설정된다.기본 접근 권한은 리눅스 시스템에 설정된 기본 값에 따른 것으로, 이 기본 값을 바꾸면 기본 접근 권한도 바꿀 수 있다. 1. 기본 접근 권한 확인하고 변경하기기본 접근 권한을 확인하고 설정하는 데는 umask 명령을 사용한다.umask기능 기본 접근 권한을 출력하거나 변경한다.형식 umask [옵션][마스크 값]옵션 -S : 마스크 값을 문자로 출력한다.사용 예 umask 022아무 인자 없이 umask 명령만 사..
1. 기호를 이용한 파일 접근 권한 변경기호를 이용하여 파일 접근 권한을 변경하는 기호모드는 다음과 같이 사용자 카테고리 문자, 연산자 기호, 접근권한 문자로 구성된다. chmod 사용자 카테고리 문자 연산자 기호 접근 권한 문자 파일명 기호 모드에서는 각 항목별로 사용할 수 있는 문자와 기호가 정해져 있다. 사용자 카테고리는 소유자, 그룹, 기타 사용자를 나타내는 문자로 표기되고, 연산자는 권한 부여나 제거를 나타내는 기호로 표기된다. 또한 접근 권한 기호로는 읽기, 쓰기, 실행을 타나내는 문자를 사용한다. 구분 문자/기호 의미 사용자 카테고리 문자 u 파일 소유자 g 소유자가 속한 그룹 o 기타 사용자 a 전체 사용자 연산자 기호 + 권한 부여 - 권한 제거 = 접근 권한 설정 접근 권한 문자 r 읽..
파일의 속성 중에는 접근 권한이 있다. 접근 권한은 해당 파일을 읽고 쓰고 실행할 수 있는 권한으로 사용자의 파일을 보호하는 가장 기본적인 보안 기능이라고 할 수 있다. 리눅스는 접근 권한을 부여하기 위해 사용자를 파일의 소유자, 파일이 속한 그룹, 그 외 기타 사용자의 세 카테고리로 구분하여 적용한다.사용자가 파일을 생성하면 그 파일의 소유자가 되는데, 일반적으로 사용자가 속한 기본 그룹이 파일과 관련된 그룹이 된다. 만약 상위 디렉터리에 특수한 권한이 부여되어 있으면 다른 그룹으로 지정될 수도 있다. 파일의 소속 그룹은 시스템 관리자가 명령을 이용하여 강제로 변경할 수도 있다. 그리고 소유자도 아니고 그룹에 속한 사용자도 아닌 나머지 사용자는 모두 기타 사용자가 된다.카테고리별로 접근 권한을 다르게 ..
리눅스는 기본적으로 다중 사용자 시스템이다. 따라서 여러 명의 사용자가 같은 시스템에서 작업을 하게 된다. 그렇다면 내가 만든 파일을 내가 아닌 누군가가 복사하거나 마음대로 수정하고 심지어 삭제도 할 수 있지 않을까? 물론 그럴수 있다.따라서 리눅스와 같은 다중 사용자 시스템은 이런 사태를 예방하기 위해 사용자의 파일에 마음대로 접근할 수 없도록 보안 기능을 제공한다. 리눅스도 파일에 무단으로 접근하는 것을 방지하고 보호하는 기능을 제공한다. 따라서 사용자는 자신의 파일과 디렉터리 중에서 다른 사용자가 접근해도 되는 것과 그렇지 않은 것을 구분하여 접근 권한을 제한할 수 있다.접근 권한은 파일이 가지고 있는 속성 중 하나이다. 먼저 디렉터리에 있는 파일의 목록을 보는 명령 ls의 옵션중 ls -l 명령은..
파일 복사하기파일을 복사할 때는 cp(copy) 명령을 사용한다. cp 명령으로 디렉터리도 복사할 수 있다.cp기능 파일이나 디렉터리를 복사한다.형식 cp [옵션] 파일명1/디렉터리명1 파일명2/디렉터리명2옵션 -i : 파일명 2가 존재하면 덮어쓸 것인지를 물어본다.-r : 디렉터리를 복사할 때 지정한다.사용 예 cp file1 file2 cp f1 f2 f3 dir1 cp -r dir1 dir2 두 인자가 모두 파일인 경우두 인자가 모두 파일인 경우는 파일을 다른 파일로 복사하는 것이다. 두번째 인자로 지정한 파일명이 존재하지 않는 파일인 경우에는 원본 파일을 복사하여 새로 만든다. 만약 이미 존재하는 파일이라면 원본 파일의 내용으로 덮어쓰고 원래 내용이 없어진다. 즉 , 복사 되는것이다. 두번째 인자..
파일 내용 연속 출력하기파일 내용을 출력하는 명령은 기본적인 텍스트 파일의 내용을 출력한다. 실행 파일과 같은 바이너리 파일의 경우 일반적인 명령으로 내용을 확인할 수 없다. cat 명령은 텍스트 파일의 내용을 화면에 연속으로 출력한다. cat기능 파일 내용을 출력한다.형식 cat [옵션] 파일명옵션 -n : 행번호를 붙여서 출력한다.사용 예 cat file1 cat -n file1 화면 단위로 파일 내용 출력하기cat 명령은 파일 내용을 연속적으로 출력하므로 앞의 예와 같이 간단한 내용을 확인하는 데는 무리가 없지만, 내용이 많을 경우 스크롤 되므로 내용을 확인하기가 어렵다. 이럴때는 화면 단위로 파일 내용을 출력해주는 more 명령을 사용하면 된다.more기능 파일 내용을 화면 단위로 출력한다.형식 ..
디렉터리 만들기리눅스에서는 사용자가 필요에 따라 디렉터리를 생성할 수 있다. 그렇지만 아무 곳에나 만들수 있는 것은 아니고 기본적으로 해당 계정의 홈 디렉터리에 만들 수 있다. 물론 /tmp 디렉터리와 같이 누구에게나 쓰기 권한이 있는 디렉터리에도 만들 수 있다. 만약 다른 디렉터리의 소유자가 쓰기 권한을 부여해주면 그 디렉터리에도 파일이나 디렉터리를 생성할 수 있다.mkdir (make directory)기능 디렉터리를 생성한다.형식 mkdir [옵션] 디렉터리명옵션 -p : 하위 디렉터리를 계층적으로 생성할 때 중간 단계의 디렉터리가 없으면 자동으로 중간 단계 디렉터리를 생성하면서 전체 디렉터리를 생성한다.사용 예디렉터리 한개 만들기 mkdir temp동시에 디렉터리 여러개 만들기mkdir tmp1 ..
- Total
- Today
- Yesterday
- socket
- Sort
- 티그널
- C
- 스레드
- 자료구조
- 터미널
- 소켓
- 악보
- 쓰레드
- 액터
- 프로세스
- 디렉터리
- 리눅스
- C++
- 파이썬
- MFC
- 파이썬예제
- 티라노 시그널
- 소켓 프로그래밍
- 클래스
- 안드로이드
- 정렬
- 파일
- C/C++
- 유즈케이스
- 클라이언트
- UML
- 라즈베리파이
- 데이터베이스
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |