유저를 생성하는 명령어
useradd <계정명>
유저를 삭제하는 명령어
userdel <계정명>
userdel -r <계정명>
그룹을 생성하는 명령어
groupadd <그룹명>
그룹을 삭제하는 명렁어
groupdel <그룹명>
유저를 10개 정도 생성해보자
/etc/passwd를 보면 유저가 생성된 모습을 볼 수 있다.
/etc/group를 보면 그룹이름:비밀번호:gid:(비어있음) 비어있는 부분이 의미하는것은 그룹에 유저가 없는것이 아니라 유저이릅과 그룹이름이 같기 때문에 생략 된것이다. (유저를 생성하면 자동으로 그룹(유저이름과 같음)이 만들어진다.
보조 그룹을 추가해보자
보조 그룹을 추가할때는 직접 /etc/group를 수정해도 되지만, gpasswd 명령으로도 가능하다.
일단 그룹을 만들어준다
user01,2,3,4,5를 members 그룹에 추가 해준다.
/etc/group를 보면 추가된그룹과 그룹에 추가된 유저를 볼 수 있다.
유저를 삭제해보자
user10을 삭제했고, /etc/passwd에서 삭제된것을 볼 수 있다.
/home 디렉터리를 보게되면 user10이 남게 되는것을 볼 수 있다.
이는 userdel명령은 유저만 삭제하고 홈디렉터리는 삭제하지 않는 것을 의미한다 그럼 홈디렉터리까지 삭제해보자.
홈디렉터리까지 삭제된것을 볼 수 있다.
그룹도 없어진 것을 볼 수 있다.
Permission 허가라는 뜻을 가진다.
리눅스는 보통 서버로 쓰이는데 누구나 아무 파일이나 디렉터리를 수정하거나 삭제 생성한다면 시스템상 문제가 될 수도 있고 남는 로그도 복잡해진다. 이를 해결하기위한것이 퍼미션과 소유자의 개념이다
리눅스는 대표적으로 파일, 디렉터리별로 3가지 퍼미션을 가진다
퍼미션 | 의미 | 파일 | 디렉터리 |
r | read(읽기) | 파일 읽기 | 디렉터리 내용 볼 수 있음 |
w | write(쓰기) | 파일 저장, 삭제 | 디렉터리에 파일 저장, 디렉터리 이름 변경, 삭제 가능 |
x | excution(실행) | 파일 실행 | 디렉터리에 접근가능 |
8진수 | 표시되는 퍼미션 | 의미하는 내용 |
0 | --- | 아무런 권한이 없음 |
1 | --x | 실행권한만 있음 |
2 | -w- | 쓰기 권한만 있음 |
3 | -wx | 쓰기와 실행 권한만 있음 |
4 | r-- | 읽기 권한만 있음 |
5 | r-x | 읽기와 실행권한만 있음 |
6 | rw- | 읽기와 쓰기 권한만 있음 |
7 | rwx | 모든권한이 있음(읽기, 쓰기, 실행) |
하지만 파일속성을 보면 rwx가 3개보이는것도 있고 2개보이고 ---가 3개 있는것도 보인다.
하이픈 표시는 총 10개로 첫번째 하이픈은 파일의 종류확인(ex -이면 파일 d면 디렉터리)
2~4번째는 소유자 권한의 개녕
5~7번째는 그룹 권한의 개념
8~10번째는 나머지 사용자들의 권한의 개념이다
그렇다면 파일의 소유자와 그룹은 어떻게 알까 위의 사진을 보면 root root가 있는데 처음 root는 파일의 소유자를 의미하고 두번째 root는 그룹이름을 뜻한다.
예를들어 file1.txt는 파일의 소유자는 root 소유 그룹도 root 그리고 rwxrwxrwx 이므로 모든 사용자가 모든 권한을 가진다
file2.txt는 는 소유자는 root 소유 그룹도 root 그리고 rwxrwx--- 이므로 소유자와 소유그룹만 모든 권한을 갖는다.
그렇다면 root와 root 그룹에 있는 사용자이외에는 어떠한 권한도 가지고 있지 않다
file3.txt는 소유자는 root 소유 그룹도 root 그리고 rwx------ 이므로 소유자인 root만이 모든 권한을 가지고 있고 root그룹에 속한 유저, 그리고 나머지 유저들은 어떠한 권한도 가지고 있지 않다.
예시로 test123파일은 소유자인 user01만이 모든권한을 가진다 user02는 퍼미션이 제한된것을 볼 수 있다.
만약 퇴사자가 생겨 인수인계를 해야할때 파일과 디렉터리의 권한과 소유자를 바꿔야한다 어떻게 바꿀까 ?
chown <변경하고싶은 소유자명> <파일 또는 디렉터리>
chmod <권한> <파일 또는 디렉터리>
chgrp <변경하고싶은 그룹이름> <파일 또는 디렉터리>
file1.txt 의 소유자와 그룹을 user01로 바꿔보자
소유자와 소유 그룹이 바뀌엇다.
다음은 권한을 바꾸는 방법이다.
umask는 파일이나 디렉터리 생성시 기본 퍼미션을 지정해주는 명령어 이다.
한번 디렉터리와 파일을 만들어보자
kim이라는 디렉터리와 inhak이라는 파일을 만들었다. 기본 생성시 디렉터리인 kim의 권한은 755 파일인 inhak의 권한은 644 이다.
그럼 이런 기본 퍼미션을 지정해주는 umask 값을 알아보자
umask 값은 0022인데 어떻게 디렉터리는 755 파일은 644가 나왔을까 ?
바로 디렉터리는 777에서 022를 뺀것이고 파일은 666에서 022를 뺀값이다.
그럼 umask 값을 바꾸어보자
이렇게 간단하게 바꿀수 있지만 재부팅시 다시 022로 돌아오기때문에 영구적으로 바꾸어 줘야한다
/etc/profile파일을 열어보자
그리고
이부분을 바꾸어 주자 저장 하고 리부팅
root 계정한테 적용은 안되고 일반계정에서는 할 수 있다.
현재 resolv.conf 파일에는 dns 서버가 192.168.111.2로 지정되어있다 바꾸어보자
8.8.8.8로 조회되는 모습을 볼 수 있다.
두번째 방법은 랜카드설정을 직접 바꾸는 방법이다 ens33을 바꾸어보자
(이때 dns설정을 전으로 바꾸어보자)
dns 부분을 수정하고 조회를 하면
바뀌는 모습을 볼 수 있다.
/etc/hosts 파일은 Ip주소와 호스트네임을 매핑하는데 사용되는 파일이다.
원래는 DNS서버를 조회하고 사이트로 간다고 생각하지만 DNS를 보기전에 해당 파일을 먼저보고 찾아간다.
223.130.195.200 은 원래 naver의 ip이다 .
kim.com으로 접속하면 ip를 조회해 네이버로 접속하게 된다.
하지만 네이버도메인을 다른 ip로 지정하면은 ..
이런식으로 다른 사이트로 가게된다.
nmcli nmtui