linux
GUI - X Window(별도 프로그램 설치 해도 되고 안해도 됨)
gnome
KDE
Mac / Window
: runlevel 5
: graphical.target
CUI - Character
: runlevel 3
: multi-user.target
: runlevel 1
: single-user - 안전모드
init 3 - X window 안쓸거야~
명령어에 init 3를 치면 위와 같은 창으로 들어가고 init 5를 치면 그래픽이 추가된 아래 화면으로 넘어간다
임시 옵션 -> 영구 옵션
init 3
init 5
기본 명령어
디렉터리 관련
파일 관련
문서 관련 명령어
vi
cat
head / tail
more
도움말 관련 명령어
명령어 --help
man 명령어
사용자 계정 관련 파일
사용자 계정 생성하기
[root@localhost ~]# pwd
/root
[root@localhost ~]# adduser tester1
[root@localhost ~]# passwd tester1
tester1 사용자의 비밀 번호 변경 중
새 암호:
잘못된 암호: 암호는 8 개의 문자 보다 짧습니다
새 암호 재입력:
죄송합니다. 암호가 일치하지 않습니다.
새 암호:
잘못된 암호: 암호는 8 개의 문자 보다 짧습니다
새 암호 재입력:
passwd: 모든 인증 토큰이 성공적으로 업데이트 되었습니다.
비밀번호는 123456으로 만듬.
[tester1@localhost ~]$ pwd
/home/tester1
[tester1@localhost ~]$ ls -l
합계 0
drwxr-xr-x. 2 tester1 tester1 6 8월 14 10:23 공개
drwxr-xr-x. 2 tester1 tester1 6 8월 14 10:23 다운로드
drwxr-xr-x. 2 tester1 tester1 6 8월 14 10:23 문서
drwxr-xr-x. 2 tester1 tester1 6 8월 14 10:23 바탕화면
drwxr-xr-x. 2 tester1 tester1 6 8월 14 10:23 비디오
drwxr-xr-x. 2 tester1 tester1 6 8월 14 10:23 사진
drwxr-xr-x. 2 tester1 tester1 6 8월 14 10:23 서식
drwxr-xr-x. 2 tester1 tester1 6 8월 14 10:23 음악
사용자 공간도 만들어지고 그 안 공간의 기본 사항들도 추가된다.
root로 로그인 후 아래와 같이 누르면 각각 화면 전환을 쉽게 할 수 있고 이는 6개 까지 가능하다
작업공간은 맥에서 데스크탑 늘리는 거랑 같음
사용자
/home/사용자아이디
- 저장공간
/etc/passwd
- 등록
[root@localhost ~]# tail /etc/passwd
ntp:x:38:38::/etc/ntp:/sbin/nologin
sssd:x:990:984:User for sssd:/:/sbin/nologin
gdm:x:42:42::/var/lib/gdm:/sbin/nologin
gnome-initial-setup:x:989:983::/run/gnome-initial-setup/:/sbin/nologin
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
avahi:x:70:70:Avahi mDNS/DNS-SD Stack:/var/run/avahi-daemon:/sbin/nologin
postfix:x:89:89::/var/spool/postfix:/sbin/nologin
tcpdump:x:72:72::/:/sbin/nologin
master:x:1000:1000:master:/home/master:/bin/bash
tester1:x:1001:1001::/home/tester1:/bin/bash
[root@localhost ~]# adduser tester2
[root@localhost ~]# passwd tester2
tester2 사용자의 비밀 번호 변경 중
새 암호:
잘못된 암호: 암호는 8 개의 문자 보다 짧습니다
새 암호 재입력:
passwd: 모든 인증 토큰이 성공적으로 업데이트 되었습니다.
[root@localhost ~]# tail /etc/passwd
sssd:x:990:984:User for sssd:/:/sbin/nologin
gdm:x:42:42::/var/lib/gdm:/sbin/nologin
gnome-initial-setup:x:989:983::/run/gnome-initial-setup/:/sbin/nologin
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
avahi:x:70:70:Avahi mDNS/DNS-SD Stack:/var/run/avahi-daemon:/sbin/nologin
postfix:x:89:89::/var/spool/postfix:/sbin/nologin
tcpdump:x:72:72::/:/sbin/nologin
master:x:1000:1000:master:/home/master:/bin/bash
tester1:x:1001:1001::/home/tester1:/bin/bash
tester2:x:1002:1002::/home/tester2:/bin/bash
[root@localhost ~]# tail /etc/shadow
sssd:!!:17756::::::
gdm:!!:17756::::::
gnome-initial-setup:!!:17756::::::
sshd:!!:17756::::::
avahi:!!:17756::::::
postfix:!!:17756::::::
tcpdump:!!:17756::::::
master:$6$hwNdlb7hpBjDxhKT$jq9ONzQywo6GfSheqTsjOFR5KktNwqE5Ikp9E1GwF/H6YpXjHe2LVyXyMooP1UWyadpMB6ebEVlenQAGpuu5V0::0:99999:7:::
tester1:$6$NnCwZf87$8MCXKMz/z9FE7RLYVhqkZUmszSv6AbJBJxiO8raIL6G1KsEnEz1q5kpU2a.0Fd0ZuvIV6i25LMfbVEIVFgvNJ/:17757:0:99999:7:::
tester2:$6$W7w3ZI5D$JKMsnOVcB/pCPCMafecjW1tTmswQE62yEdndHptExEzDy7UJOAQVpBjt99s6n73/.ARtFi2iCCtOkmx7ffDNY1:17757:0:99999:7:::
위와 같이 tester2에서 tail /etc/passwd를 쳐 보면 사용자는 볼수 있지만 암호는 전혀 볼수가 없다.
그룹 파일
사용자
그룹 - 권한 집합
(role)
* 기본적인 그룹은 사용자 아이디와 동일
사용자 전환
su 사용자아이디
- 아이디에 권한
su - 사용자아이디
- 재로그인
root -> 사용자 : 자유
사용자 -> 다른 사용자 : 암호를 묻는다
사용자 -> root : 암호를 묻는다
[root@localhost ~]# su tester1
[tester1@localhost root]$ pwd
/root
[tester1@localhost root]$ ls
ls: cannot open directory .: 허가 거부
[tester1@localhost root]$ exit
exit
[root@localhost ~]# su - tester1
마지막 로그인: 화 8월 14 11:05:39 KST 2018 일시 pts/1
[tester1@localhost ~]$ pwd
/home/tester1
[tester1@localhost ~]$ exit
logout
마스터로 로그인하고
[master@localhost ~]$ su root
암호:
[root@localhost master]# pwd
/home/master
[root@localhost master]# exit
exit
[master@localhost ~]$ su - root
암호:
마지막 로그인: 화 8월 14 11:09:03 KST 2018 일시 pts/0
[root@localhost ~]# pwd
/root
[root@localhost ~]# exit
logout
[master@localhost ~]$ su - tester1
암호:
마지막 로그인: 화 8월 14 11:06:45 KST 2018 일시 pts/1
[tester1@localhost ~]$ su - root
암호:
마지막 로그인: 화 8월 14 11:10:24 KST 2018 일시 pts/0
[root@localhost ~]# su - tester2
위와 같이 계속 다른 계정으로 로그인이 가능한데 너무 많이 하면 복잡해지므로 최대한 자제한다
파일의 속성
[master@localhost ~]$ touch text.txt
[master@localhost ~]$ ls -l text.txt
-rw-rw-r--. 1 master master 0 8월 14 11:18 text.txt
파일의 종류
파일의 접근 권한
[master@localhost ~]$ ls -l text.txt
-rw-rw-r--. 1 master master 0 8월 14 11:18 text.txt
[master@localhost ~]$ chmod 755 text.txt
[master@localhost ~]$ ls -l text.txt
-rwxr-xr-x. 1 master master 0 8월 14 11:18 text.txt
[master@localhost ~]$ chmod 777 text.txt
[master@localhost ~]$ ls -l text.txt
-rwxrwxrwx. 1 master master 0 8월 14 11:18 text.txt
[master@localhost ~]$ chm
chmem chmod
[master@localhost ~]$ chmod 474 text.txt
[master@localhost ~]$ ls -l text.txt
-r--rwxr--. 1 master master 0 8월 14 11:18 text.txt
[master@localhost ~]$ mkdir dir1
[master@localhost ~]$ ls -l
합계 684
-rw-rw-r--. 1 master master 425 8월 13 17:20 HelloWorld.class
-rw-rw-r--. 1 master master 114 8월 13 17:19 HelloWorld.java
drwxrwxr-x. 3 master master 17 8월 13 12:59 ch2
drwxrwxr-x. 2 master master 6 8월 14 11:56 dir1
-rw-r--r--. 1 master master 158 8월 13 15:03 hosts
lrwxrwxrwx. 1 master master 5 8월 13 15:01 hosts2 -> hosts
-rw-r--r--. 1 master master 670293 8월 13 16:01 services
drwxrwxr-x. 2 master master 19 8월 13 14:44 sub1
drwxrwxr-x. 2 master master 6 8월 13 12:50 tempt
-rw-rw-r--. 1 master master 40 8월 13 15:50 test.txt
-rw-rw-r--. 1 master master 10 8월 13 16:56 test1.txt
-rw-rw-r--. 1 master master 4 8월 13 16:57 test2.txt
-rw-rw-r--. 1 master master 4 8월 13 16:57 test3.txt
-r--rwxr--. 1 master master 0 8월 14 11:18 text.txt
drwxr-xr-x. 2 master master 6 8월 13 20:18 공개
drwxr-xr-x. 2 master master 6 8월 13 20:18 다운로드
drwxr-xr-x. 2 master master 6 8월 13 20:18 문서
drwxr-xr-x. 2 master master 6 8월 13 20:18 바탕화면
drwxr-xr-x. 2 master master 6 8월 13 20:18 비디오
drwxr-xr-x. 2 master master 6 8월 13 20:18 사진
drwxr-xr-x. 2 master master 6 8월 13 20:18 서식
drwxr-xr-x. 2 master master 6 8월 13 20:18 음악
dir1 디렉터리의 권한을 664로 바꿔보기
[master@localhost ~]$ chmod 664 dir1/
[master@localhost ~]$ ls -l
합계 684
-rw-rw-r--. 1 master master 425 8월 13 17:20 HelloWorld.class
-rw-rw-r--. 1 master master 114 8월 13 17:19 HelloWorld.java
drwxrwxr-x. 3 master master 17 8월 13 12:59 ch2
drw-rw-r--. 2 master master 6 8월 14 11:56 dir1
-rw-r--r--. 1 master master 158 8월 13 15:03 hosts
lrwxrwxrwx. 1 master master 5 8월 13 15:01 hosts2 -> hosts
-rw-r--r--. 1 master master 670293 8월 13 16:01 services
drwxrwxr-x. 2 master master 19 8월 13 14:44 sub1
drwxrwxr-x. 2 master master 6 8월 13 12:50 tempt
-rw-rw-r--. 1 master master 40 8월 13 15:50 test.txt
-rw-rw-r--. 1 master master 10 8월 13 16:56 test1.txt
-rw-rw-r--. 1 master master 4 8월 13 16:57 test2.txt
-rw-rw-r--. 1 master master 4 8월 13 16:57 test3.txt
-r--rwxr--. 1 master master 0 8월 14 11:18 text.txt
drwxr-xr-x. 2 master master 6 8월 13 20:18 공개
drwxr-xr-x. 2 master master 6 8월 13 20:18 다운로드
drwxr-xr-x. 2 master master 6 8월 13 20:18 문서
drwxr-xr-x. 2 master master 6 8월 13 20:18 바탕화면
drwxr-xr-x. 2 master master 6 8월 13 20:18 비디오
drwxr-xr-x. 2 master master 6 8월 13 20:18 사진
drwxr-xr-x. 2 master master 6 8월 13 20:18 서식
drwxr-xr-x. 2 master master 6 8월 13 20:18 음악
현재 디렉터리 정보를 보고 싶을 때
[master@localhost ~]$ ls -ld ./dir1/
drw-rw-r--. 2 master master 6 8월 14 11:56 ./dir1/
기호 모드
불필요 파일 정리
[master@localhost ~]$ ls
HelloWorld.class dir1 services test.txt test3.txt 다운로드 비디오 음악
HelloWorld.java hosts sub1 test1.txt text.txt 문서 사진
ch2 hosts2 tempt test2.txt 공개 바탕화면 서식
[master@localhost ~]$ rm text*.txt
rm: remove write-protected 일반 빈 파일 `text.txt'? y
[master@localhost ~]$ rm test*.txt
[master@localhost ~]$ ls
HelloWorld.class ch2 hosts services tempt 다운로드 바탕화면 사진 음악
HelloWorld.java dir1 hosts2 sub1 공개 문서 비디오 서식
[master@localhost ~]$ rm -r dir1/ hosts2 hosts services sub1/
[master@localhost ~]$ ls
HelloWorld.class ch2 공개 문서 비디오 서식
HelloWorld.java tempt 다운로드 바탕화면 사진 음악
[master@localhost ~]$ rm -r ch2
[master@localhost ~]$ ls
HelloWorld.class tempt 다운로드 바탕화면 사진 음악
HelloWorld.java 공개 문서 비디오 서식
[master@localhost ~]$ rm -r tempt
[master@localhost ~]$ ls
HelloWorld.class 공개 문서 비디오 서식
HelloWorld.java 다운로드 바탕화면 사진 음악
주의할 사항 설명
[master@localhost ~]$ touch test.txt
[master@localhost ~]$ ls -l
합계 8
-rw-rw-r--. 1 master master 425 8월 13 17:20 HelloWorld.class
-rw-rw-r--. 1 master master 114 8월 13 17:19 HelloWorld.java
-rw-rw-r--. 1 master master 0 8월 14 12:07 test.txt
drwxr-xr-x. 2 master master 6 8월 13 20:18 공개
drwxr-xr-x. 2 master master 6 8월 13 20:18 다운로드
drwxr-xr-x. 2 master master 6 8월 13 20:18 문서
drwxr-xr-x. 2 master master 6 8월 13 20:18 바탕화면
drwxr-xr-x. 2 master master 6 8월 13 20:18 비디오
drwxr-xr-x. 2 master master 6 8월 13 20:18 사진
drwxr-xr-x. 2 master master 6 8월 13 20:18 서식
drwxr-xr-x. 2 master master 6 8월 13 20:18 음악
[master@localhost ~]$ ls -l test.txt
-rw-rw-r--. 1 master master 0 8월 14 12:07 test.txt
[master@localhost ~]$ rm test.txt
[master@localhost ~]$ touch test.txt
[master@localhost ~]$ chmod 444 test.txt
[master@localhost ~]$ ls -l
합계 8
-rw-rw-r--. 1 master master 425 8월 13 17:20 HelloWorld.class
-rw-rw-r--. 1 master master 114 8월 13 17:19 HelloWorld.java
-r--r--r--. 1 master master 0 8월 14 12:08 test.txt
drwxr-xr-x. 2 master master 6 8월 13 20:18 공개
drwxr-xr-x. 2 master master 6 8월 13 20:18 다운로드
drwxr-xr-x. 2 master master 6 8월 13 20:18 문서
drwxr-xr-x. 2 master master 6 8월 13 20:18 바탕화면
drwxr-xr-x. 2 master master 6 8월 13 20:18 비디오
drwxr-xr-x. 2 master master 6 8월 13 20:18 사진
drwxr-xr-x. 2 master master 6 8월 13 20:18 서식
drwxr-xr-x. 2 master master 6 8월 13 20:18 음악
[master@localhost ~]$ rm test.txt
rm: remove write-protected 일반 빈 파일 `test.txt'? n
[master@localhost ~]$ ls -l test.txt
-r--r--r--. 1 master master 0 8월 14 12:08 test.txt
[master@localhost ~]$ chmod 664 test.txt
[master@localhost ~]$ ls -l test.txt
-rw-rw-r--. 1 master master 0 8월 14 12:08 test.txt
[master@localhost ~]$ rm test.txt
[master@localhost ~]$ ls -l test.txt
ls: cannot access test.txt: 그런 파일이나 디렉터리가 없습니다
[master@localhost ~]$ ls -l
합계 8
-rw-rw-r--. 1 master master 425 8월 13 17:20 HelloWorld.class
-rw-rw-r--. 1 master master 114 8월 13 17:19 HelloWorld.java
drwxr-xr-x. 2 master master 6 8월 13 20:18 공개
drwxr-xr-x. 2 master master 6 8월 13 20:18 다운로드
drwxr-xr-x. 2 master master 6 8월 13 20:18 문서
drwxr-xr-x. 2 master master 6 8월 13 20:18 바탕화면
drwxr-xr-x. 2 master master 6 8월 13 20:18 비디오
drwxr-xr-x. 2 master master 6 8월 13 20:18 사진
drwxr-xr-x. 2 master master 6 8월 13 20:18 서식
drwxr-xr-x. 2 master master 6 8월 13 20:18 음악
기호를 이용한 접근 권한 변경 예
[master@localhost ~]$ touch test.txt
[master@localhost ~]$ ls -l test.txt
-rw-rw-r--. 1 master master 0 8월 14 12:11 test.txt
[master@localhost ~]$ chmod u+x test.txt
[master@localhost ~]$ ls -l
합계 8
-rw-rw-r--. 1 master master 425 8월 13 17:20 HelloWorld.class
-rw-rw-r--. 1 master master 114 8월 13 17:19 HelloWorld.java
-rwxrw-r--. 1 master master 0 8월 14 12:11 test.txt
drwxr-xr-x. 2 master master 6 8월 13 20:18 공개
drwxr-xr-x. 2 master master 6 8월 13 20:18 다운로드
drwxr-xr-x. 2 master master 6 8월 13 20:18 문서
drwxr-xr-x. 2 master master 6 8월 13 20:18 바탕화면
drwxr-xr-x. 2 master master 6 8월 13 20:18 비디오
drwxr-xr-x. 2 master master 6 8월 13 20:18 사진
drwxr-xr-x. 2 master master 6 8월 13 20:18 서식
drwxr-xr-x. 2 master master 6 8월 13 20:18 음악
u에 x권한을 주었다.
소유자가 다른 계정에게 권한 변경
소유자 변경
[master@localhost ~]$ chown tester1.tester1 test1.txt
chown: changing ownership of `test1.txt': 명령을 허용하지 않음
[master@localhost ~]$ su root
암호:
[root@localhost master]# chown tester1.tester1 test1.txt
[root@localhost master]# ls -l test1.txt
-rw-rw-r--. 1 tester1 tester1 0 8월 14 12:19 test1.txt
기본 접근 권한
일반 계정에서 생성시 기본 접근 권한은 아래와 같다
[master@localhost ~]$ touch test.txt
[master@localhost ~]$ mkdir sub1
[master@localhost ~]$ ls -l test.txt
-rwxrw-r--. 1 master master 0 8월 14 12:30 test.txt
[master@localhost ~]$ ls -ld sub1
drwxrwxr-x. 2 master master 6 8월 14 12:30 sub1
root로 생성시 기본 접근 권한은 아래와 같다
[root@localhost ~]# touch test.txt
[root@localhost ~]# mkdir sub1
[root@localhost ~]# ls -l test.txt
-rw-r--r--. 1 root root 0 8월 14 12:31 test.txt
[root@localhost ~]# ls -ld sub1
drwxr-xr-x. 2 root root 6 8월 14 12:31 sub1
umask를 확인하면 아래와 같다
빼고 주라는 의미로 해석하자
사용자 계정 관리 명령
master에서 master 비번 변경하는건 꽤나 까다롭다
[master@localhost ~]$ passwd
master 사용자의 비밀 번호 변경 중
master에 대한 암호 변경 중
(현재) UNIX 암호:
새 암호:
잘못된 암호: 암호가 이전 암호와 너무 유사합니다
새 암호:
잘못된 암호: 암호는 7 개의 문자 보다 짧습니다
새 암호:
잘못된 암호: 암호는 사전 검사에 실패했습니다 - 사전에 있는 단어를 기반으로 합니다
passwd: 서비스를 최대로 재시도함
[root@localhost ~]# useradd -D
GROUP=100
HOME=/home
INACTIVE=-1
EXPIRE=
SHELL=/bin/bash
SKEL=/etc/skel
CREATE_MAIL_SPOOL=yes
[root@localhost ~]# cat /etc/default/useradd
# useradd defaults file
GROUP=100
HOME=/home
INACTIVE=-1
EXPIRE=
SHELL=/bin/bash
SKEL=/etc/skel
CREATE_MAIL_SPOOL=yes
expire를 0으로 놔보자
[root@localhost ~]# useradd -D -e 0
[root@localhost ~]# useradd -D
GROUP=100
HOME=/home
INACTIVE=-1
EXPIRE=0
SHELL=/bin/bash
SKEL=/etc/skel
CREATE_MAIL_SPOOL=yes
skel에 파일이랑 디렉터리를 추가해보자
[root@localhost ~]# ls -a /etc/skel/
. .. .bash_logout .bash_profile .bashrc .mozilla
[root@localhost ~]# ls -la /etc/skel/
합계 24
drwxr-xr-x. 3 root root 78 4월 11 13:59 .
drwxr-xr-x. 141 root root 8192 8월 14 10:51 ..
-rw-r--r--. 1 root root 18 4월 11 09:53 .bash_logout
-rw-r--r--. 1 root root 193 4월 11 09:53 .bash_profile
-rw-r--r--. 1 root root 231 4월 11 09:53 .bashrc
drwxr-xr-x. 4 root root 39 8월 13 20:03 .mozilla
[root@localhost ~]# touch /etc/skel/test1.txt
[root@localhost ~]# mkdir /etc/skel/sub1
[root@localhost ~]# ls -la /etc/skel/
합계 24
drwxr-xr-x. 4 root root 107 8월 14 12:54 .
drwxr-xr-x. 141 root root 8192 8월 14 10:51 ..
-rw-r--r--. 1 root root 18 4월 11 09:53 .bash_logout
-rw-r--r--. 1 root root 193 4월 11 09:53 .bash_profile
-rw-r--r--. 1 root root 231 4월 11 09:53 .bashrc
drwxr-xr-x. 4 root root 39 8월 13 20:03 .mozilla
drwxr-xr-x. 2 root root 6 8월 14 12:54 sub1
-rw-r--r--. 1 root root 0 8월 14 12:54 test1.txt
[root@localhost ~]# adduser tester3
[root@localhost ~]# ls -al /home/tester3
합계 12
drwx------. 4 tester3 tester3 107 8월 14 12:55 .
drwxr-xr-x. 6 root root 65 8월 14 12:55 ..
-rw-r--r--. 1 tester3 tester3 18 4월 11 09:53 .bash_logout
-rw-r--r--. 1 tester3 tester3 193 4월 11 09:53 .bash_profile
-rw-r--r--. 1 tester3 tester3 231 4월 11 09:53 .bashrc
drwxr-xr-x. 4 tester3 tester3 39 8월 13 20:03 .mozilla
drwxr-xr-x. 2 tester3 tester3 6 8월 14 12:54 sub1
-rw-r--r--. 1 tester3 tester3 0 8월 14 12:54 test1.txt
skel파일에 등록된 파일들을 복제하여 만들어 지게 되어 위 tester3로 skel에 만들어 둔 sub1과 test1.txt가 같이 포함되어 생성됨을 볼 수 있다.
옵션을 지정하여 사용자 계정 생성하기
- 기본 로그인 셸을 본 셸로 지정하고 UID는 2000, GID는 1000, 2차 그룹은 3으로 지정
[root@localhost ~]# useradd -s /bin/sh -d /home/user3 -u 2000 -g 1000 -G 3 user3
[root@localhost ~]# grep user3 /etc/passwd
user3:x:2000:1000::/home/user3:/bin/sh
[root@localhost ~]# grep user3 /etc/group
sys:x:3:user3
사용자 계정 정보 수정하기
패스워드 에이징 관련 명령
[root@localhost ~]# tail /etc/shadow
gnome-initial-setup:!!:17756::::::
sshd:!!:17756::::::
avahi:!!:17756::::::
postfix:!!:17756::::::
tcpdump:!!:17756::::::
master:$6$hwNdlb7hpBjDxhKT$jq9ONzQywo6GfSheqTsjOFR5KktNwqE5Ikp9E1GwF/H6YpXjHe2LVyXyMooP1UWyadpMB6ebEVlenQAGpuu5V0::0:99999:7:::
tester1:$6$NnCwZf87$8MCXKMz/z9FE7RLYVhqkZUmszSv6AbJBJxiO8raIL6G1KsEnEz1q5kpU2a.0Fd0ZuvIV6i25LMfbVEIVFgvNJ/:17757:0:99999:7:::
tester2:$6$W7w3ZI5D$JKMsnOVcB/pCPCMafecjW1tTmswQE62yEdndHptExEzDy7UJOAQVpBjt99s6n73/.ARtFi2iCCtOkmx7ffDNY1:17757:0:99999:7:::
tester3:!!:17757:0:99999:7::0:
user3:!!:17757:0:99999:7::0:
tester3만 얻고 싶으면
[root@localhost ~]# grep user3 /etc/shadow
user3:!!:17757:0:99999:7::0:
-f(inactive : 계정 비활성화 날짜를 수정)와 -e(expire : 계정 만료 날짜를 수정)를 수정해보자
[root@localhost ~]# usermod -f 10 -e 2018-10-31 user3
[root@localhost ~]# grep user3 /etc/shadow
user3:!!:17757:0:99999:7:10:17835:
[root@localhost ~]# chage -l user3
마지막으로 암호를 바꾼 날 : 8월 14, 2018
암호 만료 :안함
암호가 비활성화 기간 :안함
계정 만료 :10월 31, 2018
암호를 바꿀 수 있는 최소 날 수 : 0
암호를 바꿔야 하는 최대 날 수 : 99999
암호 만료 예고를 하는 날 수 : 7
사용자 계정 삭제하기
위와 같이 디렉터리는 남아있기 때문에 다 지울려면 아래와 같이 한다
[root@localhost ~]# userdel -r user3
[root@localhost ~]# ls -l /home/
합계 8
drwx---rwx. 16 master master 4096 8월 14 12:30 master
drwx------. 15 tester1 tester1 4096 8월 14 12:31 tester1
drwx------. 5 tester2 tester2 128 8월 14 11:17 tester2
drwx------. 4 1003 1003 107 8월 14 12:55 tester3
[root@localhost ~]# tail /etc/passwd
sssd:x:990:984:User for sssd:/:/sbin/nologin
gdm:x:42:42::/var/lib/gdm:/sbin/nologin
gnome-initial-setup:x:989:983::/run/gnome-initial-setup/:/sbin/nologin
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
avahi:x:70:70:Avahi mDNS/DNS-SD Stack:/var/run/avahi-daemon:/sbin/nologin
postfix:x:89:89::/var/spool/postfix:/sbin/nologin
tcpdump:x:72:72::/:/sbin/nologin
master:x:1000:1000:master:/home/master:/bin/bash
tester1:x:1001:1001::/home/tester1:/bin/bash
tester2:x:1002:1002::/home/tester2:/bin/bash
[root@localhost ~]# find /home -user 1001
/home/master/test1.txt
/home/master/test2.txt
/home/tester1
/home/tester1/.mozilla
/home/tester1/.mozilla/extensions
/home/tester1/.mozilla/plugins
/home/tester1/.bash_logout
/home/tester1/.bash_profile
/home/tester1/.bashrc
/home/tester1/.cache
/home/tester1/.cache/gdm
/home/tester1/.cache/gdm/session.log
/home/tester1/.cache/imsettings
/home/tester1/.cache/imsettings/log
/home/tester1/.cache/libgweather
/home/tester1/.cache/evolution
/home/tester1/.cache/evolution/addressbook
/home/tester1/.cache/evolution/addressbook/trash
/home/tester1/.cache/evolution/calendar
/home/tester1/.cache/evolution/calendar/trash
/home/tester1/.cache/evolution/mail
/home/tester1/.cache/evolution/mail/trash
/home/tester1/.cache/evolution/memos
/home/tester1/.cache/evolution/memos/trash
/home/tester1/.cache/evolution/sources
/home/tester1/.cache/evolution/sources/trash
/home/tester1/.cache/evolution/tasks
/home/tester1/.cache/evolution/tasks/trash
/home/tester1/.cache/gnome-shell
/home/tester1/.cache/gnome-shell/update-check-3.25.4
/home/tester1/.cache/abrt
/home/tester1/.cache/abrt/applet_dirlist
/home/tester1/.cache/abrt/lastnotification
/home/tester1/.cache/tracker
/home/tester1/.cache/tracker/db-version.txt
/home/tester1/.cache/tracker/meta.db
/home/tester1/.cache/tracker/db-locale.txt
/home/tester1/.cache/tracker/meta.db-wal
/home/tester1/.cache/tracker/meta.db-shm
/home/tester1/.cache/tracker/ontologies.gvdb
/home/tester1/.cache/tracker/parser-sha1.txt
/home/tester1/.cache/tracker/locale-for-miner-user-guides.txt
/home/tester1/.cache/tracker/locale-for-miner-apps.txt
/home/tester1/.cache/tracker/last-crawl.txt
/home/tester1/.cache/tracker/first-index.txt
/home/tester1/.cache/event-sound-cache.tdb.875cd10838a747409d35d45025acedbb.x86_64-redhat-linux-gnu
/home/tester1/.cache/gnome-software
/home/tester1/.cache/gnome-software/3.22
/home/tester1/.cache/gnome-software/3.22/flatpak
/home/tester1/.cache/gnome-software/3.22/flatpak/installation-tmp
/home/tester1/.cache/gnome-software/3.22/flatpak/installation-tmp/repo
/home/tester1/.cache/gnome-software/3.22/flatpak/installation-tmp/repo/config
/home/tester1/.cache/gnome-software/3.22/flatpak/installation-tmp/repo/objects
/home/tester1/.cache/gnome-software/3.22/flatpak/installation-tmp/repo/tmp
/home/tester1/.cache/gnome-software/3.22/flatpak/installation-tmp/repo/tmp/cache
/home/tester1/.cache/gnome-software/3.22/flatpak/installation-tmp/repo/extensions
/home/tester1/.cache/gnome-software/3.22/flatpak/installation-tmp/repo/state
/home/tester1/.cache/gnome-software/3.22/flatpak/installation-tmp/repo/refs
/home/tester1/.cache/gnome-software/3.22/flatpak/installation-tmp/repo/refs/heads
/home/tester1/.cache/gnome-software/3.22/flatpak/installation-tmp/repo/refs/remotes
/home/tester1/.cache/gnome-software/3.22/flatpak/installation-tmp/.changed
/home/tester1/.cache/gnome-software/3.22/ratings
/home/tester1/.cache/gnome-software/3.22/ratings/odrs.json
/home/tester1/.cache/gnome-software/3.22/extensions
/home/tester1/.cache/gnome-software/3.22/extensions/gnome.json
/home/tester1/.cache/gstreamer-1.0
/home/tester1/.cache/gstreamer-1.0/registry.x86_64.bin
/home/tester1/.cache/media-art
/home/tester1/.cache/yelp
/home/tester1/.cache/yelp/WebKitCache
/home/tester1/.cache/yelp/WebKitCache/Version 11
/home/tester1/.cache/yelp/WebKitCache/Version 11/salt
/home/tester1/.cache/yelp/WebKitCache/Version 11/Blobs
/home/tester1/.dbus
/home/tester1/.dbus/session-bus
/home/tester1/.dbus/session-bus/875cd10838a747409d35d45025acedbb-0
/home/tester1/.config
/home/tester1/.config/imsettings
/home/tester1/.config/gnome-session
/home/tester1/.config/gnome-session/saved-session
/home/tester1/.config/pulse
/home/tester1/.config/pulse/875cd10838a747409d35d45025acedbb-device-volumes.tdb
/home/tester1/.config/pulse/875cd10838a747409d35d45025acedbb-stream-volumes.tdb
/home/tester1/.config/pulse/875cd10838a747409d35d45025acedbb-card-database.tdb
/home/tester1/.config/pulse/cookie
/home/tester1/.config/pulse/875cd10838a747409d35d45025acedbb-default-sink
/home/tester1/.config/pulse/875cd10838a747409d35d45025acedbb-default-source
/home/tester1/.config/i1/.local/share/app-info/xmls
/home/tester1/.local/share/app-info/xmls/extensions-web.xml
/home/tester1/.esd_auth
/home/tester1/바탕화면
/home/tester1/다운로드
/home/tester1/서식
/home/tester1/공개
/home/tester1/문서
/home/tester1/음악
/home/tester1/사진
/home/tester1/비디오
/home/tester1/.bash_history
1003을 삭제해보자
[root@localhost ~]# ls /home/
master tester1 tester2 tester3
[root@localhost ~]# ls -l /home/
합계 8
drwx---rwx. 16 master master 4096 8월 14 12:30 master
drwx------. 15 tester1 tester1 4096 8월 14 12:31 tester1
drwx------. 5 tester2 tester2 128 8월 14 11:17 tester2
drwx------. 4 1003 1003 107 8월 14 12:55 tester3
[root@localhost ~]# find /home/ -user 1003 -exec rm -r {} \;
find: ‘/home/tester3’: 그런 파일이나 디렉터리가 없습니다
[root@localhost ~]# ls
HelloWorld.class anaconda-ks.cfg sub1 공개 문서 비디오 서식
HelloWorld.java initial-setup-ks.cfg test.txt 다운로드 바탕화면 사진 음악
[root@localhost ~]# ls -l /home/
합계 8
drwx---rwx. 16 master master 4096 8월 14 12:30 master
drwx------. 15 tester1 tester1 4096 8월 14 12:31 tester1
drwx------. 5 tester2 tester2 128 8월 14 11:17 tester2
그룹 관리 명령
UID와 EUID
사용자 로그인 정보 확인하기 : who
[master@localhost ~]$ who -r
run-level 5 2018-08-14 10:09 last=3
[master@localhost ~]$ who -m
master pts/0 2018-08-14 14:54 (:0)
[master@localhost ~]$ who -H
NAME LINE TIME COMMENT
master pts/0 2018-08-14 14:54 (:0)
tester1 tty2 2018-08-14 14:55
master :0 2018-08-14 11:07 (:0)
[master@localhost ~]$ who -q
master tester1 master
# users=3
[master@localhost ~]$ who -b
system boot 2018-08-14 09:54
w 명령
[master@localhost ~]$ w
14:59:07 up 5:05, 7 users, load average: 0.04, 0.15, 0.15
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
master pts/0 :0 14:54 3.00s 0.12s 0.05s w
tester1 tty2 14:55 3:31 0.04s 0.04s -bash
master :0 :0 11:07 ?xdm? 2:52 0.24s /usr/libexec/gn
[master@localhost ~]$ w
15:00:04 up 5:06, 7 users, load average: 0.50, 0.22, 0.17
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
master pts/0 :0 14:54 4.00s 0.11s 0.03s w
tester2 tty2 14:59 12.00s 0.06s 0.02s ping localhost
master :0 :0 11:07 ?xdm? 2:54 0.25s /usr/libexec/gn
ping localhost 끄는건 ctrl + c
안드로이드는 linux 애플은 Devian
last 명령
[master@localhost ~]$ last | more
tester2 tty2 Tue Aug 14 14:59 still logged in
tester1 tty2 Tue Aug 14 14:55 - 14:59 (00:04)
master pts/0 :0 Tue Aug 14 14:54 still logged in
master pts/1 :0 Tue Aug 14 12:14 - 14:53 (02:39)
master pts/0 :0 Tue Aug 14 11:08 - 14:53 (03:44)
master :0 :0 Tue Aug 14 11:07 still logged in
root pts/1 :0 Tue Aug 14 10:47 - 11:07 (00:20)
root pts/0 :0 Tue Aug 14 10:46 - 11:07 (00:21)
tester1 tty3 Tue Aug 14 10:44 - 14:54 (04:10)
master tty2 Tue Aug 14 10:43 - 14:55 (04:11)
root :0 :0 Tue Aug 14 10:43 - 11:07 (00:24)
root :1 :1 Tue Aug 14 10:42 - 10:43 (00:00)
tester1 pts/0 :0 Tue Aug 14 10:24 - 10:43 (00:19)
tester1 :0 :0 Tue Aug 14 10:23 - 10:43 (00:20)
root pts/0 :0 Tue Aug 14 10:19 - 10:22 (00:03)
root :0 :0 Tue Aug 14 10:19 - 10:22 (00:03)
root tty1 Tue Aug 14 10:07 - 10:09 (00:02)
root tty1 Tue Aug 14 10:04 - 10:07 (00:02)
root pts/0 :0 Tue Aug 14 10:03 - 10:04 (00:00)
root :0 :0 Tue Aug 14 10:03 - 10:19 (00:15)
master pts/0 :0 Tue Aug 14 10:02 - 10:03 (00:00)
master :0 :0 Tue Aug 14 09:54 - 10:03 (00:08)
reboot system boot 3.10.0-862.9.1.e Tue Aug 14 09:54 - 15:10 (05:16)
reboot system boot 3.10.0-862.9.1.e Tue Aug 14 09:41 - 15:10 (05:29)
reboot system boot 3.10.0-862.9.1.e Mon Aug 13 17:26 - 15:10 (21:43)
master pts/0 :0 Mon Aug 13 17:14 - 17:22 (00:07)
master :0 :0 Mon Aug 13 17:14 - down (00:08)
master pts/0 :0 Mon Aug 13 17:13 - 17:14 (00:00)
master :0 :0 Mon Aug 13 17:13 - 17:14 (00:00)
root pts/0 :0 Mon Aug 13 17:11 - 17:13 (00:01)
root :0 :0 Mon Aug 13 17:11 - 17:13 (00:02)
master :0 :0 Mon Aug 13 17:09 - 17:11 (00:01)
reboot system boot 3.10.0-862.9.1.e Mon Aug 13 17:08 - 17:23 (00:14)
master pts/0 :0 Mon Aug 13 12:03 - 17:08 (05:04)
master :0 :0 Mon Aug 13 12:02 - down (05:05)
root pts/0 :0 Mon Aug 13 11:57 - 12:02 (00:04)
root :0 :0 Mon Aug 13 11:31 - 12:02 (00:31)
reboot system boot 3.10.0-862.el7.x Mon Aug 13 11:29 - 17:08 (05:38)
master :0 :0 Mon Aug 13 11:28 - down (00:01)
reboot system boot 3.10.0-862.el7.x Mon Aug 13 11:27 - 11:29 (00:01)
master pts/0 :0 Mon Aug 13 11:26 - 11:26 (00:00)
master pts/0 :0 Mon Aug 13 11:25 - 11:25 (00:00)
master pts/0 :0 Mon Aug 13 11:25 - 11:25 (00:00)
master :0 :0 Mon Aug 13 20:18 - down (-8:-50)
reboot system boot 3.10.0-862.el7.x Mon Aug 13 20:15 - 11:27 (-8:-48)
wtmp begins Mon Aug 13 20:15:53 2018
위와 같은 환경일 때 아주 유용하게 써먹을 수 있다
[master@localhost ~]$ whoami
master
[master@localhost ~]$ who am i
master pts/0 2018-08-14 14:54 (:0)
[master@localhost ~]$ id
uid=1000(master) gid=1000(master) groups=1000(master) context=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023
passwd 명령 활용하기
[master@localhost ~]$ su - root
암호:
마지막 로그인: 화 8월 14 12:31:10 KST 2018 일시 pts/1
[root@localhost ~]# whoami
root
[root@localhost ~]# passwd -l tester2
tester2 사용자의 비밀 번호 잠금
passwd: 성공
계정 블락됨
다시 계정 차단 풀어주면
[root@localhost ~]# passwd -u tester2
tester2 사용자의 비밀 번호 잠금 해제 중
passwd: 성공
[root@localhost ~]# grep tester2 /etc/shadow
tester2:$6$W7w3ZI5D$JKMsnOVcB/pCPCMafecjW1tTmswQE62yEdndHptExEzDy7UJOAQVpBjt99s6n73/.ARtFi2iCCtOkmx7ffDNY1:17757:0:99999:7:::
[root@localhost ~]# passwd -l tester2
tester2 사용자의 비밀 번호 잠금
passwd: 성공
[root@localhost ~]# grep tester2 /etc/shadow
tester2:!!$6$W7w3ZI5D$JKMsnOVcB/pCPCMafecjW1tTmswQE62yEdndHptExEzDy7UJOAQVpBjt99s6n73/.ARtFi2iCCtOkmx7ffDNY1:17757:0:99999:7:::
락을 걸면 grep으로 확인 시 암호 앞에 !!가 붙어있는 것을 확인할 수 있다.
파일 및 디렉터리의 소유자와 소유 그룹 변경하기
프로세스의 개념
[root@localhost tester2]# ps
PID TTY TIME CMD
25214 pts/0 00:00:00 su
25222 pts/0 00:00:00 bash
25844 pts/0 00:00:00 su
25885 pts/0 00:00:00 su
25891 pts/0 00:00:00 bash
26048 pts/0 00:00:00 ps
[master@localhost ~]$ ps
PID TTY TIME CMD
25161 pts/0 00:00:00 bash
26074 pts/0 00:00:00 bash
26514 pts/0 00:00:00 ps
[master@localhost ~]$ ps -f
UID PID PPID C STIME TTY TIME CMD
master 25161 25151 0 15:16 pts/0 00:00:00 bash
master 26074 26073 0 15:54 pts/0 00:00:00 -bash
master 26526 26074 0 15:55 pts/0 00:00:00 ps -f
[master@localhost ~]$ ps a
PID TTY STAT TIME COMMAND
17606 tty5 Ss+ 0:00 /sbin/agetty --noclear tty5 linux
17607 tty6 Ss+ 0:00 /sbin/agetty --noclear tty6 linux
18780 tty1 Ssl+ 0:33 /usr/bin/X :0 -background none -noreset -audit 4 -ve
24515 tty3 Ss+ 0:00 /sbin/agetty --noclear tty3 linux
25161 pts/0 Ss 0:00 bash
25214 pts/0 S 0:00 su - root
25222 pts/0 S 0:00 -bash
25320 tty2 Ss+ 0:00 -bash
26073 pts/0 S 0:00 su - master
26074 pts/0 S 0:00 -bash
26528 pts/0 R+ 0:00 ps a
[master@localhost ~]$ ps au
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 17606 0.0 0.0 110088 860 tty5 Ss+ 10:45 0:00 /sbin/agetty -
root 17607 0.0 0.0 110088 860 tty6 Ss+ 10:45 0:00 /sbin/agetty -
root 18780 0.1 2.3 328344 43564 tty1 Ssl+ 11:07 0:33 /usr/bin/X :0
root 24515 0.0 0.0 110088 860 tty3 Ss+ 14:54 0:00 /sbin/agetty -
master 25161 0.0 0.1 116612 3276 pts/0 Ss 15:16 0:00 bash
root 25214 0.0 0.2 242372 4408 pts/0 S 15:16 0:00 su - root
root 25222 0.0 0.1 116620 3444 pts/0 S 15:16 0:00 -bash
tester2 25320 0.0 0.1 116752 3488 tty2 Ss+ 15:18 0:00 -bash
root 26073 0.0 0.1 241972 3600 pts/0 S 15:54 0:00 su - master
master 26074 0.0 0.1 116624 3240 pts/0 S 15:54 0:00 -bash
master 26538 0.0 0.1 155324 1876 pts/0 R+ 15:56 0:00 ps au
ps -ef
ps aux
위 두가지를 제일 많이 쓴다
전체 검색하면서 grep을 더해 firefox만 검색
[master@localhost ~]$ ps aux | grep firefox
master 26129 10.0 11.3 2330652 212388 ? Sl 15:54 0:25 /usr/lib64/firefox/firefox
master 26352 3.6 6.1 1835160 114132 ? Sl 15:55 0:08 /usr/lib64/firefox/firefox -contentproc -childID 1 -isForBrowser -boolPrefs 300:0| -stringPrefs 286:36;dd1a8478-39fa-44bb-baa7-3f94da4795fc| -schedulerPrefs 0001,2 -greomni /usr/lib64/firefox/omni.ja -appomni /usr/lib64/firefox/browser/omni.ja -appdir /usr/lib64/firefox/browser 26129 tab
master 26456 0.2 2.3 1715132 44364 ? Sl 15:55 0:00 /usr/lib64/firefox/firefox -contentproc -childID 3 -isForBrowser -boolPrefs 300:0| -stringPrefs 286:36;dd1a8478-39fa-44bb-baa7-3f94da4795fc| -schedulerPrefs 0001,2 -greomni /usr/lib64/firefox/omni.ja -appomni /usr/lib64/firefox/browser/omni.ja -appdir /usr/lib64/firefox/browser 26129 tab
master 26569 0.0 0.0 116868 1036 pts/0 R+ 15:59 0:00 grep --color=auto firefox
[master@localhost ~]$ ps -u master
PID TTY TIME CMD
19043 ? 00:00:00 gnome-keyring-d
19047 ? 00:00:00 gnome-session-b
19056 ? 00:00:00 dbus-launch
19057 ? 00:00:00 dbus-daemon
19090 ? 00:00:00 imsettings-daem
19094 ? 00:00:00 gvfsd
19099 ? 00:00:00 gvfsd-fuse
19184 ? 00:00:00 ssh-agent
19202 ? 00:00:00 at-spi-bus-laun
19207 ? 00:00:00 dbus-daemon
19212 ? 00:00:00 at-spi2-registr
19243 ? 00:01:53 gnome-shell
19252 ? 00:00:02 pulseaudio
19288 ? 00:00:00 xdg-permission-
19289 ? 00:00:00 gnome-shell-cal
19298 ? 00:00:00 evolution-sourc
19313 ? 00:00:00 mission-control
19317 ? 00:00:00 gvfs-udisks2-vo
19323 ? 00:00:00 goa-daemon
19328 ? 00:00:00 gvfs-afc-volume
19345 ? 00:00:00 goa-identity-se
19347 ? 00:00:00 gvfs-gphoto2-vo
19360 ? 00:00:00 gvfs-mtp-volume
19370 ? 00:00:00 gvfs-goa-volume
19401 ? 00:00:00 gsd-account
19404 ? 00:00:00 gsd-mouse
19408 ? 00:00:00 gsd-power
19412 ? 00:00:00 gsd-print-notif
19414 ? 00:00:00 gsd-rfkill
19416 ? 00:00:00 gsd-screensaver
19422 ? 00:00:00 gsd-smartcard
19427 ? 00:00:00 gsd-wacom
19430 ? 00:00:00 gsd-xsettings
19432 ? 00:00:00 gsd-sound
19435 ? 00:00:00 gsd-sharing
19449 ? 00:00:00 gsd-a11y-keyboa
19451 ? 00:00:00 gsd-a11y-settin
19452 ? 00:00:00 gsd-clipboard
19455 ? 00:00:01 gsd-color
19459 ? 00:00:00 gsd-datetime
19462 ? 00:00:00 gsd-housekeepin
19465 ? 00:00:00 gsd-keyboard
19471 ? 00:00:00 gsd-media-keys
19500 ? 00:00:00 gsd-printer
19514 ? 00:00:01 nautilus-deskto
19529 ? 00:00:00 gvfsd-trash
19538 ? 00:00:00 seapplet
19545 ? 00:00:00 abrt-applet
19551 ? 00:00:00 evolution-alarm
19557 ? 00:00:00 tracker-store
19568 ? 00:00:00 evolution-calen
19571 ? 00:00:12 vmtoolsd
19584 ? 00:00:01 tracker-extract
19587 ? 00:00:00 tracker-miner-a
19591 ? 00:00:00 tracker-miner-f
19600 ? 00:00:00 tracker-miner-u
19673 ? 00:00:00 dconf-service
19695 ? 00:00:00 evolution-calen
19742 ? 00:00:00 evolution-calen
19799 ? 00:00:00 evolution-addre
19849 ? 00:00:00 evolution-addre
20046 ? 00:00:04 ibus-daemon
20051 ? 00:00:00 ibus-dconf
20053 ? 00:00:00 ibus-ui-gtk3
20057 ? 00:00:00 ibus-x11
20063 ? 00:00:00 ibus-portal
20073 ? 00:00:00 ibus-engine-sim
20078 ? 00:00:01 ibus-engine-han
20531 ? 00:00:00 gvfsd-metadata
25151 ? 00:00:02 gnome-terminal-
25159 ? 00:00:00 gnome-pty-helpe
25161 pts/0 00:00:00 bash
26074 pts/0 00:00:00 bash
26129 ? 00:00:28 firefox
26352 ? 00:00:10 Web Content
26376 ? 00:00:00 gconfd-2
26456 ? 00:00:00 Web Content
26627 pts/0 00:00:00 ps
kill 명령을 이용해 프로세스 종료하기
[master@localhost ~]$ kill -9 26129
[master@localhost ~]$ ps aux | grep firefox
master 26816 0.0 0.0 116868 1036 pts/0 R+ 16:03 0:00 grep --color=auto firefox
프로세스 관리 도구
[master@localhost ~]$ top
top - 16:04:19 up 6:10, 7 users, load average: 0.08, 0.27, 0.25
Tasks: 222 total, 1 running, 221 sleeping, 0 stopped, 0 zombie
%Cpu(s): 11.3 us, 2.1 sy, 0.0 ni, 86.6 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
KiB Mem : 1865276 total, 157412 free, 809992 used, 897872 buff/cache
KiB Swap: 2097148 total, 2086140 free, 11008 used. 805460 avail Mem
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
19243 master 20 0 3045160 222092 57844 S 9.3 11.9 1:56.61 gnome-shell
18780 root 20 0 324304 39704 13116 S 3.3 2.1 0:35.97 X
25151 master 20 0 861252 29284 18620 S 2.0 1.6 0:03.33 gnome-term+
9 root 20 0 0 0 0 S 0.3 0.0 0:02.82 rcu_sched
19514 master 20 0 1041568 30036 19408 S 0.3 1.6 0:01.93 nautilus-d+
20046 master 20 0 453296 5640 3548 S 0.3 0.3 0:04.97 ibus-daemon
26554 root 20 0 0 0 0 S 0.3 0.0 0:00.14 kworker/0:3
1 root 20 0 472424 5328 3244 S 0.0 0.3 0:07.86 systemd
2 root 20 0 0 0 0 S 0.0 0.0 0:00.02 kthreadd
3 root 20 0 0 0 0 S 0.0 0.0 0:01.47 ksoftirqd/0
5 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 kworker/0:+
7 root rt 0 0 0 0 S 0.0 0.0 0:00.00 migration/0
8 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rcu_bh
10 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 lru-add-dr+
11 root rt 0 0 0 0 S 0.0 0.0 0:00.49 watchdog/0
13 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kdevtmpfs
14 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 netns
동적으로 막 바뀜
pstree
[master@localhost ~]$ pstree
systemd─┬─ModemManager───2*[{ModemManager}]
├─NetworkManager─┬─dhclient
│ └─2*[{NetworkManager}]
├─VGAuthService
├─2*[abrt-watch-log]
├─abrtd
├─accounts-daemon───2*[{accounts-daemon}]
├─3*[agetty]
├─alsactl
├─at-spi-bus-laun─┬─dbus-daemon───{dbus-daemon}
│ └─3*[{at-spi-bus-laun}]
├─at-spi2-registr───2*[{at-spi2-registr}]
├─atd
├─auditd─┬─audispd─┬─sedispatch
│ │ └─{audispd}
│ └─{auditd}
├─avahi-daemon───avahi-daemon
├─chronyd
├─colord───2*[{colord}]
├─crond
├─cupsd
├─2*[dbus-daemon───{dbus-daemon}]
├─dbus-launch
├─dconf-service───2*[{dconf-service}]
├─dnsmasq───dnsmasq
├─evolution-addre─┬─evolution-addre───5*[{evolution-addre}]
│ └─5*[{evolution-addre}]
├─evolution-calen─┬─evolution-calen───5*[{evolution-calen}]
│ ├─evolution-calen───7*[{evolution-calen}]
│ └─5*[{evolution-calen}]
├─evolution-sourc───4*[{evolution-sourc}]
├─firewalld───{firewalld}
├─gconfd-2
├─gdm─┬─X───{X}
│ ├─gdm-session-wor─┬─gnome-session-b─┬─abrt-applet───2*[{abrt-appl+
│ │ │ ├─evolution-alarm───6*[{evolu+
│ │ │ ├─gnome-shell───9*[{gnome-she+
│ │ │ ├─gsd-a11y-keyboa───3*[{gsd-a+
│ │ │ ├─gsd-a11y-settin───3*[{gsd-a+
│ │ │ ├─gsd-account───3*[{gsd-accou+
│ │ │ ├─gsd-clipboard───2*[{gsd-cli+
│ │ │ ├─gsd-color───3*[{gsd-color}]
│ │ │ ├─gsd-datetime───3*[{gsd-date+
│ │ │ ├─gsd-housekeepin───3*[{gsd-h+
│ │ │ ├─gsd-keyboard───3*[{gsd-keyb+
│ │ │ ├─gsd-media-keys───3*[{gsd-me+
│ │ │ ├─gsd-mouse───3*[{gsd-mouse}]
│ │ │ ├─gsd-power───3*[{gsd-power}]
│ │ │ ├─gsd-print-notif───2*[{gsd-p+
│ │ │ ├─gsd-rfkill───2*[{gsd-rfkill+
│ │ │ ├─gsd-screensaver───2*[{gsd-s+
│ │ │ ├─gsd-sharing───3*[{gsd-shari+
│ │ │ ├─gsd-smartcard───4*[{gsd-sma+
│ │ │ ├─gsd-sound───3*[{gsd-sound}]
│ │ │ ├─gsd-wacom───2*[{gsd-wacom}]
│ │ │ ├─gsd-xsettings───3*[{gsd-xse+
│ │ │ ├─nautilus-deskto───3*[{nauti+
│ │ │ ├─seapplet
│ │ │ ├─ssh-agent
│ │ │ ├─tracker-extract───14*[{trac+
│ │ │ ├─tracker-miner-a───3*[{track+
│ │ │ ├─tracker-miner-f───3*[{track+
│ │ │ ├─tracker-miner-u───3*[{track+
│ │ │ └─3*[{gnome-session-b}]
│ │ └─2*[{gdm-session-wor}]
│ └─3*[{gdm}]
├─gnome-keyring-d───3*[{gnome-keyring-d}]
├─gnome-shell-cal───6*[{gnome-shell-cal}]
├─gnome-terminal-─┬─bash───su───bash───su───bash───pstree
│ ├─gnome-pty-helpe
│ └─3*[{gnome-terminal-}]
├─goa-daemon───4*[{goa-daemon}]
├─goa-identity-se───3*[{goa-identity-se}]
├─gsd-printer───2*[{gsd-printer}]
├─gssproxy───5*[{gssproxy}]
├─gvfs-afc-volume───3*[{gvfs-afc-volume}]
├─gvfs-goa-volume───2*[{gvfs-goa-volume}]
├─gvfs-gphoto2-vo───2*[{gvfs-gphoto2-vo}]
├─gvfs-mtp-volume───2*[{gvfs-mtp-volume}]
├─gvfs-udisks2-vo───2*[{gvfs-udisks2-vo}]
├─gvfsd───2*[{gvfsd}]
├─gvfsd-fuse───5*[{gvfsd-fuse}]
├─gvfsd-metadata───2*[{gvfsd-metadata}]
├─gvfsd-trash───2*[{gvfsd-trash}]
├─ibus-portal───2*[{ibus-portal}]
├─ibus-x11───2*[{ibus-x11}]
├─imsettings-daem─┬─ibus-daemon─┬─ibus-dconf───3*[{ibus-dconf}]
│ │ ├─ibus-engine-han───2*[{ibus-engine-han+
│ │ ├─ibus-engine-sim───2*[{ibus-engine-sim+
│ │ ├─ibus-ui-gtk3───3*[{ibus-ui-gtk3}]
│ │ └─2*[{ibus-daemon}]
│ └─3*[{imsettings-daem}]
├─ksmtuned───sleep
├─libvirtd───16*[{libvirtd}]
├─login───bash
├─lsmd
├─master─┬─pickup
│ └─qmgr
├─mission-control───3*[{mission-control}]
├─packagekitd───2*[{packagekitd}]
├─polkitd───5*[{polkitd}]
├─pulseaudio───2*[{pulseaudio}]
├─rngd
├─rpcbind
├─rsyslogd───2*[{rsyslogd}]
├─rtkit-daemon───2*[{rtkit-daemon}]
├─smartd
├─sshd
├─systemd-journal
├─systemd-logind
├─systemd-udevd
├─tracker-store───7*[{tracker-store}]
├─tuned───4*[{tuned}]
├─udisksd───4*[{udisksd}]
├─upowerd───2*[{upowerd}]
├─vmtoolsd───{vmtoolsd}
├─vmtoolsd
├─wpa_supplicant
└─xdg-permission-───2*[{xdg-permission-}]
시스템 정보 : GNOME
[master@localhost ~]$ gedit &
[1] 27226
[master@localhost ~]$ ls
HelloWorld.class sub1 test1.txt 공개 문서 비디오 서식
HelloWorld.java test.txt test2.txt 다운로드 바탕화면 사진 음악
[master@localhost ~]$ jobs
[1]+ Running gedit &
[master@localhost ~]$ jobs
[1]+ Done gedit
[master@localhost ~]$ gedit
^Z
[1]+ Stopped gedit
[master@localhost ~]$ bg %1
[1]+ gedit &
[master@localhost ~]$ jobs
[1]+ Running gedit &
예제 해보기
[master@localhost ~]$ jobs
[master@localhost ~]$ sleep 100
^Z
[1]+ Stopped sleep 100
[master@localhost ~]$ bg %1
[1]+ sleep 100 &
[master@localhost ~]$ jobs
[1]+ Running sleep 100 &
[master@localhost ~]$ fg
sleep 100
^C
[master@localhost ~]$ sleep 100
^C
[master@localhost ~]$ sleep 100&
[1] 27416
[master@localhost ~]$ kill %1
[1]+ 종료됨 sleep 100
'Web & Mobile > Linux' 카테고리의 다른 글
Lecture 67 - Linux(5) 네트워크, 원격관리 (0) | 2019.06.21 |
---|---|
Lecture 66 - Linux(4) RPM 패키지, YUM 패키지, 톰캣 설치법, putty 사용법, vsftp 설치법 (0) | 2019.06.20 |
Lecture 65 - Linux(3) 작업예약, at, crontab (0) | 2019.06.19 |
Lecture 63 - Linux(1) 리눅스의 기초 (0) | 2019.06.17 |
VMware을 이용한 Linux CentOS 설치 방법 (0) | 2019.06.17 |
댓글