컴퓨터 세상/LiNuX 38

파일과 디렉토리

* 리눅스에서의 파일은 일반 파일, 디렉토리, 심볼릭 링크, 장치 파일로 구분. * 일반파일 : 데이터를 저장하는 데 주로 사용. 텍스트 파일, 실행 파일, 이미지 파일 등이 일반 파일에 해당. * 디렉토리 : 디렉토리도 파일로 취급하며, 디렉토리 파일에는 해당 디렉토리에 저장된 파일이나 하위 디렉토리에 대한 정보가 저장. * 심볼릭 링크 : 원본 파일을 대신하도록 원본 파일을 다른 파일명으로 지정한 것으로 윈도의 바로가기 파일과 비슷함. * 장치 파일 : 하드 디스크나 키보드 같은 각종 장치도 파일로 취급. 장치 파일은 리눅스 시스템에 부착된 장치들을 관리하기 위한 특수 파일임. 리눅스 시스템에서는 각종 장치를 관리하기 위해 시스템 관리자는 해당 장치 파일에 접근해야 함. 대부분의 장치 파일은 /dev..

리눅스의 기초 명령어

* 리눅스의 명령어의 기본 구조 - 명령 [옵션] [인자] 옵션은 명령의 세부 기능을 선택하고, '-' 나 '--' 기호로 시작하며 영문 소문자나 대문자를 구분함 ex) ls -a 인자는 명령으로 전달되는 값이며, 주로 파일명이나 디렉토리명이 사용됨. 없을 수도 있다. ex) ls /home 옵션과 인자를 같이 사용하는 경우 ex) ls -a /home * 리눅스의 기초 명령어 - date : 기능 - 날짜와 시간을 출력 형식 - date ex) [junsu@localhost ~]$ date - clear : 기능 - 화면을 지운다 형식 - clear ex) [junsu@localhost ~]$ clear - man : 기능 - 명령 사용 방법을 화면에 출력 형식 - man 명령어 ex) [junsu@l..

리눅스의 기초

* 리눅스의 구조 : 리눅스는 커널 -> 셸 -> 응용 프로그램 으로 구성되어 있다. - 커널 : 리눅스에서 프로세스 관리, 메모리 관리, 파일 시스템 관리, 장치 관리 등 컴퓨터의 자원을 초기화하고 제어하는 기능을 수행 - 셸 : 리눅스의 사용자 인터페이스로서 사용자의 커널 사이의 중간자 역할을 담당하는 특별한 프로그램. 사용자가 입력한 명령을 해석하여 커널에 넘겨주고, 커널이 명령의 수행 결과를 돌려주고 셸은 다시 사용자가 이해할 수 있는 형태로 바꿔 출력함. 배시셸을 기본으로 사용함. - 응용 프로그램 문서 편집 도구, 개발 도구, 네트워크 관련 등 다양한 프로그램들로 구성. * 설치 - 한글 입력기 설치 [junsu@localhost ~] su - : root 계정으로 전환 (암호 입력) [jun..

작업 예약

특정한 시간에 작업을 실행할 수 있도록 예약할 수 있는 두 가지 방법을 제공. 정해진 시간에 한 번만 실행하는 것이고, 정해진 시간에 반복해서 실행하는 것. * 정해진 시간에 한 번만 실행 정해진 시간에 한 번만 명령을 실행하려면 at 명령을 실행. 1) at - 기능 : 예약한 명령을 정해진 시간에 실행. - 형식 : at [옵션] [시간] - 옵션 : -l : 현재 실행 대기 중인 명령의 전체 목록을 출력 (atq 명령과 동일) -r 작업 번호 : 현재 실행 대기 중인 명령 중 해당 작업 번호를 삭제한다. (atrm과 동일. -d 와도 동일) -m : 출력 결과가 없더라도 작업이 완료되면 사용자에게 메일로 알려준다. -f 파일 : 표준 입력 대신 실행할 명령을 파일로 지정. - ex) at -m 07..

작업 제어 (포그라운드&백그라운드)

작업 제어 도구는 한 터미널에서 동시에 여러 프로세스를 실행하고 관리하기 위한 것이다. 1) 포그라운드 작업 사용자가 입력한 명령이 실행되어 결과가 출력될 때까지 기다리는 방식으로 처리되는 프로세스를 포그라운드 프로세스라고 함. 포그라운드 작업이라 한다. 포그라운드 작업은 일반적으로 사용자가 명령을 실행하는 방식으로 프롬프트가 출력되지 않으면 명령을 입력할 수 없어 기다려야 한다. sleep 명령은 주어진 시간만큼 프로세스의 실행이 지연되는 대표적인 포그라운드 작업이다. ex) sleep 100 2) 백그라운드 작업 백그라운드 기능을 사용하게 되면 한 터미널에서 여러 개의 프로세스를 동시에 실행할 수 있다. 백그라운드 방식으로 명령을 실행하면 곧바로 프롬프트가 출력되어 다른 작업을 계속할 수 있다. 명령..

프로세스 관리 명령

# 프로세스 목록 확인 1) ps : 현재 실행중인 프로세스에 대한 정보를 출력 ps 명령이 출력하는 PID를 통해 프로세스의 부모-자식 관계도 확인할 수 있다. * 옵션 : -e : 시스템에서 실행 중인 모든 프로세스의 정보를 출력 -f : 프로세스에 대한 자세한 정보를 출력 -u uid : 특정 사용자에 대한 모든 프로세스의 정보를 출력 -p pid : pid로 지정한 특정 프로세스의 정보를 출력 a : 터미널에서 실행시킨 프로세스의 정보를 출력 u : 프로세스 소유자 이름, CPU 사용량, 메모리 사용량 등 상세 정보를 출력 x : 시스템에서 시랳ㅇ 중인 모든 프로세스의 정보를 출력 --pid PID 목록 : 목록으로 지정한 특정 PID 정보를 출력 * 사용 예 ps ps -ef ps aux ps ..

프로세스의 개념

프로세스는 현재 시스템에서 실행 중인 프로그램을 뜻함. 리눅스는 여러 개의 프로세스가 동시에 실행됨. 모든 프로세스는 부모-자식 관계를 가지고 있다. 부모 프로세스는 자식 프로세스를 생성하고, 자식 프로세스는 또 다른 자식 프로세스를 만들 수 있다. 리눅스 시스템을 부팅할 때 스케줄러가 실행한 프로세스인 systemd와 kthreadd 프로세스를 제외하면 모든 프로세스는 부모 프로세스를 가지고 있다. 예를 들어 사용자가 vi를 실행하여 셸이 vi 프로세스를 생성할 경우, 셸은 부모 프로세스가 되고, vi는 자식 프로세스가 된다. 사용자가 vi를 종료하면, 부모 프로세스인 셸로 돌아간다. * 프로세스의 번호 - 각 프로세스는 고유한 번호를 가지고 있는데, 이것을 PID(process identificati..

특수 접근 권한 설정

umask 값을 출력했을 시 777, 555 등의 세자리 숫자 외의 맨 앞자리 숫자에 특수 접근 권한 설정값이 있다. - SetUID : 맨 앞자리가 4 - SetGID : 맨 앞자리가 2 - 스티키 비트(Sticky bit) : 맨 앞자리가 1 * SetUID - SetUID가 설정된 파일을 실행하면 해당 파일이 실행되는 동안에는 파일을 실행한 사용자의 권한이 아니라 파일 소유자의 권한이 적용된다. ex) exe가 확장자인 실행파일에 아래와 같이 SetUID를 설정하면 [user1@localhost ~]$ chmod 4755 111.exe [user1@localhost ~]$ ls -l 111.exe -rwsr-xr-x. 1 user1 user1 ~~~~ 111.exe 위의 내용을 보면 SetUID가 ..

기본 접근 권한 설정

파일이나 디렉토리 생성 시 자동으로 접근 권한이 설정된다. 일반 파일의 경우 소유자와 그룹에는 읽기와 쓰기 권한이 설정되고, 기타 사용자에게는 읽기 권한만 설정된다. 디렉토리의 경우에는 소유자와 그룹에는 읽기, 쓰기, 실행 권한이 설정되고, 기타 사용자에게는 읽기, 실행 권한만 설정된다. 이렇게 시스템에 설정된 기본 접근 권한을 변경할 수 있다. * 기본 접근 권한 확인 및 변경 - 기본 접근 권한을 출력하거나 변경 - 형식 : umask [옵션] [마스크 값] - 옵션 : -S (마스크 값을 문자로 출력) - ex) umask 022 umask (아무 인자 없이 사용하면 현재 설정된 기본 마스크 값을 보여준다) 출력되어 나오는 총 세 개의 숫자 중 뒤의 세 자리가 기본 접근 권한이다. [user1@lo..

파일 접근 권한 변경

* 기호를 이용한 파일 접근 권한 변경 기호를 이용하여 파일 접근 권한을 변경하는 기호 모드는 사용자 카테고리 문자, 연산자 기호, 접근 권한 문자로 구성. - 기호 모드에서 사용하는 문자와 기호 구분 문자/기호 의미 사용자 카테고리 문자 u (uSER) 파일 소유자 g (gROUP) 파일 소유 그룹 o (oTHER) 소유자와 그룹 이외의 기타 사용자 a (aLL) 전체 사용자 연산자 기호 + 권한 부여 - 권한 제거 = 접근 권한 설정 접근 권한 문자 r 읽기 권한 w 쓰기 권한 x 실행 권한 - 기호 모드에서의 권한을 부여하거나 제거할 때 조합 방법 권한 표기 의미 u+w 소유자 (u) 에게 쓰기 (w) 권한 부여 (+) u-x 소유자 (u) 에게 실행 (x) 권한 제거 (-) g+w 그룹 (g) 에..