***이전 내용 확인 ***
*사용자의 경우 uid를 보유하고 uid를 key로 활용함
root -> 0
일반 유저 -> 500번부터 부여됨
사용자를 그룹으로 묶기위해서는
>group 560(gid) 로 그룹 아이디 부여가능
*파일의 경우 inode 를 보유하고 이를 key로 활용함
***프로세스 : 동적인 상태, 프로그램이 실행되어
메모리에 적제되어 있는 상태
PID 단위로 실행된다.
PID는 커널이 자동으로 할당함
>ps -ef|grep bash (로 확인 가능)
root 1978 1972 0 11:11 tty1 00 ./.. -bash
.....
여기서 1978 , 1972가 pid 임?
pid가 2개로 보이는데
이는 프로세스 특징으로
(1) 자신을 낳은 프로세스가 있음
(2) 프로세스는 자신의 자식을 생성 할 수 있다.
(3) init 프로세스가 가장 상위 프로세스다.
(4) 자신의 부모id 즉 ppid를 알고(보유) 하고 있다.
- 앞의 번호가 부모, 뒤의 번호가 본인꺼
>ps tree (프로세스 구조 확인 가능)
init -+- anacron
.......
프로세스의 상태
(1) Ready (대기중인 프로세스들, 대기번호를 받음)
(2) Running (현재 처리중 인 프로세스 보통 1개임)
(3) Waiting (오래 걸림 + IO, 인터넷등을 의존
, 하드디스크 찾기 등)
(일부의 프로세스가 (3)항목으로 오지 않는다.)
(일부로 (3) 모드로 보낼수(백드라운드) 있다.)
2. 백그라운드, 포그라운드
*** 참고사항
>pstree -pn (프로세스 id도 포함하여 보여준다.)
뭔가 지우려고 할때 하위까지 자동으로 kill로
처리가 안되는 경우 하위 프로세스부터 정리할
필요가 있을때도 있음.
1) 유저와 인터렉티브 한 포그라운드 프로세스
종료시 일반적인 진행 방법
.....(뭔가 실행중)
crtl+c ☜
>
or ctrl + z (잠깐멈춤)
>bg(백그라운드로 보냄)
실행방법
>find / -name services (포그라운드)
2) 뒤에서 일하는 경우 백그라운드 프로세스
실행시간이 오래걸리는 경우 사용
종료시 일반적인 진행 방법
>kill pid ☜
or
>kill daemonName ☜
실행방법
>find / -name services & (백그라운드)
-- 실행이 끝나면 done 라는
메시지와 같이 화면에 보여준다.
>jobs (백그라운드 작업 내용을 보고 싶을때)
>fg 작업번호(백그라운드 작업을
포그라운드로 보내고자 할때)
3) 예제
> yes >/dev/null &
> fg
ctrl+z
>bg
kill id
> yes >/dev/null
4) 기타
>tar cf system.tar /* &
3. 프로세서 정리
>cat /etc/passwd 파일
사용자명 password uid gid 사용자정보 홈디렉토리 쉘
여기서 password는 없음 -->
>cat /etc/shadow 파일
여기에서 암호화된 상태로 password 파일을 관리함
1)사용자 추가
userad john
passwd john
1
1
2) 비밀번호 위치확인
>cat /etc/passwd|grep john
john:x:~~~~
>cat /etc/shadow|grep john
john:~~~~.
>pwunconv (password를 passwd에서 관리하도록 변경)
>cat /etc/passwd|grep john
john:~~~:
==> 여기서 passwd 파일의 권한은 root 이외에는 읽기
권한만 보유하고 있음
기본적으로
john -> login 프로세스가 john 권한을 확인
-> 쉘이 login이 보유한 사용자 권한을 확인(물려받음)
-> ls, vi 등등 명령어도 john 권한을 물려받음
passwd 도 john 권한을 봤을때
passwd 파일이 수정되지 않아야 맞음
>ls -al /usr/bin/passwd
-r-s--x--x 1 root root ~~~
s권한은 일부 명령어에 대해서 잠시 root 권한을
주는것, root 권한으로 실행뒤 다시 권한을 돌림
>pwconv
(password를 shadow서 따로 관리하도록 변경)
>cd etc/init.d
>./named start
>ps -ef|grep named
~~~
named 2651 ~~
~~
>kill -9 2651
>top (topaz 등등)
pc 리소스 많이 사용하는 순으로 갱신해서 보여줌
이때는 'q'로 빠져나갈 수 있음
4. 리눅스 시스템 초기화
리눅스 부팅순서
ROM -> MBR(부팅 메니저의 Lilo , win 의 boot.ini)
-> 부팅 선택
-> /파티션을 마운트 -> init 프로세스
-> /etc/inittab 파일을 읽어들임.
>vi /etc/inittab
inittab 에서 로그인 유형을 정 할 수 있음
0 - 바로 끄기
1 - 싱글 사용자 (암호 변경할 때 , 초기화 할때 등)
2 - 멀티 유저, 네트웍은 사용하지 않음
3 - 멀티유저, 네트웍 지원
4- 사용자 구성용 부팅
5- x11 (엑스윈도우 실행)
6- 재부팅
rc 0~6까지 중에 하나를 실행(run level 결정)
0,6으로 실행시 무한 재부팅 되거나 그냥 꺼짐
-> /etc/rd.d/rc.sysinit 읽어들임
--> inittab 에서 선택한 부팅 모드에 따라
(시스템에서 부팅시 시스템 초기화 스크립트가 있음)
>more /etc/rd.d/rc.sysinit
(쉘 스크립트로 작성되어 있음)
--> /etc/rc.d/rc3.d
꽤 많은 파일이 있는데 폴더안의 파일을
다 실행함
그리고 작성된 파일에 작성 법칙이 있는데
S60daemon
S : S는 실행하겠다. K는 실행하지 않겠다.
60 : 실행순서 숫자가 낮을 수록 빨리 실행
daemon : 프로세스명칭
--> /etc/rc.d/rc.local 파일
수동으로 시스템을 시작할때 어떤 실행파일들을
실행시킬지 명시해 주는곳.
여기에 파일을 등록시 자동 실행이 되게끔 작업 가능
--> 환경설정 파일 , 홈디렉토리 안착
*Lilo 설정하기
vi /etc/lilo.conf -> 라벨, 시간정도는 수정가능
*패스워드 분실시
boot:linux 1
댓글 없음:
댓글 쓰기