반응형

서버 설치하기 위해서는 Bind 데몬이 필요

DNS서버 설정 

1. rpm -qa | grep bind   Bind 데몬이 깔려 있는지 확인

2. wget http://ftp.isc.org/isc/bind9/9.7.2-P3/bind-9.7.2-P3.tar.gz 이용해서 Bind 설치

3. tar xvf bind-9.7.2-p3.tar.gz 이용해서 압축해제

4. /usr/local 에 dns 디렉토리 생성   mkdir /usr/local/dns

5. 압축풀어서 나온 bind-9.6.2-p3 디렉토리로 이동   cd bind-9.7.2-p3

6. ./configure --prefix=/usr/local/dns 에 bind 설치      prefix=/ 설치할 경로설정

7. make; make install 로 설치

8. /usr/local/dns/etc로 이동    cd /usr/local/dns/etc

9. named.conf 파일 설정           vi named.conf

 

named.conf

       options {
               directory "/usr/local/dns/etc/namedb";
               dump-file "/usr/local/dns/etc/named_dump.db";
               statistics-file "/usr/local/dns/etc/tmp/named.stats";
               pid-file "/usr/local/dns/etc/run/named.pid";
       };
       zone "." IN {
               type hint;
               file "named.root";
      };
      zone "localhost" IN {
              type master;
              file "zone-localhost";
      };
      zone "0.0.127.in-addr.arpa" IN {
              type master;
              file "zone-0.0.127.in-addr.arpa";
      };
      zone "naver.com" IN{
              type master;
              file "zone-naver.com";
      };

10. named.conf 파일생성후 현 디렉토리에 namedb 라는 디렉토리 추가  mkdir namedb

11. namedb로 이동    cd namedb

12. wget ftp://ftp.internic.org/domain/named.root 를 입력해 named.root 설치    named.root파일은 절대 수정하면 안됨

13. namedb 디렉토리에서 zone 설정

14. vi zone-localhost

@ORIGIN localhost.
@       1D      IN      SOA     @       root    1999010100      3H      15M     1W      1D
@       1D      IN      NS      @
@       1D      IN      A       127.0.0.1
@       1D      IN      AAAA    ::1

15. vi zone-0.0.127.in-addr.arpa

$TTL    3W
@       3W      IN      SOA     localhost.      root.localhost  1999010100    3H  15M   1W    1D
@       3W      IN      NS      localhost.
1       3W      IN      PTR     localhost.

16. vi zone-naver.com

$TTL    3H
@       SOA     @       root.   ( 2 1D 1H 1W 1H )
            IN      NS      @
            IN      A       74.125.128.94

www     IN      A       74.125.71.105
ftp         IN      A       180.228.181.97

17. zone파일 설정 완료후 /usr/local/dns/sbin 으로 이동           cd /usr/local/dns/sbin

18. ./named-checkconf /usr/local/dns/etc/named.conf

./named-checkzone naver.com /usr/local/dns/etc/namedb/zone-naver.com를 쳐서 ok나오는지 확인

19. root의 etc 디렉토리로 이동해서 resolv.conf 파일 수정  cd /etc ,  vi resolv.conf

   resolv.conf

기존 서버 #으로 주석처리하고 내 아이피 주소 입력

   nameserver 172.16.5.105

20. /usr/local/dns/sbin 으로 이동해서 데몬실행 cd /usr/local/dns/sbin     ./named

21. nslookup을 쳐서 서버와 네이버쳐서 확인

 

naver.com 을치면 74.125.128.94의 주소로 이동

 

반응형

'OS > 리눅스,솔라리스' 카테고리의 다른 글

리눅스 웹 서버 구축하기 (APM)  (0) 2014.08.25
리눅스 메일 서버 구축하기  (0) 2014.08.25
리눅스 FTP 서버구축  (0) 2014.08.22
shell  (2) 2014.08.20
rpm  (0) 2014.08.20
nfs  (0) 2014.08.18
cron,package,swap  (0) 2014.08.18
반응형

~ : 홈디렉토리로
* : 모든것
? : 한글자만
[]: 사이에있는 모든것

man : 메뉴얼 옵션보기

ls : 리스트 목록 보기
 -a : 전체리스트
 -l : 자세하게
 -S : 크기 큰 순으로 정렬
 -r : 크기 작은순으로 정렬
 -h : 보기 편하게

mkdir : 디렉토리생성
 -p : 하위디렉토리까지생성

rmdir : 디렉토리삭제
cd : 디렉토리 이동
pwd : 현재 작업수행하는 위치 확인 

touch : 크기0의 파일 생성
 -t : 파일의 날짜변경

cp : 파일복사
 -i : 복사대상이 있을때 덮어쓸지 유무 물어보기
 -r : 복사원본에 디렉토리 있을경우 디렉토리까지 복사  = -a 옵션
 -v : 복사되는 파일의 이름을 보여줌
 -p : 권한이나 날짜까지 똑같이 복사

mv : 파일이름 변경이나 이동

rm : 파일삭제
 -f : 강제삭제
 -r : 하위 디렉토리,파일 삭제

cat : 한화면에 보여지는 파일 내용 출력

more : 1페이지가 넘는 파일 출력
 스페이스: 다음페이지
 엔터 : 다음줄
 b : 이전페이지
 ctrl + c : 종료

head : 문서의 앞부분 10줄 출력
tail : 문서의 뒷부분 10줄 출력
 -f : 내용이 추가되는 것을 실시간으로 확인

wc : 특정 문서나 결과물에서 단어나 줄 수 세어주는 명령어

ln : 링크생성 윈도우의 바로가기 아이콘
 -hard link
 -soft link
dd : 파일을 블록단위로 복사
alias : 별칭줄때 사용
> : 출력방향 변경
>> ; 덮어쓰기
< : 입력방향 변경
| : 다중 명령 입력할때

tar : 여러개의 파일을 하나의 파일로 만들거나 풀기
 -c : 모으기
 -v : 보여주기
 -f : 이름지정
 -x : 풀기
 -t : 풀기전에 미리보기
 -z : gzzip으로 압축
 -j : bzip2 로 압축

 

find : 파일 이름이나 소유자 권한 크기 등으로 검색
 -name : 파일이름으로 검색
 -user : 소유자로 검색
 -size : 크기로 검색
 -perm : 권한으로 검색
 -newer : 날짜로 검색

grep : 파일안에 있는 특정 단어나 구문으로 검색
 -v : 빼고 검색
 -i : 대소문자 구분x
 -l : 파일이름만 출력
 -n : 라인 번호매김
 -c : 라인의 개수
 -w : 단어가 독립적인 경우만 출력

 

^ : pattern으로 시작하는 라인 출력

$ : pattern으로 끝나는 라인 출력

. :  a에서 시작하여 b로 끝나는 라인    ex) a...b

[] : pattern에 해당하는 한 문자

[^] : pattern에 해당하지않는 ㅎ나 문자

/<>/ : pattern단어로 시작 or 끝나는 라인 출력

 

groupadd : 그룹생성            groupadd -g gid 그룹명

groupmod : 그룹설정변경     groupmod -g gid -o -n -원래그룹명 -변경할그룹명

groupdel : 그룹삭제

 

useradd : 유저생성     useradd -u uid -g -gid -G -gid -d -dir -s shell -c coment 생성할유저명

 -u : uid 지정

 -g : gid 지정

 -G : 보조그룹

 -d : 홈 디렉토리지정

 -s : 사용할 쉘 지정

 -c : 계정에 대한 설명

 

passwd : 암호변경

usermod : 유저정보 수정

userdel : 계정삭제

 -r : 홈디렉토리까지 모두 삭제

 

chmod  :  권한변경

 -u : 소유자                   - + : 권한추가                - r : read   (4)

 -g : 그룹                      - - : 권한 삭제               - w : write (2)

 -o : others                                                      - x : execute  (1)

 -a : 모든사용자

 

 

 

반응형
반응형

case1) 같은 네트워크간 통신 A<---->B

한번이상 통신 했을 경우 1~3 번       최초 통신일 경우 1~7 번

1. A 에서 IP Address 와 MAC Address 정보를 담아 스위치 한테 B의 IP를 알려줘서 찾게함

2. 요청받은 스위치는 해당 IP정보의 컴퓨터를 스위치 내의 MAC Address Table에 존재하나 확인

(* 스위치가 하는일중 하나는 IP<-->MAC 변환) 

(*Switching Table : 주소들을 메모리에 저장해 두는 곳)

3. IP와 MAC주소를 연결해 스위치 장비의 메모리에서 참조해 즉시 연결

4. 최초 접속시 Switching Table에 정보가 없을 것

5.  스위치는 A컴퓨터의 Port를 제외한 나머지 Port에 접속되 있는 컴퓨터에 B의 IP 주소를 첨부해 해당 IP주소를 사용하는 컴퓨터에게 응답요청을 시도함 (*이러한 과정을 Broadcast라함)

6. Broadcast를 받은 A를 제외한 나머지 컴퓨터중 해당하는 컴퓨터가 아니면 이 메시지를 폐기하고 해당하는 컴퓨터일 경우 MAC Address를 담아 스위치에게 응답함

7. 이렇게 MAC Address를 받은 스위치는 Switching Table에 저장해 A와 B를 연결

(*Broadcast해서 IP주소와 MAC주소를 얻는 과정을 학습(Learning)이라고함), 스위치 재부팅시 Switch Table 정보 초기화 되므로 학습을 다시 해야함

case2 ) 다른 네트워크간 통신 A<-->F

1. A의 IP주소와 MAC주소를 스위치에게 전해주고 F의 IP주소를 알려줘서 찾아달라고 요청

2. 요청을 받은 스위치는 위의 CASE1 의 학습과정을 거친 뒤 같은 네트워크상에 없다는것을 인식후 외부 연결을 위해 Gateway 장비에게 F의 IP주소를 알려주고 찾기를 요청

(*Gateway 장비의 역할을 Router라고함)

3. 스위치로부터 요청을 받은 라우터는 자신의 Routing Table을 참조해 해당 IP를 가진 Router를 찾음.

4. 만약 해당 IP를 가진 라우터가 없을 경우 가장 근접한 라우터를 찾아서 부탁함

(*라우터들 끼리 IP를 찾는것을 공유하는 것을 Routing Protocol 이라고 함)

 5. 이 과정을 통해 A Nerwork의 Gateway Router가 B Network의 Gateway Router를 찾게됨

{*위 과정을 Routing (길찾기) 라고함}

6. B Network의 라우터가 A가 요청한 F의 IP주소를 받고 F의 주소를 스위치에 전송, 학습을 통해 서로 통신이 가능

(*A Network Gateway와 B Network Gateway가 연결되기 까지 수많은 라우터를 경유해 길을 찾는과정을 HOP이라 하고 HOP을 많이 거칠수록 속도가 늦어짐)


 

/etc/sysconfig/network   -네트워크 저장되있는 디렉토리

/etc/sysconfig/network-scripts/ 
ifcfg-eth0   -   첫번째 랜카드, ip 변경할때 이파일 바꾸면 됨

/etc/resolv.conf
dns 정보 들어가있음

ip변경하고싶을때 리눅스에서 neat 치고 들어가서 변경
자동으로 아이피 받고싶으면 cd설정으로 네트워크 nat로 바꾸고 automatically 어쩌구 클릭
/etc/init.d/network restart 로 네트워크 재시작하면 아이피 자동으로 받음

반응형
반응형

shell

Bourne shell : 최초의 shell. 지원하는 명령어가 적음    /bin/sh

C shell : B shell의 개량형  /bin/csh

Korn shell : 현재 유닉스 계열에서 많이 사용중인 shell    /bin/ksh

Bash shell : 리눅스의 기본 shell. 다양한 명령과 편의성을 지원   /bin/bash

 

Shell Script 

쉘스크립트 첫번째줄에는 사용할 쉘 종류를 적는다

 

!#/bin/bash 

echo : 뒤의 내용을 출력해라
 -n : 줄바꾸지 않고 출력


./sh : 일반적인 쉘 실행

쉘 실행 권한이 없을때 chomod로 권한변경 해주거나 sh 명령어로 실행 가능

ex) test.sh 실행할때 권한 없으면 sh test.sh


  ` (역따옴표) : 특정 명령어를 실행한 결과를 출력 

echo `ifconfig |grep iniet | gerp -v 127.0.0.1`
 : ifconfig로 ip주소 확인후 127.0.0.1을 제외하고 출력하라고 한 것

 

변수 : 데이터를 저장하기 위해 생성하는 임시 기억공간
 (어떤 데이터가 들어올지 모름)
변수명=값 

   *  = 기호    좌우에 공백이 생기면 안됨

echo $변수명

변수 값 안에 공백이 있을경우 " " 로 묶어준다

환경변수 : 이미만들어져있는 변수 . 꼭 대문자로 써야함


read : 값을 입력받아 변수에 저장
 # echo -n "Enter your name: "        이름을 입력
   read name                                 변수 name에 입력받은 이름 저장
   echo "Your name is $name. "       저장 받은 이름을 출력
 

크기비교

[ $ A -gt $B ] 

 A값이 B값보다 크다 

[ $ A -lt $B ] 

 A값이 B값보다 작다 

 [ $ A -ge $B ]

 A값이 B값보다 크거나 같다

 [ $ A -le $B ]

 A값이 B값보다 작거나 같다

 [ $ A -eq $B ]

 A값이 B값보다 같다

 [ $ A -ne $B ]

 A값이 B값보다 다르다

 


expr : 연산하기위해 숫자로 인식

 

 

세개의 숫자 입력받아 계산할때

\ : 괄호사용할때 앞뒤로 붙여야함

 

 

문자열 비교

 

 ["string1"="string2] 

 두 문자열이 같은 경우 

 ["string1"!="string2] 

 두 문자열이 다른 경우

 [-z "string"]

 문자열의 길이가 0인 경우

 [-n "string"]

 문자열의 길이가 0이 아닌 경우

 

입력받았을때 korea 이면 화면에 korea 출력 korea아닌경우 not korea 출력

 

 

파일관리

 

 [-f 파일명] 

 파일이 있는 경우 

 [-s 파일명] 

 파일이 존재하고 내용이 있는 경우

 [-d 파일명]

 파일이 아니고 디렉토리인 경우

 [-r 파일명]

 읽기가 가능한 파일일 경우

 [-w 파일명]

 쓰기가 가능한 파일일 경우

 [-x 파일명]

 파일이 존재하고 실행 가능할 경우

 [!-옵션 파일명]

 옵션의 조건이 아닐 경우

 

 

조건문과 반복문

 

if문

-사용자로부터 과일명 입력받아서 그 값이 'apple'이면 'apple good!' 출력 'apple'아니면 종료

 

 

 

-----------------------------------------------

 

 

 

-사용자가 'apple'을 입력하면 'apple good!'을 출력 다른것 입력시 'give me apple!' 출력

 

 

----------------------------------------------

 

 

-사용자로부터 글자 입력 받아서 'apple'이면 'i like apple~!' 출력 'orange'이면 i like orange~!' 출력 둘다 아닐경우 'give me apple or orange~!' 출력

 

 

------------------------------------------------

 

 

 

-사용자로부터 값을 입력 받는데 입력값의 범위가 1 또는 2 사이어야 하며 0보다 작으면

"so small" 2보다 크면 "so big"

 

 

-----------------------------------------------

 

연습문제 1

학생의 시험 성적을 입력 받아서 학점을 계산하는 스크립트

96~100 : A+, 90~95 : A0, 86~89 : B+, 80~85 : B0, 76~79 : C+,70~75 : C0, 66~69 : D, 나머지는F 그리고 100점이 넘으면 'so big' , 1점보다 적으면 'so small' 출력

 

 

-----------------------------------------------

 

 

연습문제2

지역번호 입력받아서 번호가 02 : seoul, 031 : kyongki, 051 : busan, 052 : ulsan 나머지는 'heaven' 출력, 단 지역번호가 0보다 작거나 100보다 크면 "check your number"

 

 

----------------------------------------------

 

 

case

-사용자로부터 숫자를 입력받아 1일 경우 웹서버 백업을 수행, 2일경우 WAS서버 백업, 3일 경우 DB서버를 백업하는 스크립트 생성

-이 작업을 위해 웹서버 백업 스크립트, WAS백업 스크립트, DB서버 백업 스크립트 가상으로 생성

 

 

 

---------------------------------------------------

 

 

------------------------------------------------------

 

 

for문

 

-for문을 사용하여 구구단

 

 

 

-1이나 2를 입력하면 계속 God Bless You라는 메세지를 출력하고 다른 숫자를 입력하면 Incorrect Number~ Good Bye~ 출력되며 스크립트 종료

 

 

 

-대문자Y나 소문자y를 입력할 때 까지 계속 "Enter Y|y"라는 문자를 출력하게 하고 대문자 Y나 y를 입력하면 Good 메세지와 함께 스크립트 종료

 

 

 

 

-while문 사용하여 구구단 출력 

 

 

 

-untile 반복문 사용하여 구구단 출력

 

 

 

-사용자에게 원하는 단수 입력받아 출력한 후 Retry? y|n: 메시지를 보인후 대문자 Y나 소문자y를 입력하면 다시 원하는 단수 입력받아 출력 메시지에서 대문자 N이나 소문자 n을 누르면 Good Bye 메시지 보이며 종료

 

 

 

연습문제1

for문 이용하여 2~9단까지 구구단 출력

 

 

 

-while문을 이용하여 구구단만들기

 

 

 

연습문제2

-for문 사용하여 옆으로 펼쳐진 구구단 만들기

 

 

 

반응형

'OS > 리눅스,솔라리스' 카테고리의 다른 글

리눅스 메일 서버 구축하기  (0) 2014.08.25
리눅스 FTP 서버구축  (0) 2014.08.22
리눅스 DNS 서버구축  (0) 2014.08.22
rpm  (0) 2014.08.20
nfs  (0) 2014.08.18
cron,package,swap  (0) 2014.08.18
디스크관리  (3) 2014.08.14
반응형

프로그램 설치

sol : package  pkgadd -d ~  : 경로설정불가

linux :rpm 장점 - 쉽다

              단점 - 옵션설정불가
        컴파일 장점 - 옵션가능

                  단점 - 어렵다
  > configure                                                  -> make    -> make install
     =setup . 필요한 정보 기입 (설치경로, 옵션)    실행코드생성      복사

 

 

rpm파일 다운받기 힘듬 (32bit 64bit 구분 잘해야함) 64bit는 rpm파일뒤에 _64 적혀있음

 

rpm관리
 조회 : rpm -qa
 설치 : rpm -Uvh  iptraf라는 프로그램으로 설치

           -U : 이미 설치되어있을경우 업데이트하고 설치 안되있으면 설치

           -v : 설치과정을 #표시로 나타냄
 제거 : rpm -e
 의존성 : --nodeps     

    a.rpm을 설치하려는데 b.rpm이 필요하고 b.rpm설치시 c.rpm 필요하다고 꼬리에 꼬리 물어 설치하라고 할때

   #a.rpm의존성무시하고 설치 : rpm -Uvh a.rpm--nodeps
 강제로 덮어쓰기 설치 : --force

 


 

반응형

'OS > 리눅스,솔라리스' 카테고리의 다른 글

리눅스 FTP 서버구축  (0) 2014.08.22
리눅스 DNS 서버구축  (0) 2014.08.22
shell  (2) 2014.08.20
nfs  (0) 2014.08.18
cron,package,swap  (0) 2014.08.18
디스크관리  (3) 2014.08.14
서버보안, 원격접속관리  (0) 2014.08.13
반응형

NFS - 파일이나 백업용 서버로 많이씀

mountd Daemon , NFS Server Daemon (NFSD) : 공유해주는 서버

file handle : server에 있는 파일이나 디렉토리 식별

/etc/dfs/dfstab : 공유내역 저장하는 파일

 

server 역할

 

vi /etc/dfs/dfstab   

share -o ro /usr/share/man 수정

 

/etc/init.d/nfs.server start     -   daemon 시작

share                                  -   공유디렉토리 확인

dfshare                               -   공유되있는 디렉토리 리스트 확인

dfmounts                             -   공유되있는 사용자 리스트 확인

 

 

client 역할

mv /usr/share/man /usr/share/men                      -man을 men으로 이름변경

man ls                                                                -man있는지 확인

mkdir /usr/share/man                                          -man디렉토리 생성

mount server104/usr/share/man /usr/share/man    -server104의 /usr/share/man으로 mount

man ls                                                                -man확인

mount                                                                 -마운트확인

dfmounts server104                                               -server104에 연결되어있는지 마운트 확인

umount /usr/share/man                                        -마운트해제

dfmounts server104                                               -server104에 연결되어있는지 마운트 확인

 

 

 

상황제시

1. server2 에 100m 디스크 추가 후 /data로 마운트 하세요

2. server2 의  /data를 읽기/쓰기가 가능하도록 공유하세요

3. server1에서 server2의 /data를 /server1/backup으로 NFS연결하세요

4. server1에서 /etc/ssh 디렉토리를 /server1/backup/ssh_backup.tar.zip으로 백업하세요

 

 

server2의 역할

touch reconfigure

init 6

100mb 디스크생성

format 파티션설정

------------------ 100m 디스크추가

 

newfs dev/rdsk/c1d1s0                              -포맷

mount dev/dsk/c1d1s0                               -마운트

vi /etc/dfs/dfstab                                      -/data를 읽기/쓰기 가능하도록 설정

 share -o root=server104:server105 /data      -공유 설정

/etc/init.d/nfs.server stop                          -server stop

/etc/init.d/nfs.server start                          -server start

 

 

server1의 역할

mkdir -p /server1/backup                           -디렉토리생성

mount server104:/data /server1/backup        -server1/backup을 server104의 data로 마운트

cd /server1/backup                                    -경로이동

tar cvf /server1/backup/ssh_backup.tar.zip /etc/ssh/*     -ssh_backup.tar.zip 으로 압축

cp ssh_backup.tar.zip /data1                       -data1로 백업

 

 

 

반응형

'OS > 리눅스,솔라리스' 카테고리의 다른 글

리눅스 DNS 서버구축  (0) 2014.08.22
shell  (2) 2014.08.20
rpm  (0) 2014.08.20
cron,package,swap  (0) 2014.08.18
디스크관리  (3) 2014.08.14
서버보안, 원격접속관리  (0) 2014.08.13
사용자관리, 그룹관리  (0) 2014.08.13
반응형

cron : 주기적으로 반복되는 작업을 통칭함
crond : cron 작업을 해 주는 데몬(프로그램)
crontab : crond 가 작업할 작업 목록
crontab : crontab 을 수정하는 명령어

 

cron형식

   분/시/일/월/주/할 작업  *는 모든 이라는 뜻
# 10   3  *   * 0,4 /etc/cron.d/logchecker 

매월 매일 3시 10분 일,목에 /etc/con.d/logchecker 의 작업을 수행해라

=>매주 일,목요일 3시 10분에 /etc/con.d/logchecker 작업 수행

 

cron 저장위치 : /var/spool/cron/crontabs/username

 

ex)cron생성

EDITOR=vi
export EDITOR
crontab -e

10 3 * * * /test/a.sh


vi/etc/cron.d/cron.deny :해당 계정 cron 사용 못하게 함

 

 

Run Level

Run Level 0 - Bios상태

Run Level S,s - single user mode / cd로 부팅해서 사용 / 백업,복구에 주로사용

Run Level 1 - 모든지역 파일시스템 mount해서 사용
*지역파일 시스템 : 하드디스크로 만들어진 파티션
Run Level 2 - 원격파일 시스템 : NFS

Run Level 3 - 정상 부팅

Run Level 5 - 종료

Run Level 6 - 재부팅

Run Level 실행 명령어 : init

 

who -r : 현재 Run Level확인

krtld : 유닉스 kernel load

/etc/inittab : Run Level별 해야할 일 저장되어있음

 

 

init 실행단계

1. /sbin/init

2. /etc/inittab 실행

3. /sbin/rc?  rc? 스크립트 실행

4. /etc/rc?.d 에서 k*스크립트나 s*스크립트나 .sh실행

 

 

패키지
/var/sadm/pkg - 프로그램 설치시 기본 경로


/var/sadm/install/contents - 설치된 프로그램 목록

pkginfo - 설치된 모든 패키지 정보 표시
 -l : 자세하게 출력

pkgadd - 패키지 추가
 -d : 현재 디렉토리 밑에 있다는걸 뜻함 (지정된 디렉토리 안에 설치할 패키지 있다)
 * -d 옵션을 안주면 /var/spool/pkg 의 기본경로안에 있는 패키지라고 인식함

pkgrm - 패키지 삭제

patch name : patch기본이름 - patch version : 112785 - 05

patchadd -p : 현재 설치되어 있는 패치 리스트 나열

 

#패키지 설치 예문

winscp로 설치할 패키지.gz 압축파일 dir1로 옮김

gunzip으로 압축해제

pkgadd -d /dir1/파일명

all, y

설치 완료후 /usr/bin 디렉토리로 복사 cp /usr/local/bin/top /usr/bin

topd으로 확인

 

swap (가상메모리)
 -s : swap space status
 -l : swap space list
 -a : swap space 추가
 -d : swap space 삭제

 

#swap실습

swap -s 상태확인

mkdir /export/swap 디렉토리 생성

mkfile 20m /export/swap/swapfile  20mb의 swapfile 생성

swap -l 확인

vi /etc/vfstab 들어가서 /export/swap/swapfile    -    -    swap    -    no    -        기입

reboot 후 swap -l 확인

swap -d /export/swap/swapfile     

rm /export/swap/swapfile  

vi /etc/vfstab 들어가서 /dev/dsk/c0d0s1    -    -    swap    -    no    -         기입    

reboot 후 swap -l 확인  

반응형

'OS > 리눅스,솔라리스' 카테고리의 다른 글

shell  (2) 2014.08.20
rpm  (0) 2014.08.20
nfs  (0) 2014.08.18
디스크관리  (3) 2014.08.14
서버보안, 원격접속관리  (0) 2014.08.13
사용자관리, 그룹관리  (0) 2014.08.13
Process, 압축  (0) 2014.08.12
반응형

 

 

윈도우 

솔라리스 

리눅스 

파티션 

fdisk 

format->fdisk 

fdisk 

포맷 

format 

newfs 

mkfs 

마운트

자동

mount

mount

 

Device File Type

Logical device names

 - /dev/dsk  -> block device      : mount, swap

 - /dev/rdsk -> character device : newfs, fsck

 

 

/etc/path_to_inst  : Kernel 에서 사용가능한 device 확인 (수정하면 큰일)

prtconf : 연결가능한 장치목록 보여줌

#prtconf | grep -v not  : 안쓰는 장치 빼고 보여줌

 

Rebooting 설정

솔라리스 리부팅 될때 reconfigure 파일이 있으면 새로운 장치 추가된거 알려주고 장치찾고 삭제됨

 

디스크 추가

touch /reconfigure

init 5

하드추가

키고prtconf : 연결된 하드 확인

 

devfsadm : 재부팅없이 디스크 확인

devfsadm -v : 변경된 디스크 뭔지 보여줌

 

Disk Label : VTOC

디스크 제일 앞부분에 디스크에 대한 요약정보가 들어있음

 

 

ufs file system Structure

0 : Disk Label  - 파티션 테이블 저장

1~15 : boot blk  -boot loader 기능, 각각의 파일시스템에 존재

16~31 : Super Block     - 실제 데이터가 들어있는 정보

32~ : Backup Super Block     - Super Block 데이터 백업

 

 

Cylinder groups

Inode table - data block에 대한 위치정보

Data block - data의 실제 저장위치, 8kbyte단위로 나눠져있음

 

 

newfs -N /dev/rdsk/c0t0d0s2  - 백업수퍼블럭 보기

fsck -o b=32 /dev/rdsk/c0t0d0s0  - 수정

 

 

파티션 나누기

format

나누고싶은 디스크 번호

part

나눌 파티션 번호

설정하고 print로 확인

다 나누고 label 로 저장 yes

verify 레이블정보 확인

 

#2번 파티션= 백업이기때문에 나누면 안됨

 

 

포맷

newfs /dev/rdsk/c0d1s0     -파티션 포맷
newfs /dev/rdsk/c0d1s1     -파티션 포맷
mkdir /p1                           -p1 디렉토리생성
mkdir /p2                           -p2 디렉토리생성
mount /dev/dsk/c0d1s0 /p1    -p1에 /dev/dsk/c0d1s0 마운트
mount /dev/dsk/c0d1s1 /p2     -p2에 /dev/dsk/c0d1s1 마운트
df -h          확인

umount /p2                         -p2 마운트 해제

touch /p1/a.txt                    -p1에 a.txt.파일 생성
umount /p1                         -p1 마운트 해제
mount /dev/dsk/c0d1s0  /p2  -p2에 /dev/dsk/c0d1s0 마운트          p2에 a.txt 생김

touch /p1/b.txt                      -p1에 b.txt파일 생성

umount /p2                           -p2 마운트 해제
mount /dev/dsk/c0d1s0 /p1   -p1에 /dev/dsk/c0d1s0 마운트          p1에 b.txt 없음

 

 

 

mount : 디스크와 디렉토리를 붙이는 것

 

df : 현재 붙어있는 마운트 표시
 -k : kb단위로 나타냄
 -h : 보기좋게 kb,mk,gb 로 나눠서 나타냄

연결 /usr/sbin/mount
뺄때 /usr/sbin/umount

etc/vfstab에 정보 저장시 부팅할때 읽음

 

umount -f 강제 마운트 끊기

fuser -cu mount_point - 파일 시스템이름과 사용자 정보 표시

File system사용중일때umount -  #fuser -fuk filename | directory

 

 

mount /deb/dsk/c0t0d0s0 /data  - locaf로 인식      /etc/default/fs 파일 읽어서 적용

mount /dev/dsk/c0t0d0s0 /data  - 원격지로 인식    /etc/dfs/fstypes 읽어서 적용

 

 

2기가 미만 윈도우에서 포맷했던 디스크 솔라리스에 붙이기

mount -F pcfs

 

 

 

File system Check

fsck 실행시 반드시 umount해야함

mount시 logging option사용하면 fsck 수행안함

 

fsck 실행시킨후 문제 발견시 lost+found를 자동으로 생성한후 안에 저장

#fsck /dev/rdsk/c0t0d0s7  

 

 

fsck mode

Non-Interative Mode

Interative Mode

 -y : 고칠게 있을 때 자동으로 y 해줌

#fsck -y -o b=32 /dev/rdsk/c0t0d0s0

 single user mode 에서 사용해야함

 

 

du : 디렉토리별 세부 메모리 보여줌

 #du -h /p1  p1안에 속해있는 디렉토리별 메모리 세부적 확인가능

 

 

root암호 잊어버렸을때
1번시디로 부팅
init6 으로 재부팅해서 vmware화면 나왔을때 F2눌러서 BIOS화면
설치 넘어가면서 CD 체크 회색화면에서 b -s
Boot Shift+ 로 CD-ROM 제일 위로 설정
mount /dev/dsk/c0d0s0  /a    /a 와 마운트
vi /a/etc/shadow 패스워드 삭제
init 6 재부팅
cd2로 바꿔줌

 

 

 

 

 

 

반응형

'OS > 리눅스,솔라리스' 카테고리의 다른 글

rpm  (0) 2014.08.20
nfs  (0) 2014.08.18
cron,package,swap  (0) 2014.08.18
서버보안, 원격접속관리  (0) 2014.08.13
사용자관리, 그룹관리  (0) 2014.08.13
Process, 압축  (0) 2014.08.12
리눅스 명령어  (0) 2014.08.11
반응형

login 실패감사

/etc/default/login 설정

주석해제 RETRIES=5 -> 5번 실패시 /var/adm/loginlog 에 나타남

Console=/dev/console 앞에 #주석처리

telnet localhost 접속후 계정,암호 실패시 /var/adm/loginlog에 기록남음

                                           tail -f /var/adm/loginlog

 

who : 현재 접속중인 로그 나음

last : 최근 login,logout 정보 표시

 

su - : 속성까지 모두 바꿈 / 신분세탁

su : 이름만 바뀜 / 이름만 가명

 

GID 14

사용자 계정이나 그룹 생성, 소프트웨어등 설치           조심해야함

 

일반 사용자 및 root의 접근을 제한하는 설정

/etc/default/su

 

# SULOG determines the location of the file used to log all su attempts

#

SULOG=/var/adm/sulog

# CONSOLE ~~~

#CONSOLE=/dev/console 서버와 연결된 모니터에서만 명령어 칠 수 있음, 근데 주석처리 해서 어디에서든 명령어 치는 것이 가능 

~~~

#

SYSLOG=YES

 

 

CONSOLE= #/dev/console => 어디서든 명령어 치는 것이 불가능

/etc/default/login

 

 

chown

- 파일이나 디렉토리의 소유자 변경

-R : 하위 디렉토리까지 소유권 변경

 

which

명령어 위치 찾는 것

 

 

 

setuid : 파일 실행시 소유자 권한으로 실행 (어느 누구라도 passwd실행시 root권한으로 실행) 

Sticky Bit Permission

자기가 만든 것만 권한 가짐

 

 

server A   <----------->   server B

server A,B 모두 같은 계정이 있어야 함

 

server B  vi /etc/hosts     IP . 서버명 추가

 

server B  vi /etc/hosts.equiv    

 

 

server100 에 oracle 계정은 암호없이 접속가능하게 해줌

 

 

server100에 모든 계정은 암호없이 접속가능하게 해줌

 

root로 접속가능하게 .rhosts 

 

 

반응형

'OS > 리눅스,솔라리스' 카테고리의 다른 글

nfs  (0) 2014.08.18
cron,package,swap  (0) 2014.08.18
디스크관리  (3) 2014.08.14
사용자관리, 그룹관리  (0) 2014.08.13
Process, 압축  (0) 2014.08.12
리눅스 명령어  (0) 2014.08.11
솔라리스9 설치  (0) 2014.08.11
반응형

useradd : 사용자 추가

useradd { -u uid}            {-g gid}                        {-G gid}     {-d dir}         

              주민번호    부서번호or부서이름(원그룹)     보조그룹    홈 디렉토리 위치지정   

             {-m}                                                {-s shell} {-c comment} loginname

 홈 디렉토리 안만들어져 있으면 만들라는 옵션          

      (솔라리스는 필수 리눅스는 x)      

 

useradd -D : 기본값 나옴

 

# /bin/ksh     /bin/bsh         /bin/csh      /bin/sh

   konshell       bashshell      cshell          본shell

 

#useradd -u 100 -g other -d /export/home/user100 -m -s /bin/ksh -c "Regular" user100

#useradd user200    -> 설정값 솔라리스가 알아서 지정

 

usermod : 사용자 정보 수정

usermod -u uid -o -----------------

 -o : overwrite : id값 중복허용

 

/etc/passwd :사용자 정보 저장되어있음

#아이디:암호:uid:gid:설명:홈 디렉토리:쉘 순으로 나열

/etc/shadow : 암호 저장되어있음

 

userdel : 사용자 제거

 -r : 디렉토리까지 모두 제거

#userdel user100 : user100 계정정보만 제거 작업했던 디렉토리 남아있음

#userdel -r user200 : user200 계정정보와 디렉토리 모두 제거

 

passwd : 암호변경

#passwd 자기 계정 암호 변경

#passwd id : id 암호 변경

 

groupadd : 그룹추가

groupmod : 그룹id나 이름 변경

groupdel : 그룹제거

groups : 사용자가 속한 그룹 목록 표시

 

system-wide 초기화 파일 : 사용자 전체에게 알리고 초기화

User 초기화 파일 : 특정 사용자에게만 알리고 초기화

 

유닉스 <-> 유닉스 : ssh : 접속 /scp : 카피

#scp 172.16.5.100:/a103.txt /temp/s103.sh            172.16.5.105 서버에 있는 a103.txt 파일을

                                                                       /temp/s103.sh 파일로 복사 (가져오기)
#scp /temp/s103.sh 172.16.5.100:/a103.txt            s103.sh파일을 172.16.5.105서버로 복사

                                                                       (보내기)

윈도우 <-> 유닉스 : winscp

 

반응형

'OS > 리눅스,솔라리스' 카테고리의 다른 글

cron,package,swap  (0) 2014.08.18
디스크관리  (3) 2014.08.14
서버보안, 원격접속관리  (0) 2014.08.13
Process, 압축  (0) 2014.08.12
리눅스 명령어  (0) 2014.08.11
솔라리스9 설치  (0) 2014.08.11
OEL6 설치  (0) 2014.08.11

+ Recent posts