[네트워크 관리사 2급] 14-2. 리눅스(Linux) 2

리눅스 계정

useradd, adduser

useradd 98techsavvy

사용자를 생성한다.

groupadd, addgroup

그룹을 생성한다.

리눅스 권한

umask

리눅스의 권한 관리는 소유자(User), 그룹(Group), 다른 사용자(Other)로 이루어져있다. 각각 읽기(R), 쓰기(W), 실행(X) 권한을 가질 수 있으며 만약 rwx라는 권한을 가지고 있다면 읽기, 쓰기, 실행이 전부 가능하다는 것이고 rw- 라면 읽기, 쓰기만 가능하다는 것이다. 예를 들어 98tech-savvy를 ls 명령으로 조회했을 때 rw-rw-rwx 라면 소유자는 읽고 쓸 수 있고 그룹원들도 읽고 쓸 수 있으며 다른 사용자는 읽고, 쓰고, 실행이 가능하다는 것이다. 하지만 이렇게 매번 권한을 설정해주는 것이 여간 귀찮을텐데 이런 귀찮음을 위해 Default 값이 존재하고, 이 Default 값을 설정해주는 것이 umask 값이다. 세 자릿수로 이루어져있으며 첫 번째 자릿수부터 차례대로 유저, 그룹, 다른 사용자를 의미한다. 666에서 umask값을 빼주면 권한을 확인할 수 있는데, 예를 들어 umask 값이 022 라면 666-022 = 644가 되며 이 때 값은 r=4, w=2, x=0 으로 4+2+0 = 6 이므로 소유자는 읽기 쓰기 실행이 가능하고 그룹원과 다른 사용자는 읽기만 가능하다는 뜻이 된다(단, 디렉터리의 경우 7에서 빼야한다).

chmod

사용자에게 권한을 부여하는 명령어로 -u(user), -g(group), -o(other) 명령어로 rwx 권한을 부여할 수 있다. 파일명 최고 권한은 777이다. (디렉터리에서 실행이 1로 4+2+1 = 7) +는 추가, -는 삭제이다.

chown

파일에 대한 사용자와 그룹을 변경할 수 있는 명령어이다. -R은 하위 디렉터리, 파일 전부를 의미한다. -a는 모든 사용자를 의미한다.

chgrp

파일이나 디렉터리의 소유 그룹을 변경할 수 있는 명령어다.

특수 권한

setuid

setuid 권한이 설정된 파일은 다른 사용자가 실행할 때 그 파일의 소유자의 권한으로 대신 실행되는 파일이다. 예를 들어 /etc/passwd는 root가 소유자이므로 일반 사용자가 로그인을 수행할 때 root의 권한을 빌려 대신 실행된다. /etc/passwd 파일은 권한이 -rwsr-xr-x로 설정되어 있고 이 때 소유자의 s가 setuid가 설정되어 있음을 의미한다. s라면 권한이 있는 것이고 S라면 권한이 없는 것이다.

setgid

setgid는 파일 생성자의 그룹 소유권을 얻는 것을 말한다. 예를 들어 메일박스(MBox)에서 /var/mail 디렉터리는 소유자가 루트인데 setgid가 설정되어 있어 일반 사용자가 메일 계정을 생성할 때 mail 디렉터리에 자신의 디렉터리를 생성하고 메일을 보관할 수 있게 한다.

sticky bit

sticky bit는 공용 디렉터리를 만들어서 자유롭게 사용할 수 있게 만든 것이다. 권한 부여는 1000으로 해당 디렉터리의 사용은 누구나 가능하지만 삭제는 소유자만 가능하다. /tmp 디렉터리에서 권한은 drwxrwxrwt이며, t가 sticky bit가 설정되어 있음을 의미한다.

리눅스 명령어

디렉터리 명령어

mkdir

make directory

디렉터리를 생성하는 명령어이다. -m 으로 권한을 설정할 수 있다(기본 값 755, rwxr-xr-x).

rmdir

remove directory

디렉터리를 제거하는 명령어이다.

파일 명령어

cp(copy)

cp 명령어는 파일, 디렉터리를 복사하는 명령어이다. 만약 같은 이름으로 파일을 복사하면 덮어씌울 것인지 물어본다. -f로 덮어쓰기를 해서 복사, -r로 하위 디렉터리를 전부 복사할 수 있다.

rm(remove)

파일을 삭제할 때는 rm 명령어를 사용한다. -f로 강제 삭제, -r로 하위 디렉터리, 파일 전부 삭제를 수행할 수 있다.

mv(move)

mv 명령어로 파일 및 디렉터리를 이동시킬 수 있다. 원본 파일과 대상의 이름이 다르면 변경하고, 이동할 파일이 여러개면 이동 모드로만 동작한다.

mv [옵션] 원본파일 대상

텍스트 명령어

cat

cat 명령어로 파일의 내용을 확인할 수 있다. 리다이렉트를 사용하면 파일을 복사할 수도 있다(cat /etc/passwd > test, cat의 결과를 test라는 파일에 저장함)

grep

grep 명령어로 특정 파일 내에 문자열을 검색할 수 있다. -i로 대소문자 구분 안함, grep 에서는 정규 표현식 또한 사용할 수 있다.

네트워크 명령어

netstat

시스템과 연결 된 모든 네트워크 연결을 확인할 수 있다. -a로 모든 소켓 정보

arp

IP주소를 MAC주소로 변환할 수 있다.

traceroute

traceroute 명려어는 구간 별 게이트웨이, IP 주소, 시간 등의 정보를 표시할 수 있다.

ping

ping 명령어로 네트워크 상태를 점검할 수 있다. ICMP 프로토콜을 사용한다.

nslookup

네트워크를 관리할 수 있는 도구로 DNS에게 Query를 실행한다. nslookup 명령어로 도메인의 IP 주소를 확인할 수 있다.

리눅스 종료

shutdown

리눅스를 정지한다. -r 재부팅, -h shutdown 완료 후 시스템 종료, -c 진행 중 shutdown 취소 만약 시간을 걸고 정지시키고싶다면 shutdown -h 5(5분후 시스템 종료) 식으로 입력하면 된다.

reboot

리눅스를 재시작하는 명령어이다. -f 로 강제 재시작

halt

리눅스를 종료한다.

프로세스

데몬(Daemon) 프로세스

프로세스라는 프로그램이 실행되어 프로그램이 메모리에 올라가는 것을 말한다. standalone 방식과 inetd 방식이 있다.

방식 설명
standalone 백그라운드에서 항상 실행, 클라이언트에게 서비스 요청 시 즉시 처리
inetd sleep 상태로 있다 요청을 받으면 Wake up 되며 서비스 수행

ps

프로세스 상태 정보를 확인하는 명령어이다.

pstree

프로세스의 상태를 트리 형태로 출력한다. -n(PID 순서), -p(프로세스 명과 함께 출력)

top

시스템 자원을 모니터링 할 수 있는 소프트웨어이다.

vi 편집기

vi는 문서를 편집할 수 있는 에디터이다. 명령 실행 모드, 입력 모드로 나누어지고 입력 모드는 문서를 입력할 때 사용하고 명령 실행 모드는 편집된 문서를 저장하거나 취소할 때 사용된다. 입력 모드가 되려면 a, i, o 를 입력하고 명령 실행 모드로 전환하려면 ESC키를 누르면 된다. 명령 실행 모드에서는 :, /, ?로 명령어를 입력하고 실행할 수 있다.

명령어 설명
:w 파일 저장
:w! 무조건 파일 저장
:wq! 무조건 파일 저장하고 닫기
/word/, ?word? 문자열 검색 // 아래, ?? 위
n 찾은 문자열 다음으로 계속 검색, 이전은 N

RPM 패키지

RPM은 프로그램을 설치하기 위해서 사용되는 명령어이다. 단 파일이 rpm이어야 하며 리눅스의 종류별로 관리 프로그램이 다르다. rpm -V 로 패키지를 검사할 수 있다.

SAMBA

SAMBA는 Microsoft 사의 NETBIOS 프로토콜을 사용해 윈도우 OS와 자원 및 프린터를 공유하는 프로그램이다.

SAMBA 특징

  1. 프리웨어
  2. CIFS(공통 인터넷 파일 시스템, Common Internet File System) 클라이언트, 서버 프로토콜
  3. TCP/UDP 137, 139 포트 사용
  4. RPM 설치 패키지로 설치
  5. /etc/samba/smb.conf or /etc/smb.conf 가 설정파일임

nmbd : 프로토콜 이름 관리 smbd : 프로토콜 자료 전송

댓글남기기