운영체제가 하는 일은 ?
H/W, S/W, 시스템 자원관리
용도에 따라 나눌때 리눅스의 위치는?
클라이언트 OS (win 98, Me, XP, 7,8)
멀티태스킹 OS (win계열, Linux) + 싱글 유저
멀티태스킹 OS (유닉스(Linux), win 2000/2003,)
+멀티유저 : 여러 사용자가 사용
리눅스가 클라이언트 시장에 접근제한이유
win 진영의 office(특히 excel)
win 진영의 explorer
ps. but backOffice(Mysql, ) 에 강점을 보인다.
리눅스 특징은 오픈소스 -> 유닉스 일종
-> 윈도우진영에서 라이벌로 의식하고 있음 (음)
리눅스 장점
강력한 서버기능
DNS
Web,FTP, Mail, File, .... Server (Apache)
시스템 사항을 적게 요구함
(pentium3 급 으로 domain 200 가능)
-> 돈이 많이 안들어요 (한국 스탈인데)
-> H/W 업체에서 제품을 많이 출시한다.
-> Linux Free (소스 수정, 삭제, 배포 자유)
리눅스의 의미
좁은의미 (핵심커널)
넓은 의미(핵심커널+S/W패키지, 유틸) = 배포판
리눅스는 구성되는 프로그램, OS 버전에 따라
여러 버전이 존재한다.
영어권에서 많이 쓰는 버전 : 레드헷, 수세, 데비안
한국은 : 알짜, 파워, 한컴, 미지
역사(간단하게)
1991 리눅스 토발즈, minix (Linux) 0.1v
1994 1.0v
1995 1.2v
1999 2.2v
ps 버전 정보 확인하는 방법
x.x2.x3 (2.4.18)
x: 메이저버전
x2 : 마이너버전(홀수 : 개발버전, 짝수 : 안정버전)
x3 : 수시 진행
설치 준비, 유의사항
리눅스 box 구축
호스팅 서버 운영
모든 작업은 명령어로 진행
스크립트 만들어서 실행하도록 구성
실행이 정상적으로 되면 반응이 없다
리눅스 = 유닉스
파티션을 여러개 설정 가능(용량도 지정)
(폴더별 지정 해야함)
폴더별 설정을 안한 경우 상위 폴더 용량에 포함됨
디스크를 추가하면 루트 밑에 폴더 하나에
포함되어 사용함(마운트 라고 함)
공간설정
루트에 3G
가상메모리공간(실제메모리2배)
/boot 부팅관련파일 존재(100m)
/apm mysql, php, apache 설치공간 ( 300m)
/home 사용자 이용공간(500m)
리눅스 IOS 구하기 (여기 링크는 Redhot 다운가능장소)
ftp://archive.download.redhat.com
리눅스 설치 순서
1) VmWare (상용 소프트웨어) 설치
http://www.vmware.com/kr
2) VmWare 에서 file - new VitualMachane
- Linux(Red hot Linux)
- folder선택- 파티션 공간 할당(4~5G)
3) VmWare 에서 생성된 내용 확인 및 Cd=rom
설정 확인 (Linux 첫번째 iso 파일 선택)
4) 실행 boot/ (아나콘다 설치 매니저 화면)
boot
linux or 엔터 (비주얼한 방식 설치)
linux text (Text 기반 설치)
-> cd found 작업 진행할지 물어보는데 skip 한다.
(시간이 과도하게 걸린다.)
-> 이후 설치화면이 뜸 next, 언어는
한글, 키보드는 영국꺼, 설치유형은 사용자설치,
파티션 최소 /, /root, /swap,
3개는 반드시 따로 줘야함.
ps. 하드디스크 구분시
윈도우 진영
primary master
privary second
slave master
slave second
linux 에서의 하드디스크 인식
hda = sda(물리적인 영역)
hda1(파티션)
hda2
...
형태로 잡힌다.
그리고 하드디스크를 추가하면 아래와같이 보이고
hdb
hdc
hdd
최고 상위 폴더 / 밑에 해당 폴더를 잡아서 보여준다.(할당전)
5) 파티션 할당하기
-> 파티션 마운트지점 : /
파일시스템 유형: ext3
할당 가능한 드라이브 (리스트에서 선택)
용량 : 2500
추가용량 옵션 : 고정용량
-> 마운트지점 : /root
파일시스템 유형: ext3
할당 가능한 드라이브 (리스트에서 선택)
용량 : 100
추가용량 옵션 : 고정용량
-> 마운트지점 : 미선택
파일시스템 유형: swap
할당 가능한 드라이브 (리스트에서 선택)
용량 : 512
추가용량 옵션 : 고정용량
마운트지점 : /home
파일시스템 유형: ext3
할당 가능한 드라이브 (리스트에서 선택)
용량 : 500
추가용량 옵션 : 고정용량
마운트지점 : /apm
파일시스템 유형: ext3
할당 가능한 드라이브 (리스트에서 선택)
용량 : 100
추가용량 옵션 : 고정용량
마운트지점 : /data
파일시스템 유형: ext3
할당 가능한 드라이브 (리스트에서 선택)
용량 :
추가용량 옵션 : 최대 가능 용량으로 채움 옴션 체크
----------------------------------------------
-> 부트로더GRUB 설정 : 윈도 선택 프로그램 하지만 윈도우것이 더 좋다
그외에 LILO라는 보편화된 프로그램도 있음
리눅스는 이걸 변경도 가능함.
LILO 선택 다음
-> eth0 DHCP사용 환경으로 설정 체크(이후에 수동으로 설정하겠다는 뜻임)
-> 보안수준은 방화벽 사용하지 않음
-> 추가될 언어 -> 시간설정 -> Root암호설정 -> 섀도우암호(패스) -> 설피 채키지 리스트 셋팅
x윈도우 시스템 ,GNOME 데스크탑 환경, KDE(윈도우 환경), 그래픽 인터넷, 서버설정도구, 웹서버, 메일서버, windows파일서버, dns, ftp, sql서버, 네트워크 서버, 개발용 도구, 거널개발, 관리도구, 시스템도구
-> 설치중 cd 넣어달라고 하면 VM-Setting-CD-ROM 에서 이미지 선택
-> 부팅디스크 (x) 가상머신이니깐
-> 그래픽 인터페이스 설정 : VESA driver(generic) 가상에서는 이걸로 가면 됨, -> 모니터도 기본 -> 모니터 설정 화면 : 텍스트 환경-> 종료(설치끝)
재부팅 진행됨 -> login : root(윈도우의 administrator) -> ls (=dir)
-> halt (종료 )
---------------------------------------------
관리자 계정-> 시스템의 모든 권한을 보유한 계정, 리눅스 설치시 생성됨
([...]#) <-- #이 붙으면 관리자!!!
일반계정 -> 시스템의 제한된 권한을 갖는 계정, root 계정으로 생성가능
([..]$)
일반->관리자 (su 명령어를 통해 관리자 권한을 부여가능) (superuser의 약자)
로그아웃 : 사용자를 빠져나가는것
사용자가 로그아웃을 하더라도 백그라운드 데몬(web,FTP,DNS등등)(윈도우의 서비스)은 계속 서비스 된다.
logout
ctrl+D
exit
셋중 골라서 사용 가능
가상 콘솔 지원(모니터가 여러개인 것처럼- 멀티태스킹, 멀티유저)
단축키 : alt + f1 ~ f6 (버전에 따라 더 많이 지원하기도 함)
X윈도우에서 콘솔모드에서
가상 콘솔 단축키 : alt + ctrl f1 ~ f6
콘솔모드 에서 x윈도우로 변환 : alt + ctrl +backspace
시스템 종료
shutdown -h now
halt
init0
시스템 재부팅
shutdown -r now
reboot
init6
ctrl + alt +del (/etc/inittabl 파일에 지정되어 있는 단축키)
10분후 종료 진행시
shutdown +10
취소한 사용자가 명령시 취소하고자 할때
ctrl+c
showdown -r +10
알아야 할 명령어
ls (list 약자, 해당 폴더의 내용을 보여달라)
파란색 : 디렉토릭
흰색 : 파일
형광식 : 실행파일
확장자가 없음
디렉토리에 . 이 포함되기도 함
cd (change directory 디렉토리 이동)
pwd (print working directory 현재 디렉토리 위치)
최상위는 / 폴더임
그 밑에 /root
pwd는 현재 폴더 위치를 알려준다.
clear(=cls 화면을 clear 함)
-------------------------------------------------------------------
네트워크 셋팅
쉬운 방법과 어려운 방법이 있음
ifconfig (ip정보를 확인)
netconfig (리눅스 시스템 ip 설정 셋팅)
ip 바뀐후에 네트워크데몬을 재시작해야 정상적으로 내용이 적용된다.
기본 lo
ip 셋팅하면 eth0 부터 lancard 번호가 부여된다.
진행 방법
1. netconfig : 설정화면에서
스페이스(자동으로 설정)
탭 + 숫자입력(수동입력)
ok -> 저장되고 콘솔화면으로 복귀
ip, SM, MAC 확인 가능
ifconfig (근데 아직 반영되지 않았다.)
2. 데몬 재시작 : 해당 데몬은 부팅시 실행되는 공간에 위치하고 있음
위치 : /etc/inti.d
실행파일 : ./network restart
-- down 후 다시 올라옴 이후에 eth0 항목이 설정한
network 설정대로 올라온걸 알수 있다
./network stop (인터넷 사용안함과 같은 효과)
./netwrok start (데몬 시작, ip충돌시에는 에러 발생함)
./network status (상태 확인)
ping ipnumber (net 연결 상태 확인)
/etc/resolv.conf --> 파일 : 찾을 dns 가 저장되어 있음
그럼 파일 보는 명령어
cat /etc/resolv.conf
입력하다가 tab 키를 통해서 연결가능한 파일을 자동
입력 가능
BOOTON = yes (부팅할때 데몬을 올리는 경우)
BOOTPROTO = static (수동 it 할당인 경우 이렇게 보임)
resolv.conf 다음줄에 네임 서버를 추가하고자 하면
간단하게 수정하는 방법 순서
vi /etc/resolv.conf
-- 편집창으로 넘어감
여기서 vi는 3개의 모드를 지원한다.
i : 밑에 insert 가 표시된다.
(수정가능, 서버를 하나더 추가한다.)
esc : 입력후 다시 원래 모드로 들어온다.
shift : 명령 모드로 들어간다.
wq : 저장후 종료한다.
q! : 저장하지 않고 종료한다.
게이트웨이 주소 저장 위치 (자주 하는 작업은 아님)
cat /etc/sysconfig/network-scripts/ifcfg-eth0
---------------------------------------------------------------
mail : 메일이 온경우 메시지가 뜨고 해당 명령으로 메일 확인 가능
로그인 정보 확인
어느 계정으로 로그인 했는지 확인
whoami (계정정보만)
who (계정, 가상 터미널 번호, 전체 계정 로그인정보)
who am i (계정, 가상 터미널 번호, 본인 계정)
여기서 뜨는 tty1 이라는 다른 계정이 보이는데
멀티계정으로(alt+f2) 같은 root 계정으로 로그인 하면
tty2가 부여된다.
==> 가상 터미널 번호임
패스워드 변경 : passwd -> 바꿀 패스워드 입력 (끝)
이후 로그인시 바뀐 비번 사용
일반 계정 생성
useradd userid
passwd userid
비번 입력
이후 만든 아이디로 로그인 가능함
+ 로그인시 homt/userid 위치로 들어감
ps. home 에서 보이는 lost+round (휴지통 및 백업 폴더)
userid 폴더가 해당 계정에 쓰이는 폴더
/etc/passwd : 유저 계정정보를 관리하는 파일
cat /etc/passwd 명령시 사용자 내용이 기입되어 있어야 로그인이 가능함.
-----------------------------------------------------------
텔렛 셋팅 (=Terminal)
컴퓨터 외부에서 접속 하여 작업이 가능
1. 구성
관리 폴더 : /etc/xinetd.d
superDemon이 Telnet로 관리한다. (자주 요청되지 않는 서비스는 슈퍼데몬이 관리하고 해당 데몬 설정 파일은 위 폴더에서 관리한다.)
pop3s (메일 서버)
vi telnet <-- telnet 관리 파일
i -> 수정 -> (파일 수정) -> esc -> shift: -> wq 형태로 진행
service telnet
{
flags = REUSE
socket_type = stream
wait = no
user = root
server = /ser/sbin/in.telnetd
log_on_failure += USERID
disable = yes
}
** disable 를 기존의 yse 에서 no로 바꾸고 저장
2. 데몬 재시작
telnet은 superdaemon이 관리하고 있기 때문에
superdeamon을 재시작한다.
/etc/init.d 로 이동
xinetd (superdaemon)
재시작 한다.
./xinetd status
xinetd (pid xxxxx) is running.....
** pid xxxxx 프로세스로 돌고 있다는걸 알려준다.
3. 접속한다.
telnet localhost
or
telnet ip
-> id -> pass -> 로그인 (일반 사용자만 가능)
-> su - -> root 의 pass -> 로그인(관리자계정)
3.2 (추가)윈도우에서 접속
ping ip
telnet ip
-> id -> pass -> 로그인 (일반사용자)
->su - -> pass -> 관리자 로그인
--------------------------------------------------------------
기본명령어1_ 자세하게 봅니다.
리눅스, 유닉스에서는 확장자에 대한 개념이 없음
윈도우의 확장자는 사용자에게 편의를 주기위해 만든개념
확인 : 시작 -> 실행 -> regedit -> HKEY_CLASSES_ROOT 밑에
확장자에 대한 key가 명시되어 있음 (어떤 소프트웨어와 연결하는지를 레지스트 등록)
리눅스는 파일이냐 실행파일이냐 폴더냐만 구분
확장자는 붙여도 되고 안해도 되고
1. ls(list : 해당 포더의 어떤것이 있는지 나열)
ls (일반적인 경우)
ls -a (숨김파일 표시)
ls -l (자세하게 표시)
-l 했을때 나오는 파일정보
-rw-r--r--- root root 1297 anall.al
-rw-r--r--- 표시는 퍼미션(권한)
맨앞의 - : 파일임을 명시 ,ps. d는 (디렉토리)
1 (차후에 다름)
root (소유주)
root (만든이)
1297 (size)
anall.al (파일이름)
ls -al (자세하기 + 숨김표시)
ls -s (abc 순 정렬하기)
1.2 절대경로 및 상대경로
절대경로 : / 부터 시작하는 것
ex) ls -al /
ls -al /etc
(경로가 세번째 인자로 붙음)
상대경로 : 현재 위치(디렉토리)를 기준으로 시작
ex) ls -al
ls -al ../etc
ls *.txt , ls *a* , ..... 가능
폴더에서도 * 사용 가능
ps. 페이지가 넘어갈때 shift + pageup, pagedown 으로
페이지 이동 가능
ps2. 비어있는 파일 만들기
touch aaa.txt (현재 폴더에 파일 만듬)
만들어질때 별 메시지가 없음....
cat 명령으로 확인시 내용이 없음(없게 만들었으니깐)
ps3. ls -asl /etc/pass*
ls -asl ../etc/pass*
* 로그인 하고 처음 만나는게 쉘 (리눅스에서는 -bash, 유닉스-sh)
**쉘의 좋은점 3가지
1. tab 키 기능 -> 개체명을 다 쓰지 않아도 됨
(하나의 파일로 구별될 경우)
2. alias 기능 -> 명령어를 작성 가능
3. history 기능 -> 실행했던 명령어를 뒤로 가듯이 볼 수 있음
별칭기능?
ls - asl <---- 본인이 자주 쓰기 때문에
이를 l 로 바꿔서 쓰고 싶을때
alias 실행
.....
alias ls = 'ls --color=tty'
alias mv = 'mv -i'
....
alias which .......
ls 의 경우 이미 color 이 보여지도록 alias 처리되어 있음, alias
처리 안되어 있다면 색이 구별되지 않는다.
색 구별의 경우 아예 기본부터 구별되도록 추가함
다음처럼 alias 를 추가
# alias l='ls -als'
#alias
....
alias l='ls -als'
....
추가되어 있는걸 확인
# l
......
----------------------------------------------------------
** 쉘의 기능
키보드로 명령어를 받고, 해당 명령어를 찾아 실행(데몬으로 올림)
하고 (옵션, 인자값) 그 결과는 모니터로 출력 (다른 방식도 가능 text로 저장만 하는 경우도 있고 등등등등)
명령어 찾는 순서
echo $PATH
/bin:/sbin:......
(1) 명령어는 echo 에 해당 명령이 있는지 뒤진다.
(2) 없으면 alias 를 뒤진다.
* find /-name ls --> 최상위 폴더에서 다 뒤지는 경우
그리고 여기서도 찾는 순서는 (1), (2) 하고나서
나머지 폴더를 뒤진다. 다만 find 이기 때문에 끝까지 뒤지고 나서 결과를 알려준다.
다만 이렇게 하면 되는동안 멈춘다.
그렇다면 이를 벡드라운드로 돌리고 난 다른걸 하고 싶은 경우
방법이 있음(나중에 진행)
-rwxr-xr-x 앞의 - (파일) rwx(root 읽기 쓰기 실행), r-x(사용자그룹 읽기, 실행), r-x(기타 유저 읽기, 실행)
* 명령 결과 출력을 txt 파일로 하는 경우
# ls -al > 1.txt
# cat 1.txt
합계 85
-rwx...... 1.txt...
.....
# cat <1.txt
==> 1.txt 를 모니터로 보겠다. 라는 의미
# cat >2.txt
input ==> Today is goodday to die.
input ==> ctrl+z
# cat 2.txt
Today is goodday to die. <-- 이렇게 출력된다.
이렇게 간단하게 파일 작성도 가능함
*clear 단축키 : ctrl +l
#cat -n install.log --> 줄번호 붙여줌
ps. 한글 깨지는 현상(나중에 다름)
man ls (영어 깨짐 이때 나가지지 않는데 q 누르면 나가짐)
export LANG=en_US (이상태로 해결 + 당분간 켤때 입력할 것)
* 환경 설정
# echo $PWD
문제점 확인 :
[root@localhost init.d] <-- full 경로 보이도록
echo $PWD
/etc/initd. <-- 풀경로가 보인다.
vi /etc/bashrc (모든 사용자의 환경 파일)
shift + :
set number
<줄넘버가 붙는다>
->
46라인 이동 i -> \W 를 \$PWD 로 변경
esc -> shift + -> wq
아직 적용되지 않음 (이 명령문은 login시 실행에 포함되어 있기 때문에 logout 후 다시 login 해야함 )
다시 로그인시
[root@localhost /etc/shk] <-- 풀 경로가 표시되었다.
댓글 없음:
댓글 쓰기