본문으로 바로가기

리눅스 이해

category 리눅스/리눅스마스터 2016. 5. 19. 20:49

리눅스 : 유닉스에서 파생됨. (리처드 스톨만이 만듬)

Linux

 Windows

무료

유료 

자신이 직접 서비스를 챙겨야함

업데이트와 A/S를 해줌


특징

- 실시간 페이지 적재 가능, 가상메모리, SWAP

- CPU 최적화

- 뛰어난 네트워킹

- 가상 콘솔

- POSIX 호환

- 트리 형태의 계층적 구조의 파일 시스템 =(windows도 마찬가지다)

- 다중 사용자, 다중 사용자 시스템

- 다중 플랫폼(PC,Embedded System등)


장단점

- 슈퍼컴퓨터, PC, 모바일 장비 등 이식성과 확장성 용이

- 텍스트 모드 및 그래픽 모드의 다양한 관리도구 제공

- 풍부한 소프트웨어 개발환경 제공

- 다양한 네트워크 서비스 지원 : 서버, 라우터, 방화벽 구현가능

- 소스코드 공개로 인한 뛰어난 안정성 및 보안성


리눅스 배포판

- Slackware

- Debian

- Redhat (리눅스 계열 가장  큰 회사, 리눅스를 사용해서 돈을벌어쓰니 압박) (그래서 아랫것을 만듬)

- Fedora ( Redhat 베타버전 )

- CentOS ( redhat lite )


파티션( 하드디스크를 분할하는 방식 - 백업 편의성, 파티션 보호, 파일 관리 안정성제공 )

- 명령어 : fdisk

# fdisk /dev/sda : 하드디스크가 SCSI,SATA,SSD인 경우

# fdisk /dev/hda : 하드디스크가 IDE인 경우


파일시스템

- ext2,ext3,ext4, FAT,FAT32,NTFS,nfs등 다양한 파일 시스템 지원

- 리눅스 기본 파일 시스템

리눅스는 기본적으로 포맷형태는 ext4를 사용하지만, 윈도우에서 포맷하는 형식인 FAT,FAT32,NTFS,nfs을 지원한다.

GRUB(윈도우나 리눅스에서 전부사용가능)


부트로더

부팅과정 : 전원 ON -> ROM-BIOS가 하드웨어 점검 -> MBR의 부트 로더에 제어권 넘김 -> 부트로더가 운영체제 선택 및 커널 로딩 -> 운영체제에 제어권 넘김

Boot Loader

- 리눅스가 부팅되기 전 과정을 진행하는 프로그램

- 리눅스 : GRUB(Grand Unified Bootloader), LILO(Linux Loader) - <현재는 GRUB를 사용하고 LILO는 사용하지않는다. 리눅스에 버전에따라 부트로더의 버전도 달라진다.>

- 윈도우 : NTLDR(이전버전) , Bootmgr(윈도 7이후)


GRUB 명령어

# rpm -qa | grep grub

# grub -version


GRUB 설정파일

/boot/grub/grub.conf


Runlevel(실행레벨)

- 리눅스가 부팅될 때의 모드

- RUnLevel 0~6까지 존재 

- etc/inittab

내용)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
[root@fedora9 ~]# cat /etc/inittab
# inittab is only used by upstart for the default runlevel.
#
# ADDING OTHER CONFIGURATION HERE WILL HAVE NO EFFECT ON YOUR SYSTEM.
#
# System initialization is started by /etc/event.d/rcS
#
# Individual runlevels are started by /etc/event.d/rc[0-6]
#
# Ctrl-Alt-Delete is handled by /etc/event.d/control-alt-delete
#
# Terminal gettys (tty[1-6]) are handled by /etc/event.d/tty[1-6] and
# /etc/event.d/serial
#
# For information on how to write upstart event handlers, or how
# upstart works, see init(8), initctl(8), and events(5).
#
# Default runlevel. The runlevels used are:
# 0 - halt (Do NOT set initdefault to this)
# 1 - Single user mode
# 2 - Multiuser, without NFS (The same as 3, if you do not have networking)
# 3 - Full multiuser mode
# 4 - unused
# 5 - X11
# 6 - reboot (Do NOT set initdefault to this)
#
id:5:initdefault: 5번이 기본으로되어있음
cs

Runlevel 

 동작

 0

 셧다운,모든 프로세스를 종료시키고 파일시스템을 unmount한다.

 1

단일 사용자모드, 시스템에 특정 설정을 할 때 사용 

 2

 다중 사용자 모드, NFS 지원하지 않음

 3

 다중 사용자, GUI 모드

 4

 사용자 정의 레벨

 5

 다중 사용자, GUI 모드, 기본 런레벨

 6

 재실행 모드


보통은 리눅스가 부팅될때 5를 사용한다.

리눅스를 종료할떄 init 0을 쓰는 이유도 init가 런레벨을 초기화시켜주는 것이기 때문.


Q. Runlevel을 만든이유? - 실질적으로 사용하는게 0,5,6 아닌가? 근데 왜 만들어놓은건가?

A. 1번은 복구용등 여러용도로 사용한다.(Windows도 마찬가지)


리눅스 기본명령어

- /sbin, /bin (windows랑 비교해서 windows폴더) 시스템폴더 ex) init,ls,iwconfig

- usr/bin, usr/local/bin, usr/local/sbin (windows랑 비교해서 Program Files폴더) 사용자에 있는 폴더


리눅스 명령어 메뉴얼

- man ls,man su 등

- info ls


시스템 종료 및 재시작

- # shutdown -h now 혹은 # shutdown -h 10

- # shutdown -r now 혹은 # shutdown -r 10

- # shutdown -c (취소)

- # halt

- # reboot

- # init 0 또는 # init 6

만약 끈다면 리눅스는 다중 사용자모드이기떄문에 꺼지기전에 사용자들에게 말해준다.


사용자 계정 생성 및 계정 관리

사용자 계정 : 리눅스는 동시에 여러명의 사용자가 로그인하여 사용할 수 있는 다중 사용자 시스템, 일반사용자는 각자 자신의 홈디렉토리를 가짐.

useradd : 사용자생성

- useradd <username>

- useradd -u 510 - G500,501 -d /home/test -e 2016-12.31 -s /bin/sh -f 10 test (이렇게 많은 명령어를 칠 수 있음)

passwd : 패스워드 설정

- 사용자 생성 후 passwd 명령을 통해 패스워드 설정

- /etc/passwd (실제 더이상 passwd에 패스워드가 없다. 이곳에는 유저명만), /etc/shadow (이곳에 들어있다. 사용자의 패스워드가 암호화 되어서 들어감.)

> 패스워드가 같아도 암호화된내용은 다름.

- # passwd test


users : 계정 조회

# users (현재 누가되어있는지)


su : 사용자 변경

- # su -> root 계정으로 변경

- # su - test 또는 # su test -> test 계정으로 변경


usermod : 사용자 설정 변경

 옵션

기능 

옵션 

기능 

 -c

사용자에대한 설명 변경 

-G 

부속 그룹 설정 및 변경 

-d 

홈 디렉토리 변경 

-p 

패스워드 변경 

 -f

패스워드 비활성화 지정 

-s 

기본쉘 변경 

-e

패스워드 만기일 지정 

-l 

사용자명 변경 

-m 

-d에 붙여 기존 홈 데릭토리 자료 이동 

-u 

UID변경 

-g 

기본 그룹 변경 

-L, -U 

사용자 패스워드 잠금 또는 해체 


루트계정일떄는 #, root일때는 $,

과제 ) 내가직접 test계정의 그룹을 root로 봤는데 root권한이 필요한 /etc/shadow는 못보는지..


userdel : 사용자 삭제

-userdel test -> test 계정이 삭제되나 홈 디렉토리, 메일 스풀 유지

- userdel -r test -> test 계정이 삭제되나 홈 디렉토리, 메일 스풀 삭제

- userdel -f test -> test 계정이 로그인 중이라도 삭제

'리눅스 > 리눅스마스터' 카테고리의 다른 글

[리마] 1504회 2급 2차 A형 정리  (0) 2016.07.20
[리눅스] 데몬에 대해서  (0) 2016.06.21
리눅스 Vi편집기 명령어정리  (0) 2016.06.12
리눅스 디렉토리 구조 정리  (0) 2016.06.06
리눅스 이해 - 2  (2) 2016.05.24