2022 데이터 사이언스 56

16. 권한(3): 소유권과 권한 적용

허가권과 소유권이 적용되는 방식을 아는 것은 매우 중요하다. 이번에는 소유권에 대해 간단히 알아본 후, 허가권과 소유권이 적용되는 방식을 살펴볼 예정이다. 허가권과 소유권의 적용 방식은 권한 파트에서 가장 중요한 개념이다. 소유권의 의미 소유권은 파일이나 디렉토리를 어느 사용자와 그룹이 소유하고 있는지를 나타내는 권한이다. ls -l로 출력되는 정보들 중 링크 개수 뒤에 따라오는 사용자명과 그룹명이 소유권을 나타낸다. 소유권은 두 개의 영역으로 구분된다. 앞에 나오는 정보가 계정명(UID), 즉 파일이나 디렉토리를 소유하고 있는 사용자를 의미하고, 뒤에 나오는 정보는 그룹명(GID)으로, 파일이나 디렉토리를 소유하고 있는 그룹을 의미한다. 소유권 변경 chown 명령어로 소유권을 변경해줄 수 있다. ch..

15. 권한(2): 웹 서버와 http

웹 서버는 client의 요청에 web page를 제공해주는 서버이다. 웹 서버가 클라이언트의 요청에 따라 웹 페이지를 제공해주는 서버라면, http는 웹 서버와 브라우저 사이에 문서를 전송하기 위해 사용되는 통신 규약이다. 이번 포스팅에서는 FTP 파일 전송 후 Linux에서 html 파일을 브라우저에 띄우고, 파일과 디렉토리의 허가권을 변경해보며 웹 페이지의 변화를 살펴보는 실습을 한다. 웹 서버 설치 및 사용 준비 웹 서버 설치 및 방화벽 설정을 위해 아래 다섯 줄의 명령어를 차례로 입력해준다. yum -y install httpd-* : web server 설치 systemctl restart httpd : web server 실행 systemctl enable httpd : 부팅 시 web se..

14. 권한(1): 허가권

권한은 파일이나 디렉토리를 사용할 수 있는지를 정하는 개념이다. Linux에서 권한은 경로만큼이나 중요한 개념이다. 경로가 파일이나 디렉토리를 찾아가는 길이라면, 권한은 실제로 파일이나 디렉토리를 어떻게 사용할 수 있을지를 결정한다. 권한은 허가권과 소유권으로 구분된다. '허가권', '소유권', 그리고 '허가권과 소유권의 적용'의 순서로 살펴볼 예정이다. 허가권의 의미 ls -l 명령어로 파일이나 디렉토리의 허가권을 확인할 수 있다. 출력되는 내용 중 개체 형식을 나타내는 맨 첫 글자 뒤의 9개 글자가 허가권을 나타낸다. itbank의 개체 형식 디렉토리를 의미하는 d 뒤에 r, w, x, - 로 이루어진 9개 글자가 허가권이다. Linux에서는 다음의 8가지 문자로 허가권을 표현한다. r, w, x, ..

13. 사용자와 그룹(4): 그룹

그룹은 사용자 계정을 묶어서 관리하기 위해 생성하는 계정이다. 그룹을 만들어 사용자 계정을 그룹에 소속시켜 사용한다. 예를 들어 그룹에 권한을 부여하여 소속된 모든 사용자가 동일한 권한을 적용받도록 할 수 있다. 그룹 정보 사용자와 마찬가지로 그룹과 관련된 정보를 확인할 수 있는 파일이 있다. /etc/group은 그룹의 일반적인 정보가 들어있는 파일이다. 그룹 정보 각 부분의 의미는 다음과 같다. itbank (그룹 이름) : 뒤에 오는 정보가 어느 그룹의 정보인지 출력 x (암호) : 그룹에는 별도의 암호를 지정하지 않음 1000 (GID) : 해당 그룹의 고유 번호 : 그룹에 일반 소속된 사용자들의 목록 출력 * 단, 운영체제 설치 시에 생성된 그룹은 자신을 GID로 하는 사용자를 목록에 담고 있다..

12. 사용자와 그룹(3): 사용자 정보 수정 및 삭제

사용자 정보를 수정하고 사용자를 삭제하는 법에 대해 알아본다. 사용자 계정 정보 수정 사용자 정보를 수정하는 명령어 형식은 아래와 같다. usermod 옵션 값 [옵션] [값] … [옵션] [값] 사용자명 -k 옵션과 -D 옵션을 제외하면 useradd 명령어의 옵션을 대부분 사용 가능하다. 단, usermod 명령어의 -m 옵션은 make directory가 아닌 move directory의 의미를 가진다. -u : UID 지정(따로 지정하지 않으면 UID, GID의 기본값은 현재 가장 큰 숫자 +1) -g : GID 지정 -c : 별칭 지정 -s : shell 지정 -d : 홈 디렉토리 지정(경로와 이름을 절대경로로 작성) -m : move directory useradd 명령어에서 shell을 바꿀..

11. 사용자와 그룹(2): 사용자 계정 생성

사용자 생성은 사용자와 그룹 파트에서 가장 집중해야 할 부분이다. 사용자와 그룹 파트에서 가장 비중을 많이 차지하고 중요한 부분이 사용자 계정 생성이다. 사용자 계정을 생성하는 명령어는 아래와 같은 형식으로 사용한다. useradd [옵션] [값] … [옵션] [값] 사용자명 사용 가능한 옵션을 살펴보면 다음과 같다. -u : UID 지정(따로 지정하지 않으면 UID, GID의 기본값은 현재 가장 큰 숫자 +1) -g : GID 지정 -c : 별칭 지정 -s : shell 지정 -d : 홈 디렉토리 지정(경로와 이름을 절대경로로 작성) -m : make directory * -d 사용 시 /etc/login.defs의 CREATE_HOME 설정이 no이면 -m 옵션을 함께 사용해야 한다. 현재는 yes로..

10. 사용자와 그룹(1): 사용자 정보

사용자 계정이란 장치를 사용하기 위해 운영체제에서 로그인하는 계정이다. 사용자 계정은 누가 어떤 작업을 했는지 명확하게 알기 위해 개개인에게 부여되며, 해당 계정을 이용하여 파일 및 디렉토리의 권한 설정이 가능하다. 동일한 파일에 a 사용자는 접근 가능하도록, b 사용자는 접근 불가능하도록 설정할 수도 있다. 집에서 혼자 사용하는 컴퓨터는 공용 계정으로 로그인해도 무방하다. 하지만 정석적으로는 사용자마다 계정을 따로 지정해주어야 한다. 그룹이란 사용자 계정을 묶어서 관리하기 위해 사용하는 계정이다. 관리자는 그룹의 생성/수정/삭제와 그룹에 사용자 계정을 소속시키는 작업 등을 한다. 그룹에 권한을 부여하여 그룹에 소속된 사용자들이 동일한 권한을 적용받도록 하기도 한다. 그룹은 관리자가 제어하므로 일반 사용..

09. vi 에디터(2): 실행 모드

vi 에디터의 사용 환경에는 명령 모드, 입력 모드, 실행 모드가 있다. 지난 포스팅에서 vi 에디터의 명령 모드와 입력 모드에 대해 알아보았다. 이번 포스팅에서는 실행 모드에 대해 살펴보려고 한다. 실행 모드 사용 방법 실행 모드에서의 명령은 기본적으로 ' : ' 기호로 시작한다. 1. 줄 번호 출력, 숨기기 :set nu : 줄 번호 출력 :set nonu : 줄 번호 숨기기 2. 검색(찾기) 찾고자 하는 내용이 'Pattern'이라고 할 때, 아래 두 가지 방식의 검색이 가능하다. /Pattern : 위에서 아래로 Pattern 찾기 ?Pattern : 아래에서 위로 Pattern 찾기 * 동작 후 추가 입력 키 n : 검색 방향과 같은 방향으로 다음 찾기 N : 검색 방향과 반대로 다음 찾기 예를..

08. vi 에디터(1): 명령 모드, 입력 모드

vi 에디터는 그래픽 요소가 없는 CLI 환경의 문서 편집기이다. Linux 포스팅 초반, 가상 환경을 세팅하면서 gedit 명령어로 selinux 설정을 변경해준 적이 있다. (gedit /etc/selinux/config → config 문서에 접근 후 SELINUX=disabled로 직접 수정) gedit은 GUI 환경의 기본 에디터이다. GUI 환경인 가상 컴퓨터 터미널 창에서 직접 config 문서를 수정할 때는 gedit을 활용했지만, CLI 환경에서 가상 컴퓨터를 원격 조종할 때는 vi를 사용해야 한다. (vi /etc/selinux/config) vi 에디터는 70년대에 처음 만들어져 지금까지 사용되는 굉장히 오래된 문서 편집기이다. 과거 vi 편집기가 vi 호환 문서 편집기인 vim으로 ..

07. FTP 서버 구축

FTP란 파일 전송을 위한 통신 규칙 또는 약속을 말한다. FTP(File Transfer Protocol)는 서버와 클라이언트 장치 간 파일 전송을 위한 통신 규칙이다. 이번에는 FTP 설치 후 Windows에 있는 파일을 Linux로 넘겨주는 간단한 작업을 해볼 예정이다. FTP server는 FTP를 사용하여 파일 전송을 할 수 있는 서버를 말한다. 클라이언트는 서버에 접속하여 자신의 파일을 서버에 저장(업로드)하거나, 서버의 파일을 자신의 컴퓨터에 저장(다운로드)할 수 있다. FTP 설치 및 사용을 위한 작업 FTP 파일 전송을 위해, Linux(FTP server)와 Windows(FTP client)에서 할 작업이 있다. (1) Linux 먼저 Linux에서는 아래 다섯 줄의 명령어를 차례로 ..