'Computing..'에 해당되는 글 196건

  1. 2007.06.28 질병 관련 사이트 모음
  2. 2007.05.26 글꼴 보기 및 관리 "NexusFont"
  3. 2007.05.26 폴더안의 JPEG 파일의 이름을 일괄 변경 "Rename JPEG Images" v1.2
  4. 2007.05.26 파일의 전체 경로를 클립보드에 복사 "WoLoSoft CopyPath" v1.2
  5. 2007.05.17 너무나도 잘 정리된 UNIX 자료
  6. 2007.05.09 PROJECT 개발 방법론 –아이디어를 문서화 시켜라!
  7. 2007.05.07 인터넷 보안
  8. 2007.05.07 전자상거래의 보안기술 및 암호알고리즘
  9. 2007.05.07 SET(Secure Electronic Transaction)대한 정리
  10. 2007.05.04 컴퓨터와 인터넷 관련 자격증 정보 사이트 모음.. 1
  11. 2007.04.26 그리드 컴퓨팅에 관한 좋은 글..
  12. 2007.04.26 그리드 컴퓨팅(Grid Computing)..
  13. 2007.04.26 판도라TV 관련 임시 파일.. PDRTVn.che..
  14. 2007.04.21 Web 2.0에 관하여.. 2
  15. 2007.04.11 이건희회장의 창조경영이란..
  16. 2007.04.11 IT환경의 진화...
  17. 2007.04.10 Google vs NHN vs Cyworld.. 흥미로운 한판..
  18. 2007.04.07 Web 2.0에 관하여.. 1 1
  19. 2007.04.06 HSDPA에 관하여..
  20. 2007.04.04 내 주민번호 이용 내역을 확인할 수 있네요..
  21. 2007.04.04 종이 절약 프로그램..Fineprint..
  22. 2007.04.02 dll 파일이 삭제되는 등의 이유로 급히 필요할때..
  23. 2007.04.02 mdm.exe 자동 실행 막기..
  24. 2007.04.02 Windows의 주요 Process 정리..
  25. 2007.04.02 vircatch.exe 파일의 CPU 점유율 차지하는 문제 해결법.. 2
  26. 2007.03.31 제가 만든 증권 계산기가 심파일에 등록됬네요..^^
  27. 2007.03.31 가벼운 pdf 읽기 프로그램 .. Foxit Reader .. 1
  28. 2007.03.30 Web 2.0의 실체는 있는가?
  29. 2007.03.30 IT산업의 시장규모, 판매대수, 부가가치별 1등 제품은?
  30. 2007.03.30 시스템 깨끗이 청소..CCleaner..

 질병관련 사이트 안내 모음 

 학회/협회
  대한가정의학회  대한소아과학회  대한이식학회
  대한간암연구회  대한소화관운동학회  대한임상약리학회
  대한간학회  대한소화기내시경학회  대한자궁내막증학회
  대한감염학회  대한소화기학회  대한장연구학회
  대한결핵및호흡기학회  대한순환기학회  대한정맥마취학회
  대한고혈압학회  대한슬관절학회  대한정형외과학회
  대한골관절종양학회  대한신경과학회  대한진단검사의학회
  대한기생충학회  대한신경외과학회  대한척추외과학회
  대한내과학회  대한신경정신의학회  대한초음파의학회
  대한당뇨병학회  대한신장학회  대한피부과학회
  대한대장항문학회  대한안과학회  대한핵의학회
  대한마취과학회  대한알레르기학회  대한혈관외과학회
  대한방사선의학회  대한암학회  대한화학요법학회
  대한방사선종양학회  대한약리학회  대한흉부외과학회
  대한병리학회  대한약사회  산업미생물학회
  대한병원협회  대한외과학회  한국간담췌외과학회
  대한비만학회  대한외상학회  한국병원약사회
  대한산부인과학회  대한의사협회  한국생물공학회
  대한산업보건협회  대한의학유전학회  한국생화학회
  대한생리학회  대한의학회  한국항공우주의학회
  대한세포병리학회  대한이비인후과학회 
 대학/병원
  가천의과대학교  약학대학  이화여자대학교의료원
  길병원, 가천의과대학교  성균관대학교  동대문병원
  가톨릭대학교 중앙의료원  삼성의료원  목동병원
  성모병원  강북삼성병원  인제대학교
  성가병원  삼성서울병원  백병원, 인제대학교
  건국대학교  삼성제일병원  부산백병원
  건국대학교의료원  순천향대학교  상계백병원
  서울병원  순천향대학교병원  서울백병원
  충주병원  구미병원  인하대학교
  건양의과대학  서울병원  인하대학교병원
  건양병원  천안병원  전남대학교
  경북대학교  아주대학교  전남대학교병원
  경북대학교병원  연세대학교의과대학  전남대학교의과대학
  경상대학교  연세대학교의료원  전북대학교
  경상대학교병원  세브란스병원  조선대학교
  경희대학교  영동세브란스병원  조선대학교병원
  경희의료원  원주의과대학  충남대학교
  계명대학교  영남대학교  충북대학교
  동산의료원, 계명대학교  영남대학교의료원  한림대학교
  고려대학교  울산대학교  한림대학교의료원
  안암병원
  서울중앙병원  강남성심병원
  고신대학교  강릉병원  강동성심병원
  복음병원  울산대학교병원
  동산성심병원
  단국대학교병원  원광대학교  춘천성심병원
  동국대학교  원광대학교의료원  평촌성심병원
  동국대학교의료원  을지의과대학  한강성심병원
  서울대학교  을지대학병원  한양대학교
  서울대학교병원  노원을지병원 
 연구지원기관
  과학기술정책관리연구소(STEPI)  정보통신연구관리단(IITA)  서울대 도서관: 
    CD-(주제별): SCI
  한국과학재단(KOSEF)  농림기술관리센터  한국건설기술연구원(KICT)
  에너지자원기술개발지원센터
    (RaCER)
  한국생산기술연구원  의학연구정보센타(Medric)
  한국학술진흥재단
 기관/단체/연구소
  가톨릭골수이식센터  식품의약품안전청  의학도서관, 울산대학교
  가상뇌연구소  의약정보연구소, 숙명여자대학교  정보통신부
  과학기술부  아산생명과학연구소  첨단학술정보센터
  교육부  암연구소, 서울대학교  통계청
  국립보건원  여성의학연구소, 차병원  한국보건사회연구원
  기구학 및 생체역학 연구실  의료기기기술연구소, 연세대학교  한국보건의료관리연구원
  방사선종합연구소  의료정보연구실, 서울대학교병원  한국식품위생연구원
  보건복지부  의약정보전략연구소  한국신약개발연구조합
  보건연구정보센터  의약품연구정보센터, 한국과학재단  한국재활공학연구센터
  삼성생명과학연구소  의학도서관, 서울대학교  한국과학기술단체총연합회
  생체정보시스템공학연구실, 
    인하대학교
  의학도서관, 연세대학교 
 기관/단체/연구소
  Korea Pharm.net  Med Mark: Medical Bookmarks  전자도서관

자료 펌) 대한 간학회(http://www.kasl.org/html/sub05_07.asp)



반응형
Posted by 따뜻한 세상
,

 글꼴 보기 및 관리 "NexusFont"


개인 개발자인 노정훈님이 제작하신 폰트 보기 프로그램입니다. 정말 좋은 부분은요, 폰트를 설치하지 않고도 결과를 확인할 수 있다는 것입니다. 
이전까지는 외산 프로그램인 font fitting room deluxe를 썼는데요, 쉐어웨어라 불편했는데..
NexusFont 너무 좋으네요......

개발자 노정훈님께 너무 감사드립니다.
게다가 무료로.......

프로그램 다운로드) http://xiles.net/
프로그램 도움말) http://xiles.net/help/nexusfont/

NexusFont 는 윈도에 설치되어있는 폰트들의 모양을 쉽게 볼 수 있도록 도와주는 프로그램입니다. 그래픽 작업을 할 경우 많은 폰트들 가운데 사용할 폰트를 골라야 할 경우 일일이 그래픽 프로그램에서 폰트들을 다 선택해본다는건 매우 힘든 일입니다. 앤티앨리어싱 처리된 모습도 볼 수 있어 그래픽 작업에 많은 도움이 됩니다. 설치되어있지 않은 글꼴도 미리 보고 설치할 수 있습니다.

주요 기능

1. 한글글꼴 지원
대부분의 외산 글꼴 뷰어/관리 프로그램들이 한글을 제대로 지원하지 못하지만
NexusFont는 거의 완벽하게 한글 폰트를 지원합니다. 

2. 유니코드 지원
유니코드로 프로그래밍되어 OS의 언어에 상관없이 사용이 가능하며, 입력 문장
및 글꼴이름, 파일명 등이 다국어로 되어 있어도 처리 가능합니다.

3. 쉬운 글꼴분류 및 관리
글꼴 파일이 있는 폴더별로 또는 자주사용하는 그룹별로 나누어서 관리할 수 있고,
각 그룹별로 쉽게 글꼴들을 볼 수 있습니다.

4. 중복 글꼴 찾기
여러 폴더 내에 같은 글꼴들을 검색하여 삭제할 수 있습니다.
많은 글꼴을 관리하는 경우 중복된 글꼴이 여기저기 있는 경우가 있는데, 이런 경우
쉽게 중복글꼴을 찾을 수 있습니다.

5. 글꼴 파일명 글꼴명과 동일하게 변경하기
글꼴 파일명을 일괄적으로 글꼴명과 동일하게 자동으로 변경해줍니다.

6. 앤티앨리어싱(부드럽게 보기)
앤티앨리어싱 처리된 글꼴 모양을 보여줌으로써 그래픽 작업시와 좀 더 비슷하게
봄으로써 글꼴 선택을 쉽게 할 수 있습니다.

7. 글꼴 설치/제거
윈도우에 설치된 글꼴을 제거하거나, 새로 받거나 모아둔 글꼴을 설치하기 전에
미리 보고 원하는 글꼴만 선택하여 설치할 수 있습니다.
(글꼴 파일을 원하는 곳으로 복사하거나 원래 위치에 남겨둘지 선택하여 설치 가능합니다.)

8. 인쇄
글꼴들을 인쇄하여 보실 수 있습니다.

9. 이미지로 저장
글꼴 목록을 하나의 이미지 파일로 또는 각 글꼴별로 이미지 파일로 저장시킬 수 있습니다.

사용자 삽입 이미지


반응형
Posted by 따뜻한 세상
,
반응형
Posted by 따뜻한 세상
,



CopyPath-1.2.msi

WoLoSoft CopyPath는 파일의 전체 경로를 클립보드에 복사해주는 프로그램입니다.
프리웨어라 더 좋으네요..^^

탐색기의 마우스 우측 쉘 메뉴에서 삽입되어 지는 프로그램으로 따로 실행파일이 만들어지지 않고 탐색기에서 파일을 마우스 우측 버튼으로 누르면 나오는 쉘 메뉴를 이용해서 기능을 사용할 수 있습니다.

탐색기에서 원하는 파일을 선택한 후 마우스 우측 버튼을 누르면 Copy Path to Clipboard 메뉴가 나타나고 이 메뉴를 클릭한 후 적당한 곳에 붙여넣기를 하시면 파일의 전체 경로를 복사할 수 있습니다.


사용자 삽입 이미지


다운로드 사이트) http://www.wolosoft.com/en/copypath/


반응형
Posted by 따뜻한 세상
,

자료출처 = http://blog.naver.com/swinter8

저자 소개

Dept. Computer science of Engineering

Moon Jun Hyun

email : imp@bravo.kwangju.ac.kr

ps. 기고를 해주신 Moon Jun Hyun 님께 감사를 드립니다.

UNIX의 역사
  • 1960년 대말 AT&T의 Bell 연구소와 MIT 대학 공동으로 Multics 운영체제 개발
  • 1969년 Bell 연구소 연구원 Thompson이 Ritchie의 도움으로 파일 유틸리티(cp, mv) 및 Shell 명령어 해석기 개발
  • Multics와 유사한 발음으로 UNIX(Brian이 제안)라 명명함
  • 1971년 Ritchie가 B를 기초로 프로그램 언어인 C 개발
  • 1973년까지 기존의 UNIX를 C로 재작성
  • 1970년대 Bell 연구소에서 대학에 UNIX를 저가로 판매
  • 이후 여러 연구소와 단체가 UNIX에 중요한 기능을 추가
  • HP사와 SUN, DEC 등의 회사가 UNIX 개발에 참여
  • 현재 PC 부터 Super-Computer까지 널리 보급됨
목차
  • UNIX 소개
  • UNIX 기본
  • UNIX 활용
  • System Administration
  • Boot and Shutdown
  • UNIX File System Management
  • User and Group Management
  • Administration Commands
  • Installing Software
  • Backups and Restores
  • Network Management
UNIX 소개
  • UNIX의 정의
    • 컴퓨터에서 프로그램을 실행시키고 자원을 관리하는 운영체제의 일종
      주로 대형 서버나 Workstation 에서 사용됨
    • System V계열과 BSD계열이 있음
    • PC 에서 사용하는 Linux역시 UNIX 계열의 OS임
  • UNIX의 특징
    • Multi-user : 여러 사용자가 사용 가능하다.
    • Multi-tasking : 사용자가 여러 프로그램을 동시 실행 가능하다.
    • Multi-choice : 다양한 사용자 인터페이스 지원된다.
    • 이식성(Portability)이 좋다.
    • 컴퓨팅 환경의 확장이 용이하다.
  • UNIX의 역사
    • 1960년 대말 AT&T의 Bell 연구소와 MIT 대학 공동으로 Multics 운영체제 개발
    • 1969년 Bell 연구소 연구원 Thompson이 Ritchie의 도움으로 파일 유틸리티(cp, mv) 및 Shell 명령어 해석기 개발
    • Multics와 유사한 발음으로 UNIX(Brian이 제안)라 명명함
    • 1971년 Ritchie가 B를 기초로 프로그램 언어인 C 개발
    • 1973년까지 기존의 UNIX를 C로 재작성
    • 1970년대 Bell 연구소에서 대학에 UNIX를 저가로 판매
    • 이후 여러 연구소와 단체가 UNIX에 중요한 기능을 추가
    • HP사와 SUN, DEC 등의 회사가 UNIX 개발에 참여
    • 현재 PC 부터 Super-Computer까지 널리 보급됨
UNIX의 기본 - login
  • Login
    • Consol이나 Terminal을 이용해서 UNIX Server에 접속하는 과정
    • UNIX가 Multi-user환경이기 때문에 각각의 사용자들의 정보를 보호하기 위함
  • login 과정
    • telnet <자신이 접속하고자 하는 서버 이름>
    • 예) telnet bravo
    • login: <사용자 계정>
    • 예) login : imp
    • Password: <사용자 계정 비밀번호>
    • 예) password : (활성화 되지 않음 )
UNIX의 기본 - Shell
  • Shell
    • DOS의 command.com과 비슷한 역할
    • 프로그램으로 명령을 입력 받아 이를 해석하고 처리해 주는 역할을 수행
    • UNIX는 Multi-choice 환경으로 사용자가 선택 가능함
  • Shell의 종류
    • C Shell - 현재 가장 많이 사용됨
    • Bourne Shell - Linux의 기본 Shell
    • Korn Shell
    • Bourne again Shell
    • tcsh
  • 자신의 Shell 알아보기
    • ps -f
      • sh : Bourne Shell
      • csh : C Shell
      • ksh : Korn Shell
  • 사용자 환경 설정 파일(C Shell 인 경우)
    • .cshrc : DOS의 config.sys(여러 가지 초기화 명령)와 비슷함
    • .login : terminal setup 관련 내용이 들어있음
    • .profile : User만의 독특한 설정 파일
    • .logout : logout 할 때 행하고자 동작 명시
UNIX의 기본 - 환경 설정
  • 기본적 .cshrc file 내용


  • 기본적 .login file과 .profile내용


UNIX의 기본 - 기본 명령어
  • passwd (change login passwd)
    • 패스워드를 바꾸는 명령
    • 영문, 숫자를 섞어서 6~8자 내외
    • 첫번째로 숫자나 특수문자가 올 수 없음
  • exit, logout
    • 접속을 종료할 때 사용
  • whoami
    • 현재의 user name을 나타내 줌
  • who (who is logged in, what are they doing)
    • Username, 접속 방법, login time, 접속 IP Address 등
  • id
    • user id 와 user가 속한 group id를 알려줌
  • cal [month] [year]
    • % cal 12 1999 => 1999년 12월 달력을 보여줌
  • env
    • 자신의 설정된 환경 변수들을 보여줌
  • pwd
    • 현재 자신의 directory 를 보여줌
  • cd (change working directory)
    • % cd => user의 Home directory로 이동
    • % cd .. => 현재 directory의 상위 directory로 이동
    • % cd [directory 경로] => 정해진 directory로 이동
  • ls (list contents of directory)
    • 현재의 directory 내용을 보여줌(DOS의 dir 명령과 같다)
    • 예) % ls [-option] [filename]
    • option
      • -a : 숨겨진 파일(‘.’으로 시작하는 파일)까지 보여줌
      • -l : file에 대한 자세한 내용을 보여줌

      • -R : 하위 directory의 내용까지 보여줌
      • root directory에서는 사용하지 말 것.
      • -s : file의 대략적인 크기를 보여줌
      • -t : 최근의 사용순서대로 정렬하여 보여줌
      • (최근에 사용한 file을 찾을 때)
    • option의 중복 사용 가능
      • 예) % ls -alr
      • 숨겨진 file 까지 하위 directory의 내용까지 자세하게 보여줌
  • date (date) : 시스템의 날짜와 시간의 표시
    • 형식 date [MMDDhhmm[YY]]
      • date [+format]
    • 기능
      • 시스템의 현재 시간과 날짜를 표시한다. Superuser는 시간과
        날짜를 변경시킬 수 있다. +format을 사용하여 date의 출력 형식을 명시할 수 있다.
    • option
      • a abbreviated weekday-sun to Sat
      • h abbreviated month-Jan to Dec
      • D date in mm/dd/yy format
      • J Julian date (001-366)
      • r time in A.M/P.M notation
      • T time in HH:MM:SS format
    • 예) % date
      • Weds May 24 14:23:45 KST 1995
      • % date 0524156
      • Weds May 24 15:36:00 KST 1995
      • % date “ +Date = %D Time = %T”
      • Date = 05/26/95 Time = 13:12:07
  • time (time) : 커맨드의 실행시간 표시
    • 형식 time command
    • 기능 command를 실행하고 아래와 같은 실행 시간을 표시함
      • real 전체 실행시간의 Total
      • user CPU의 활동 시간
      • sys 커널의 활동 시간
    • 예) % time cc average .c
      • 4.3 real 1.2 user 1.4 sys
  • touch (change file access and modification times)
    • file의 최종 수정시간을 변경시켜줌
    • 예) % touch [filename]
      • 만약 file name에 해당하는 file이 없는 경우 file 생성
  • du (disk usage)
    • 현 directory의 하위 directory들이 사용하고 있는 디스크 용량을 보여줌
    • option
      • -s : 사용 총량만을 알려줌
      • -a : 모든 file의 사용량을 알려줌
  • df (disk free)
    • 디스크의 총량과 사용량 남은 량 들을 알려줌
    • -k option 사용 시 킬로바이트 단위로 보여줌
  • chmod (change mode) : 파일 액세스 모드의 변경
    • 형식 chmod mode files(s)
    • 기능 파일의 사용 허가권(모드)를 변경한다.
    • option


    • access permission
      • r read
      • w write
      • x execute
      • l set locking privilege
      • s set user or group ID mode
      • t set sticky bit(save text) mode
      • u user’s current permission
      • g group’s current permission
      • o other’s current permission
    • 예) chmod 644 test
      • chmod 755 test
      • chmod a+x test
      • chmod o-w test
  • umask (user mask) : 파일 생성시 허가권 요청에 대한 마스크 설정
    • 형식 umank mask
    • 기능 파일을 생성할 때 사용자가 요청하는 허가권에 대하여 시스템이 제한을 가하는 make값을 설정한다. 인수를 정하지 않으면 파일 생성 허가권의 현재 값을 표시한다.
    • option & mask
      • 0 not to restrict any permission
      • 1 to restrict execute permission
      • 2 to restrict write permission
      • 4 to restrict read permission
    • 예)
      • umask 22 test
      • umake 000 test
  • chown (change file ownership)
    • File의 소유권을 다른 사람에게 넘겨주는 명령
    • 예) % chown [소유자] [file name]
  • chgrp (change file group ownership)
    • File의 소유권을 다른 그룹으로 넘겨주는 명령
    • 예) % chgrp [group] [filename or directory]
  • cp (copy files)
    • File을 복사하는 명령
    • 예) % cp [복사할 file name] [복사될 경로]
    • cp 명령은 Meta 문자(‘*’, ‘-’)를 사용 가능함
    • 예) % cp test* ../
  • cat (concatenate and display files)
  • File의 내용을 보여주는 명령.
    • 별로 크기가 크지 않은 text file을 볼 때 사용
    • 예) % cat test.file
    • option
      • % cat -s test.file : 공백라인을 삭제하고 보여줌
      • % cat -n test.file : 화면에 line number를 붙여줌
  • mv (move file)
    • File을 옮기는 명령, 사용법은 cp와 같음.
    • Mv 명령으로 file명을 바꿀 수 있음
    • 예) % mv test.file test.test
  • rm (remove)
    • File을 지우는 명령
    • 예) % rm test*
    • rm -r option은 아주 강력하고도 위험한 명령임.
  • mkdir (make directory)
    • 새로운 directory를 만드는 명령
  • rmdir (remove directory)
    • Directory를 삭제하는 명령
  • chsh (change shell)
    • 자신의 shell을 바꾸는 명령. 이 명령이 없는 경우도 있음.
    • ‘sh’는 bourn shell, ‘ksh’은 korn shell, ‘csh’ 은 C shell로 바꿈
  • file (determine file type)
    • File의 종류가 무엇인지를 알려줍니다.
    • 예) % file [filename]
  • head (display first few lines of files)
    • File의 처음 몇 개의 행을 보여주는 명령
    • 예) % head [-n] [filename] -> ‘n’개의 line을 보여줌
  • tail (deliver the last part of a file)
    • File의 끝부터 몇 개의 행을 보여주는 명령
    • 예) % tail [-n] [filename]
  • cat (concatenate and display files)
    • File의 내용을 보여주는 명령.
    • 별로 크기가 크지 않은 text file을 볼 때 사용
    • 예) % cat test.file
    • option
      • % cat -s test.file : 공백라인을 삭제하고 보여줌
      • % cat -n test.file : 화면에 line number를 붙여줌
  • more (browse or page through a text file)
    • File의 내용을 볼 때 사용하는 명령. File의 내용을 한 화면씩 보여줌. 스페이스바를 누르면 다음 화면이 스크롤 됨.
    • 예) % more [option] [filename]
    • option
      • -s : 공백 line을 제거하고 보여줌
      • +n : ‘n’ line부터 보여줌
      • +/문자열 : 그 문자열이 있는 곳부터 보여줌
    • q : 종료
    • v : 현재 line에서 vi 편집기를 시작함
    • = : 현재의 line number를 알려줌
    • Ctrl-B : 한 화면 전으로 스크롤 됨
  • pg (files perusal filter for CRTs)
    • more와 비슷한 기능을 제공. 이전 화면을 볼 수 있는 기능
    • Enter키를 누르면 다음 화면을 보여줌
    • 예) % pg [option] [filename]
    • option
      • -s : 공벽 line 제거
      • +n : n번 line부터 보여줌
      • +/문자열 : 그 문자열이 있는 위치부터 보여줌
      • nl : n번 line을 보여줌
      • +nl : 현재부터 n행 후의 내용을 보여줌
      • -nl : n행 이전의 내용을 보여줌
      • /문자열 : 문자열 검색
      • // : 반복되는 패턴 검색
      • . : 현재 화면 재 출력
      • v : vi 편집기 실행
UNIX의 기본 - redirection & pipe
  • redirection
    • 출력 방향을 변경시킴
  • pipe
    • 한번에 여러가지 명령을 처리할수 있음
  • 출력 방향 변경 (‘>’)
    • 우선 file을 생성. ‘%’은 프롬프트임.
    • % touch test : 빈 file 생성
    • % cat test : 아무것도 나타나지 않음
    • % ls -al > test : 화면상엔 변화가 없음
    • % cat test : --
  • uniq (report or filter out repeated lines in a file)
    • 중복된 line, 공백 들을 제거하고 출력하는 명령
    • option
      • -d : 반복되는 line만 출력
      • -c : 중복된 횟수만 출력
      • -u : 반복되지 않은 line만 출력
      • % cat >> test
      • Hello
      • Enter
      • Enter
      • ^Ctrl-D
      • % cat test
      • % uniq test
  • 출력 방향 변경 추가 (‘>>’)
    • % ls -al >> test : 역시 화면 변화 없음
    • % cat test : test file에 내용 추가됨
    • % rm test* : test로 시작하는 모든 파일 지움
  • cat을 이용 edit하는 방법
    • % cat > test
    • 이것은 test입니다. : 문자열 입력후 enter
    • ^Ctrl-D
    • % cat test : ??
  • cat을 이용한 문자열 추가 방법
    • % cat >> test
    • 이번엔 추가입니다. : 문자열 입력후 enter
    • ^Ctrl-D
    • % cat test : 내용이 추가됨
  • 입력 방향 변경 (‘<‘)
  • wc(display a count of lines, words and characters in a file)
    File안의 line수와 단어 수 그리고 문자의 수를 세를 명령
    • option : -l : line 수 -w : 단어의수 -c : 문자의 수
      • % wc test
      • % wc < test
      • % cat test | wc : 모든 line, 단어, 문자의 수가 출력됨
  • Pipe : 파이프
    • Pipe는 명령의 출력을 다른 명령으로 연결할 때에 사용됨
      • % who > wc -l
      • % ls -al
      • % who | wc -l
  • uniq (report or filter out repeated lines in a file)
    • 중복된 line, 공백 들을 제거하고 출력하는 명령
    • option
      • -d : 반복되는 line만 출력
      • -c : 중복된 횟수만 출력
      • -u : 반복되지 않은 line만 출력
      • % cat >> test

        Hello
        Enter
        Enter
        ^Ctrl-D

      • % cat test
      • % uniq test
UNIX의 기본 - Meta Characters
  • Meta Charcters
  • 다른 문자와는 다르게 독립적으로 다른 의미를 가지고 사용되는 문자
    대표적 Meta Charcters
    • * ? [ ] : Wild card charcters
    • > >> < | : Redirection charcters
    • & : Background job charcters
    • $ : Shell 변수의 값을 이용할 때
    • % ls t* : ‘t’로 시작되는 모든 문자와 대체됨
    • % ls t? : ‘t’로 시작되는 두문자와 대체됨( ?가 하나의 문자 )
    • [a-r] : a에서 r까지의 문자와 대체됨
    • % game & : game을 백그라운드로 실행함
    • % echo $path : 환경변수 path의 값을 보여줌
UNIX의 기본 - 추가 명령어
  • man (find and display reference manual pages)
    • 각 명령어에 대한 online 도움말을 제공함
    • 예) man [명령어]
      • 이 명령은 자동으로 ‘more’명령을 수행한다.
  • sort (sort, merge, or sequence check text file)
    • 정보를 지정한 방식으로 정렬해 주는 명령
    • 예) sort [filename]
    • option
      • -d : 사전식 정렬
      • -f : 대문자를 소문자로 간주
      • -n : 숫자로 정렬
      • -r : 역순 정렬
      • +m : m번째 필드로 정렬한다.
    • % sort test
    • % cat test
    • % ls -al | sort -f : 알파벳순 정렬
    • % ls -s |sort -n : 크기순 정렬
    • ls -s | sort -n > list : list라는 정렬된 file 생성
  • spell
    • 철자 검사를 하는 명령(대부분 소형 시스템에서는 사용 안함)
  • nl (line numbering filter)
    • line 번호를 붙여주는 명령 = cat -n 과 같은 기능
    • 예) nl [filename]
      • % nl test
      • %cat -n test : 두 명령이 같은 결과를 냄
      • % ls -al | nl
    • option
      • -ba : 공백에도 번호를 붙임
      • -bp문자 : 문자가 있는 line만 번호를 붙임
      • -s문자 : 번호와 line을 지정한 문자로 분리해 줌
      • % ls -al > test
      • % echo ” ” >> test
      • % echo ” ” >> test
      • % ls -al >> test
      • % nl test
      • % nl -ba test
      • % nl -bptest test
      • % nl test -s번째
  • banner (make posters)
    • 입력한 문자를 banner style로 찍어준다.
    • 예) % banner Good-morning!
  • bc (arbitrary precision arithmetic laguage)
    • UNIX에서 제공하는 간단한 계산기(4칙 연산)
    • 예) % bc

      % bc
      1+2+3+4+5+6+7+8+9 <enter>
      45 : 정답
      종료는 ^Ctrl-D 입력

UNIX의 기본 - 압축 명령어
  • tar (crete tape archives, and add or extract files)
    • File을 묶어주는 명령(압축은 하지 않음)
    • File을 묶을 때
      • % tar cvf [만들 filename.tar] [압축하고자 하는 대상]
    • File을 풀 때
      • % tar xvf [풀고자 하는 filename] [풀어놀 ditectory]
    • File을 풀지 않고 내용만 보고자 할 때
      • % tar tvf [보고자 하는 filename]
  • compress
    • File 압축 명령
    • 예) % compress [filename] : filename.Z가 생성됨
      • % compress temp.tar : temp.tar.Z라는 file이 생성됨
    • option
      • -v : 압축률을 보여줌
      • 예) % compress -v temp.tar
  • uncompress
    • File 압축 해제 명령
    • 예) uncompress [압축된 filename] : 원래의 file이 됨.
  • find (find files)
    • 찾고자 하는 file의 위치를 알려주는 명령
    • 예) find [path] [-option] [pattern]
    • option
      • -atime [n] : file이 n일 전에 touch(접근)되었으면 ‘true’
      • -ctime [n] : file이 n일 전에 생성되었으면 ‘true’
      • -exec [command] : 명령을 실행
      • -mtime [n] : file이 n일 전에 수정되었으면 ‘true’
      • -name [pattern] : 패턴에 맞는 file명이면 ‘true’
      • -type [file 종류] : file이 종류가 맞으면 ‘true’
      • ‘d’ : directory, ‘f’ : file, ‘l’ : link
      • -user [name] : file의 사용자가 name이면 ‘true’
    • 예) % find . -name “*.c” : 현재 디렉토리 밑에 .c로 끝나는 file 검색
      % find /usr1 -user “imp” : file의 소유자가 imp인 모든 file 검색
UNIX의 기본 - 정보 검색 명령
  • grep (search a file for a pattern)
    • File 내에서 정보를 검색하는 명령
    • 예) % grep [flag] [pattern] [filename]
    • option
      • -c : 일치되는 라인의 수만을 출력
      • -i : 패턴에서 대소문자 구별 무시
      • -l : 패턴에 일치하는 file의 filename만 출력
      • -n : line 번호 포함
    • 검색의 예
      • % grep imp /etc/passwd : /etc/passwd file에서 imp라는 문자를 검색
      • % grep csh /etc/passwd | wc -l
        • /etc/passwd file에서 C Shell을 쓰는 사용자수 검색
  • echo (echo argument)
    • 입력된 명령을 반향(반복)한다.
    • 예) % echo [문자열]
      • % echo * : ls와 같은 기능을 함. ‘*’는 임의의 문자를 의미
      • % echo ? : ls ? 와 같음 ‘?’는 한 문자를 의미
      • % echo t* : t로 시작하는 모든 문자열
  • << (hear current)
    • <<는 >>와 같은 흐름 재지정 명령(Redirection)이다.
    • <<는 입력을 모사(simulate)하는데 쓰인다.
    • 사용 예
      • % cat -n << endtest > myenv : text의 마지막에 endtext를 입력

        my Home Directory is $home
        my Path is $path
        current Directory is $cwd
        endtext

      • % cat myenv
  • sed (stream editor)
    • sed는 파이프라인의 정보의 흐름을 편집하는 명령이다.
    • 예) sed ‘s/피대체어/대체어/플래그’
    • 대표적인 플래그는
      • g : line의 모든 패턴을 대체함. ‘g’를 쓰지 않으면 한 line에서 하나만을 대체한다.
      • ‘;’ : 여러 sed명령을 함께 실행할 수 있다.
      • % who : 이 화면 출력과 다음의 화면 출력을 비교해 보시오.
      • % who | sed ‘s/pts/Device/’
      • % more /etc/passwd
      • % more /etc/passwd | sed ‘s/:/-/g
  • awk (pattern scanning and processing language)
    • 단어 중심으로 text를 분석하는 명령. UNIX에서 가장 강력한 filter중 하나
    • awk는 입력되는 정보를 필드로 나누어 받아들입니다. 필드는 ‘$n’으로 구분함
    • 예) % awk ‘[command]’ : 가장 일반적 명령은 print임
      • % awk ‘[command]’ [filename]
      • % who | awk ‘{print $1}’
      • % who | awk ‘{print “ user ” $1 “ is on terminal ” $2}’
    • Flag
      • -f : 명령의 세부 사항을 file로부터 읽음
      • -F문자 : 입력되는 정보의 필드구분자로서 ‘문자’를 쓴다는 것임
      • % awk -F : ‘{print $7}’/etc/passwd | sort | uniq -c : -c는 중복된 수
    • $0는 line전체를 가르킴
    • 사용 가능한 특수문자
      • “\t” : tab
      • “\n” : 개행 문자
      • 예) % ls -lF | awk ‘{print $5 “\t” $9}’
    • awk 프로그램은 language처럼 변수의 사용이 가능함
      • % ls -l | awk ‘{total = total+$5; print total “\t” $9}’
      • % ls -l | awk ‘{total += $5; print total “\t” $9}’
    • Awk에서 사용되는 유용한 변수
      • NF : number of filed의 뜻으로 마지막 필드의 수를 알 수 있음
      • NR : ordinal number the current record의 뜻으로 행의 수와 같음
      • % awk -F ‘{print $NF}’ /etc/passwd | sort | uniq -c
      • % ls -l | awk ‘{print NR “:” $0}’
  • tee (replicate the standard output)
    • 정보의 흐름을 복사하는 명령. 정보의 흐름을 둘로 쪼개는 것
    • option
      • -a : file에 덮어쓰지 않고 첨가하라는 명령
      • % who | tee who.out : 화면에 who 의 출력도 나오고 who.out이란 file에 출력의 내용이 저장됨
    • 와일드 카드 ‘[ ]’ 를 써서 문자의 영역 지정 가능
      • % ls -l a* b* c* d*
      • % ls -l [abcd]*
      • % ls -l [a-d]*
      • % ls -l [d-f m .]* : d에서 f, m, 도는 ‘.’로 시작하는 file 검색
  • whereis (location the binary, source, and manual page file for a command)
    • 시스템 경로상의 어디에 위치하는가를 알려주는 명령
    • 예) whereis [찾을 filename]
      • % whereis mkdir
      • mkdir: /usr/bin/mkdir /usr/man/man1/mkdir.1 /usr/man/man2/mkdir.2
UNIX의 기본 - 작업 제어 명령
  • Process
    • UNIX에서 실행 중인 모든 프로그램
    • UNIX는 여러 개의 Process가 동시에 수행 가능함
    • OS차원의 Process scheduling을 지원함
    • 각 Process는 Process ID(PID)를 가지고 있고, 또 상태를 가지고 있음
    • UNIX의 Process는 계층적 구조를 가지고 있음
    • 현재 사용되는 있는 Process는 Foreground라고 하고 잠시 중단되거나 뒤편으로 넘겨논 상태
    • 의 모드를 Background라고 함
    • 예) % man fg : fg에 대한 매뉴얼 페이지를 보여주는 명령
      Ctrl-Z : 작업 중단
      % jobs : 현재의 백그라운드 작업 내용을 보여주는 명령
      [1] +중단됨(사용자) man fg
      % fg : 다시 Foreground로 작업이 넘어옴
    • ^Ctrl-Z를 누름으로써 작업을 백그라운드로 전환할 수 있다.
    • jobs명령으로 작업의 내용을 볼 수 있음
    • fg명령으로 다시 Foreground로 다시 작업을 전환할 수 있음
    • 사용자의 입력을 요하거나 화면에 출력을 해야 하는 Process들은 Background에서는 실행이 중지됨
    • 사용자의 입력이 필요 없는 경우나 잠시 실행을 중지시킬 때 Background로 Process를 실행시켜야 함
    • Background에서 중지되어 있는 명령 Background에서 실행시키려면 bg명령을 줌
    • 프로그램을 Background로 바로 보낼 때는 명령의 끝에 ‘&’를 줌
    • 예) % find / -name “*text*” > test.bg & : text라는 문자열이 들어간 모든 file을 찾아 test.bg에 넣는다.
  • fg
    • Background의 Process를 Foreground로 실행함
    • 예) % fg %[작업ID] : 작업 ID는 jobs를 실행했을 때 제일 앞에 나오는 수
  • bg
    • Background의 중지된 Process를 실행시킴
    • 예) % bg %[작업ID]
  • jobs
    • Background의 작업들의 상태를 보여줌
  • ps (report process stastus)
    • Process의 상태를 보여주는 명령
    • option
      • -a : 현재의 터미널과 연관된 모든 Process를 보여줌
      • -A : 현재 시스템의 모든 Process를 보여줌
      • -e : 현재 실행중인 모든 Process를 보여줌
      • -l : 자세한 Process의 정보를 보여줌
  • kill (terminate or signal processes)
    • Process를 강제 종료시키는 명령
    • 예) % kill [-signal] [PID] [&JOB ID]
    • signal
      • -l : signal의 목록 제공
      • -9 : 무조건 종료시키는 강력한 명령
      • 예) % man ps &

        % ps
        % jobs
        % kill [PID] or [%JOBID]
        % ps
        % jobs

UNIX의 활용 - VI Editor
  • VI
    • UNIX에서 주로 사용하는 화면지향 편집기
  • Terminal 설정
    • % vi 라고 입력했을 때 에러(error)가 나는 경우
    • csh(C Shell) : .login file에 setenv TERM vt100
    • sh(Bourne Shell) : .profile file에 TERM=vt100; export TERM
  • Mode
    • 명령 모드 : 명령을 입력할 수 있는 모드
    • 입력 모드 : ‘I’를 입력하여 입력이 가능한 모드
  • vi를 이용한 문서 작성
    • % vi [작성할 file name]
  • 커서의 이동
    • 문자 단위의 이동
      • 대부분의 터미널에서는 화살표키로 이동 가능
      • 만약 화살표카가 지원되지 않는 경우는 다음의 키를 이용


    • 줄단위의 이동
      • n : 현재 행으로부터 n번째 행으로 이동
      • + : 다음 행의 처음으로 이동
      • - : 이전 행의 처음으로 이동
    • 단어, 문장 절 단위이동
      • f 문자 : 다음에 나타나는 “문자”로 이동
      • F 문자 : 이전에 나타나는 “문자”로 이동
      • ( : 문장의 처음으로 이동
      • ) : 문장의 끝으로 이동
      • ; : 같은 방향으로 다음 “문자”로 이동
      • { : 커서가 인접한 패러그래프의 시작위치로 이동
      • } : 커서가 인접한 이전 패러그래프의 시작위치로 이동
    • 화면 단위 이동
      • ^B : 이전 화면으로 이동
      • ^F : 다음 화면으로 이동
      • ^U : 반화면 앞으로 이동
      • ^D : 반화면 뒤로 이동
      • z :커서의 위치를 화면의 Top으로 스크롤
      • z. : 커서의 위치를 화면의 중앙으로 스크롤
      • z- : 커서의 위치를 화면의 bottom으로 스크롤
      • ^L : 화면의 재 출력
  • 삽입과 지우기, 복구, 교체
    • 삽입
      • i : 현재 커서의 위치부터 삽입
      • a : 현재 커서의 위치 다음부터 추가 시작
      • A : 현재 줄의 마지막에 추가 시작
      • I : 현재 줄의 처음에 추가 시작
      • o : 현재 라인의 아래에 새로운 라인을 열어준다.
      • O : 현재 라인의 위에 새로운 라인을 열어준다.
    • 지우기
      • x : 커서 위치의 한 문자를 지운다.
      • X : 커서 이전의 한 문자를 지운다.
      • dd : 현재의 행을 지운다.
      • ndd : n개의 라인을 지운다.
      • dG : 현재 행부터 file의 끝까지 지운다
      • d0(숫자 0) : 행의 시작부터 현재 앞 문자까지 지운다.
      • d1G : 현재 행부터 file의 시작까지 지운다.
      • dnG : 현재 행에서 n번째까지 지운다.
    • 복구
      • p : 버퍼의 내용을 현재 줄 이전에 복구한다.
      • P : 버퍼의 내용을 현재 줄 다음에 복구한다.
      • VI -r [작업하던 file name] : 시스템이 갑자기 꺼졌을 때 복구 명령
    • 교체
      • cw : 현재 위치에서 단어 교체
      • cfc : 현재 위치에서 'c' 문자까지 변경
      • ' . ' : VI에서 마지막 명령을 반복하라는 뜻이다.
  • 검색 치환
    • 검색
      • /문자열 : 문자열을 앞으로 검색한다.
      • ?문자열 : 문자열을 뒤로 검색한다.
    • 치환
      • [범위]s/old/new/[cgi] : old를 new로 치환해 준다.
      • [범위] : 숫자, $, .(현재 위치)등을 지정한다.
      • [cgi] : c는 변경시 변경여부를 묻는 플래그
      • g는 한 줄의 모든 것을 변경하는 것이고 I 는 검색시 대소문자를 구분하지 않는다.
      • 예) 10,$s/old/new/g : 10줄에서 파일의 끝까지 수행

        g/foobar/s/bar/baz/g : 전체 file에서 “foobar”를 찾아서 “foobar” 중 bar를 baz로 치환한다.

  • 블록 명령
    • 블록을 file에 저장, 첨가
      • 명령모드 ":" 프롬프트 상에서
      • : 10,20w [file name] : 블록을 file에 저장
      • : 10,20w >> [file name] : 블록을 file에 추가
    • 블록 읽어 오기
      • : 10,20r [file name] : 10에서 20까지에 file을 읽어 현재 줄에 삽입
    • 블록 자르기
      • 여러분이 수정을 하거나 삭제를 하면 버퍼에 그 내용을 복사를 합니다. 여기서 필요한 부분을 버퍼에 복사하는 것을 yank 라 합니다. 이 내용을 나중에 다시 불러와서 사용할 수 있습니다.
      • buffer에도 이름을 부여하여 블록을 저장할 수 있습니다. ( " 사용)
      • "name5dd : 현재 줄에서 5줄을 삭제하고 name으로(여러분이 부여한) 버퍼에 기록
    • 블록 복사
      • yw : 한 단어 버퍼에 기록
      • y$ : 줄의 끝까지 기록
      • yy : 현재 줄을 버퍼에 기록
      • 역시 name을 주어 buffer에 기록 할 수 있다.
    • 블록 붙이기
      • 커서를 원하는 곳으로 이동한 후
      • p : 현재 커서 위치 오른쪽에 추가한다.
      • P : 현재 커서 위치 왼쪽에 추가한다.
      • namep : buffer에 있는 name의 블록을 현재 위치에 추가
    • 다른 file 편집
      • % vi file file file file ......
      • 다른 file로 이동할 때는 : 프롬프트 상에서 :n 이라 입력한다.
      • : shell 이라 치면 VI를 종료하지 않고 shell 화면으로 나갈 수 있다.
      • 다시 VI로 이동할 때는 exit라 입력한다.
  • VI 환경 설정
    • VI에도 환경을 설정할 수 있습니다.
    • Vi 상태에서 :set all을 입력하면 현재 사용중인 VI의 옵션 지정상태를 볼 수 있습니다.
    • 이러한 옵션은 여러분의 HOME DIRECTORY에 .exrc란 file에 지정하지 않으면 디폴트값을 사용합니다.
    • 다음은 현재 저자의 .exrc 의 내용입니다.


  • VI 중요한 옵션

    옵션

    약자

    Default Value

    의미

    autoindent ai noai 자동 들여쓰기, 즉 바로 전의 행과 시작을 같이함
    ignorecase ic noic 탐색에 있어 대소문자를 구별하지 않음
    magic   magic * [ ~ 등을 탐색 또는 정규 표현식의 와일드 카드로 또는 메타문자로 사용
    numver nu nonu 에디터 각 행에 행번호가 매겨짐
    redraw   noredraw 각 문자를 항상 알맞은 위치에 나타내 줌
    noredraw은 1200보울 이하의 느린 터미널에 쓰임
    tabstap ts ts=8 Tab키 또는 Ctrl-I에 대응되는 공백의 개수 저장
    wrapscan ws ws / 또는 ? 연산자로 탐색을 하는 경우 사용됨
    wrapmargin wm ws=0 오른쪽 여백의 크기를지정
UNIX의 활용 - 자신의 환경 만들기
  • History
    • C shell 과 Korn shell은 여러분이 입력함에 따라 명령표를 만들어내고 각각에 명령 번호를 지정한다.
    • C shell : C shell은 default로 지난번 로그인의 마지막 명령만을 기억하고 있다.
      • 예) & histrory
    • 명령들의 목록을 작성하기 위해서는 set history=n 이라는 환경을 설정해야 한다.
      • 예) % set history=50 : 50개의 이전 명령 기억(화면에 변화 없음)
    • % set
    • 항상 로그인 했을 때 이 history 기능을 사용하려면
      • 환경 설정 file .cshrc에 set history=50 이란 내용을 추가
  • C Shell의 history 명령 사용법

    명령

    기능

    !! 이전의 명령 반복
    !$ 이전 명령의 마지막 단어를 반복
    !* 이전의 명령의 첫번째 단어를 제외한 모든 단어를 반복
    ^a^b 이전 명령에서 a를 b로 대체
    !n History 목록에서 번호 n의 명령을 반복
  • Alias
    • 축약어. 긴 명령을 alias명령을 이용하여 쉽게 타이핑 할 수 있음
    • 이 축약어 역시 여러분이 계속 사용하고 싶다면 .cshrc file 안에 넣어 두면 됩니다.
    • 사용법 : alias [새로운 alias명] [축약할 명령어]
      • 예) DOS명령어 dir를 쳐서 ls -l 의 출력이 나타나게 하는 예제

        % alias : 현재 자신의 alias 상황을 보여줌
        % alias dir ‘ls -l’
        % dir

  • Shell 변수
    • shell에는 각각의 shell이 사용하는 shell 변수가 있음
    • C shell에는 두 가지 종류의 shell 변수가 있습니다.
      • 일반 shell 변수 : set 명령을 사용하여 생성하고 새로운 shell(서브 shell)을 시작하면 인식할 수 없음
      • 환경 shell 변수 : setenv 명령을 사용하여 생성하고 새로운 shell(서브 shell)에서도 인식가능함
    • 일반 변수는 프롬프트 상에서 set 명령을 그리고 환경 shell 변수는 setenv 명령을 내리면 알 수 있습니다.
    • 그리고 shell 변수명을 지정할 때 일반 shell 변수는 알파벳 소문자를 그리고 환경 shell 변수명을 지정할 때는 대문자를 사용하는 것이 BSD 계열의 Unix의 전통이다
    • 환경 shell 변수는 서브 shell에서도 인식이 되므로 보통 .login file에 저장합니다.
    • 환경 변수 값 알아보기
      • % echo $변수 name
    • 일반 shell 변수 값 지정
      • % set 변수명=값
    • 보통 값을 지정할 때 "="기호 사이에 빈칸이 포함되어서는 안되나 ' 기호나 " 기호를 사용하면 가능하다.
    • 환경 shell 변수 값 지정
      • % setenv 변수명 값 : "=" 기호를 사용하지 않는다.
    • shell 변수 제거
      • % unset 변수명
      • % unsetenv 변수명
  • Default Shell 변수
    변수 설명
    HOME 사용자의 홈 디렉토리. 아무런 디렉토리 지정없이 cd명령을 수행했을 때 이동되는 디렉토리
    SHELL 사용자가 사용하는 Shell. VI같은 프로그램에서 Shell로 잠시 빠져 나갈 때 생성하는 새로운 Shell이 바로 이 SHELL이다.
    TERM 터미널에 관련된 값. DEC사의 Visual Terminal Model 100이 표준임
    USER UID와 계정이름을 확인할 때 사용하는 사용자 이름
    MAIL 편지가 Default로 들어가게 되는 우편함의 위치
    LONGNAME USER의 Full Name
    PATH 사용자가 명령을 입력했을 때 검색할 디렉토리와 순서 정의
    NAME 사용자의 전체이름. 전자우편과 인쇄용 프로그램들은 사용자의 전체이름이 필요할 때가 있음. 이 때 이 정보가 사용됨
  • Shell Script
    • Unix 표준 명령어를 조합하여 새로운 명령어를 만들 수 있도록 shell의 기능을 활용할 수 있음
    • shell은 Unix 프로그램과 마찬가지로 file로부터 명령을 입력받을 수 있다. 이런 Unix 명령들로 구성된 file을 Shell Script라 함.
    • shell script는 Unix의 명령어들을 기록한 파일로 이루어진다.
    • shell script는 sh 'file name' 으로 실행된다.
    • shell script가 기록된 file을 Unix 명령어처럼 직접 실행할 수 있도록 하려면 chmod 명령으로 실행 권한을 부여하면 된다.
    • C shell은 sh(bourn shell)의 script도 실행할 수 있고 C shell의 script 언어를 이용한 script 명령을 실행할 수 있다.
    • Shell script 예제
      • 다음을 입력한 file을 만들고 chmod 명령으로 실행권한을 부여하여 실행시켜보십시오.


      • .cshrc에 다음의 내용을 적어주면


      • 파일 이름의 전체를 입력하지 않아도 인식가능한 곳까지만 타이핑해도 shell 자체에서 file name을 결정해 준다.
UNIX의 활용 - Communication
  • tty : 어떤 디바이스를 통해 연결되었는가를 알기 위해서 사용.
    • tty 디바이스는 하나의 Unix file 이다.
  • Write
    • 다른 사람(같은 서버 사용자)과 메시지를 주고받을 수 있도록 명령입니다.
    • 예) write [응답할 사용자 ID]
      • 만약 당신이 write imp 이라고 했다면 imp 사용자의 화면에는 다음의 내용이 표시된다.


      • 이때 통신 예의는 imp가 응답하기 전까지는 먼저 메시지를 보내서는 안된다는 것이다.
        imp가 응답을 하면 그때부터 서로 메시지를 주고받으면 된다.
      • 종료는 ctrl-D를 누르시면 됩니다
  • mesg : 상대방의 메시지를 수신 할 것인가 안 할 것인가를 결정.
    • mesg y : 메시지 수신 허가
    • mesg n : 메시지 수신 불허
  • Mail
    • Unix의 모든 기능중 가장 인기 있는 것 중의 하나
    • 메일 프로그램은 여러 가지가 있음
    • mail 그리고 SVR4 이후에 mailx 라고 불리는 것이 있음
    • mailx는 Berkeley mail이라고도 불림
    • 여러분이 만일 이미 메일을 받았을 때 mailx를 실행시키면 다음과 같은 내용이 출력된다.


    • 메시지를 일기 위해서는 읽고자하는 색인번호 입력
    • 메시지 작성의 종료 : ^Ctrl-D나 ‘.’를 새로운 라인에서 입력
    • Mailx의 대부분의 명령은 첫글지만 입력하여 실행 가능.


    • mail 보내기
      • % mailx [받을 사람 ID]

        Subject : 보내고자 하는 메시지의 제목

      • 미리 file로 작성한 내용을 메일로 보내고자 할 때
        • % mailx -s “메일 제목” [받는 사람 ID] < 보낼 filename
      • 메시지를 입력하면서 사용할 수 있는 명령
        • ~- : 도움말
        • ~b : 메시지를 여러 명에게 복사해서 보낼 때 사용. 받은 사람들은 공동 수신자를 알 수 없음
        • ~c : 메시지를 여러 명에게 복사해서 보낼 때 사용. 받은 사람들이 공동 수신자를 알 수 있음
      • 메일 환경 설정 파일(.mailrc)


System Administraion
  • 시스템 관리
    • 시스템 관리자가 UNIX System이 원할하게 작동되도록 하기 위해서 UNIX System상에서 수행하는 모든 관리작업들
    • 전반적인 시스템 관리자의 책임 작업들
      • 시스템 구성과 관련되는 작업
        • 커널의 구성
        • 주변장치의 구성과 설치
        • 새로운 소프트웨어 설치
      • 파일 시스템 관리
        • 파일 시스템의 무결성 유지 보수
        • 디스크의 사용도 점검
        • 디스크 공간의 배정
        • 파일 시스템의 생성, mount, unmount
      • 반복적인 작업의 자동화
        • cron 유틸리티의 활용
    • 사용자 계정(account)의 관리
      • /etc/passwd 파일에 새로운 사용자 추가
      • /etc/group 파일에 새로운 그룹 추가
      • 사용자를 위한 홈 디렉토리의 생성
      • 사용자를 위한 start-up의 작성
    • 시스템 운영에 대한 평가
      • /usr/adm/acct 파일에 의한 시스템 사용도 평가
      • /usr/adm/wtmp 파일에 대한 로그인 정보의 추적
      • 프린터 사용도 추적
      • log파일의 생성과 추적 평가
    • 시스템 보안 관리
      • 중요 데이터의 2차 보전
      • 해커(hacker)들로부터의 시스템 침입에 대한 대비
      • 시스템 장애시의 비상 대책 수립
  • 시스템 특권 사용자
    • Superuser
      • 대부분의 시스템 관리 작업들은 시스템 전반에 관하여 중대한 영향을 미치는 정보에의 접근을 의미하므로 superuser의 권한이 필요함
      • Superuser의 권한을 얻는 방법
        • 사용자가 시스템 콘솔(console)에서 시스템의 가동을 시작하여 단일 사용자 모드(single user mode)로 선택하면 자동적으로 superuser로서 login된다. 단일 사용자 모드에서는 root로만 login할 수 있다
        • Superuser의 ID인 root를 사용하여 login하는 방법
        • 일반 사용자로 login한 상태에서 su command를 사용하는 방법
      • 시스템의 안전을 위해서 su command를 사용하는 것이 바람직하다.
      • 어느 방법을 사용하든지 간에 superuser의 비밀번호를 요청한다.
      • 올바른 비밀번호를 입력하면 superuser 특권으로 수행되고 있음을 의미하는 프롬프트 #를 출력한다.
      • Superuer 특권이 요청되는 작업을 마치면 Ctrl-D를 입력해서 종료한다.
  • su (substitute user/supeuser) : 새로운 사용자로 임시 교체
    • 형식 su [option] [user]
    • 기능
      • 시스템 상에서 임시로 다른 사용자가 될 수 있도록 함으로써 다른 사용자의 화일들을 액세스할 수 있도록 한다.
      • 인수를 지정하지 않으면 root(superuser)로 가정한다.
    • option
      • - 완전한 다른 사용자로 로그인한다.
      • -c command 새로운 사용자로서 로그인한 후에 수행할 명령 지정
    • % su - super user로 로그인
      password 비밀번호 입력
      # root로 로그인한 결과
      $su - imp imp란 사용자로 로그인
  • Superuser로 가능한 작업
    • 시스템의 시동 및 종료
    • 사용자 계정의 관리
    • 시스템 clock의 설정
    • 자원 사용의 제한에 대한 확장과 프로세스의 우선순의 결정
    • 파일 소유자 변경
    • 파일 시스템의 생성, 점검, 보수
    • 파일 시스템의 mounting과 unmounting
    • 장치 화일의 생성
    • 시스템의 backup과 복구
    • crontab 파일의 조작
  • 그 밖의 특권 사용자
    • bin : system command의 소유자
      • Bin은 superuser에 비교해 별다른 특권은 없지만 /bin, /usr/bin의 모든 프로그램과 장치화일을 소유한다.
      • 일반적인 시스템 소유의 화일들은 root또는 bin으로 되어있다.
      • root대신에 bin으로 로그인하는 이유는 만약에 발생할 지 모르는 실수에 대비하기 위함이다.
    • daemon : 비특권 프로그램의 소유자
      • daemon은 보통 UID 1을 갖는다
      • 화일들 중에는 어떤 특정한 사용자에 속하기 보다는 적절하게 UNIX에 속해야만 하는 것들이 있는데 이런한 화일을 바로 daemon이 소유하게 된다.
      • 그 이유는 root의 소유로 인하여 발생할 수 있는 보안상의 장애를 피하기 위함이다.
      • 비슷한 이유로 UNIX 그룹인 daemon이 생성되어 있다.
  • sys : kernel과 메모리 image들이 소유자
    • 시스템에 따라서는 kernel의 주소공간(/dev/kmem), 시스템 실 메모리(/dev/mem), 시스템 swap 공간의 iamge(/dev/swap)와 같은 특수화일들은 sys사용가가 소유한다.
    • 어떤 시스템에서는 sys 대신에 그룹 kernel이 사용된다.
  • nobody : 무소유의 소유자
    • 대부분의 UNIX는 UID -1 또는 -2로 정의한다.
    • nobody는 특별한 허가권을 가져서는 않되거나 필요치 않는 프로그램의 소유자이다.
    • NFS(Network File System)는 네트워크 상의 source 파일 server들에게 이것을 사용한다.
    • 여기서는 diskless client들은 단일 사용자 모드에서 어느 누구에게 의해서도 reboot되어질 수 있다.
Boot and Shutdown
  • 시스템 부팅 순서 (예 : Solaris 2.x)
    • Boot PROM 단계
      • System identification banner 표시
        • System 의 model, keyboard, host ID, PROM version, Ethernet address를 표시
      • Self-test diagnostics의 실행
        • Boot PROM의 자기 진단 Program이 System의 Hardware와 memory 확인함
        • 자가 진단을 성공적으로 마쳐야만 다음 Boot과정을 실행함
      • PROM에 정의된 Boot장치에서 Boot program을 찾음
        • Boot program은 UFS Filesystem reader를 포함하고 있는 System 첫번째 Boot program인 Boot block(1-15 sector에 위치함)을 읽는다.(Boot PROM 내의 Boot 장치는 변경시킬 수 있음)
      • Boot program load
        • Filesystem reader는 Boot 장치를 열고 두번째 Boot program인 /ufsboot를 memory에 load한다.
      • /ufsboot program을 load한 후 Boot PROM은 Kernel(/kernel/unix)을 load함
    • Kernel 초기화 단계
      • Kernel은 스스로 초기화 한 후 /ufsboot program을 이용하여 module들을 load함
      • Kernel이 Root partition을 mount 하는 데 필요한 module을 읽고나면 /ufsboot program은 momory에서 제거되고, 계속해서 Kernel이 자원을 이용하여 초기화한다.
    • /sbin/init 단계
      • Kernel이 사용자 프로세스를 생성하며 /sbin/init program을 실행시킨다.
      • /sbin/init program은 /etc/inittab file에 기록된 내용을 실행함
      • Init process는 하나의 rc script 또는 실행 가능한 다른 script 들을 차례로 실행시킨다.
      • 이러한 script(/sbin/rc*)들은 Filesystem을 Check하고 mount하며, 여러 process들을 기동시킨다.
  • System Init State(Run Level)
    • Solaris는 다음과 같이 8개의 Run level이 존재함
    • Run level : 선택된 프로세스 그룹하에서 실행하도록 하여진 소프트웨어 구성을 말함.
    • 현재 자신의 Run level이 몇인지 알고자 할 경우 사용하는 명령
    • % who -r

  • Solaris와 Linux의 Run level 비교
    Run State Solaris 2.x Action Linux Action
    s,S Single user mode  

    0

    PROM Monitor level Halt (Do Not set initdefault to this)

    1

    Single user mode :
    root & user mounted
    Single user mode

    2

    Multi user mode :
    No Resources exported
    Multi user mode :
    Without NFS and Networking

    3

    Multi user mode :
    Machine Resource exported
    Full Multi user mode

    4

    Not Currently used Not Currently used

    5

    PROM Monitor level(Power off) X11 (X-Window Start mode)

    6

    Halt and reboot to default state Reboot (Do Not set initdefault to this)
  • Shutdown
    • SunOS 5.x, Solaris 등의 UNIX System은 여러 프로그램은 계속해서 Running하기 위해 설계되었음
    • 다음과 같은 경우에은 반드시 시스템을 halt하거나 shutdown시켜야 함
      • Turning off system power
      • Installing a new release of the operating system
      • Anticipating a power outage
      • Adding hardware to the system
      • Performing maintenance on a file system
    • Shutdown 시키는 방법
      • % shutdown -y -i[바꾸고자 하는 run level] ?g[대기시간]
      • % shutdown -y -i5 -g5 : 5분 후에 시스템을 power off 하고자 할 때
      • % shutdown -y -i6 -g0 : 곧바로 시스템을 리부팅하고자 할 때
  • Run Level Change
    • Run level은 telinit 명령이나 init명령으로 바꿀 수 있다.
    • Shutdown the system
      • telinit0
    • Single-user state
      • telinit1
    • Multi-user state
      • telinit 3
    • Shutdown and Reboot
      • telinit 6

※ 많은 사용자가 log-in 하고 있을 때 갑자기 run level을 바꾸면 File system의 손상을 가져올 수 있다. (STOP-A와 마찬가지 효과)

UNIX File System Management
  • UNIX Kernel
    • UNIX의 핵심
    • 특정 컴퓨터 시스템에서 UNIX 환경을 구축하는 핵심기능을 구축
    • 하드웨어와 직접적으로 관계하며 UNIX 시스템의 다른 부분이 하드웨어의 영향을 받지 않도록 함
    • UNIX 유틸리티와 사용자 프로그램은 커널을 호출하여 서비스를 받음
    • Kernel이 제공하는 서비스
      • 파일관리와 보안, 입출력 서비스, 프로세서 스케쥴링과 관리
      • 기억장소 관리, 인터럽트와 에러 처리, 날짜와 시간 서비스
      • 시스템 작동 상황을 기록하는 사용상황통계 등
    • UNIX의 이식 작업(Porting)은 커널의 하드웨어 의존부를 하드웨어에 맞게 변경하는 작업을 말한다.
    • UNIX의 Kernel은 80개가 넘는 시스템 호출을 제공함.
  • UNIX의 File System
    • UNIX System은 여러 개의 물리적 디스크를 가지며 각각의 디스크는 하나 이상의 file system을 가지게 된다.
    • 커널은 이런한 각각의 file system을 다루며 각각의 file system마다 device number(ex:/dev/dsk/c0t0d0s0)를 부여하며 이를 논리적 device로 다루게 된다.
    • File System은 데이터를 file 단위로 저장하며 이 file들의 집합이 적절한형태로 구성된 것을 말하며 UNIX의 file system은 tree구조를 이룸
    • 하나의 file system은 boot block, super block, inode list, data block으로 구성된다.

  • Boot Block
    • File System의 첫부분에 위치하며 Sun의 경우 첫번째 sector에 디스크 레이블이 들어가며 그 다음 15개 sector에 boot block가 들어감
    • 이 16개의 sector는 8192byte(512*16)의 file system을 구성함
    • Boot block에는 운영체제를 boot하거나 초기화 할 bootstrap code가 들어감
    • 물론 시스템에서 boot하기위한 boot block이는 하나지만 각각의 file system은 boot block을 가지고 있음
  • Super Block
    • File System에 관한 중요한 정보를 저장하는 block
    • 구성 요소
      • File system의 크기, Free block의 수
      • Inode list 크기, Free inode의 수, Free inod의 list, Free inode의 list 다음의 Free inode의 list
      • Free block list와 Free inode의 list를 위한 lock field
    • 이 Super block은 메모리에 적재되어 사용되므로 시스템을 정지하고자 할때는 항상 이 내용을 sync해야 함
  • Inode list
    • UNIX는 sequential file, index acess file, direct acess file 등의 파일 구조를 가지고 있지 않음
    • 모든 파일은 index node 혹은 inode 라고 불리우는 정보 블록과 연결되어 있고 이 안에 다음과 같은 파일에 관한 정보를 포함한다.
      • 파일의 길이
      • 디스크 안의 파일의 소유 블록
      • 파일의 소유주(UID & GID)와 이 파일을 다른 사용자가 이용할 수 있는지에 관한 정보
      • 파일의 종류(일반, 특수, 디렉토리,…)
      • 시스템 안에서의 reference counter(링크 수)
      • 날짜 (생성일, 변경일, 접근일)
    • 이 정보블럭 안에는 어떠한 파일이름도 들어있지 않으며 한 파일의 선택은 디렉토리라는 중간 과정을 통해서 이루어짐
    • 디렉토리 또한 한 파일로 이루어졌기 때문에 이 안에는 시스템이 파일을 구별할 수 있도록 일련의 번호(Index)들과 이름이 나열되어 있음
    • 이렇게 함으로써 어떠한 파일도 디렉토리를 통하여 쉽게 reference에 의한 구별이 될 수 있으며 한 파일이 여러 디렉토리안에 저장 가능함
    • 만약 inode가 0이라면 이 파일은 완전히 삭제된 것을 의미함
    • 디렉토리 또한 한 파일에 속하기 때문에 디렉토리는 다른 디렉토리의 reference를 가지고 있을 수 있음
    • 이러한 구조는 우리가 일반적으로 생각하는 디렉토리 구조 tree구조와 유사하다.
    • inode하나는 64byte의 크기를 갖는다.
  • UNIX File의 종류\
    • 일반 파일(ordinary file)
      • 일반적인 데이터 파일과 소스코 등의 text file과 binary file을 말함
      • UNIX에서는 확장자가 어떤 특별한 의미를 지니는 것이 아니고 단지 사용자가 편의상 사용하는 것이다.
      • 따라서 확장자의 제한이 없다. 단지 컴파일러 등의 프로그램이 특별한 확장자를 요구할 뿐이다.
      • File I/O는 커널 단계에서 buffering 작업을 해주기 때문에 file을 단순히 byte로 연결된 형태로 간주 할 수 있게 해준다.
      • 이는 곧 디스크 상의 여러 곳에 저장되어 있는 file을 하나로 연결된 것처럼 해준다.
      • UNIX에서 파일의 구조는 OS에 의해 제어되는 것이 아니고 이를 처리하는 프로그램에 의해 제어된다.
    • Directory file
      • 디렉토리는 파일을 저장하는 파일이다.
      • 디렉토리는 파일을 포함하며 또한 파일을 포함하고 있는 서브 디렉토리를 가질 수 있다.
      • 디렉토리는 일반 파일과는 다른 개념이지만 읽을 때는 일반 파일과 똑같이 취급되며 빈 디렉토리라도 ‘.’과 ‘..’ 두 파일을 가지고 있다.
      • ‘.’는 자기 자신을 가르키며 ‘..’는 상위 디렉토리를 가르킨다.
    • 특수 파일(special file)
      • UNIX의 특별한 파일 타입으로 UNIX는 주변 장치도 하나의 파일로 간주하기 때문에 Printer, Tape, Memory 등은 파일 구조상의 하나의 파일로 나타낸다.
      • 이러한 개념으로 UNIX는 모든 Device의 Input, Output 을 이 특수파일을 통해 Channel을 형성하여 처리한다.
    • Hard link & Symbolic link file
      • Link란 하나의 inode 에 여러 개의 파일이 연결되는 것을 뜻한다.
      • 예를 들어 /home/user1/data라는 디렉토리가 있을 때 “..”파일은 user1 디렉토리의 ‘.’ 파일을 가르키고 있다.
      • Hard link는 이러한 link의 개념과 같이 똑같은 inode를 가지는 파일을 생성하는 것이다.
      • 이는 동일한 파일이 여러 곳에 존재하는 것과 같이 보인다.
      • ‘ln’명령으로 새로 Hard link를 만들 수 있으며 새로운 Hard link 파일이 생성되어도 디스크 용량에는 변함이 없다.
      • Symbolic link란 단지 한 파일을 다른 이름으로 지시하는 파일 타입니다.
      • 이 것은 윈도우의 ‘바로가기 아이콘’ 과 유사하다.
      • ‘ln -s’ 명령으로 Symbolic link파일을 생성하거나 이 파일을 삭제해도 실제 파일에는 아무런 영향이 없다.
    • Socket file
      • 이는 Process간의 Communication을 빠르고 신뢰성 있게 수행해 주는 것으로 여러 종류의 Socket이 있지만 대부분 Network을 경유해서 서로 다른 호스트 간 process를 connect하는 데 사용된다.
      • Socket file 은 다른 Process에게 디렉토리의 Entry로 보여지기는 하지만 Connection에 포함되지 않은 Process는 읽거나 쓸 수 없다.
      • 이 Socket file type은 4.3+BSD 운영체제에서만 사용되고 SVR4에서는 IPC(Interprocess Communication)을 위해 Socket을 사용하나 커널의 파일 타입으로서 사용하지 않고 Socket function의 libtary level에서 제공한다.
  • Controllers and Disk Drivers
    • 한 개의 controller에 여러 개의 unit(즉 디바이스)들을 연결 가능
    • 즉 여러 개의 하드 디스크, CD-ROM, Tape Drive 등을 연결 가능

  • Physical Disk Structure

  • Disk Partitions
    • 제일 바깥 쪽이 Volume Header이고, 다음 안쪽으로 root file system, swap space, user file system으로 구성됨

  • Devices Naming Conventions for Disk and Tapes
    System SCSI DISK Tape Drive NR Tape
    Solaris /dev/[r]dsk/cCtAdNsP /dev/rmt/N /dev/rmt/Nn
    HP-UX /dev/[r]dsk/c201dNsP /dev/rmt/Nm /dev/rmt/Nmm
    IRIX /dev/[r]dsk/dskCdNsP /dev/tape /dev/ntTape
    Sun OS /dev/[r]sdNP /dev/rmtN /dev/nrmtN
    • C : Controller Number
    • A : SCSI Targer Number
    • N : Device or LUN Number
    • P : Slice or Disk Partition Number
  • Metadevice
    • Disksuit Tool을 사용해서 여러 개의 Partition을 합쳐서 대형 Disk를 만드는 것

  • 디스크 추가
    • UNIX System에 새로운 Disk를 추가하는 과정
      • Disk를 컴퓨터에 접속
      • Disk 접근을 위한 장치 파일 생성
      • Disk formating
      • Disk partitioning and labeling
      • UNIX File system의 구성
      • File system mounting
      • File system 무결성(integrity) 검정
    • 장치화일의 생성
      • 새로운 디스크에 접근하기 위해서는 먼저 이 디스크를 가르키는 파일을/dev 디렉토리에 생성
      • Disk를 SCSI Bus에 접속시킬 경우 UNIX가 자동적으로 장치화일 생성
      • 그 밖의 경우는 시스템 공급업자의 절차에 따라 생성시키면 됨
    • Disk Formating
      • 새로운 Disk 표면에 미리 정해진 형식으로 표시를 하여 데이터를 구조화시키는 작업
      • 이 과정을 통해 주소에 대한 timing mark가 기록됨
      • Disk 총 용량의 약 10%가 format과정에서 사용됨
      • SCSI Disk의 경우는 보통 미리 format이 되어져 있음
    • Disk Partitioning and labeling
      • Partitioning : Format된 Disk를 독립된 데이터 영역들로 나누는 과정
      • Partition은 dump를 보다 용이하게 하며 사용자들이 다른 디스크 공간을 침범하는 것을 방지하고 성능을 향상시킴
      • Partition table은 디스크에 대한 그 밖의 정보들과 함께 label이라는 디스크 상의 레코드에 기록된다.
      • Label은 보통 Disk의 처음 한 두 블록을 차지함
      • 하나의 디스크는 보통 최대 8개의 Partition을 가지질 수 있음.
      • 각 Partition은 소문자 a부터 h로 표시한다.
      • 전통적으로 a Partition은 root Partition, b Partition은 swapping을 위하여 사용된다.
      • Partition c 는 전체 디스크를 관리하기위해 사용됨
      • Partition d에서 h까지는 관리자가 임의로 할당 가능함
      • System V Release 4 UNIX에서는 Partition을 slice라고 부르며 기능도 약간 다르다.
      • 최대 8개의 slice가 있으며 각 slice들은 0에서 7까지의 번호로 표시함
      • Slice 0, 1, 2는 Partiton a, b, c에 대응된다.
      • Slice 3에서 6까지는 다른 운영체제의 화일들을 위하여 사용된다.
      • Slice 7은 단지 사용자 화일들만을 포함하는 영역을 나타낸다.
  • Physical Disk Partition Layout

    • Disk Partition
    Patition
    Number
    Name Function
    0 root Root Partition
    1 swap Swap Partition. 물리적 메모리가 부족할 때 사용
    6 usr Usr Partition. Root 나 System이 주로 사용하는 디렉토리
    7 (none) The entire disk except the volume header and xflog Partition
    8 volhdr Volume header
    9 (none) Reservation Partition
    10 volume The entire disk, Including the Volume header
    • UNIX File system 구성
      • 하드 디스크 Partition이 끝난 후 바로 UNIX 화일들을 저장할 수 있는 것이 아니다.
      • mkfs 또는 newfs command를 사용하여 Partition 또는 slice에 File system을 구성해야 한다.
      • newfs command를 수행하면 Disk의 그 영역에 존재하던 데이터는 지워지고 디렉토리 구조의 골격이 형성된다.
    • newfs command
      • 형식 : newfs [option] [mkfs-option] block-special-file
      • 기능 :
        • newfs는 mkfs command의 friendly front-end이다.
        • newfs는 표준 장치들의 특성에 관한 정보가 기록되어 있는 /etc/disktab 파일을 탐색하여 디스크 유형의 sector 수를 검색한 후 mkfs를 호출(fork)한다.
        • mkfs 프로그램은 block-special-file에 기록함으로써 파일 시스템을 구축함
        • mkfs는 root 디렉토리와 lost+found 디렉토리로 이루어진 파일시스템을 구축함
        • 만약 File System이 root Partition이면 최초의 16 sector에 bootstrap 프로그램을 설치함
    • option
      • -n : bootstrap program을 install 하지 않음
      • -N : file system을 실제로 만들지 않고 file system parameter를 출력함
      • -v : 모든 발생 가능한 사건 메시지 출력할 것
    • mkfs-options
      • -b : block-size 새로운 file system의 블록 사이즈. 409 또는 8192 byte 가능
        8129 byte가 default임
      • -m : free-space% 일반 유저를 위해 예약한 공간의 비율(default - 10%)
      • -c : #cylinder 실린더 그룹에 대한 실린더 수 (default - 16)
      • -i : i-size inode 개수 (default - 2048)
      • -f : frag-size fragment size (default ? 1024), 최대 블럭 사이즈
    • File system mounting
      • File system이 사용 가능하려면 mount가 되어야 한다.
        • mount는 file system 을 root file system의 일부로 부착하여 계층 구조화 시키는 작업
        • 한번 file system이 mount 되면 이 file system의 화일들은 root file system 의 일부인 것처럼 접근이 가능하다.
        • file system은 mount과정의 반대, 즉 unmount를 통해 root file system과의 연결을 단절시킨다.
    • mount, unmount command
      • 형식
        • % mount [options] [block-special-file directory]
        • % unmount [options] block-special-file | directory

      ※ 부팅시 자동으로 자동으로 mount를 시키도록 하기 위해서는 기종에 따라서 /etc/vfstab file이나 /etc/fstab file에 mount 명령 첨가하면 된다.

  • General File System Concepts
    Disk mount

    % whoami : mount는 root만 가능함
    % cd / : root 디렉토리로 이동
    %mkdir /d2 /d3 : mount point 생성
    % mount /dev/dsk/c0t1d0s0 /d2
    : Disk2를 /d2에 mount
    % mount /dev/dsk/c0t2d0s0 /d3
    : Disk3를 /d3에 mount
    % cd /d2 : Disk2로 이동
    % cd /d3 : Disk3로 이동
  • File System Mouting and Unmounting
    Disk mount 명령

    % mount /dev/rdsk/dks0d2s7 /proj

    Disk mount를 해제 명령

    % unmount /proj
  • UNIX Directory Structure

  • UNIX 주요 디렉토리의 역할과 기능
    • / (root)
      • Boot directory. IRIX의 경우는 Kernel이 들어있는 Directory(/unix)
    • /dev
      • 컴퓨터의 가장 중요한 부분 중 하나인 Device를 관리하는 Directory
      • 디스플레이 및 터미널, 키보드를 비롯한 UNIX System의 모든 자원들을 집중 관리하는 곳이다.
      • 모든 디바이스들은 dev 디렉토리에 파일의 형태로 독립적으로 존재한다.
    • /etc
      • UNIX는 관리는 사용자 계정, File system, security, Device Drivers, 하드웨어 구성 등의 관리를 포함하여 매우 복잡할 수 있다.
      • 이러한 모든 관리상에 필요한 파일과 정보를 저장하는 디렉토리이다.
      • 참고로 유저를 관리하는 ‘passwd’파일도 바로 이 디렉토리에 존재한다.
    • /etc/config
      • System configuration file 들이 담겨있는 Directory
    • /lib
      • UNIX System에서 사용되는 함수나 절차적 라이브러리를 보관하는 장소
    • /lib32
      • 컴퍼일러에 의해서 참조되고 사용되는 binaries, library file 이 담겨있음
    • /lib64
      • 64bit system을 사용하는 Compiler에 의해서 참조되고 사용되는 binaries, libraries file 이 담겨있음
    • /lost+found
      • 파일이 어떤 종류의 문제나 오류로 부터(fsck명령에 의해) 복구되었을 때 커널 파일 시스템 내의 올바른 위치를 알아내지 못할 때 저장되는 장소
    • /proc
      • 현재 수행중인 모든 Process들의 이미지들이 보관된 Directory
    • /sbin
      • Commands needed for minimal system operability
    • /stand
      • Kernel image가 저장되어 있는 Directory. Standalone Utilities(fx, ide, sash)
    • /tmp
      • UNIX에서 많이 프로그램에 의해 사용되는 일시적인 file 저장 장소
    • 임시 작업 Directory
      • Reboot시에 없어지는 임시 파일들
    • /tmp/mnt
      • Automount File system의 mount Point
    • /usr
      • 자체적으로 만든 프로그램, 사용자와 시스템 관리에 필요한 명령들, 공유 라이브러리들
      • UNIX System의 일부분들이 서브 Directory형태로 존재함
      • 어떤 시스템의 경우는 monut point로 사용되기도 하는 Directory
    • /usr/bin
      • 일반적으로 많이 사용되는 실행파일들을 저장
      • 초기의 UNIX에서 모든 실행 파일들을 일괄적으로 보관하기 위해 사용되었다.
      • 하지만 점점 UNIX에 첨가되는 실행파일이 많아짐에 따라 여러 Directory로 분리되어 저장하게 되었다.(/bin, /usr/bin)
    • /usr/include
      • 표준 System과 Program Library들에 대한 Interface를 정의한 C 언어 header file들이 들어 있음
    • /usr/man
      • 온라인 매뉴얼 페이지가 들어있는 Directory
    • /usr/lib
      • 표준 유닉스를 지원하는 파일들이 있는 Directory
    • /usr/local
      • 지역적인 소프트웨어(관리자에 의해 설치된 소프트웨어)
    • /usr/local/adm
      • 지역적인 계정과 log 파일들
    • /usr/local/bin
      • 지역적인 실행 파일들
    • /usr/local/etc
      • 지역적인 시스템 구성 파일과 명령어들
    • /usr/local/sbin
      • 지역적인 시스템 유지 명령어들
    • /usr/local/src
      • /usr/local/*을 위한 원시 코드들
    • /usr/share
      • 다양한 응용프로그램의 공유파일들
    • /var
      • 시스템의 파일들이나 로그 기록을 관리하는 파일이 있는 Directory
    • /var/adm
      • 계정 파일들, 자원의 사용법을 기록한 파일들이 있는 Directory
    • /var/spool
      • 프린터, UUCP, 메일 등을 모아서 보관
    • /var/tmp
      • 임시 저장 공간(reboot 해도 없어지지 않음)
    • /var/ucb
      • 버클리 유틸리티와 프로그램들
    • /var/x11
      • X11 coniguration files
    • /var/yp
      • NIS Command files
    • /kernel
      • 커널을 설치하는데 필요한 파일들(Solaris)

      ※만약 /sbin이 존재한다면 일반적으로 /usr/sbin으로 심볼릭 링크되어 있다.

User and Group Management
  • Adding User
    • 시스템 관리자의 가장 중요한 업무 중 하나
    • System에 User를 등록하는 방법은 다음과 같다..(Solaris의 경우)
    • Admin Tool을 이용한 방법
      • Solaris에 포함된 관리 툴인 admintool을 사용하는 방법으로 X-Window상에서 편리하게 사용자를 추가 삭제 할 수 있음
      • 또한 그룹, 호스트, 프린터, 직렬포트, 소프트웨어까지 열람 및 편집 가능
      • 사용자 추가를 선택하여 사용자 아이디 등의 몇가지 정보를 입력하면 장동으로 홈 디렉토리가 만들어지며 계정이 생성된다.
      • Note: admin tool은 사용이 편리하기는 하지만 파일을 덮어쓸 때 심볼릭 링크인지를 검사하지 않기 때문에 타인의 root권한의 획득이 가능하다. 때문에 일반적으로 사용하지 않고 Permission을 ‘100’으로 바꾸고 사용하지않는 경향이 있다.
    • useradd command을 이용한 방법
      • 사용자를 추가하는 명령어
      • % useradd [-c comment] [-d dir] [-e expire] [-f inactive] [-g group] [-G group [group…]] [-m[-k skel_dir]] [-u uid [-o]] [-s shell] login-ID
        • -c : 사용자의 이름
        • -d : 사용자 home directory 절대경로
        • -g : 사용자의 기본 그룹 아이디
        • -G : 사용자의 2차 그룹 아이디
        • -m : 사용자의 home directory가 존재하지 않으면 생성하는 옵션
        • -k : ‘.cshrc’ 또는 ‘.profile’과 같은 파일을 복사해 올 ditectory 지정. 시스템은 기본적으로 ‘/etc/skel’ directory를 사용하도록 한다. 관리자는 이 directory의 파일들을 수정해서 쉽게 사용자들에 기본적인 환경을 구성할 수 있다.
        • -u : 사용자의 UID(integer). 이 ID는 시스템에서 유일해야 한다.
        • -s : 사용자가 사용할 shell 지정. ‘/bin/sh’이나 ‘/bin/ksh’을 넣어준다.
        • login-ID : 사용자가 실제 사용할 ID
      • 예) % useradd -c 문준현 -d /user/imp -m -k /etc/skel -u 1004 -g 1000 -s /bin/csh imp
    • vipw command을 이용한 방법
      • vipw 명령을 이용해서 사용자를 추가하는 방법
      • vipw명령을 입력하면 ‘/etc/passwd’ 파일이 화면에 편집모드로 나타난다.
      • 한 라인을 복사하고 추가할 사용자에게 맞게 수정한다.
      • 수정한 후 ‘wq’로 저장하고 나오면 다음과 같은 화면이 나타난다.
        You have modified the password file.
        Press ‘e’ to edit the shadow file for consistency, ‘q’ to quit:
      • 여기서 ‘e’를 입력하면 ‘/etc/shadow’ 파일을 편집할 수 있다.
      • 마찬가지로 한 라인을 복사하여 사용자에게 맞게 수정한다.
      • 마지막으로 사용자의 home directory를 만들고 사용자에게 chown 명령으로 권한을 넘겨준다.
    • pwconv command을 이용한 방법
      • 이 명령은 /etc/passwd file의 내용을 /etc/shadow file에 적용시키는 명령
      • /etc/passwd file을 수정하고 이 명령을 실행시키면 그대로 /etc/shadow file에 적용이 가능하다.
      • 그 다음에 사용자의 home directory 생성
      • /etc/skel directory의 file을 사용자 home directory에 복사
      • 사용자 home ditectory 하위를 chown 명령으로 소유권 넘김
  • Delete user
    • 사용자를 시스템에서 삭제할 때는 다음과 같은 명령을 사용함
    • % userdel ?r login-ID
    • -r : 사용자의 home directory 삭제
  • Adding group
    • 시스템에 새로운 그룹을 추가할 때는 admin tool을 사용하거나 다음의 명령을 이용한다.
    • % groupadd [-g gid [-o]] group
      • -g gid : 이 옵션은 추가될 Group의 GID(integer)를 지정하는 것이고 이 옵션을 지정하지 않으면 가장 높은 GID의 다음의 숫자가 GID가 된다.
      • -o : 하나의 GID를 다른 Group이 중복해서 사용하는 것을 허용하는 옵션.
  • Delete group
    • 시스템에서 Group을 삭제할 때는 다음과 같은 명령을 사용한다.
    • % groupdel group
  • Accounting
    • Passwd file
      • UNIX는 system의 모든 사용자 정보를 /etc/passwd file에 기록한다.
      • 저장된 정보는 모두 7가지로 ‘:’으로 구분한다.
      • 각각의 정보는 다음과 같다.
        • Username : 사용자가 사용하는 login-ID
        • Password : 암호화 되어 기록된다. /etc/shadow에 저장되기도 한다.
        • User ID : 사용자의 ID로 음수가 아닌 정수여야 한다. 0은 root 사용자
        • Group ID : 사용자가 속한 Group ID. 사용자는 반드시 하나 이상의 Group에 속해야 한다.
        • Full-name : 보통 사용자의 실제 이름을 나타낸다.
        • Login directory : 사용자의 home directory
        • Login shell : 사용자가 사용하는 shell
    • Password file을 관리할 때 주의 사항
      • 일반 사용자는 UID 0을 갖지 않아야 한다.
      • 일반 사용자는 GID 0을 갖지 않아야 한다.
      • Password란은 공백이어서는 안된다.
      • Password file에는 주석문(#)이 사용되지 않는다.
      • Password file에는 공백 라인이 있어서는 안된다.

      ※ System이 제공하는 Password file checking program : /etc/pwck

    • Group file
      • UNIX System은 Group에 관한 정보를 /etc/group file에 저장한다.
      • 저장된 정보는 다음의 네 가지이다.
      • Group name : 그룹의 이름
      • Password : 보통 사용하지 않음
      • Group ID : 그룹의 실제 ID
      • Member : 그룹의 사용자 목록. ‘,’로 구분한다.

      ※ System이 제공하는 Group file checking program : /etc/grpck

Administration Commands
  • Monitoring Processes
    • 다중 사용자 운영체제인 UNIX의 특징 때문에 프로세스의 관리는 시스템관리자의 중요한 업무이다.
  • ps(report process status)
    • ps명령은 process의 상태를 보여주는 명령으로 daemon 등의 여러 process의 상태를 확인하는 데 요긴하게 쓰인다.
    • 형식 ps [-aSdeflcj] [-o format] [-t termlist] [-u userlist] [-U userlist][-G grouplist] [-p proclist] [-g pgrplist] [-s silist]
    • Process를 관리할 때는 다음의 값들이 중요하게 이용됨
      • PID : process의 식별번호
      • PPID : 해당 process를 생성한 parent process의 PI값
      • UID : 해당 process에 접근할 수 있는 User ID
      • GID : 해당 process에 접근할 수 있는 Group ID
    • Process들이 가질 수 있는 상태(state)들
      • Running (O) : 현재 실행되고 있는 상태
      • Runnable (R) : 실행 가능한 상태(process가 queue에 들어 있을 때)
      • Sleeping (S) : 어떠한 event가 완료되기를 기다리는 상태
      • Zombie (Z) : process는 종료했지만 parent는 이를 기다리지 않는 상태
      • Stopped (T) : 정지되어있는 대기 상태 (실행 가능하지 않음)

      ※ 이들을 확인하려면 ps 명령의 -e, -f, -l option을 사용하면된다.

  • kill(terminate or signal processes)
    • process를 완전히 종료시키고자 할때 사용하는 명령
    • 형식
      • kill -s signal pid
      • kill -l [exit_status]
      • kill [ -signal ] pid
    • kill 명령에서 사용되는 signal
      • 1 HUP : Hangup(종료)
      • 2 INT : Interrupt(중지)
      • 3 QUIT : Quit(탈출)
      • 9 KILL : Kill(무조건 중지)
      • 15 TERM : Software Termination(정상 종료)
    • 다음의 세 명령은 PID 100번을 무조건 종료하라는 똑같은 의미이다.
      • kill -9 100
      • kill -s kill 100
      • kill -s KILL 100

      ※ kill 명령은 반드시 정상적인 방법으로 종료할 수 없을 때에만 사용해야 한다.

    • pkginfo
      • 현재 자신의 시스템에 설치되었있는 소프트웨어의 리스트를 보여줌
      • Super user가 옵션을 가지고 사용할 경우 설치된 소프트웨어를 삭제할 수도 있다.
      • IRIX
        • Version [-vFV] remove name

    sysdef

    • 시스템 하드웨어 configuration 정보들을 보여줌
    • 어떤 디바이스가 인스톨 되어 있는지 CPU는 어떤 종류를 사용하는지 등 하드웨어 정보를 보여준다.
    • IRIX : hinv
    • AIX : iscfg, isdev
  • swap -a
    • UNIX System의 swap space를 monitoring, deleting, adding 하는데 사용
      Swap은 UNIX System에서 하드디스크를 메모리처럼 사용하여 부족한 메모리의 용량을 증대시킴으로서 프로그램 수행 속도를 향상시키기 위해서 사용
    • option
      • -a : swap resource를 add
      • -d : swap resource를 delete
      • -l : 현재 사용되고 있는 모든 swap resource 정보를 보여줌
  • mkfile
    • 형식 mkfile size[k|b|m|g] filename
    • 기능
      • swap space 등을 증대하기 위하여 file을 만들어 주어야 할 경우 사용
    • option
      • -v : 만들어질 file에 대한 이름이나 크기 등의 정보를 표시함
    • 예) % mkfile 50m testfile
  • passwd
    • 형식 passwd [-df] user-name
    • 기능
      • 사용자의 패스워드를 변경 도는 패스워드 파일에 사용자를 등록시키는 명령
    • option
      • -d :사용자 패스워드를 삭제할 때
      • -f : 사용자 패스워드를 강제로 변경(새로이 로그인시 변경 요구)
  • quot : 각 사용자별 디스크 공간 사용 상태 표시
    • 형식 quot [option][filesystem]
    • 기능
      • 화일 시스템의 각 사용자가 소유한 디스크 공간의 블럭수를 리포트한다.
    • option
      • -f 사용자들이 소유한 file의 개수를 표시
      • -a 모든 화일 시스템에 대한 리포트 생성
      • -c 전체 블럭 또는 적은 화일들의 누적된 사이즈, 화일내의 블럭 사이즈등을 리포트
      • -V 지난 30, 60, 90일 동안 접근되지 않은 블럭의 개수를 리포트
  • cron : 주기적으로 command 수행시키는 daemon
    • 형식 cron
    • 기능
      • 명시한 날짜와 시간에 지정한 command들을 수행한다.
      • 정규적으로 스케쥴된 command 들이 /var/spool/cron/crontabs 디렉토리의 crontabs화일에 명시될 수 있다.
      • 사용자들이 crontab command 를 사용하여 자신의 crontab 화일을 제공할 수 있다.
      • 단 한번만 실행될 command는 at command를 사용하여 crontab파일을 제공한다.
  • crontab : crontab 파일의 생성, 편집, 삭제
    • 형식 crontab [option] [username]
      crontab [filename]
    • 기능
      • 지정한 파일 또는 표준 입력을 복사하여 사용자들이 crontab 파일을 보관하는 디렉토리에 포함시킨다.
      • 사용자의 crontab 파일에는 그 사용자를 대신하여 지정한 날짜와 시간에 수행시켜야 하는 command들이 나열되어 있다.
  • uname
    • 형식 uname -a
    • 기능
      • 현재 시스템의 Identify를 보여줌
      • 보여주는 내용은 현재 자신의 시스템의 O/S 버전 및 Hostname, Process name, 그래픽 보드 등
    • option
      • -a : 모든 내용을 보여주는 option
  • hostname
    • 형식 hostname [-s] [nameofhost]
      hostname newhostname
    • 기능
      • 뒤에 아무런 내용없이 hostname을 실행하면 현재 자신의 시스템의 이름을 보여줌
      • 그러나 root가 hostname newhostname이라고 입력하면 시스템의 이름이 바뀌게 됨
  • hostid
    • 형식 hostid
    • 기능
      • 자신의 장비의 고유 ID를 보여줌
      • 이것은 장비 생산 업체에서 부여한 고유한 ID로서 유일함
      • UNIX OS에서는 대부분의 사용 가능한 상업적인 소프트웨어들이 위의 명령을 가지고 얻은 고유 ID로서 소프트웨어 라이센스를 만들어 낸다.
      • 상업적인 소프트웨어를 사용하기 위해서는 위 명령어를 가지고 얻어진 ID를 소프트웨어 판매회사에 보내어 라이센스를 받아야 함
    • IRIX
      • sysinfo [-s][-v][-vv]
  • eeprom (ROM 모니터 패스워드)
    • 형식 eeprom
    • 기능
      • 시스템을 다른 사람이 수동으로 부트하지 못하게 하기 위하여 ROM Program에 Password를 할당할 수 있음
    • IRIX
      • nvram
      이것은 매우 주의해서 사용해야 한다. 만약 이 패스워드를 잊어버리면 하드웨어에 손을 대야 복구가 가능하게 때문에 조심해서 사용해야 한다.
  • sync (syncronize) : 디스크 정보의 동기화
    • 형식 sync
    • 기능
      • 디스크 상에 써넣을 메모리 내의 buffer의 내용을 출력함
      • 수정된 수퍼 블록, 수정된 i-node 및 지연된 블럭형 입출력을 포함한다.
      • CPU가 비정상적으로 정지되기 전에 호출되어 모든 디스크 write들이 완료된것을 확인할 수 있다.
      • 사용자가 많은 시간대에 부득이 시스템을 리부팅해야 하는 경우는 이 sync명령을 필히 해주어야 한다.
      • 이 sync명령은 약간의 delay time이 생길수 있으므로 보통 3-4번 정도를 연속해서 해주는 것이 좋다.
  • System crash
    • UNIX System은 때때로 급작스런 정전이나 하드웨어 고장, 조작 실수 등으로 인하여 시스템이 정지되는 수가 있다.
    • 이러한 경우를 System crash라고 한다.
    • Crash가 발생한 경우 파일 시스템이 손상되거나 파괴될수 있다.
    • 이런 경우는 조속히 보수를 하는 것이 중요하다.
    • 파일 시스템의 가능한 손상을 최소화시키기 위해서는 먼저 UNIX System을 booting시켜야 한다.
    • 이 때 시스템의 boot는 단일 사용자 모드로 하고 root system disk를 제외한 다른 장치를 mount시키지 않아야 한다.
    • 시스템의 booting이 완료되면 곧 fsck command를 root 디스크에 대하여 실행하여 root를 보수한다.
    • 만일 파일 시스템이 보수되면 sync를 실행하지 않고 곧바로 시스템을 reboot한다.
    • 그리고 다른 모든 파일 시스템을 mount 시키기 전에 fsck command를 실행시킨다.
    • Crash가 발생한경우 발생 가능한 손상의 종류
      • Superblock의 정보가 맞지 않는다.
      • i-node의 link 개수가 맞지 않는다.
      • 하나 이상의 i-node가 동일한 블록을 참조한다.
      • 사용한 i-node가 어느 디렉토리로부터도 참조되지 않는다.
      • 블록이 미사용으로 표시되어 있는데 i-node로부터 참조된다.
      • 블록이 사용 중으로 표시되어 있는데 i-node로부터 참조되지 않는다.
    • 보수한 파일이나 디렉토리들은 소유자들에게 통보하여 완전성을 점검토록해야 한다.
  • fsck (file search check) : File System의 점검과 보수
    • 형식 fsck [option] [filesystem(s)]
    • 기능
      • UNIX File System의 오류 상태를 조사하여 대화식으로 복원한다.
      • Fils System이 정상 상태로 되어 있으면 화일, 사용 블럭, 미사용 블럭의 수를 출력한다.
      • File System이 오류 상태로 되어 있으면 수정 여부를 묻는 메시지를 사용자에게 출력한다.
      • 수정 처리를 실행하면 그 결과로 어느 정도의 데이터가 손실될 수 있다.
      • 손실된 데이터의 양과 중요도는 진단 출력에 표시된다.
      • 옵션을 지정하지 않으면 사용자의 yes/no 응답에 의해 수행된다.
      • 화일시스템을 명시하지 않으면 /etc/fstab 화일에 기록된 화일 시스템을 참조한다.
    • option
      • -y : fsck에 의한 질문에 무조건 yes로 답한다.
      • -n : fsck에 의한 질문에 무조건 no로 답한다.
      • -w : File system을 단지 check만 한다.
    • 사용예
      • % fsck -y /dev/dsk/c0t0d0s0
      • % fsck -n /dev/dsk/c0t0d0s0
      • % fsck -w /dev/dsk/c0t0d0s0
  • UNIX System Management Tool
    UNIX 종류 관리도구 명령어
    Solaris Admin Tool
    AIX smit, VSM
    IRIX Cadmin facility
    Digital UNIX setup
    HP-UX SAM
    • 이러한 툴들은 모두 시스템 관리자의 편의를 돕기 위한 그래픽 툴이다.
    • 때로는 유용하게 사용할 수 있으나, 종종 부주의한 실수를 일으키거나 이러한 툴들을 사용할 수 없는 경우가 종종 발생한다.
    • 그래서 유능한 시스템 관리자가 되기 위해서는 시스템관리 명령어들을 잘 익혀두는 것이 좋다.
Installing Software
  • Installing Software
    • 사용자를 위해 새로운 소프트웨어를 설치하는 것 역시 관리자의 중요한 일중의 하나이다
    • 관리자는 항상 사용자를 위해 새로운 Applicaition이나 OS Upgrade를 실시해야 한다.
  • 새로운 Sofeware Package Install(pkgadd command)
    • Binary package를 install하는 방법
    • 일반적으로 Software는 Package의 형태로 부여된다.
    • 이러한 Package를 설치하는 명령으로 pkgadd명령이 있다.
  • pkgadd (transfer software package to the system)
    • 형식 pkgadd [-nv][-a admin][-d device][[-M] -R root_path][-r response][-V fs_file][pkginst..]
    • -d option을 사용하지 않으면 pkgadd명령은 기본 스풀 드렉토리(/var/spool/pkg)에서 package를 찾는다.
    • 또 -s option을 사용하면 package를 install하는 대산 이것을스풀 디렉토리로 복사한다.
    • option
      • -d device package를 install 또는 copy한다.
        device는 fullname이거나 tape, floppy disk, hard disk가 될 수 있다.
        또한 device alias를 쓸 수 있다.(예-/floppy/floppy0)
      • -n Non-interative mode로 작동한다. Default는 interative이다.
      • -s spool install 대신에 spool directory에 copy한다.
  • Source Code Install
    • 이미 컴파일된 binary를 받아 설치하지 않고 source code를 받아서 시스템에서 compile하여 설치하는 방법이다.
    • 이는 시스템에 좀 더 최적화된 software를 설치하기 위해서이다.
    • 일반적인 순서
      • 필요한 software source code를 다운 받는다.
      • 시스템에 적절하게 configuration 한다.
        • % ./configure
      • Compile 한다.
        • % make
      • Install 한다.
        • % make install
      • 설치한 software를 실행한다.
  • Software Administering
    • 설치한 소프트웨어에 대한 정보를 알아내는 방법과 이를 삭제하는 방법
  • pkginfo (display software package information)
    • 시스템내에 설치되어 있는 software package들의 정보를 알려주는 명령
    • 형식 pkginfo [-q|-x|-l][-p|-i][-r][-a arch][-v version][-c category][pkginst]
      pkginfo [-d device][-R root_path][-q|-x|-l][-a arch][-v version][-c category][pkginst]
    • option
      • -q : 정숙 모드
      • -p : 부분적으로 설치된 패키지 선택
      • -i : 완전히 설치된 패키지 선택
      • -x : 추출된 목록
      • -ㅣ : 긴 목록
      • -r : 이동하기 위한 기준
      • -c : 범주, [범주…]
      • -a : 구조
      • -v : 버전
    • 일반적으로 시스템의 package를 알아보기 위해
      • % pkginfo | more
      • % pkginfo -c applicationn
    • 설치한 package에 대한 자세한 정보를 알아내는 방법
      • % pkginfo -l <package>
  • pkgparam (display package parameter values)
    • 시스템에 설치된 package에 관련된 여러 parameter value를 알려줌
    • 형식 pkgparam [-v][-d device][-R root_path]pkginst[param]
      pkgparam -f filename [-v][param]
    • 예) % pkgparam -v <pakage>
  • pkgrm (remove a package from the system)
    • 시스템에 설치된 Soft pakage를 제거할 때 사용함
    • 형식 pkgrm [-nv][-a admin][[-A|-M] -R root_path][-V fs_file]
      pkgrm -s spool [pkglist...]
    • 특정 package를 시스템에서 제거하는 방법
      • % pkgrm <package-name>
Backups and Restores
  • 백업 관리 유틸리티
    • dump 전체 백업 또는 최근에 변경된 데이터의 백업
    • restore dump command에 의해 백업된 테이프에서 파일의 복원
    • volcopy 하나의 디스크의 파일시스템 전체 혹은 일부를 다른 디스크 또는 테이프에 압축된 이미지로 복사
    • labelit 파일 시트템의 superblock에 label을 기록
  • 시스템 Backup
    • 디스크를 기반으로 한 시스템에서 디스크 화일들의 복사본을 다른 매체에 보관하는 2차적인 보전 작업
    • UNIX의 dump에는 0~9까지의 서로 다른 수준이 있음
    • 수준 0은 total dump로서 모든 파일이 dump되며 이 dump 출력은 시스템이 재복구에 사용될 수 있다.
    • 1~9까지는 부분 dump애며 수준차에 따라 변경된 화일들만 dump된다.
    • 완전히 디스크 전체를 dump하는 수준 0은 정보의 양이 많고 시간을 많이 필요로 하기 때문에 자주 실행할 수는 없다.
    • 보통 total dump는 일주일에 한번 정도 실행한다.
    • 나머지 한 주간 동안의 1일 dump는 시스템의 상황에 따라서 결정된다.
      • 하루 동안에 변경된 부분만 dump
        • 매일 같은 수준번호로 dump
      • total dump이래 변경된부분만 dump
        • 매일 수준번호를 낮춰서 dump
      • ruler sequence로 dump
        • 예를 들면 연속으로 매일의 수준을 3,2,3,1,2,3,2,3,로 하여 dump
        • 위의 두가지 방법을 보완한 형태
  • dump : 파일 시스템의 dump
    • 형식 dump [option] filesystem
    • 기능
      • UNIX File system의 모든 파일 또는 어떤 날짜 이후 변경된 화일들을 마그네틱 tape로 dump한다.
      • 옵션을 정하지 않으면 default로서 9u가 된다.
    • option
      • level dump의 수준 0~9까지 있음
      • u 전체 백업 이 후 달라진 내용만을 백업하는 옵션
      • f dump-file dump를 file의 형태로 한다. 예를 들면 /dev/rmt/0
      • D dump를 disk로 한다.
      • b factor 테이프에 기록할 블록 사이즈 명시
  • volcopy : 파일 시스템의 복사
    • 형식 volcopy [option] fsname srcdev vol1 destdev vol2
    • 기능
      • 디스크의 모든 파일 시스템의 image를 다른 디스크 또는 tape에 똑같이 복사함
      • bit-for-bit 복사이므로 total backup으로만 사용가능
      • 보통 신속한 disk-to-disk 복사에 사용된다.
      • volcoy의 가장 큰 장점은 손실한 데이터를 아주 용이하게 복구 가능함.
    • option
      • -F ufs 복사하고자 하는 File system의 type
      • fsname File system을 복사할 때의 mount point
      • scrdev File system을 복사할 device명 (source device)
      • vol1 source device의 volumn label
      • destdev 복사할 destination device의 device명
      • vol2 destination device의 volumn label
  • labelit : 파일 시스템에 label 부여
    • 형식 labelit [option] dev [faname vol]
    • 기능
      • 파일 시스템의 superblock에 짧은 label을 기록한다.
      • 이후의 작업에서 파일 시스템을 식별하는데 사용된다.
    • option
      • -F ufs ufs file system type
      • dev raw disk device의 label
      • fsname File system을 복사할 때의 mount point
      • vol physical media의 임의의 식별자
  • restore : dump로부터의 복구
    • 형식 restore options [filename(s)]
    • 기능
      • Dump command로부터 생성된 backup 데이프트로부터 화일들을 복구한다.
      • 반드시 옵션을 지정해야 한다.
    • option
      • i : 복구를 대화식으로 하도록 함
      • r : 수준 0으로 dump된 것을 새로운 file system이나 빈 file system으로 전체 복구함.
      • R : 복구 재개. 전체 백업된 것중에서 부분적인 복구 가능
      • t : 백업 content 표시
      • X : 파일또는 디렉토리를 복구또는 압축해제
      • h : 디렉만을 복구 파일이 들어 있지 않은 경오는 복구 하지 않음
      • v : 복구한 파일 이름을 표시함
  • UNIX System의 Network 관련 File
    • /etc/hosts
    • /etc/networks
    • /etc/netmasks
    • /etc/protocols
    • /etc/services
    • /etc/ethers
    • /etc/bootptab
    • /etc/inetd.conf
  • /etc/hosts
    • 사용되는 host 주소들의 모임을 기록한 화일
      # Internet host table
      #
      127.0.0.1 localhost
      202.30.35.54 bravo.kwangju.ac.kr ice1 loghost
      210.110.193.11 ice1
      210.110.193.11 ice2
      203.246.48.7 cse1
      203.246.48.13 cse2
      203.246.48.15 cse4
      203.246.48.18 cse7
      203.246.48.8 dblab
      203.246.48.9 dblabs
      203.246.48.17 cse6
  • /etc/networks
    • 네트워크 이름과 각각의 인터네트 주소
      #ident "@(#)networks 1.4 92/07/14 SMI" /* SVr4.0 1.1 */
      #
      # The networks file associates Internet Protocol (IP) network numbers
      # with network names. The format of this file is:
      #
      # network-name network-number nicnames . . .
      # The loopback network is used only for intra-machine communication
      #
      loopback 127
      #
      # Internet networks
      arpanet 10 arpa # Historical
  • /etc/netmasks
    • 경로 설정에 필요한 네트 마스크를 지정하는 파일
      Subnet mask가 제공하는 세 가지 정보
      Network, Subnetwork, Host
      The netmasks file associates Internet Protocol (IP) address
      # masks with IP network numbers.
      #
      # network-number netmask
      #
      #
      # Both the network-number and the netmasks are specified in
      # "decimal dot" notation, e.g:
      #
      # 128.32.0.0 255.255.255.0
  • /etc/services
    • 네트워크 서비스 이름
      사용하는 포트 이름
      트랜스포트 프로토콜의 종류 지정
      ftp-data 20/tcp
      ftp 21/tcp
      telnet 23/tcp
      smtp 25/tcp mail
      time 37/tcp timserver
      time 37/udp timserver
      name 42/udp nameserver
      whois 43/tcp nicname # usually to sri-nic
      domain 53/udp
      domain 53/tcp
      hostnames 101/tcp hostname # usually to sri-nic
      sunrpc 111/udp rpcbind
  • /etc/protocols
    • 트랜스포트 프로토콜의 번호 기록
      #ident "@(#)protocols 1.2 90/02/03 SMI" /* SVr4.0 1.1 */
      #
      # Internet (IP) protocols
      #
      ip 0 IP # internet protocol, pseudo protocol number
      icmp 1 ICMP # internet control message protocol
      ggp 3 GGP # gateway-gateway protocol
      tcp 6 TCP # transmission control protocol
      egp 8 EGP # exterior gateway protocol
      pup 12 PUP # PARC universal packet protocol
      udp 17 UDP # user datagram protocol
      hmp 20 HMP # host monitoring protocol
      xns-idp 22 XNS-IDP # Xerox NS IDP
      rdp 27 RDP # "reliable datagram" protocol
  • /etc/ethers
    • ethernet 주소와 시스템의 host name을 갖고 있음
    • rarpd에 의해 사용됨
    • 형식
      • Ethernet-address host-name
      • 예: 8:0:20:f:aa:d9 ganesh
  • /etc/bootptab
    • startup시 bootpd에 읽혀짐
    • 형식
      • bootp-client:tag
      • bootp-client는 bootp-client의 실질적인 이름
  • /etc/inetd.conf
    • 화일 /etc/inetd.conf에 포함되어 있는 정보를 inetd이 사용하여 네트워크 서비스를 관리
    • ftp,telnet 등의 요구가 오면 새로운 프로세스가 connection을 위해 inetd에 의해 시작됨
      Configuration file for inetd(1M). See inetd.conf(4).
      # To re-configure the running inetd process, edit this file, then
      # send the inetd process a SIGHUP.
      # Syntax for socket-based Internet services:
      # <service_name> <socket_type> <proto> <flags> <user> <server_pathname> <args>
      #
      # Ftp and telnet are standard Internet services.
      #
      ftp stream tcp nowait root /usr/sbin/in.ftpd in.ftpd
      telnet stream tcp nowait root /usr/sbin/in.telnetd in.telnetd
  • UNIX System의 Network Process
    • inetd
      • 모든 네트워크 서비스 daemon을 관리
      • /etc/inetd.conf 란 configuration 화일에 따라 수행
      • boot time 에 시작
      • 시스템상에 항상 running
    • routed
      • RIP(routing information protocol)를 구현한 process
      • 동적으로 routing table 을 생성하는 기능
      • host가 internetwork router이면 주기적으로 send
      • routing table 복사본을 연결된 호스트 혹은 네트웍에 전송함
  • rarpd
    • RARP daemon
    • /etc/hosts, /etc/ethers 화일을 참조
    • IP address를 발견하지 못하면 no reply를 전송
  • bootpd
    • BOOT server process
    • BOOT protocol을 정의(RFC 951,1048)
    • bootpd 명령 형식
      • /etc/bootpd [-s -t -d]
      • -s는 standalone mode, -t는 분 단위의 timeout value, -d는 debugging을 위해 사용됨
    • boot request를 수신할 때 daemon이 시작
  • nfsd
    • NFS server상에서 실행
    • 클라이언트로부터 RPC call을 accept
  • named
    • Internet-domain 스타일 네임 서버 daemon
    • host name을 네트워크 주소로 mapping
    • dynamically provide host-to-address lookup
    • maintain distributed database of hostname-to-IP address mappings(4.3 BSD)
  • automount
    • 자동적으로 NFS 화일 시스템을 mount
    • 더이상 필요하지 않으면 unmount
  • rpcbind
    • Solaris 시스템에서 실행
    • SunOS 상에서는 동일한 기능인 portmap process가 사용됨
    • RPC 서비스 전에 시작되어야 함
    • universal address(port number)를 RPC 프로그램 number 로 mapping 하는 기능
  • UNIX System의 Network Command
    • hostname
    • netstat
    • route
    • ifconfig
    • ping
    • arp
    • nslookup
    • domainname
    • rpcinfo
    • snoop
  • hostname
    • 현재의 host name을 출력
    • /etc/rc.boot 파일이 수행될 때 결정됨
    • host name에 대한 정보는 화일 /etc/hostname.xx0에서 유지됨
    • host name의 변경
      • super user에 의해 변경 가능
    • 사용 예
      • [bravo]hostname
      • bravo
  • netstat
    • 기능
      • 연결되어 있는 종단간 호스트의 정보
        • 두 호스트의 이름, 사용 포트 번호
      • 네트워크 접속 하드웨어에 대한 정보
      • 데이터 버퍼
      • 경로 결정 표 및 통계
      • 프로토콜별 통계
    • netstat의 실행 결과
      • 종단간 호스트의 정보
      • netstat -a
      • 현재 연결되어 있는 모든 종단간 호스트에 대한 정보 표시
      • 클라이언트로부터 연결을 기다리고 있는 모든 서버에 대한 정보까지 표시
      • 실행 예
      TCP
      Local Address
      -----------------------

      *.ftp
      .telnet

      bravo.kwangju.ac.kr.telnet
      bravo.kwangju.ac.kr.nfsd

      Remote Address
      -----------

      *.*
      *.*

      ice1.1210
      ice2.985

      Swind
      ------

      0
      0

      8647
      8760

      Send-Q
      --------

      0
      0

      0
      0

      Rwind
      ------

      0
      0

      8760
      8760

      Recv-Q
      -------

      0
      0

      0
      0

      State
      ----------

      LISTEN
      LISTEN

      ESTABLISHED
      ESTABLISHED

    • 네트워크 접속 하드웨어에 관한 정보
      • netstat -i [네트웍 인터페이스]
      Name Mtu Net/Dest Address Ipkts Ierrs Opkts Oerrs Collis Queue
      lo0 8232 loopback localhost 198611 0 198611 0 0 0
      lane0 1500 bravo.kwangju.ac.kr bravo.kwangju.ac.kr 2513926 0 1324269 0 0 0
    • 데이터 버퍼
      • netstat -m
      streams allocation:      
        current maximum cumulative
      total
      allocation
      failures
      streams
      queues
      msg
      linkblk
      strevent
      syncq
      qband
      154
      459
      267
      8
      6
      15
      0
      255
      640
      16313
      340
      340
      113
      255
      8026
      19003
      11213297
      172
      36693
      629
      2
      0
      0
      0
      0
      0
      0
      0
      167 Kbytes allocated for streams data
    • 경로 결정 표 및 통계
      • 경로 결정표의 수정은 route 명령 사용
      • 수정된 경로 결정 표 확인
      • netstat -r
        Routing Table:
        Destination
        Gateway Flags Ref Use Interface
        ------------- ------------------- ------ ---- ------- ---------
        202.30.35.0
        224.0.0.0
        default
        localhost
        bravo.kwangju.ac.kr
        bravo.kwangju.ac.kr
        202.30.35.33
        localhost
        U
        U
        UG
        UH
        3
        3
        0
        0
        209
        0
        4096
        195006
        lane0
        lane0

        lo0
    • 프로토콜별 통계
      • netstat -s
        UDP udpInDatagrams = 1493
        udpOutDatagrams = 1488
        udpInErrors = 0
        TCP tcpRtoAlgorithm = 4
        tcpRtoMax = 60000
        tcpActiveOpens = 2147
        tcpAttemptFails = 1
        tcpCurrEstab = 1
        tcpOutDataSegs =191769
        tcpRtoMin = 200
        tcpMaxConn = -1
        tcpPassiveOpens = 638
        tcpEstabResets = 29
        tcpOutSegs =319932
        tcpOutDataBytes =159754275
        IP ipForwarding = 2
        ipInReceives =760857
        ipInAddrErrors = 0
        ipForwDatagrams = 0
        ipDefaultTTL = 255
        ipInHdrErrors = 0
        ipInCksumErrs = 0
        ipForwProhibits = 0
        ICMP icmpInMsgs = 286
        icmpInCksumErrs = 2
        IcmpInDestUnreachs = 4
        icmpInErrors = 0
        icmpInUnknowns = 0
        icmpInTimeExcds = 0
    • netstat -rs
      Routing Table:
      Destination
      Gateway Flags Ref Use Interface
      ------------- ------------------- ------ ---- ------- ---------
      202.30.35.0
      224.0.0.0
      default
      localhost
      bravo.kwangju.ac.kr
      bravo.kwangju.ac.kr
      202.30.35.33
      localhost
      U
      U
      UG
      UH
      3
      3
      0
      0
      209
      0
      4096
      195006
      lane0
      lane0

      lo0
      UDP udpInDatagrams = 1493
      udpOutDatagrams = 1488
      udpInErrors = 0
      TCP tcpRtoAlgorithm = 4
      tcpRtoMax = 60000
      tcpActiveOpens = 2147
      tcpAttemptFails = 1
      tcpCurrEstab = 1
      tcpOutDataSegs =191769
      tcpRtoMin = 200
      tcpMaxConn = -1
      tcpPassiveOpens = 638
      tcpEstabResets = 29
      tcpOutSegs =319932
      tcpOutDataBytes =159754275
      IP ipForwarding = 2
      ipInReceives =760857
      ipInAddrErrors = 0
      ipForwDatagrams = 0
      ipDefaultTTL = 255
      ipInHdrErrors = 0
      ipInCksumErrs = 0
      ipForwProhibits = 0
      ICMP icmpInMsgs = 286
      icmpInCksumErrs = 2
      IcmpInDestUnreachs = 4
      icmpInErrors = 0
      icmpInUnknowns = 0
      icmpInTimeExcds = 0
  • route
    • 경로 결정표를 수동으로 변경하는 명령
      • 관리자에 의해 수행
      • 경로 결정 daemon process의 실행을 중지
    • 사용 형식

      route add | delete 목적지, 게이트웨이, 홉 수

      • add: 경로 결정 표에 한 행을 첨가
      • delete:경로 결정 표에 한 행을 삭제
  • ifconfig
    • ifconfig의 기능
      • 네트워크 접속에 관련된 변수 조정
      • 접속 하드웨어에 대한 정보
      • 정보에 대한 새로운 값의 설정
      • 네트워크 관리자만이 주로 사용 가능함
    • ifconfig le0 (Backbone line이 Fiber인 경우는 lane0)
      • 네트워크 접속 방법으로 ethernet 카드 지정
      • [bravo] ifconfig lane0
        lane0: flags=863<UP,BROADCAST,NOTRAILERS,RUNNING,MULTICAST> mtu 1500
        inet 202.30.35.54 netmask ffffff00 broadcast 202.30.35.255
        ether 8:0:20:96:fd:d0
    • ifconfig -a
      • 호스트에서 사용하고 있는 모든 네트워크 접속 하드웨어에 대한 변수 값 출력
      • 실행 예
        [bravo]ifconfig -a
        lo0: flags=849<UP,LOOPBACK,RUNNING,MULTICAST> mtu 8232
        inet 127.0.0.1 netmask ff000000
        lane0: flags=863<UP,BROADCAST,NOTRAILERS,RUNNING,MULTICAST> mtu 1500
        inet 202.30.35.54 netmask ffffff00 broadcast 202.30.35.255
        ether 8:0:20:96:fd:d0
  • ping
    • 접속하고자 하는 호스트가 사용가능한지를 check하는 명령
    • ping 호스트 [제한시간]
      • 제한 시간은 기본적으로 20초
    • 사용 예
      • [bravo]ping honey
      • honey.kwangju.ac.kr is alive
    • [bravo]ping -s honey 64 10
      PING honey.kwangju.ac.kr: 64 data bytes
      72 bytes from honey.kwangju.ac.kr (202.30.35.45): icmp_seq=0. time=2. ms
      72 bytes from honey.kwangju.ac.kr (202.30.35.45): icmp_seq=1. time=2. ms
      72 bytes from honey.kwangju.ac.kr (202.30.35.45): icmp_seq=2. time=2. ms
      72 bytes from honey.kwangju.ac.kr (202.30.35.45): icmp_seq=3. time=2. ms
      72 bytes from honey.kwangju.ac.kr (202.30.35.45): icmp_seq=4. time=2. ms
      72 bytes from honey.kwangju.ac.kr (202.30.35.45): icmp_seq=5. time=2. ms
      72 bytes from honey.kwangju.ac.kr (202.30.35.45): icmp_seq=6. time=2. ms
      72 bytes from honey.kwangju.ac.kr (202.30.35.45): icmp_seq=7. time=1. ms
      72 bytes from honey.kwangju.ac.kr (202.30.35.45): icmp_seq=8. time=2. ms
      72 bytes from honey.kwangju.ac.kr (202.30.35.45): icmp_seq=9. time=2. ms

      ----honey.kwangju.ac.kr PING Statistics----
      10 packets transmitted, 10 packets received, 0% packet loss
      round-trip (ms) min/avg/max = 1/1/2
  • arp
    • ARP 프로토콜에 의해 사용됨
    • Internet-to-Ethernet 변환 테이블을 표시하거나 변경
    • 사용 예
      • arp hostname
      • arp -a
      • arp -d hostname
      • arp -f filename
      • arp -s hostname ether_addr [temp] [pub] [trail]
    • [bravo]arp -a
      Net to Media Table
      Device IP Address Mask Flags Phys Addr
      ------------------ ------------------ ---------------- ------ ------------------
      lane0
      lane0
      lane0
      lane0
      lane0
      lane0
      lane0
      202.30.35.33
      dns.kwangju.ac.kr
      202.30.35.130
      bravo.kwangju.ac.kr
      klic.kwangju.ac.kr
      203.246.50.209
      224.0.0.0
      255.255.255.255
      255.255.255.255
      255.255.255.255
      255.255.255.255
      255.255.255.255
      255.255.255.255
      240.0.0.0



      SP


      SM
      00:00:ef:04:d1:10
      08:00:5a:99:81:bc
      00:60:2f:03:bc:81
      08:00:20:96:fd:d0
      00:20:48:09:0b:95
      00:10:5a:82:ee:00
      01:00:5e:00:00:00
  • nslookup
    • Internet domain name server를 찾기 위해 사용되는 interactive 명령
    • nslookup 명령 형식: nslookup [address]
      [bravo]nslookup honey
      Server: dns.kwangju.ac.kr
      Address: 202.30.35.43
      Name: honey.kwangju.ac.kr
      Address: 202.30.35.45

      [bravo ]nslookup hosim
      Server: dns.kwangju.ac.kr
      Address: 202.30.35.43
      Name: hosim.kwangju.ac.kr
      Address: 202.30.35.55
  • domainname
    • domainname의 기능
      • 현재의 네트워크 정보 서비스 기능을 제공
      • domain name을 set하거나 display하는데 사용
    • 사용 형식
      • domainname [name-of-domain]
      • 인수 없이 사용하면 현재의 도메인 이름
    • domain name에 관한 정보는 파일 /etc/defaultdomain에서 유지하고 있음
  • rpcinfo
    • rpc와 관련된 정보를 보고하는 기능
    • 사용 형식
      • rpcinfo [-m] [-s] host
      • rpcinfo [-p] host
    • rpcinfo -s
      • 간결한 형태로 정보를 display
      • [bravo ]rpcinfo -s
        program version(s) netid(s) service owner
        100000
        100029
        100078
        100024
        100232
        2,3,4
        2,1
        4
        1
        10
        udp,tcp,ticlts,ticotsord,ticots
        ticots,ticotsord,ticlts
        ticots,ticotsord,ticlts
        ticots,ticotsord,ticlts,tcp,udp
        udp
        rpcbind
        keyserv
        kerbd
        status
        sadmind
        superuser
        superuser
        superuser
        superuser
        superuser
    • rpcinfo
      • displays all RPC services registered on the local host
        program version netid address service owner
        100000
        100000
        100000
        100000
        100000
        100000
        100000
        100000
        100000
        100000
        100000
        100000
        4
        3
        4
        3
        4
        3
        4
        3
        2
        4
        3
        2
        ticots
        ticots
        ticotsord
        ticotsord
        ticlts
        ticlts
        tcp
        tcp
        tcp
        udp
        udp
        udp
        bravo.rpc
        bravo.rpc
        bravo.rpc
        bravo.rpc
        bravo.rpc
        bravo.rpc
        0.0.0.0.0.111
        0.0.0.0.0.111
        0.0.0.0.0.111
        0.0.0.0.0.111
        0.0.0.0.0.111
        0.0.0.0.0.111
        rpcbind
        rpcbind
        rpcbind
        rpcbind
        rpcbind
        rpcbind
        rpcbind
        rpcbind
        rpcbind
        rpcbind
        rpcbind
        rpcbind
        superuser
        superuser
        superuser
        superuser
        superuser
        superuser
        superuser
        superuser
        superuser
        superuser
        superuser
        superuser
  • uname
    • 현재 시스템의 정보를 display
    • 사용 예
      • [bravo]uname
      • SunOS
      • [bravo]uname -a
      • SunOS bravo 5.6 Generic_105181-16 sun4u sparc SUNW,Ultra-Enterprise
  • snoop
    • 네트웍 상에서 패켓의 내용을 display and capture한다
    • Sun 시스템에서 사용됨
    • [bravo / 6 ]snoop -c 5
      Using device /dev/lane (promiscuous mode)
      203.245.15.12 -> bravo.kwangju.ac.kr HTTP GET /~c96141058/st_white.mid HTTP/1.1
      bravo.kwangju.ac.kr -> 203.245.15.12 HTTP HTTP/1.1 404 Not Found
      210.110.193.20 -> bravo.kwangju.ac.kr TELNET C port=1169
      bravo.kwangju.ac.kr -> 210.110.193.20 TELNET R port=1169 Using device /dev/la
      202.30.35.130 -> bravo.kwangju.ac.kr ICMP Redirect (for network to 202.30.35.29)
      snoop: 5 packets captured
    • snoop -v arp
      ETHER: ----- Ether Header -----
      ETHER: Packet 1 arrived at 14:13:36.88
      ETHER: Packet size = 60 bytes
      ETHER: Destination = ff:ff:ff:ff:ff:ff, (broadcast)
      ETHER: Source = 0:a0:24:3d:2:97,
      ETHER: Ethertype = 0806 (ARP)
      ARP: ----- ARP/RARP Frame -----
      ARP: Hardware type = 1
      ARP: Protocol type = 0800 (IP)
      ARP: Length of hardware address = 6 bytes
      ARP: Length of protocol address = 4 bytes
      ARP: Opcode 1 (ARP Request)
      ARP: Sender's hardware address = 0:a0:24:3d:2:97
      ARP: Sender's protocol address = 203.246.48.203, 203.246.48.203
      ARP: Target hardware address = ?
      ARP: Target protocol address = 203.246.48.203, 203.246.48.203
참고 서적 및 인터넷 사이트
  • 참고 서적
    • UNIX 시스템 이론과 실습. 金明昊 저. 大英社.1998
    • UNIX System Administration Handbook. Nemeth,Snyder,Seebass,Hein 저
    • 최재영, 김명호, 김영배 공역. 홍릉과학 출판사.1998
    • 초보자를 위한 유닉스 일주일 완성. Taylor 저. 김창룡 역. 인포북
    • UNIX System V Primer 한국어판. Matin & Prata 저. 김형태, 박찬열 역. 인포북
    • 정보화를 살아가는 현대인을 위한 UNIX & Internet. 이상복,음호식 공저. 도서출판 기한재
  • 인터넷 사이트


반응형
Posted by 따뜻한 세상
,
어떤 기똥차고(=돈이 될만한) 획기적인(투자대비 수익이 높은)아이디어가 있다면, 이것을 문서화(Documents)하여 다른 사람들의 흥미와 관심을 이끌어 내야합니다. 이 부분은 기획자와 PM이 해야 하는역할중에서도 어려운 편에 속하는데, 이것을 제대로 하기 위해서는 논리적이고(반박 당할 꺼리를 없애고)현실성 있으며(돈과 시간을 조금 들여 더 많은 돈을 벌 수 있는) 사업주가 쉽게 도장을 찍어 줄 수 있는 그럴듯한(혹 이것이 50%의 거짓이 섞여 있다 해도) 문서가 필요합니다.
 
왜 “말”이 아닌 “문서” 일까요. 그것은 논리적인 것을 장기간 유지할 수 있는 유일한 수단이기 때문입니다. “말”은 당장은 효과가 좋을지는 몰라도 시간이 지날수록 그 허점을 들어내게 되어 있습니다. 하지만 문서는 허점이 들어나도 “재고”의 여지가 있다는 점이죠. 사실 사람의 마음은 갈대 이기 때문에 처음에 홀깃하더라도 시간이 지나면 불안해 합니다. 그렇기 때문에 “보험”차원에서 문서가 필요한 것이고, 업무추진과 진행에 있어 “문서”라는 증거는 사업주에게 대항할 수 있는 효과적인 수단이기도 합니다.
 
그렇다면, 효율적인 “문서” 의 근거는 어디서 나오는 것인가? 그건 최초의 아이디어를 “얼마나 체계적이고 효율적으로 정리하였는가”에 기인합니다.
 
내 생각을 “누가,언제,어디서,무엇을, 어떻게, 왜?” 육하원칙에 따라서 정리하면 향후 프로젝트를 진행함에 있어 발생되는 트러블을 효과적으로 대처할 수 있는 좋은 자료가 됩니다. 통상적으로 아이디어를 문서화 시키는 대부분은(저를 예를 들자면..ㅡ.ㅡ) 생각나는대로 수첩에도 기록했다가, 포스트 잇에도 기록했다가, PC의 메모장에도 기했다가 하는등 생각나는걸 써놓고 후에 기획서나 제안서 개발문서등 작성할 때 와 아이디어 회의 때 참고하는데, 사실 이것이 그리 좋은 버릇이라고는 할 수 없습니다.
 
아이디어에서 메모(Meno)는 아주 훌륭한 기록 방법이긴 하지만 제대로 정리되지 않은 메모는 이후 혼란을 불러 올 수 있는 “덧”이기도 합니다. 그리고 아이디어가 나오기 시작하면 다른 사람과의 “연동”과 “첨삭” 과정을 거쳐야 합니다. 이때부터 “문서”의 중요성이 강조되기 시작합니다. 두서없이 작성된 메모들, 여기저기서 튀어나오는 개선점들, 잘못된 점들 등등 수많은 내용이 추가되고 사라지고 수정되어 집니다.
이때 많은 기획자들과 PM들이 자신이 만든 함정에 스스로 빠지기 시작합니다 머리속에 생각이 들어가 있는 건 많으나, 뜬 구름잡듯 모호한~사태, 이른바 자가당착에 빠지기 시작하는데, 기록해놓은 메모는 이것 같기도 하고 저것 같기도 하고… 처음에 생각했던 그 기발한 아이디어는 점점 누더기가 되가고…
 
이런 상황을 겪은 사람은 비단 저만이 아니라 많은 경험많으신 분들도 마찬가지라고 생각합니다. 이런 상황을 벗어나서 효율적이고 체계적인 “메모 버릇”을 가지는게 매우 중요합니다. 기획자(PM)치고 메모나 수첩에 회의내용이나 아이디어를 정리하지 않는 사람은 없습니다.

제가 생각하는 가장 효율적인 메모 방법은
 
1)내가 메모한 내용 그 자체가 그것을 자료(Data)로써 가치가 있는가?

2)메모를 다른 사람에게 보여주어도 이해할 수 있는가?

3)일별로(혹은 순서대로) 정리가 되어 있는가?

4)다른사람의 의견이나 수정방안이 나올 경우 첨삭할 여지(여분의 공백)이 있는가?

아이디어 메모들이 모여 "데이터"가 되고 데이터들이 모여 문서가 되고 문서는 프로젝트의 기반이 되어갑니다. 본격적으로 문서(개발기획서, 제안서 등등)를 만들게 되면 이제부터 "문서"는 PM의 강력한 방어수단이자 공격 수단입니다.(어째 전쟁하는 느낌...) 보다 강한 공방 수단이자 지침서로 만들기 위해서는 해당 프로젝트의 디자이너/개발자/기획자/마캐팅담당과 PM이 머리를 싸메면서 완성을 하는데 이때 중요한 것은 "보여주기" 위한 문서와 "각 담당자용" 이 따로 존재하는것이 좋을 때도 있고 "보여주기"위한 문서와 "각 담당자용"문서가 동일하는게 좋은 경우가 있습니다.

(재차 말씀드리지만 교과서적인 이야기는 생략합니다. 뭐가 꼭 필요하고 이건 이렇게 해야되고..이런건 서점가서 찾는게 빠릅니다. 제가 이야기 하고 싶은건 현실적인 이야기 입니다....가끔 현실이 결여된 이야기도 좀 하지만요..히힛~)

우선 기본적으로 프로젝트의 결정권자가 어떤 취향과 출신을 파악해 둘 필요가 있습니다.
실 예로. 개발자 출신의 오너들은 "보여주기"문서를 그리 달가워 하지 않는것이 보편적입니다. 이미 IT계에서 산전수전우주전 다 겪어서 CEO가 되면  실무적인것을 좋아하는 경우가 많습니다. 보고서를 쓰더라도  서술형 보다는 단답형으로 Yes Or No를 확실하게 해주는  보고서를 선호하게 되지요. 마찬가지로 기획서를 보더라도  실제로 어떻게  "만들것" 에 중점을 두고 보게 됩니다.

이와는 반대로 마캐팅 출신의 오너들은 "어떻게 표현할것인가"를 더 중시합니다. 기술적인 부분보다는 디자인,  홍보효과,부수적인 것에 더 신경을 씁니다. 이분들의 기본 베이스는 "기술은 가능할것이다. 중요한건 어떻게 팔아먹느냐!" 입니다. 이런분들에게는 "보여주기"를 위한 문서를 따로 작성하는게 여러모로 편합니다. :-D

마지막으로 이것도 저것도 아닌 타업계 오너형들은  짧은 지식과 어중간한(?) 귓동냥으로 인해 아주 어려운 경우입니다. 문서작업은 물론 기반 지식이 적기 때문에 단어선택에도 신중해야 하며 간단한 내용에도 반드시 "근거"가 존재해야 합니다. 제일 까다로운 CEO 형태이며, 또 가장 보편적인 형태입니다.(적어도 제가 겪어보기론...)

오너(혹은 "갑")에게 프로젝트를 진행하기 위한 OK 사인(또는 자금을..) 받아내기 위해서는 오너의 취향이 어떤지, 무엇을 선호하는지, 어떤 글꼴을 좋아하는지, 공백의 미를 중요시하는지 등까지 모두 파악해야 합니다. 특히 한국말은 "아" 다르고 "어" 다르다는 속담처럼 애매한 문장으로는 자승자박의 형태가 될 가능성이 높습니다.

두번째로, 충분히 검증이 되거나 반드시! 구현가능한 혹은 DeadLine(마감일)에 대한 명확한 근거가 마련되야 합니다.

기획단계에서 모든게 확정되고 결정될수는 없습니다. 중간에 잦은 업데이트와 수정은 불가피한데, 수정되는 것을 미리 감안하여 유드리있는 문서를 작성하다보면 되려 프로젝트를 진행하는 원래의 목적이 티미해지는 경우가 발생합니다. 또한 어떤 일을 진행하는데 근거가 약해지기도 합니다. 유들있는 문서는 차후 수정이나 업데이트에 보다 쉬워지고 빨라 질수 있으나 원 프로젝트에 대한 본질을 흐리게 합니다. 또 원 프로젝트의 개발을 어렵게 할 수도 있습니다. 이는 두마리 토끼를 쫓다가 둘 다 놓치는 우를 범할 수 있으니 문서 작성시 최대한 확정을 짓되 변화가 불가피한 부분에 대해서는 그부분에 대한 명확한 설명과 대처방안 돌발상황등을 허락하는한 자세히 기록하는것이 좋습니다.
또 마감일은 DeadLine이라고 불리는 만큼. 반드시 지켜야 합니다.(사실 이건 금강석에 꽃피길 바라는 것일수도 있습니다...현실적으로..)
이 프로젝트의 마감일이 왜 이렇게 나왔는지, 해당 마감일을 지키기 위해서는 어떤 일련의 과정이 필요한지등을 반드시 정리하여 "문서"에 기록해야 합니다.

제가 생각하는 "프로젝트의 기본 = 잘 짜여진 문서" 입니다.

"잘 짜여진 문서 =

1)잘 정리된 메모를 기반으로 실무자가 가장 보기 편한 방법(그것이 메모장으로 작성한것이라도 개발자/디자이너가 편하면 장땡)으로 작성된 실무자용 문서.

2)결정권자의 맘에 들게 작성한 문서.(허풍이라도 구현할 확신만 있다면 오너에게 주머니를 열게할만한 화려한 문서 혹은 세세한 스캐줄)

3)세분화 된 스캐줄(최악의 상황을 고려한 스캐줄링, 프로젝트 진행시 항상 최악의 경우로 일을 한다고 생각해야야 합니다.)
입니다.

이외에도 프로젝트의 기본 이라고 할 수 있는 것에는

   1) 커뮤니케이션 로그를 남길수 있는 Tools( Program이든 Web이든 수단과 방법을 가리지 말고 대화기록을(또는 구두로 대화한 내용을) 저장할 수 있는)

   2) 다른 팀원이 남긴 "메모"나 "기록"을 I/O가 편하게 이루어 질 수 있는 수단.
   3) 화자간(개발자/기획자/디자이너/마캐터등) 가장 빠르게 대화할 수 있는 수단.
입니다.

아이디어를 정리하는 방법이나 문서화 시키는 방법은 개인과 취향에 따라 가지각색의 모습을 가지고 있습니다. 그러나 그 여러가지 방법을 살펴보면 기본은 모두 동일합니다.

"잘 정리된 메모" + "명확한 근거"에 추가적으로  "보는사람 맘에 드는 스타일의 문서"  정도만 갖추면 어디다 내놔도 일할 기분이 들게 하는 문서를 갖추게 될 수 있습니다.
반응형

'Computing..' 카테고리의 다른 글

너무나도 잘 정리된 UNIX 자료  (0) 2007.05.17
인터넷 보안  (0) 2007.05.07
전자상거래의 보안기술 및 암호알고리즘  (0) 2007.05.07
Posted by 따뜻한 세상
,

인터넷 보안

Computing.. 2007. 5. 7. 16:08

1.인터넷 보안

1.1.인터넷 보안의 현실과 필요성

전 세계가 하나의 전자 시장으로 연결되어 있고 인터넷을 통해 쉽게 정보를 입수 할 수 있다. 그러나 해킹으로 인한 위협등 보안상의 위협의 내재로 가상공간의 사기와 속임수가 발생할 가능성이 높다.

보안 서비스의 문제는 전자상거래 활성화의 가장 큰요소 중의 하나로 이에 대한 연구와 보완은 정보 기술과 인터넷 기술의 발전과 함께 앞으로도 꾸준히 그 역할이 증대하게 된다.

해킹-승인 없이 컴퓨터 시스템에 접근하여 이를 사용하여 이익을  취하는 것
 

1.2.인터넷 보안을 위한 암호 방식

♠.암호방식

인터넷에서 보안을 유지하기 위한 방안

전자상거래 지불 시스템에서는 이 둘의 장단점을 결합한 복합 암호 방식이 많이 이용되고 있다.


1)비밀키 암호 방식

전통적인 비밀키 암호 시스템에서는 송수신자 둘 다가 샅은 비밀키를 알 있어서 송신자가 비밀키를 사용하여 메시지를 암호화하고 수신자는 같은 비밀키를 복호화 한다.

  =>비밀키 알고리즘의 예

   DES : 전세계에서 가장 많이 사용하지만 키의 크기가 작음

   3DES : DES보다 3배나 길어 깨기 힘든 키를 사용하고 있음

   FEAL : 빨리 작동 할 수 있도록 개발

   IDEA : DES보다 두배 긴키를 사용하고 PGP에서는 메시지 암호화에 이 알고리            즘을 사용

   RC2와RC4 : DES보다 처리속도 빠르고 긴키를 사용

   SKIPJACK : 클리퍼라는 컴퓨터 칩용으로 개발한 비밀키 암호 알고리듬이다.


2)공개키 암호 방식

공개키와 비밀키라는 한쌍의 키가 사용.

이 암호 방식에서는 공개키를 공개하여 많은 사람들아 알 수 있도록 하지만,비밀키는 본인만이 알고 다른 사람은 알 수 없도록 비밀로 유지되어야 함

공개키 알고리듬 - RSA


3)복합 암호 방식

DES 방식의 처리 시간 단축과 RSA 방식의  키 관리를  결합한 방식이 널리 이용, 이 두 암호 방식의 장점을 이용한 것이 복합 암호 방식이다.

전자봉투-복합암호 방식에서 메시지의 암호화 및 복호화에 사용되는 임의의 비밀  키를 안전하게 전송하는 방법


♠.암호 방식을 적용한 인터넷 보안 서비스

1)기밀성

거래 당사자 외의 다른 사람이 비밀 메시지를 알아 볼 수 없도록 하는 것, 즉 도청을 방지하는 것이다.


2)인증성

거래 당사자가 상호 상대를 확인할 수 있는 것을 의미.

사용자의 신원을 확인하는 과정, 또는 메시지를 작성한 사람의 신원과 그 메시지의 무결성을 확인하는 과정


3)무결성

매세지의 내용이 전송 중에 수정되지 않고 전달되는 것을 의미. 

송신자의 메시지가 수정, 변조, 파괴되지 않고 수신자에게 전달될 수 있을 때 메시지의 무결성을 보증됨


4)무인 봉쇄

거래상대가 거래 사실을 번복하거나 부인하지 못하도록 하는 것이다. 인터넷 상거래에서 판매자는 구매자가 특정 품목을 실제로 주문했다는 것을 입증할 수 있어야 한다.


♠.전자서명

업무의 안정성을 보증하기 위해 종이 문서에 서명을 하듯이 전자 문서에 전자적 방식으로 서명한 것으로 송신자가 자신의 비밀키로 암호화한 메시지 다이제스트임

다이제스트-서로 다른 메시지에서 같은 다이제스트가 산출될 수 없도록 메시지의 텍스트에서 산출된 간단한 문자열이다.


♠.비밀번호와 공개키 암호 방식을 이용한 보안 서비스

공개키와 비밀키는 단순히 몇 자리의 숫자나 문자가 아니라 수백 자리의 복잡한 문자와 숫자로 구성되어있다.

비밀번호를 통해 사용자임을 인증받고 불법적인 사용자가 승인 받지 않고 시스템에 접근하는 것을 방지하고 있다.


♠.공개키와 비밀키의 입력 방안

비밀키가 저장된 스마트 카드를 컴퓨터에 설치된 스마트 카드 입력 장치에 삽입하거나, 비밀키를 컴퓨터에 저장해 두고 비밀번호를 입력하여 비밀키가 입력되도록 하는 것.


1.3.인터넷 보안 및 지불 프로토콜

♠.SSL :프로토콜 계층도에서 가장 낮은 단계의 보안을 제공한다. 제공되는 보안은 사용자에게 투명하게 인식되며 기본 TCP/IP 서비스 바로 위 단계에서 제공된다.


♠.S-HTTP :웹 전송 표준인 HTTP에 보안측면을 강화시킨 것이다.

클라이언트와 서버가 독립적으로 암호화, 인증, 전자서명을 어떻게 조합하든 어떤 방향이든지 독립적으로 수행할 수 있도록 해준다.

S-HTTP는 개별 파일 단위로 기밀성, 인증, 무결성보장, 부인 방지 등을 제공한다.


♠.SET : 인터넷에서 안전한 신용카드 거래를 지원하도록 비자와 마스터카드에서 개발한 지불 프로토콜이다.

  =>SET의 특징 : 통지 암호를 통한 정보전송에의 신뢰성

                 전자서명 통한 데이터 완전성

                 자료의 기밀성 유지

                 메시지 무결성


♠.소액거래를 지원하는 프로토콜

W3C, MPTP, 컴팩의 밀리센트, IBM의 IKP등이 있다.


♠.케르베로스

전자수표 지불 수단으로 사용하는 넷체크는 케르베로스에 기반을 둔  지불 시스템이다.



2.전자 인증

2.1.공개키

♠.수기서명과 전자서명

거래시 서명을 통해 서로의 거래를 합의하게된다.

가상공간에서의 거래는 전자서명이 이용되고 있다. 수기서명에 비해 전자서명을 위조하기란 어렵지만 가상인물이라는 위험성도 가지고 있다.


♠.공개키 인증의 필요성

공개키 암호 방식의 전자서명을 통해서도 거래 당사자들은 상호간 상대를 완전하게 신뢰할수 없다. 전자서명을 이용하는 시스템에서는  공개키가 다른 사람을 사칭하지 않은 실제 전자서명을 한 당사자의 것이라는 전제하에 상대를 인증해 줄뿐이다.

=>공개키 사칭과 신뢰할 수 있는 웹공동체를 구성하기 위한 두가지 접근법

  ① 전자인증서를 이용하는 방법

  ② 웹 사용자간에 공개키를 인증할 수 있도록 하는것


2.2.서비스별 인증 방법

본인 인증이란 미리 본인에 대한 것을 등록해두고 그 증거를 제시함으로서 본인을 확인 할 수 있도록 하는 것이다.


♠.신용카드 사용 시의 본인 인증

판매직원의 구매자의 신용카드확인

카드 뒷면의 소유자의서명이 기록되어야 하며 카드전표에 서명과 카드 뒷면의 서명이 같아야 함


♠.시스템 접속 시의 본인 인증

아이디나 비밀번호로 정당한 사용자임을 증명할수 있다. 시스템 사용자는 접속할 때마다 사용자의 ID와 비밀번호를 제시해야 한다.


♠.입장 시의 본인 인증

신분증이나 증명서를 제시하거나 지문, 비밀번호등을 통해서 정당한 권한을 가진 사람임을 확인

자료 펌) http://cafe.naver.com/happyhan42/714

반응형
Posted by 따뜻한 세상
,


 전자상거래의 보안기술 및 암호알고리즘


1 물리적 보안

전자상거래라 해서 기본적인 컴퓨터 네트웍의 보안과 다른 것은 아니다즉 일반적으로 쇼핑몰시스템에는 외부에서 인가받지 않은 사람의 침입을 방지하는 “침입차단 시스템” 많이 알려진 용어로는 방화벽(firewall)을 통한 보안을 확보 할수 있겠다방화벽은 그야말로 보안의 기본이 된다집을 지으면 담장을 만들고 대문을 만들고 쪽문도 만든다방화벽을 설치해 보안을 확보한다는 것은 바로 집에 담장을 쌓는것과 같은 이치이다그러나 집에 담장이 있다해도 대문을 만들지 않을수 없다왜냐하면 주인은 들어가고 나가고 해야하기때문이다또 필요하면 쪽문도 만들어야 한다이런 대문을 쉽게 이야기한다면 바로 WWW서버를 접근하도록 하기위한 TCP 80번포트와 같은 곳을 말한다전자상거래는 주로 WWW서버를 이용해 구축하고 일반에게 공개하는데 앞단에 방화벽을 두고 WWW마져도 막아버린다면 그건 정말 담장을 쌓고 주인조차도 나가거나 들어가지 못하는 꼴이 되고 마는것이다방화벽시스템에는 이런 문들이 많이 존재한다이런 것들이 바로 보안상 허점이 되고 있다또 방화벽이 설치되었다 하더라도 전자상거래시 네트웍을 통해 오가는 거래정보지불정보사용자 개인정보등이 보호되는 것이 아니므로 그야말로 시스템을 위한 침입차단정도의 보안만을 지원하기 때문에 방화벽을 설치했다고 전자상거래보안이 다 되었다고 안심할 수 있는 것은 아니다.

정보 보안

전자상거래 보안에 있어서 궁극적인 보안은 바로 정보의 보안 즉 컴퓨터 데이터베이스나 디스크에 저장된 정보나 네트웍을 타고 흘러다니는 정보를 어떻게 외부인들로부터 보거나 수정하는것으로부터 보호할 것인가에 대한 문제를 푸는 것이다정보의 보안을 위해서는 한마디로 암호기술을 사용해 정보를 암호화해서 통신하는 것만이 유일한 해결책이라고 할 수 있다전자상거래에서 거래정보개인정보개인의 금융정보금융거래나 상거래를 위한 비밀번호등 중요한 디지털 정보가 수없이 생성되고 또 저장되고 왔다 갔다 하게된다이런 중요한 정보를 암호화함으로써 도용이나 오용을 막을수 있고 위험으로부터 소비자나 상거래쇼핑몰을 보호 할 수 있다.

기밀성보증을 위한 자료의 암호화

기밀성 즉 내용을 다른 사람이 볼수 없도록 암호화하는 기술은 바로 암호화의 기본이라 할수 있겠다자료의 암호화에 필요한 암호기술은 일반적으로 대칭형 암호기술비대칭형 암호기술 둘로 나누어진다. 70년대와 80년대에는 주로 대칭형암호기술만으로 보안시스템을 구축했었으나 최근에는 비대칭형암호기술 즉 RSA, ECC와같은 암호기술을 이용해 네트웍환경에서도 자연스럽게 적응할수 있는 보안시스템을 구축하는 것이 일반화되었다전자상거래에 있어서 중요한 정보들을 암호화함으로써 거래의 기밀을 기할수 있게된다최근 (98년 2월 11일자 전자신문 1국내 정부가 발표한 전자상거래 종합대책을 보면 그가운데 민간상업분야의 암호기술을 양성화하기위한 법제도의 정비가 들어있다.

암호기술에서 가장 논란이 되고 있는 것은 바로 암호기술의 강함과 약함에 대한 이야기이다암호기술의 안전함은 주로 암호화를 할 때 사용하는 암호알고리즘의 키의 길이를 가지고 이야기한다즉 40bit키를 가지는 암호기술(RC4-40)이 과연 안전한가? 56bit키를 가지는 DES암호알고리즘은 안전한가? 128bit키를 가지는 IDEA알고리즘은 과연 얼마나 안전한가하는 질문을 던질수 있다여기서 중요한 포인트하나를 짚고 넘어가자암호알고리즘의 키의 길이와 안전도에 대해서는 절대로 미국사람들의 말을 믿지 말라는 것이다왜냐하면 미국정부의 규제로 미국에서 특별한 처리없이 그냥 수출이 되는 암호제품은 40bit 혹은 56bit로 제한되어 있기 때문에 미국기업가들은 외국에 나와서 56bit암호기술이 절대로 안전하다고 말할 수 밖에 없게된다그래야 자신들의 제품을 외국에 팔 수가 있으니까전세계적으로 암호학의 대가들이 모여서 96년에 쓴 “암호키의 길이와 보안성정도”에 대한 논문(http://theory.lcs.mit.edu/~rivest/bsa-final-report.ascii)으로는 40bit암호정보를 현재 ASIC기술로 보드를 만들면 0.0002초만에 전부 깰수 있다는 계산이 나왔다동일한 기술로 56bit암호화기술은 12초면 모든 암호를 풀수 있다는 계산이 나왔다대칭형암호기술의 경우 적어도 100bit이상의 키의 길이를 갖는 암호기술을 사용해야한다

1 자료의 무결성 보증을 위한 해쉬함수

자료가 암호화되어 있다고 보안이 다 해결되는 것이 아니다. 중간에 누군가 자료를 수정했거나 자료를 받은 수신자가 해당자료를 임의로 고쳐서 이익을 취하려고 할때를 대비해야 한다. 여기서 말하는 자료란 바로 디지털 정보이기 때문에 고친다고 흔적이 남는 것도 아니고 완벽하게 수정/복제할 수 있기 때문에 자료가 변조되지 않았는지도 증명하는 방식이 필요하게 된다. 이런것을 알아내는 암호적 방식이 바로 단방향해쉬함수들이다.

2 거래 당사자의 신분확인을 위한 전자인증기술

앞에서 언급했듯이 인터넷전자상거래는 네트웍저편에서 컴퓨터를 통해 거래하는 것이므로 정말 저편에 있는 사람이 바로 그사람인가를 확인할수 있는 방법이 필요하게 된다. 얼굴을 마주보고서도 사기를 당하는 시대인데 네트웍환경에서 속이는 방법은 더욱 다양해 질 것이기때문이다.

그러므로 네트웍상 즉 사이버스페이스상에서의 각각의 사람의 신분을 확인 할 수 있는 인프라가 바로 전자상거래의 기반 인프라가운데 하나라 할 수 있겠다. 이것이 바로 전자인증기술이다.

전자인증기술은 여러가지 암호의 방식을 사용해 구현할 수 있다. 그러나 80년대 후반부터는 공개키 암호기술을 이용해 ITU-T X.509기술을 기반으로 CA(Certificate Authority)서버를 중심으로 한 전자인증기술이 국제적으로 표준으로 사용되고 있고 또 앞으로도 많이 확산될 것이다.

단적인 예로서 WWW프로토콜의 보안 프로토콜로 널리 사용되고 있는 SSL(Secure Socket Layer), RSA사가 제안한 보안전자우편프로토콜인 S/MIME, 국제표준 보안전자우편프로토콜인 PEM(Privacy Enhanced Mail)들도 전부 X.509기술을 인증방법으로 채택하고 있다.

심지어 그룹웨어인 로터스 노츠역시 인증기술은 X.509기술을 기반으로 한다. 전자인증기술과 서비스인프라는 크게 두가지로 나누어 볼수 있다.

공공성을 띠는 인증서비스인프라와 민간분야의 인증서비스 인프라이다.

공공인증서비스인프라는 금융망, 행정전산망, 교육망등 공공성을 띠는 인증업무에 적용하는 인증서비스를 말하며 이는 국가적으로 인증체계와 구조를 형성해 공신력을 가져야 한다.

민간인증서비스인프라는 예를들면 어떤회사가 회사내에서 싱글사인온(Sigle Sign On, 자신이 사용하는 많은 컴퓨터를 접속하기위해 복수개의 사용자명과 패스워드를 관리하는 불편을 덜기위해, 회사에서 하나의 X.509전자인증서를 발급받고 그 인증서 하나로 모든 시스템에 자신의 신분을 확인받고 접속사용하도록 함으로써 관리비용이나 편리성을 도모하는 시스템)을 위해 직원을 대상으로 인증서를 발급하는 경우는 오로지 회사내에서의 네트웍과 컴퓨터시스템에서만 적용되므로 굳이 정부기관의 공인받지 않더라도 회사자체적으로 신분증을 발급할 수 있게된다.

예를 들면 주민등록증의 발급은 동사무소등 국가기관의 통제를 받는 신분확인 절차를 받아서 발급받지만 회사의 사원증을 발급받는데는 회사 자체의 판단으로 발급할 수 있는 것과 같은 이치이다.

Digest

비대칭키 알고리즘

비대칭키 암호화 알고리즘은 서로 다른 두개의 키를 이용하여 하나의 키는 Encryption에

다른 하나의 키는 Decryption에 사용한다.

1.RSA (Rivest Shamir Adleman) : RSA는 1978년 Rivest, Shamir, Adleman이 발표한 논문인 "A Method for Obtaining Digital Signatures and Public Key Cryptosystems"에 제안된 암호 시스템을 말하며, 발표자의 머리 문자를 연결한 것이다.

1) 시스템 설명 : RSA 암호 시스템은 매우 큰 정수의 소인수 분해가 어렵다는 가정하에서 설계된 것이다.

시스템 구성은 다음과 같다.

① 두개의 큰 소수 p와 q를 랜덤하게 생성하여 n=pq를 계산한다.

② Euler 함수값 oslash(n)=(p-1)(q-1)과 서로 소가 되는 e를 계산한다. (gcd(e,oslash(n))=1)

③ oslash(n)과 e로부터 유클리드 알고리즘을 사용하여 ed≡1(mod oslash(n))가 되는 d를 계산한다.

이로부터 다음과 같은 공개키 암호 시스템을 구성한다.

공개키 : n, e

비밀키 : p, q, d

Message Space = M∈Z | 0≤M≤n-1

암호화 : C = E(M) ≡ Me (mod n)

복호화 : M = D(C) = D(E(M)) ≡ Cd mod n ≡ Med mod n

위에서 서술한 내용은 다음 몇 가지 정리에 근거하고 있다.

[정리] (Euler의 정리) 만약 a와 n이 서로 소이면 aoslash(n) ≡ 1 (mod n)이다.

p, q가 소수이고 n=pq라 하자.

만약 gcd(e, oslash(n)) = 1 이고, ed ≡ 1 (mod oslash(n)) 이면

Med ≡ M (mod n) (0≤M≤n)

<증명> oslash(n) = oslash(p)oslash(q)이다.

그러므로 Med = Mkoslash(n)+1 ≡(Moslash(p))koslash(q)middotM(mod q)≡M(mod p)

마찬가지로 Med ≡ M (mod q)

따라서 중국인의 나머지 정리를 이용하면

Med ≡ M (mod n) 임을 알 수 있다.

[예] p=47, q=59, n=pmiddotq=2773이라 하자.

그러면 oslash(2773)=(47-1)middot(59-1)=2668

비밀키를 d=157이라 하면, 유클리드 알고리즘을 이용하여 공개키 e=17을 구할 수 있다.

만약 A=01, B=02, ……, Z=26을 대응시키고 blank=00을 대응 시키자.

"Its all greek to me"라는 message에 대응하는 숫자열은

0920 1900 0112 1200 0718 0505 1100 2015 0013 0500 이 된다.

이때 (0920)e = (0920)17 ≡ (0948) (mod 2773)이고, 전체 message를 암호화 하면,

0948 2342 1084 1444 2663 2390 0778 0774 0219 1655가 된다.

2) RSA 암호 시스템의 안전성

공개키 e와 n을 가지고 비밀키 d를 구할 수 있다면 RSA는 해독 되게 된다.

그런데 n으로부터 oslash(n)을 구현한다면 유클리드 알고리즘을 사용하여 d를 쉽게 계산 할 수 있으므로 전체적인 비도는 oslash(n)의 계산에 달려 있다.

그런데 n을 소인수 분해할 수 있다면 oslash(n)은 자동적으로 계산된다. 따라서 n의 소 인수 분해는 곧 RSA 암호 시스템의 해독을 의미한다.

한편 n의 소인수 분해를 모르고 oslash(n)의 값을 결정하는 방법은 알려지지 않고 있다.

RSA 암호 시스템을 구성하기 위한 소수 p와 q는 다음 조건을 만족해야 한다.

①p와 q는 거의 같은 크기의 수이다.

②p-1과 q-1은 큰 소인수를 갖는다.

③gcd(p-1, q-1)은 작은 수이다.

위와 같은 조건에 의해 선택된 n=pq는 인수 분해하기 어려운 형태중의 하나이다.

현재까지 알려진 인수분해 알고리즘 중 가장 좋은 것의 복잡도는

exp((O(1) + 1 )lognfrac12 log lognfrac12)이고, 특수한 형태의 정수에 대한 인수분해

알고리즘은 exp(O(1)+1)logn⅓ log logn⅔ )임이 알려져 있고 아직 다항식 시간 알고리즘은 없다.

* RANDOM NUMBER GENERATOR

1) LFSR Random : Linear Feedback Shift Registers를 사용한 Random number generator로써 수행속도가 빠르다.

2) Real Random : LFSR Random과 algorithm M을 사용하여 Random number를 생성시킨 후에 MessageDigest로 Hash하여 사용하게 된다.

대칭키 알고리즘

대칭키 암호화 알고리즘은 Encryption과 Decryption에 하나의 키를 사용하며,

대칭키 암호화 알고리즘의 종류는 DES, RC2, RC4, RC5, IDEA, Blowfish 등이 있다.

1. RC2 : RC2는 secret key를 사용하는 block encryption algorithm으로써, DES를 대체하고자 하는 목적으로

개발되었다. Input Block과 Output Block의 크기는 8byte이며, key의 길이는 1 ~ 128 bytes 에 이르기까지 다양하게 사용될 수 있다. 보통은 8 byte의 키를 사용한다.

2. RC4 : RC4는 다양한 길이의 key size를 가지는 stream cipher이다.

algorithm은 OFB mode의 형태로 작동하게 되며, keystream은 plaintext와 독립적이다.

3. RC5 : RC5는 word에 기초한 BlockCipher로써 다양한 Parameter들을 가진다. ( BlockSize, KeySize, WordSize, number of Rounds.) 이때 BlockSize는 WordSize의 두배이며, 일반적으로는 16, 32, 64...등과 같이 사용된다. Round는 최소 6 이상이 되어야 보안적인 의미를 지니게 되며, 최소 12이상, 가능하다면 16정도가 권장된다.

4. IDEA : IDEA는 8bytes의 block과 16bytes의 secret key를 지닌다.

cipher IDEA는 output의 변화에 따라 8 round로 구성되는 iterated cipher이다.

5. DES : DES는 8bytes의 plaintext/ciphertext와 8bytes의 key를 지니는 BlockCipher Algorithm으로써 decryption algorithm은 incryption algorithm을 역으로 적용하게 된다. 8bytes key중에서 실제로 사용되는 key length는 56bits이며, 각 byte의 least significant bit은 parity check에 사용된다.

6. DES3 : DES3(tripleDES, DES_EDE3)는 DES의 보안적 효과를 증가시키기 위해서 사용되며, 각 8bytes의 key를 사용하여 encryption- decryption-encryption을 행한다. 따라서 key size는 24bytes가 되며, plaintext/ciphertext의 크기는 DES와 같이 8bytes이다.

7. DESX : DESX는 DES_EDE3수준의 암호화 Strength를 지니면서 DES_EDE3의 단점인 속도를 극복하고자 개발되었다. DESX는 DES_EDE3와 마찬가지로 24bytes의 key size를 가지는데, plaintext는 첫 번째 8bytes key와 xor operation을 하며, 이 결과를 두 번째 8bytes key로 encryption/decryption하고 다시 이 결과와 세 번째 8bytes 키로 xor operation을 한다.

8. Blowfish : BLOWFISH는 DES를 대체하기위한 새로운 대칭키 블록 암호화 알고리즘으로서 1993년 BRUCE SCHNEIER에의해 만들어진 알고리즘이다.

[ 특 징 ]

1) 블록 사이즈 : 64 비트

2) KEY LENGTH : 32비트 ~ 448비트

3) 암호화 속도는 DES나 IDEA보다 빠르다. ( 과거 15년 동안 내구력이 있었던 DES는 이제는 수명이 끝나가고 있다. 56 비트 키 사이즈는 BRUTE-FORCE 공격에 공격받기 쉽다. DIFFERENTIAL CRYPTANALYSIS(미분암호해독)와 LINEAR - CRYPTANALYSIS에서의 최근 발표는 DES가 다른 공격에서도 공격 받기 쉽다는 것을 지적하고 있다. )

4) UNPATENTED AND ROYALTY-FREE

2. Diffie-Hellman

Diffie-Hellman은 1976년에 개발된 최초의 public-key algorithm이다. 이것은 제한된 영역에서 멱의 계산에 비하여 이산 대수의 계산이 어렵다는 것에 그 보안적인 기초를 둔다.

iffie-Hellman은 key distribution에는 사용될 수 있으나 message를 암호화하거나 복호화 하는데에는 사용될 수 없다. 연산 과정은 간단하다.

key를 교환하고자 하는 양 party(A, B)가 prime n 과 g의 사용에 동의하였다고 할 때, protocol은 다음과 같이 동작한다.

A : X = g**x mod n ( x는 large random integer )

B : Y = g**y mod n ( y는 large random integer )

=> 이때 A, B는 각각 X와 Y를 상대방으로 전달한다.

A : k = Y**x mod n

B : kp = X**y mod n

=> 이때 k와 kp는 g**(xy) mod n과 동일하다.

Diffie-Hellman implementation은 PKCS#3 Diffie-Hellman Key Agreement Standard

(An RSA Laboratories Technical Note Version 1.4)에 따른다.

3. ElGamal

ElGamal 알고리즘은 제한된 영역에서의 이산대수의 계산이 어렵다는 것에 그 소수 p와

random number g, x를 생성하고, y = g**x mod p가 된다.

이때 y, g, p는 public-key를 이루고 x는 private-key를 이루는데,

이 key pair를 사용하여 Encryption과 Decryption이 수행된다.

4. 타원곡선 알고리즘

요즘 보안에 관심있는 사람들은 타원곡선(Elliptic Curve) 알고리즘에 푹 빠져있다.

이유는 하나. 공개키 암호화 기술의 대명사로 널리 쓰이는 RSA보다 키의 크기가 작으면서도 비슷한 수준의 보안 기능을 자랑하기 때문.

사실 타원곡선 알고리즘은 최근에 등장한 기술이 아니다. 이미 100여년 전부터 연구되기 시작한 이론으로 지난 85년 닐 코블리츠(Neal Koblitz)와 빅터 밀러(Victor Miller)가 발표했다.

이 알고리즘의 원리는 타원곡선 한 점 Q와 P의 관계가 'Q = dP'라고 할 때, d를 알아내 기가 어렵다는 데서 출발한다.

RSA가 인수분해(Factorization) 문제에 기반을 두고 있다면, 타원곡선 알고리즘은 이산로그 문제(Discrete log problem)에 초점을 두고 있다.

그러나 무엇보다도 타원곡선 알고리즘이 많은 반향을 불러일으키고 있는 것은 기존 RSA, Diffie-Hellman, DSA, ElGamal 등의 보다 작은 크기의 키를 사용하면서 거의 비슷한 수준의 보안을 보장해준다는 것이다.

게다가 하드웨어 이식이 쉬워 휴대 전화나 호출기와 같이 휴대형 시스템에 적용하기 쉽다.

RSA에서 보통의 보안도를 제공하는 1,024비트가 갖는 보안도를 타원곡선 알고리즘에서는 160비트로 구현하고 있다.

또한 단지 600비트만을 사용해서 RSA에서 21,000비트가 갖는 보안도를 제공한다는 놀라운 사실을 알 수 있다.

RSA에서 사용하는 주요 연산은 곱하기이다.

곱하기가 연속으로 사용되는 만큼 수행 시간이 길어진다.

그러나 타원곡선 알고리즘에서는 주요 연산이 더하기이기 때문에 수행 시간에서도 많은 절약을 할 수 있다.

수행 속도의 차이를 보면 타원곡선 알고리즘이 RSA에 비해 약 10배 정도 빠르다.

메시지를 암호화할 때는 메시지 크기에 따라 결과가 달라진다.

메시지 크기가 커지면 커질수록 RSA와의 차이가 줄어든다.

하지만 공개키 암호 방식이 사용되는 주요 분야 중 하나가 사용된 관용키를 암호화하는 것이라는 것을 상기하면 이것도 큰 장점이 될 수 있다.

관용키 크기는 대체적으로 약 62비트에서부터 200비트 사이의 크기가 대부분이기 때문이다.

타원곡선 알고리즘의 장점을 정리하면 다음과 같다.

middot기존의 공개키 암호 방식에 비해 단위 비트당 안전도가 높다.

middot키 크기가 작으며 구현시 암호화와 서명이 빠르다.

middot스마트 카드나 휴대 통신기처럼 작은 하드웨어에서 적용하기 쉽다.

middot수출입 문제를 피하기 위해 암호화와 서명 단계를 분리할 수 있다.

middot계산량이 작고 저장이 유리하다.

하지만 타원곡선 알고리즘은 아직 기술적으로나 학문적으로 검증받아야 할 부분이 많다.

위에서 언급한 장점에도 불구하고 아직 실용화되지 못하고 있는 것은 타원곡선 알고리즘의 약점과 문제점이 완벽하게 검증받지 못했기 때문이다.

또한 이 알고리즘이 관심을 받기 시작하면서 다양한 해킹 방법들이 연구될 것으로 예상된다.

해쉬함수

해쉬함수는 임의의 길이를 가지고 있는 메세지를 입력으로 받아 일정한 길이의 bit으로 표현하는 함수이다. 원래의 메세지 X를 해쉬함수 f를 사용하여 나온 결과를 x라 하는 경우를 식으로 나타내면 f(X) = x 이 된다. 안전한 해쉬함수가 되기 위해서는 다음의 조건을 만족해야 한다.

조건 1 : 임의의 길이의 메세지를 입력으로 받을 수 있어야 한다.

조건 2 : 고정된 길이의 출력을 만들어야 한다.

조건 3 : 모든 X에 대해서, f(X)의 계산이 쉬워야 한다.

조건 4 : 주어진 x에 대해서 원래의 X를 구할 수 없어야 한다.

조건 5 : f(X) = f(Y)인 X,Y를 구하기가 어려워야 한다.

해쉬함수는 메세지 인증이나 전자서명 등에 사용된다.

메세지 인증과 전자서명은 메세지를 송신자의 비밀키로 암호화함으로써 이루어지는 데 공개키 암호방식은 관용 암호방식에 비해 시간이 오래 걸리게 된다.

그래서 메세지를 해쉬함수를 이용하여 원래보 다 짧은 길이로 바꾸어 놓은 다음에 비밀키로 암호화하게 된다.

해쉬함수의 종류로 MD4, MD5는 각각 128-bit의 결과를 내놓고 SHA(Secure Hash Algorithm)는 160-bit의 결과를 내놓는다.

◎ 메시지 다이제스트 ( Message Digest )

1. 메시지 다이제스트 인증

단방향 함수(One-Way Function)의 특성을 지닌다.

수신자와 송신자는 단방향 함수를 이용하여 데이터의 Modify 여부를 확인할 수 있는데,

이 방법의 가장 큰 장점은 아무런 여과 없이 사용자의 Password가 망상에 그대로 유출되는

기본 인증 기법의 단점을 극복한 것이다.

또한 기본 인증 방법에서 문제시 되었던 재연 공격(Replay Attack)에 대한 대비책으로,

시간 정보를 함께 전송하는 것이 일반적이다.

그러나 이 방법도 가장 공격 (Masquerade Attack)에 대한 위협 요소는 존재한다.

다음에는 메시지 다이제스트 알고리즘에 대하여 간략히 알아보기로 하자.


2. 메시지 다이제스트 알고리즘 ( Mesage Digest Algorithms )

메시지 다이제스트 알고리즘의 보안 효과는 실지로 그 알고리즘이 적용되는 메시지의

사이즈 크기에 달려있다.

전형적인 메시지 다이제스트 사이즈는 128 비트에서 160 비트까지이다.

전형적으로 2가지의 알고리즘이 사용되고 있는데, 첫번째는 Rivest Message Digest 2

( MD2 라고 흔히 부른다 ) 이고, 차후 효율성을 높인 Mesage Digest 4 ( MD4 ), Message

Digest 5 ( MD5 ) algorithm이 소개되었다. 각각의 알고리즘들은 임의의 메시지 사이즈,

그리고 128 bit 메시지 다이제스트를 생성할 수 있도록 구성되었다.

메시지 다이제스트는 수신자와 발신자가 각각 비밀 키를 나누어 가지도록 구성되었고,

이런 구성법을 이용하여 발신자는 수신자의 신분 확인(authentication)을 할 수 있다.

하지만 이런 구조도 단점은 지적되고 있는데, 예를 들면 제 3자로(A Third Party)

인한 수신자와 발신자의 보호 방법이 채택되기는 하지만, 실지로 강력한 보안 방법으로는

인식되지 않는다.

 

3. 해쉬를 이용한 전자서명 방법과 x.509에 기초한 인증서의 역할과 내용

 

2 전자서명기술

전자상거래는 하나의 거래이자 계약활동이므로 계약 당사자간에 분쟁의 소지를 없애기위해 상호 확인하는 절차가 필요하다.

서로 만나서 계약을 하는 경우 녹음을 한다던가 펜으로 서명을 하거나 도장을 찍거나 하지만 네트웍상에서는 그럴수 없다.

그러므로 네트웍환경에 적합한 서명기술이 필요한데 그것이 바로 전자서명기술이다.

전자서명기술은 암호학적 처리를 통해 다음 세가지를 검증할 수 있는 기술을 말한다.

 

1 서명자의 신분을 확인 할 수 있어야한다.

즉 누가 서명했는지 검증되어야 한다.

2 서명한 문서(자료)의 수정/삭제등을 검출할 수 있어야 한다.

3 서명자가 후에 서명이나 문서(자료)의 작성을 부인하는 것을 방지하고,

그 진위를 확인할 수 있어야 한다.

오늘날 사용되는 여러가지 전자서명기술은 수학적 근거를 기반으로해서 증명이 가능한 서명기술이기 때문에 실세계의 서명보다도 훨씬 더 정확하다고 할수 있다.

실세계의 서명은 필적감정을 통해 진위를 확인하지만 상당히 주관적이고 비과학적인 요소가 들어있지만 전자서명의 경우는 진위의 정확성이 분명하기 때문에 오히려 더 확실한 방식이라고 할수 있겠다.

전자상거래를 구축하거나 또 이용하기 전에 정말 이 시스템이 안전한가를 확인하는 기본적인 정보를 제공했다.

많은 쇼핑몰들이 우리는 정말 안전하다고 말하지만 실질적으로 안전한가는 소비자가 직접 판단해야 한다. 그러기위한 기본적인 판단 기준을 제시하였다.

 

[ 암호의 역사 ]

사이테일 : 기원전 5세기 무렵 고대 그리스인들이 쓰던 최초의 암호문.

둥근 막대기에 기다란 양피지를 둘둘 말아 가로로 글을 써넣은 뒤

다시 펴면 세로로 쓰인 글자 순서가 뒤죽박죽이 된다.

똑같은 굵기의 막대기에 양피지를 감으면 원래의 통신문이 나타난다.


시저 암호문
 : 기원전 1세기 로마 제국의 시저 황제가 고안한 글자 바꾸기 암호법.

알파벳을 일정하게 건너뛰어 쓰는 방법이다.

예를 들어 HOME을 3칸씩 건너뛰면 KRPH가 된다.


비지넬
 : 16세기 프랑스인 비지넬이 만든 최초의 근대 암호.

복잡한 표를 미리 만들어두고 이에 따라 암호를 조립하거나 푼다.

예를 들어,암호 열쇠가 'HOME’일 경우 '…HmiddotOmiddotMmiddot EmiddotHmiddotO…’의

순서에따라 'enemy’라는 원문의 암호문을 찾으면 'lbqqf’가 된다.

 

난수표 : 가장 많이 알려진 암호법. 0부터 9까지의 수를 완전히 무질 서하게 배열했다.

예를 들어 5,7이란 난수 암호를 받으면 난수표에 따라 이는 3,9로 풀이되는데

만일 3이 내일,9가 공격이란 뜻으로 미리 약속돼 있다면 5,7은 ‘내일 공격 한다’

는 뜻이 된다.


DES
 : 77년 개발된 글자 바꾸기식 전산암호법. 다단계의 글자 바꾸 기 과정을 거쳐

암호문을 만들어낸다. 암호를 만드는 열쇠와 이를 푸는 열쇠가 같다.

 

RSA : 78년 개발된 전산암호법.

인간과 컴퓨터가 가장 계산하기 힘들다는 소인수분해를 이용했다.

공개열쇠와 비밀열쇠를 따로 두어 ,공개열쇠는 한사람 또는 다수의 사람에게 공개하며

비밀열쇠는 자신만이 갖는다.

다른 사람이 공개열쇠로 암호문을 보내면 이를 비밀열쇠로 따서 볼 수 있다.

 

1. 전자상거래에서 보안측면의 요구사항을 서술하고 이를 만족시키기 위한 보안기술과 활용에 대해 다음과 같은 관점에서 서술하시오.

 

1 전자상거래 보안기술체계

2 암호시스템의 유형과 용도 및 대푶적 암호알고리즘

3 해쉬를 이용한 전자서명 방법과 x.509에 기초한 인증서의 역할과 내용

4 SET의 특성 및 사용된 암호기술

 

2. 전자상거래와 관련된 법률의 종류와 내용을 간략히 기술하고 문제점과 대응방안을 기술하시오

 

3. 사이버 쇼핑몰 구축을 위한 기술요소와 그내용을 간략히 기술해 주십시오

 

 4. SET의 특성 및 사용된 암호기술

 

SET (Secure Electronic Transaction) [4]

 

SET은 신용카드 회사인 VISA와 Master Card 사가 신용카드들 기반으로 한 인터넷 상의 전자결제를 안전하게 이룰 수 있도록 마련한 전자결제과정 표준안이다. 이것은 아직 시험 단계이며 SET을 바탕으로 실용화된 전자결제시스템은 아직 나오지 않은 상태이다. 그리고, SET은 어디까지나 일개 신용카드 회사에서 제안한 안에 불과하며 이것이 표준으로 자리잡기 위해서는 업계에서 얼마나 많이 사용해 주느냐에 달려있다.

그럼에도 불구하고, VISA와 Master Card 사는 전세계 신용카드 거래의 거의 대부분을 도맡고 있는 회사들이고, 또 SET이 암호학의 방법론의 잘 결합한 안전한 전자결제방안이기 때문에 많은 사람들이 관심을 갖고 있고, 또 이를 구현하려고 노력하는 중이다. 또, SET이 신용카드 기반 전자결제를 위한 표준안이기는 하지만 계좌이체나 직불카드 등의 결제수단에도 확대될 수 있는 구조이고, 실제로 VISA와 Master Card 사는 그렇게 확대할 계획을 갖고 있다. 본 절에서는 SET의 목표 및 SET의 내용을 일부 살펴봄으로써 8절까지 설명한 암호화 방법이 SET에서 어떻게 구현되었는지를 알아보고자 한다.

 

(1) SET의 목표 : SET의 목적은 다음의 세가지를 제공하는데 있다.

▶ 정보의 기밀성 제공

▶ 지불정보의 무결성 확보

▶ 상인과 고객 쌍방의 확인

 

SET에서는 위 세가지 목적을 이루기 위하여 앞에서 설명한 암호화 알고리즘, 전자서명, 전자인증서 등의 암호학 방법론들을 사용한다.

 

(2) 전자지불 시스템 참여자의 종류

1 절의 목적을 달성하기 위하여 SET에서는 신용카드를 이용한 전자지불 참여자 간의 각 거래(Transaction)의 과정들을 정의하고 있으며, 이 과정들은 보안이 유지되도록 암호학 방법론을 사용하고 있다. 예를 들어, 고객과 상인 간에는 구매요구(Purchase Request) 거래가 있고, 상인과 금융기관 간에는 지불승인(Payment Authorization) 거래가 있다.

이러한 거래를 정의하기 전에 SET에서는 이러한 거래 당사자의 종류를 먼저 정의하고

있다. 이들은 다음과 같다.

 

고객(카드 소지자, Cardholder) : 소지한 카드를 이용하여 구매대금을 결제하려는 사람

발행사(Issuer) : 신용카드를 발행한 회사

상인(Merchant) : 상품을 판매하고 그 대금을 카드를 이용하여 받으려는 사람

매입사(Acquirer) :상인이 요구한 신용카드 결제를 승인하고 그 대금의 지불을 처리하는 회사

Payment Gateway : 매입사 또는 매입사를 대신하는 제 3자가 상인과의 결제 처리를 수행하기 위해 사용하는 시스템

상표(Brand) : 신용카드의 상표권을 갖고 있는 카드회사 (예: VISA, Master)

제 3 자(Third Parties) : 발행사나 매입사의 카드결제거래를 대신하는 제 3 자  

(3) 거래의 종류

 

SET의 (1)절의 목적을 달성하기 위하여 (2)절에 나열한 각 거래 참가자들 간의 가능한 모든 거래 과정을 암호학에 기초하여 정의하고 있다. 예를 들어 고객과 상인 간의 구매요구(Purchase Request) 과정에서는 주문정보와 지불정보가 기밀이 유지된 채로 상인 및 매입사에게 전달되어야 하며 또, 인증, 무결성, 부인방지도 확보되어야 한다. 또, 상거래의 특성상 상인은 주문정보만을 알 수 있고 지불정보는 알 수 없어야 하며, 매입사는 그 반대이어야 한다. 이것을 이루기 위하여 고객인 상인에게 정보를 보낼 때 어떻게 암호화를 하고 어떻게 전자서명을 하고 전자인증서는 어떻게 이용해야 하는가 등을 자세히 기술하고 있다. SET이 기술하고 있는 거래의 종류는 다음과 같은 것들이 있다.

 

고객 등록(Cardholder Registration)

상인 등록(Merchant Registration)

구매 요구(Purchase Request)

지불 승인(Payment Authorization)

지불 캡쳐(Payment Capture)

인증서 검색(Certificate Query)

구매 조회(Purchase Inquiry)

구매 통보(Purchase Notification)

승인 취소(Authorization Reversal)

캡쳐 취소(Capture Reversal)

환불(Credit)

환불 취소(Credit Reversal)

 

위의 목록에서 나오는 캡쳐란 상인이 갖고 있는 매입전표를 말한다. 상인이 매입사로부터 지불승인을 받을 때 매입사로부터 캡쳐토큰(Capture Token)도 함께 받는다. 이 캡쳐토큰을 후에 (예를 들어 일일 결산 시) 매입사에 제시하면 (대부분 Batch 처리를 한다) 캡쳐를 받는다. 상인은 이 캡쳐를 모아 두었다가 결제일에 가서 이 캡쳐를 매입사에 제시하고 캡쳐에 표시된 금액 중 매입사의 수수료를 감한 금액을 받음으로써 최종적으로 고객이 지불한 대금을 받게 되는 것이다.

 

(4) 인증서의 발행

 

8절에서 설명한 바와 같이 전자인증을 위한 기간구조로 CA 계층구조가 있어야 한다. 이것은 SET에서도 예외가 아니다. SET에서 정의한 각 거래 당사자들은 자신의 CA로부터 전자인증서를 받아야 한다. 이들은 고객, 상인, Payment Gateway, 매입사, 발행사들인데 그들에게 전자인증서를 발행하는 기관은 각각 다음과 같다.

 

고객 : 소지한 카드의 발행사

상인 : 상인이 거래하는 매입사

Payment Gateway : Payment Gateway가 연결된 매입사

매입사 : 카드 상표 회사(Brand)

발행사 : 카드 상표 회사(Brand)

 

또한, SET에서는 보안을 강화하기 위하여 서로 다른 두 쌍의 공개키, 개인키들을 갖도록 하고 있고, 따라서 각각에 대해 다른 전자인증서가 발행된다. 한 쌍은 키는 전자서명을 위해서 사용되므로 서명 쌍(Signature Pair)이라 불리고, 다른 한 쌍은 전자봉투를 위해서 사용되므로 키교환 쌍(Key Exchange Pair)이라고 불린다. SET에서 권고하는 CA 계층구조의 한 예를 그림으로 도시하면 아래와 같다.

 

위 그림에서 Geo-political Signature는 해당 국가의 서명용 인증서를 나타내고, Association Signature는 카드상표사(VISA, Master Card)의 서명용 인증서를 나타낸다.

 

(5) 이중서명(Dual Signature)

 

구매요구(Purchase Request) 거래에서 상인은 주문정보만을 알아야 하고, 매입사(Payment Gateway)는 지불정보만을 알아야 한다. 이를 위해서 고객이 결제정보를 상인에게 보낼 때 주문정보는 상인의 공개키를 이용하여 암호화하고, 지불정보는 매입사(Payment Gateway)의 공개키를 이용하여 암호화하여야 한다. 이 각각의 암호문에 고객의 전자서명이 붙어야 하는데 각각에 대해 따로 만들어 붙인다면 상대편 정보와의 연결성을 확보할 방법이 없어진다. 이를 위해서 SET에서는 이중서명(Dual Signature)을 제안하고 있다. 이중서명이란 주문정보의 메시지 다이제스트와 지불정보의 메시지 다이제스트를 합하여(Concatenate) 다시 이것의 메시지 다이제스트를 구한 후 고객의 서명용 개인키로 암호화한 것을 말한다.

주문정보와 지불정보 각각에는 이중서명과 함께 상대편 정보의 메시지 다이제스트가 포함되어 있다. 따라서, 이 정보를 받은 상인 또는 매입사(Payment Gateway)는 자신이 받은 정보의 메시지 다이제스트를 구한 것과 상대편 정보의 메시지 다이제스트를 합하여 메시지 다이제스트를 다시 구한 후 이중서명을 고객의 서명용 공개키로 푼 것을 비교함으로써 서명을 확인할 수 있다.

 

(6) 최상위 키(Root Key)의 관리

 

CA 계층구조를 따라 전자인증서를 확인하기 위한 기본 키는 최상위 키(Root Key)이다. 일반적으로 최상위 키는 미리 모두에게 알려져 있고, 누구나 믿고 있는 것이라고 말해지지만 컴퓨터 시스템의 입장에서는 결코 그러하지 못하다. 컴퓨터는 최상위 키를 필요시마다 최상위 인증기관(Root CA)에게 받거나, 또는 자신의 하드 디스크에 파일로 관리해야 하는데 두 가지 모두 보안상의 허점이 있다. 만약, 필요시마다 받는다면 최상위 인증기관의 확인(Authentication)이 어려워지며, 파일로 관리한다면 해커가 파일을 바꿔 치는 것을 고려해야 한다. 이러한 문제를 해결하기 위해 SET에서는 최상위 키의 분배, 확인, 대체 과정을 정의하고 있다.

 

10. 결론

 

이상으로 인터넷에 안전한 전자지불 시스템을 구현하기 위하여 암호화 방법론을 살펴보고, 이것을 응용한 SET 표준안을 알아보았다. 인터넷이 구조적으로 보안상의 허점이 있음을 알아 보았고, 이것을 해결하기 위하여 암호화 방법들을 어떻게 적용할 수 있는가를 살펴보았다. 그러나, 암호화가 모든 것을 해결해주지는 못한다. 흔히 말하듯이 보안은 95%의 알고리즘과 5%의 제도로써 이루어진다. 따라서, 보안을 볼 때는 암호화 방법의 관점에서의 해결 방법만 찾을 것이 아니라 제도적인 해결 방안도 살펴 보아야 할 것이다.

또한, SET이 전자지불거래의 표준안으로 자리잡을 것이라는 것은 거의 확실한 것으로 보여진다. 그러나, SET 표준안 자체가 최종 버전이 나온 상태가 아니고(97년 5월 말에 나올 예정이라고 한다.), 더욱이 완전한 표준으로 자리잡은 것도 아니다. 또, SET을 바탕으로 한 전자지불시스템이 아직 완성되어 출시되지도 않았다. 이것은 전자상거래 분야에 있어서 우리가 선진국에 뒤지지 않고 주도권을 잡을 수 있는 기회가 아직 남아있다는 뜻이다. 우리나라의 전자상거래 업계가 이 기회를 놓치지 않고 우리 실정에 맞으며 국제적 상관행과도 배치되지 않는 SET의 보완 표준안을 내놓고 이를 구현한 전자지불 시스템을 빠른 시일 내에 완성함으로써 앞으로의 전세계 전자상거래 시장을 주도해 나갔으면 하는 바람이다.


반응형
Posted by 따뜻한 세상
,

■SET(Secure Electronic Transaction) 이란?

SET(Secure Electronic Transaction)이란 간단히 말해 전자상거래에서 지불정보를 안전하고 비용효과적으로 처리할 수 있도록 규정한 프로토콜을 말합니다. 인터넷과 같은 공개된 통신망에서 전자상거래를 하기위한 "지불시스템에 대한 기술표준" 으로 S/W 와 H/W를 포함합니다.

1997년 5월 31일 신용카드 업계의 Major들인 Master와 Visa가 공동으로 발표하였으며 기술자문역으로 GTE, IBM, Microsoft, Netscape, Terisa, VeriSign, RSA, SAIC가 참여하여 SET 1.0을 개발 하였습니다.

SET(Secure Electronic Transaction)은 전자상거래시 안전한 지불을 위한 내용을 담고있습니다.
-고객과 Merchant간에 서로의 신분을 확인할 수 있는 인증에 관한 내용
-인터넷 상에서 메세지를 안전하게 주고 받을 수 있는 암호화 기법에 관한 내용
-지불절차에 관한 내용


■SET의 구성

Cardholder:
Merchant에서 상품과 서비스를 구매하고 신용카드로 대금을 지불합니다.

Merchant:
Cyber Shopping Mall을 운영하는 주체로써 신용카드 가맹점입니다.

PG(Payment Gateway)
1. Merchant를 거쳐온 Cardholder의 지불명령을 처리합니다.
2. 국내에는 98년 12월 현재 시범운영 되고 있는 KCP가 유일합니다.

CA(Certificate Authority)
1. SET 참여자들의 신원을 확인하고 인증서를 발급합니다.
2. 국가마다 신용카드 브랜드별로 존재할 수 있으며 이들은 모두 기본(Root) CA에 의해 계층적으로 인증되고 관리됩니다.(NIC와 유사)
3. SET의 신뢰성 확보의 기반이 됩니다.

금융망
1. Issur - Cardholder에게 신용카드를 발급하고 합법적인 사용에 대해서 지불카드에 대한 지급을 보장합니다.
2. Acauier - Merchant와 가맹계약을 맺고 지불카드 승인과 전표매입을 수행합니다.
3. Brand - Issuer 및 Acquirer들과 제휴관계에 의해 각각의 Issuer/Acquirer를 연계합니다. Master나 Visa등이 이에 속합니다.


■SET의 동작
안전한 전자상거래를 하기 위해서는 인터넷을 통한 메세지에 대한 보안보장과 거래 당사자간의 신뢰보장입니다.

A. 메시지의 암호화
1. Cardholder의 계좌번호, 신용카드번호, 지불정보등의 민감한 정보의 노출을 방지하기 위해 메세지를 암호화 합니다.

2. 암호화 알고리즘은 대칭키(비밀키-128bit) 방식이며 키의 분배를 위해 RSA(공개키-1024bit) 방식을 사용합니다.

3. 대칭키는 거래때 마다 바뀌기 때문에 세션키라고도 부르며 키의 암호화와 복호화 방식이 같으므로 Cardholder는 이 키의 보안에 힘써야 합니다.

B. 전자증명서
1. 거래 당사자들간의 인증(구매자가 올바른 신용카드 회원인가, 상인이 올바른 가맹점 상인인가)을 위해 X.509를 기반으로 하는 전자 증명서(Certificate)를 발급 받아야 합니다.

2. 전자증명서는 인증국(Certificate Authority)에 의해 발행되며 이름, 신용카드의 이름, 암호키 일부등이 내용에 포함됩니다.

3. 유효기간은 최대 3년이며 유효기간이 지났거나 취소된 증명서에 대해서 거래를 거부합니다.

C. 디지털 서명
1. 메세지에 전자서명과 해쉬함수를 사용함으로써 수신자가 메세지의 무결성을 확인할 수 있습니다.

2. 거래 당사자가 모두 서명하는 이중서명(Dual Signature)방식을 사용함으로써 Merchant가 신용카드 정보를 엿볼 수 없으며 은행은 어떤 물품을 구입하였는지 알 수 없게 합니다.


■SET의 문제점 및 전망
98년 말 현재 전세계적으로 SET 기반의 전자상거래가 이루어 지는 곳은 없습니다. SET기반의 전자상거래가 이루어지기 위해서는 거대한 인프라 구축이 필요하나 각 이해 당사자들이 심한 의견 대립을 보이고 있으며 진행 속도도 느린것이 문제점입니다. 따라서 SET의 앞날은 불투명하다 할 수 있겠습니다.


그러나 EC가 폭발적으로 증가할 것이라는 전망에는 이견이 없으며 기존의 SSL,PGM등을 이용한 독자적인 상거래 시스템으로는 한계가 있다는 것 또한 사실입니다.
국내의 경우 KSP에서 PG를 구축하고 있고 몇개의 기업에서 산발적인 개발을 하고 있으나 불투명한 시장상황으로 본격적인 투자는 미루고 있는 실정입니다

  암호화 프로토콜 
   
  현재 암호화 Protocol로서 가장 활성화 되어 있는 것은 SSL(Secure Socket Layer)과 
  SET(Secure Electronic Transaction)입니다. 암호화 Protocol은 앞서 설명한 암호화 
  알고리즘과 이를 이용한 부인봉쇄, 기밀성, 상호인증, 전자 서명, 전자봉투등의 방법을 
  이용하여 정보보호 효과를 극대화 하기 위한 업무 Process를 정의하여 놓은 것입니다.
  SSL은 통신 Protocol의 Layer 계층에서 Data 암호화/복호화를 위한 Protocol입니다.
  SET는 응용프로그램 계층에서 주로 전자상거래의 지불정보를 완벽히 보호하기 위하여 
  고안된 Protocol입니다.
   
  가. SSL(SECURE SOCKET LAYER)
  전자상거래에서 많이 이용되는 SSL은 기본적으로 Data암호화를 위하여 Netscape사에서  개발 되었습니다. 따라서 사용자 인증없이도 Data 암호화가 가능하였습니다.
왜냐하면, Web Brwoser의 기본인증(User ID와 Password 확인) 만으로도 업무처리가 가능하였기 때문입니다. 


그런데, 전자상거래의 폭발적인 증가로 User ID와 Password만으로는 정보보호에 한계가 있었습니다. 또한 Web Browser에 내장되어 있는 대칭키 알고리즘은 DES 40Bit를 사용 함으로서 암호의 강도가 약하고, Key의 배분문제 때문에 인증의 필요성이 대두되었습니다.

이에 따라 인증체계의 도입과 보다 강력한 대칭키 암호 알고리즘이 필요하게 되었습니다. 
기본적으로 SSL은 Handshake Layer 단계와 Record Layer 단계를 거쳐 작동됩니다. 
Handshake Layer 단계에서는 client와 server간에 인증서 교환 및 상호 신원 확인, 암호화에 사용될 대칭키 (Session Key)를 교환하는 과정을 수행합니다.


Record Layer 단계에서는 교환된 대칭키를 가지고 암호화된 Socket을 이용하여 Data를 주고받는 과정을 수행합니다. 

SSL 환경을 설정하기 위해서는 다음과 같은 과정을 수행하여야 합니다. 
   
  1) 클라이언트는 보안 서버에 https://servername.domain.com과 같은 형태로 접속을 
  -- 요청합니다. 
   
  2) 서버는 클라이언트의 요청에 따라 자신의 인증서를 클라이언트에게 보냅니다. 
   
  3) 클라이언트는 서버의 인증서가 자신이 신뢰하는 인증기관에서 인증하였는지를 조사합니다.
   
  4) 클라이언트가 서버의 인증서를 신뢰한다면, 클라이언트가 서버에게 통신할 수 있는 암호화 
  -- 알고리즘의 종류를 알립니다.
   
  5) 서버는 클라이언트가 전송한 암호화 알고리즘중에서 가장 안전한 것를 선택한 후 이를
  -- 클라이언트에게 알려줍니다.
   
  6) 클라이언트는 선택된 암호화 알고리즘을 이용하여 Session Key(해당 트랜잭션에서만 
  -- 사용하는 대칭키)를 생성하고, 서버의 공개키로 이를 암호화 한 후 서버에게 전송합니다. 
   
  7) 서버는 클라이언트로부터 수신한 전자봉투를 복호화하여 Session Key를 획득합니다. 
   
  8) 클라이언트와 서버간에 대칭키가 교환되었으므로 Data 송수신시에 Session Key를 이용한 
  -- 암호화/복호화 과정을 통하여 안전한 통신을 할 수 있습니다. 
  -: 데이터 암호화 과정중에는 메세지를 압축한 MAC(Message Authentication Code:Hash
  -- 값)을 추가하여 이를 함께 암호화합니다. 이를 그림으로 나타내면 다음과 같습니다.
   
이러한 과정에 서버는 클라이언트의 인증서를 요구할 수 있습니다.

그러나 이러한 SSL의 간편성에도 불구하고, 다음과 같은 문제점들이 존재합니다.
   
1) SSL은 응용프로그램과 독립적인 Protocol임에도 불구하고 현재 HTTP Protocol만을 지원 합니다. 따라서 FTP, Telnet등과 같은 여타 TCP/IP 통신환경의 Protocol은 지원하지 못합니다.
또한 SSL 작동을 위하여 Web Server에 대한 Customizing을 필요로 합니다.

 특히 미국의 수출규제로 인하여 128Bit 대칭키 암호화 알고리즘의 Web Browser 탑재가 미국외에서 불가능하기 때문에 128Bir 암호화 알고리즘을 지원하는 gateway Product을 별도로 설치하여야 하는 번거로움도 있습니다.


이경우 대부분 SSL Proxy Controller를 사용하게 되는 데 이를 보통의 User들이 쉽게 사용하지 못하기 때문에 활성화가 안되는 요인이 되기도 합니다. 뿐만 아니라 Web Browser가 Cookie 기능을 사용하거나 Cache Memory 설정 등 복잡한 문제에 직면했을 때, User들이 이를 극복하는 데 많은 어려움을 겪기도 합니다.
   
2) SSL은 기본적으로 Web을 기반으로 한 암호화 Protocol 이기 때문에 IP Spoofing등의 해킹에 취약할 수 있습니다. 특히 개인정보와 지불정보(User ID, 통장번호, 신용카드 등)가 서버에 전송되어야 하기 때문에 통신망에 대한 해킹, 시스템 내부자에 의한 정보유출등으로 개인정보가 외부로 노출될 가능성이 많습니다. 또한 C/S 환경에는 지원을 하지 않기 때문에 Applet이나 Active X Controller 등의 인터넷 응용프로그램의 보안을 지원하지 못합니다.
   
3) 인증서와 개인키는 기본적으로 PC에 저장되어 관리되기 때문에 클라이언트의 이동성에 제약을 받습니다. 따라서 증권회사등 사용자의 특성에 따라서는 인증서를 사용치 않고, Data암호화만을 수행하는 경우가 많습니다.  
   
4) SSL 방식에 의한 전자상거래 표준이 마련되어 있지 않기 때문에 쇼핑몰, 인터넷 뱅킹, 기타 정보보호 Site의 암호화, 인증방식이 서로 상이합니다. 따라서 사용자 입장에서는 정보보호 Site별로 상이한 인증서와 암호화 프로그램을 각각 설치하여야 하는 불편을 감수하여야 합니다.
   
5) 현재의 제품화 기술 수준으로는 Data처리 속도가 매우 늦고, 사용자가 많은 불편함을 감수하여야 합니다. 즉 모든 Data를 암호화 하기 때문에 그래픽이나 이미지, 동영상과 같은 많은 Byte수를 처리하는 데에는 처리속도가 매우 늦을 수 밖에 없으며, 따라서 대부분 HTTPS Mode는 Text위주로 구성되어 있습니다.
   
나. SET(SECURE ELECTRONIC TRANSACTION)

SET(Secure Electronic Transaction)는 인터넷을 이용한 전자상거래에서의 안전한 지급 결제를 위하여 비자와 마스터카드사가 공동으로 개발한 신용/직불카드결제를 위한 보안프로토콜입니다.


97년 3월 Protocol이 발표된 이후 전세계적으로 SET Product을 개발한 회사는 손꼽을 만큼 Protocol의 구현이 어렵고 내용이 방대하기 때문에 이를 개발하였다는 것은 정보보호 Solution 개발능력 자체를 인정할 수 있는 것과 같습니다.


그러나 SET와 관련된 동향을 살펴보면,  그 정보보호 기술의 우수성과 체계성에도 불구하고, SET 구성요소간의 시스템적, 제도적 INFRA의 구축이 미비하고 이를 적용하고자 하는 신용카드 회사들의 준비 부족, SET 1.0 Version의 일부기능 미지원 이유로 활성화되는 데에는 적지않은 노력이 필요할 것으로 판단됩니다.


즉, SSL 방식은 클라이언트와 서버간의 약정만 맞으면 개인정보의 제공 유무에 관계없이 거래를 개시할 수 있으나, SET방식은 계층별 CA, card Holder, Merchant, Payment GateWay, Issuer, Bank등 참여 주체간의 제도적 합의와 각종 기준이 마련되어야만 제 기능을 다할 수 있습니다.

그럼에도 불구하고, SET Protocol이 제시한 암호화 방법과 신원증명 기능은 SSL의 개념보다 분명히 강화된 정보보호 기술을 보장합니다. 
   
  ○ 기존 전자상거래가 전자상거래의 업무특성에 맞게 별도로 개발된 Application Level의 보안 
  프로토콜을 적용하지 않고, 단순 홍보자료 제공업무등을 포함한 인터넷을 이용하여 처리되는 
  모든 업무에 대해 공통적으로 적용되고 있는, 즉, 상위 계층(Layer)의 업무특성 및 중요도에 
  관계없이 단순 인터넷 접속 및 전송시의 안정성을 위해 운영되고 있는 Transport Level의 
  SSL(Secure Socket Layer) 보안프로토콜만을 이용하여 전자상거래를 함으로써 인터넷 이용
  업무중 상대적으로 안정성이 중요시되는 전자상거래 업무의 보안성이 취약한 상태입니다. 
   
  ○ 전자상거래를 위한 표준 전문프로토콜이 없이 각 쇼핑몰 운영을 원하는 기관 또는
  전자상거래용 소프트웨어를 개발하는 개발사의 특성에 맞게 고객 인증 및 구매.결제 처리기능을
  통합 개발하여 운영함으로써 전자상거래 이용 고객의 불편야기 및 전자상거래 비활성화를
  초래할수도 있습니다.
   
  1) SET의 개요
  - SET 개념
  SET(Secure Electronic Transaction)은 인터넷을 이용한 전자상거래에서의 안전한 지급결제
  수단을 제공하기 위하여 비자와 마스터카드사가 공동으로 개발한 신용/직불 카드결제용 전문 
  및 보안 프로토콜로써 전자상거래 판매업자, 고객, 지급정보 중계 기관간 상호인증, 거래정보의
  기밀성 및 무결성을 최대한 보장하도록 설계되었고, 전자상거래 활성화를 위해 국제표준을
  목표로 하고있습니다.
   
  - SET에서의 보안 서비스
  SET에서는 개방된 네트워크에서 보안대책에 필수적인 다음과 같은 보안서비스를 제공합니다.
 

  ㅇ 기밀성(Confidentiality) : 통신회선상의 비밀정보 암호화 기능 
  ㅇ 무결성(Integrity) : 통신회선상의 정보변질여부 확인 기능
  ㅇ 인증(Authentication) : 통신 상대방의 정당성 확인 기능
  ㅇ 부인봉쇄(Non-Repudiation) : 통신 상대방간 송·수신 사실부인 방지기능
 

  한편 SET에서는 전자상거래 참여자간의 데이터 송수신에 필요한 보안사항만 규정하고 있는
  관계로 부적격자에 의한 내부 시스템으로의 침입등을 방지하기 위한 시스템 보안 대책(FIRE-
  WALL구축등)은 해당기관에서 별도 수립 및 시행을 하여야 합니다.
   
  2) SET의 적용범위
  SET은 전자상거래에 필요한 여러 처리절차중 카드를 이용한 지급결제처리절차에 한해 
  정의하고 있으므로 상품선택, 배송방법 등 지급결제 관련 이외의 처리절차와 현금, 수표 등 
  카드이외의 결제수단에 대해서는 별도의 정의가 필요합니다. 비자와 마스터사는 현금, 수표 등 
  카드 이외의 결제수단에 대한 처리절차를 정의 하기 위한 Super-SET과 SET에 IC카드를 
  접목하기 위한 C-SET을 별도로 준비중입니다.
   
  3) SET의 구성요소

   
  ㅇ 고객(Cardholder) : 인터넷쇼핑몰에서 물품 또는 서비스를 구매하는 자 
  ㅇ 판매자(Merchant) : 인터넷상에서 상품이나 서비스를 제공하는자
  ㅇ 발급사(Issuer) : 고객의 카드발급 금융기관 혹은 결제카드 소지인의 계좌가 개설되어 있는
  -- 금융기관
  ㅇ 매입사(Acquirer) : 판매자의 가맹점 승인 금융기관 혹은 판매자의 계좌가 개설되어 있는
  -- 금융기관
  ㅇ 지급정보 중계기관(Payment Gateway) : 판매자가 요청한 고객의 지급정보로 해당
  -- 금융 기관에 승인 및 결제를 요청하는 기관
  ㅇ 인증기관(Certification Authority) : 고객 및 판매자 등 각 참여기관이 인터넷 상에서 서로
  -- 신뢰하면서 거래할 수 있도록 각 참여기관에게 전자적인 인증서를 발급하는 기관
   
  4) SET의 정보보호 Protocol
  - 기본적인 암호화 알고리즘
  ① 대칭키(비밀키) 암호화 알고리즘 : 데이터 암호화/복호화에 사용 데이터 송신자가 임의 생성
  ② 비대칭키(공개키) 암호화 알고리즘 : 비밀키 교환을 위한 전자봉투 생성, 메세지
  -- 다이제스트에 대한 전자서명시 사용 공개키는 개인키 소유자가 생성후 인증서를 발급받아
  -- 거래상대방에게 교부

  ☞ 메세지 암호화/복호화는 처리속도가 빠른 비밀키를 이용하고, 공개키는 메세지 축약문서에
  -- 대한 암호화(전자서명) 및 비밀키 교환을 위한 전자봉투(비밀키 암호화) 생성에 이용 
  -- 함으로서 공개키 암호화 알고리즘의 약점인 처리속도 지연문제를 해결 
  ③ 전자봉투 : Technology의 전자봉투 참조
  ④ 전자서명 : Technology의 전자서명 참조
   
  - 보안 Protocol 
  ㅇ 기밀성, 무결성, 인증, 부인봉쇄 등의 서비스제공을 위한 SET의 기본 프로토콜로서 인증서
  -- 발급, 구매 등 보안이 필요한 전문 송수신시 적용됨 
  ㅇ 본 기본 프로토콜을 수행하는데 필요한 수신인의 키교환용 공개키는 본 절차 수행전
  -- 단계에서 수신 및 검증완료됨.
   
  < 암호화 및 송신절차 > 
  ① 송신인의 고유정보(Property)에 일방향 해쉬함수를 적용하여 메세지 다이제스트생성 
  ② 송신인의 비밀서명키로 메시지 다이제스트를 암호화하여 디지탈서명 생성
  ③ 비밀키를 임의로 생성(Secret Key Random Generate)
  ④ 고유정보, 디지털 서명, 송신자의 서명용 공개키가 들어있는 인증서 사본을 ③에서 생성된 
  -- 비밀키로 암호화
  ⑤ ④에서 사용한 비밀키를 수신인의 키교환 공개키로 암호화함으로써 전자봉투(Digital 
  -- Envelope) 생성 (송신인은 사전에 수신인의 키교환 공개키가 포함된 인증서를 가지고 있음)
  ⑥ 송신인은 ④의 결과와 ⑤의 결과를 수신인에게 전송함 < 수신 및 복호화 절차 >
  ⑦ 수신인은 메세지를 수신후 우선적으로 전자봉투를 자신의 키교환비밀키로 복호화하여 
  -- 비밀키를 획득함
  ⑧ ⑦에서 획득한 비밀키를 이용 ④번의 암호문을 복호화함으로써 송신된 고유정보, 디지탈 
  -- 서명, 인증서의 평문정보를 알아냄
  ⑨ 송신인의 인증서에 포함되어 있는 송신인의 서명용 공개키로 디지털 서명을 복호화함으로써
  -- 송신인이 작성한 메시지 다이제스트 값을 알아냄 
  ⑩ ⑧에서 얻은 고유정보에 송신인이 사용한 동일한 일방향 해쉬함수를 사용하여 새로운
  -- 메세지 다이제스트를 생성하고 ⑨에서 얻은 메시지 다이제스트와 비교하여 동일한 경우에만 
  -- 정상적인 처리를 진행함 
  -- → 기밀성, 무결성, 상대방인증, 부인봉쇄의 보안서비스 가능
   
  - 이중서명(Dual Signature) 프로토콜 
  1) 필 요 성 
  SET에서는 고객의 결제정보가 판매자를 통하여 해당 지급정보중계기관(이하 'PG')으로
  전송됨에따라 고객의 결제정보가 판매자에게 노출될 가능성과 판매자에 의한 결제 정보의 
  위.변조의 가능성이 있으므로, 판매자에게 결제정보를 노출시키지 않으면서도 판매자가 해당 
  고객의 정당성 및 구매내용의 정당성을 확인 할 수 있고 PG는 판매자가 전송한 결제요청이 
  실제고객이 의뢰한 전문인지를 확인할 수 있도록 하는 이중서명 기술 도입이 필요하게 되었음.
   
  2) 처리 흐름도  
   
  ① 고객의 이중서명 생성 
  ㉠ 구매정보 OI에 대해 Hash함수를 적용하여 160 비트의 메시지 다이제스트 M1을 생성
  ㉡ 결제정보 PI에 대해 Hash함수를 적용하여 160 비트의 메시지 다이제스트 M2를 생성
  ㉢ 생성된 두개의 메시지다이제스트 M1,M2를 연접(Concatenation)한 후 연접된 결과에 
  -- Hash함수를 적용하여 메시지 다이제스트 M을 생성 
  ㉣ M에 고객의 개인키로 전자서명 


  ② PG에게 전해질 전자봉투 생성 및 필요데이타의 판매자앞 전송 
  ㉠ 비밀키를 Random Generate하여 결제정보(PI)를 암호화 시킨후 해당키를 PG의 공개키로
  -- 암호화하여 전자봉투 생성 
  ㉡ 구매정보, 암호화된 결제정보, M1M2, 고객의 전자서명, 전자봉투를 판매자에게 전송


  ③ 판매자는 구매정보와 이중서명 확인후 암호화된 결제정보를 PG에게 전송
  ㉠ 판매자는 수신된 구매정보(OI)에 고객과 동일한 Hash함수를 적용하여 메시지 다이제스트
  -- M1을 생성
  ㉡ 판매자는 수신된 M1M2 중 M1을 새로 생성한 M1으로 대체시킨후, 대체된 M1M2에 동일한
  -- Hash함수를 적용하여 메시지다이제스트 M을 구함
  ㉢ 판매자는 수신된 이중서명을 고객의 공개키로 복호화하여 메시지다이제스트 M을 추출
  ㉣ 판매자는 ㉡과 ㉢의 메시지다이제스트를 비교하여 동일한 경우 정당한 구매요청으로
  -- 간주하여 처리 
  ㉤ 판매자는 고객으로부터 전송받은 암호화된 결제정보(PI), 전자봉투, 이중서명, M1M2를 
  -- 자신의 승인요청전문 전송시 PG로 전송


  ④ PG의 전자봉투 및 결제정보 복호화
  ㉠ PG는 자신의 개인키를 사용하여 전자봉투를 복호화
  ㉡ 전자봉투에서 획득한 비밀키를 이용하여 결제정보, M1M2값, 고객의 서명값을 추출 
  ⑤ PG의 고객 이중서명 확인 및 결제정보 확인 
  ㉠ PG는 복호화된 결제정보에 고객과 동일한 Hash함수를 적용하여 메시지다이제스트
  -- M2를 생성
  ㉡ PG는 수신된 M1M2 중 M2을 새로 생성한 M2으로 대체시킨후, 대체된 M1M2에 동일한 
  -- Hash함수를 적용하여 새로운 메시지다이제스트 M을 구함
  ㉢ PG는 수신된 고객의 이중서명을 고객의 공개키로 복호화하여 메시지다이제스트 M을 추출
  ㉣ PG는 ㉡과 ㉢의 메시지다이제스트를 비교하여 동일한 경우 정당한 결제요청으로 
  -- 간주하여 처리

자료 펌) http://blog.naver.com/heavenksm/80026300676

반응형
Posted by 따뜻한 세상
,
너무나도 잘 정리된 컴퓨터/인터넷 관련 자격증 정보를 담고 있는 사이트 모음이 있어서 올립니다.
자료 정리해주신 분께 너무나도 감사드립니다.

자료 펌) http://blog.daum.net/koventlove/4362025

●  컴퓨터/인터넷
원샷패스 - 컴퓨터활용능력, 정보처리, 워드프로세서, 인터넷 정보..
BPAN - 자격증 소개 및 자격증 갤러리, 세미나와 교육정보 등..
대한상공회의소 검정사업단 - 사업단 소개와 연간검점일정, 자격종목안내와 접수안내..
이테스트 - 인터넷 기반의 정보활용 실무능력 평가시험으로 신청..
가가연의 컴퓨터자격증 - 컴퓨터 자격증 및 국제자격증, 컴퓨터 학원정보를 제공..
가자 컴퓨터자격증 세상 - 웹디자인, 웹마스터, 정보처리, 게임그래픽 등 컴퓨터..
강미나의 워드프로세서 - 워드프로세서, 컴퓨터 활용능력, 정보검색사 등 필기와..
게임그래픽 - 게임그래픽, 게임제작, 프로그래밍, 게임자격증 정보 ..
게임자격증 - 게임그래픽, 게임기획 전문가 자격증 소개 및 시험문제..
고민석의 자격증따라잡기 - IT 자격증 MCSE, OPC, ACE 국내외 자격증 정보와 기출..
국제공인자격시험센터 - 영진전문대학 소재, 국제공인자격시험 시행 APTC, MCS..
김도형의 웹마스터공부방 - 웹마스터 소개와 자격증정보, 자료실 등 제공.
김수연의 ACS자격정보 - ACS, ACE 시험안내, 기출문제, 실기예제 등 제공.
내일컴퓨터교육 컨설팅 - 실반프로메트릭 공인 시험센터로 MCSE, 리눅스, C언어..
네트워크 관리자 강좌 - 네트워크 관리자가 되기 위한 네트워크에 대한 전반적..
넷아카데미 - 네트워크관리사, 인터넷 보안, 무선 네트워크, 정보통..
넷은행 - 네트워크 관리사 - 네트워크 관리사 자격증, 리눅스, 윈도우 2000, 네트워..
대신정보통신학원 - 대전시 중구 소재, 정보통신, 무선설비, 사무자동화산..
대한상공회의소 인터넷접수 - 원서접수 안내와 자격증신청, 시험종목 안내, 합격자발..
라이센스 가이드 - 국내외 컴퓨터 자격증 소개, 시험일정 안내, 기출문제..
라이센스포유 - 워드프로세서, 정보처리 등 국내외 컴퓨터 자격증 정보..
마이크로소프트 오피스 사용자 전문가 - MS 인증 오피스 자격증, 시험일정, 과목, 온라인..
매크로미디어 국제공인 자격증 - 시험종류 및 일정, 시험방법과 자격증 미리보기, 시험..
모두프리 - 워드프로세서, 전산회계사, 전자상거래 관리사 등 자격..
무선인터넷관리사 2급 시험안내 - 무선인터넷관리사 2급 검정과목, 합격 기준, 온라인 접..
무선인터넷관리사 검정안내 - 무선인터넷관리사 검정기준, 과목별 문항수 및 합격기..
문서실무사 - 민간인자격증 기관, 사무자동화, 컴퓨터활용능력, 전산..
시스코 & 자바 매니아 - CISCO, 자바 자격시험인 CCNA, CCNP, SCJP 정보, 강좌..
시스코랩 - 시스코 네트워크 자격증 ccna, ccie 온라인랩 수록.
어도비 공인교육센터 - ACE, ACS 개요와 시험일정, 시험후기, 기출문제 등 제..
엄경택의 국가기술자격증정보 - 컴퓨터 관련 자격증 시험정보, 일정, 모의고사, 기출문..
에듀펜 - 컴퓨터활용능력, 정보처리기사, 전자상거래관리사, 정..
영진닷컴 자격증 정보 - 워드프로세서, 정보처리, 그래픽, 인터넷 분야 자격증..
왕정모의 CISA - 정보시스템 감사론 학습자료 제공.
웹애니 - MQFU정보, 웹디자인기능사, 애니메이션전문가 등 자격..
웹프로그래머자격인증위원회 - 시험요강, 시험접수와 접수조회, 모의고사, 연간시험일..
웹하자닷컴 - 공인자격증, 민간자격증, 국제자격증 등 컴퓨터 자격증..
이승림의 컴퓨터 자격증 세상 - 워드프로세서, 정보처리기사, 사무자동화산업기사, 정..
이은경의 컴퓨터 자격증 - 정보처리기사, 사무자동화 산업기사, 컴퓨터활용능력 ..
이태원선생님의 컴퓨터교실 - 각종 컴퓨터 관련 자격증에 대한 시험일정 및 자격증 ..
자격증 그것이 알고싶다 - 산업인력 관리공단, 상공회의소, 정보검색분야 등 컴퓨..
자격증 천국 - 정보처리산업기사, 워드프로세서, 컴퓨터활용능력 기출..
자격증 WORLD - 국가 및 국제 자격증, 민간 자격증 등 소개와 시험일정..
정보통신교육원 - 자격검정안내, 온라인접수, 자료실 등 제공.
정보통신기술사 자료은행 - 통신기술사 준비요령 및 기출문제 제공.
제1회 유망 IT자격증 및 취업박람회 - IT자격증 및 유망자격증 관련 전문교육기관 참가..
제임스 - 인터넷정보검색사, 정보처리, 기기 그래픽스, 워드프로..
제임스의 컴퓨터 자격증기출문제 - 정보처리기능사와 정보처리기사, 컴퓨터활용능력, 인터..
중앙정보통신학원 - 종합교육 과정과 자격취득 과정, 병역특례, 시험일정표..
초고리의 etest 길라잡이 - 이론 학습방법, 실기시험 안내, IT 정보 등 제공.
최강의 자격증 따라잡기 - 컴퓨터 활용능력, 워드, 정보처리, 사무 자동화 산업기..
컴퓨터 직업 - 웹마스터와 웹디자이너, 웹PD, 영상분야 자격증에 대한..
컴퓨터자격증 요약모음 - 정보처리기사, 워드프로세서, 정보검색사 등 시험 요약..
테스트홀 - 자격증 정보, 수험달력, 기출 경향분석, 기출문제 등 ..
테크인포 - 자격증별 소개와 자격증 뉴스, 자격시험 일정 등 제공..
포네트워커스 - 네트워크 교육, 정보, 세스코 자격증 정보 제공.
한국정보관리협회 - 자격검정소개 및 일정, 합격자명단, 공인증서 등 제공..
한국정보시스템 감사통제협회(ISACA) - 정보시스템 감사, 통제 및 보안분야의 발전을  협..
ACENARA - 자격증 설명, 과목별 학습, 자료실 등 제공.
CCNA community - CCNA, MCSE, SCJP 공인 자격증 정보, 시험후기, IT 업..
CISA - CISA 개요와 시험안내 및 강좌안내, 시험일정 등 제공..
CISA 스터디 - CISA 자격증 취득 희망자와 보유자를 위한 커뮤니티 사..
CIW - 웹마스터 국제인증시험으로 시험목록과 시험 가이드 등..
Com Gosu - 컴퓨터 자격증 정보, 기출문제, 기초 강좌 수록.
FITT - 정보기술 소양능력 평가와 정보 활용능력 평가로 구성..
Gamrisa - 국가공인 정보시스템 감리사 자격을 취득한 감리사들의..
ITPower - IT자격증 기출문제, 워드프로세서와 컴퓨터활용능력, ..
Joyful 컴자격증 - 정보처리기사, 사무자동화, 컴퓨터그래픽스 운용기능사..
PassExam - MCSE, OCP DBA, 전자상거래관리사, 인터넷정보검색사 ..
WEB2NIGHT - pc정비사, 네트워크관리사 강의와 컴퓨터 조립법 수록..
반응형
Posted by 따뜻한 세상
,

 그리드 컴퓨팅에 관한 좋은 글..



제이씨원이라는 회사 홈페이지에 아주 설명이 잘된 글이 있어 옮깁니다.
아래 기사 펌) http://www.jcone.co.kr/kr/product_05a.htm

그리드 컴퓨팅의 정의
그리드 컴퓨팅은 프로세싱 . 네트워크 대역폭 및 스톨지 용량과 같은 분산된 컴퓨팅 자원을 가상화하여 하나의 시스템 이미지를 만들어 사용자및 응용 프로그램이 다양한 IT 기능에 완벽하게 접근할수 있도록 지원합니다 .
인터넷 사용자가 웹을 통해 콘텐츠의 통일된 인스턴스를 보는 것과 마찬가지로 , 그리드 사용자는 기본적으로 하나의 커다란 가상 컴퓨터를 보게 됩니다 .

그리드 컴퓨팅 환경

사용자 삽입 이미지


그리드 컴퓨팅의 필요성
첫째 - 그리드 컴퓨팅은 이질적인 개방형 환경에서 응용 프로그램과 데이터를 공유하는 조직들이 가상의 환경에서 공동 작업을 더욱 원활하게 수행할수 있도록 지원합니다
둘째 - 그리드는 가용 컴퓨팅 및 데이터 자원의 활용도를 향상시키므로, 기업은 기존 투자를 보다 효과적으로 활용하여 비용 절감 효과를 기대할수 있습니다.
셋째 - 서버와 데크크탑을 연결하여 미사용 자원을 이용함으로써 그리드는 엄청난 양의 데이터와 컴퓨팅 성능을 요구하는 복잡한 문제 해결을 위해 사용될수 있습니다.
넷째 - 그리드 컴퓨팅은 엔터프라이즈 시스템 전체에 걸쳐 분산되어 있는 자원을 활용하여 IT환경 의 결함에 대한 허용 한계 및 복원력을 증강할 수 있습니다.
다섯째 - 그리드 컴퓨팅은 변화하는 고객의 요구와 시장, 신제품 및 인수합병 등에 대응할수 있는 보다 유연한 IT 인프라 구조를 제공합니다

그리드 컴퓨팅의 적용분야 파악
다양한 산업에서 특히 금융,보험,자동차,석유/가스 및 생명 과학 시장에서 활동하고 있는 기업들은 다음과 같은 질문과 대답을 면밀히 살펴봐야 합니다.
* 우리회사는 고객이 원하는 것을 분명히 인식하고 있으며 우리가 그것을 적시에 저렴하게 제공가능한가
* 우리는 계산 및/또는 데이터 집약적인 응용프로그램이나 신속함을 생명으로 하는 업무프로세스를 수행하는가
* 우리회사는 새로운 수익 창출 기회를 추구함에 있어서 우리의 자산,즉 컴퓨팅, 데이터및 인력 자원을 극대화할수 있을만큼 신속하게 움직이는가
* 우리는 우리의 계산 및 데이터 자원이 최적화 및 가상화를 통해 어떻게 경쟁적인 우위를 구축할수 있는지를 확실히 이해하고 있는가
* 우리는 여러 시스템과 지역에 걸쳐서 데이터를 교환하고 공유하는 직원들을 위해 자원의 워크로드 관리를 최적화했는가

그리드 테크놀러지
사내 자원을 최적화하고 효율을 최고화 하는 Grid Consulting Technology
최첨단 Secure Technology 를 이용한 Access control, Degital Signature algorithms
시스템의 안정성과 유용성을 최적화 하는 Resources Manager Program
최적의 성능을 유지하는 Maximizing Utilization Program



그리드 통합적인 자원관리

사용자 삽입 이미지


그리드 컴퓨팅 적용분야
Earth Technology(ET Market)
ET Market는 과학기술, 환경,우주항공,에너지 ,기상,지구 관측등 글러벌 프로젝트에 적용됩니다.
여기에는 지질탐사분석,수질,대기,토양오염분석,우주 탄생원리규명 등이 포함되며 이러한 글로벌 프로젝트의 성공사례를 보면 이미 세계적으로 잘 알려진 그리드 컴퓨팅을 이용한 Seti@home 프로젝트를 통하여 초당 52조 번의 계산수행 연 200만달러 예산으로 2억 달러 이상 효과를 발휘,외계 지적 생명체 발견 가능성이 획기적으로 증대하였습니다.
이 프로젝트에는 아레시보 전파망원경이 포착한 우주전파의 신호를 분석, 미국 버클리대 슈퍼컴퓨터의 용량 부족,유휴 컴퓨터를 이용 우주전파의 신호분석 ,4.489.745 대의 컴퓨터를 이용하여 1.459.128 번의 계산을 수행하(2003년 5월 18일)는 성과를 거둠으로써 그리드 컴퓨팅의 파워를 거듭 확인할수 있었습니다. Information

Technology(IT Market)

IT Market는 은행, 관공서,회사 정보보호및 보안,검색 ,Entertain, 무선인터넷,Contents 등 IT 관련 또는 회사내에서 필요한 컨텐츠에 맞는 프로젝트에 적용됩니다.
이러한 IT Market 에 적용되어지는 그리드컴퓨팅에는 검색엔진, 데이터 마이닝, 자원분석및 예측 , 증권분석, 몰입형 가상현실, 무선 자기장 분석, 알고리즘 설계, 보안, 범죄예방, 가상현실, 이미지 처리 등 을 들수 있습니다.
실제 프로젝트에서 검색엔진으로 유명한 G 사는, 몇십대의 슈퍼 컴퓨터를 이용한 A사보다 강력한 검색엔진을 확보할수 있으며 매일 1억 5천만개의 색인 작업을 할수 있습니다. 또다른 G사는 2003년 4월 24일 23일만에 8.160 만 8578 개 웹사이트의 색인 제작을 하였습니다.

기존산업과 NT기술 (기존산업과 NT Market)
기존 산업 기계,자동차,선박,화학,항공,건설등 에 그리드컴퓨팅 기술을 적용할수 있습니다.
일반적으로 데이터가 많은 소음 해석, 디젤 엔진 설계, 유체 분석, 설계구조해석, 기계설계, 초정밀 기계, 고분자 소재,극세섬유,저분자 물질,화합반응 시뮬레이션 등 수많은 데이터 작업과 시간을 필요로 하는 프로젝트입니다.
이러한 프로젝트의 예를 들면 미국 P사에서의 사용사례입니다. P사의경우 연중 컴퓨팅 자원이 부족한 몇 일을 위해 장비를 구입하지 않아도 되고 더 많은 데이터를 더 빨리 처리할수 있어 전략 결정에 활용할수 있었습니다. 이 프로젝트에는 기름과 가스의 저장량 파악, 컴퓨터 시스템 이용 폭증, 가장 바쁠경우 신규 고객의 요구를 처리할 컴퓨팅 파워 부재, 원유가에 따른 예산 변동 이 포함되었으며 이같은 좋은 효과를 봄으로써 그리드 기술이 기존 산업에 미치는 영향이 크다고 볼수 있습니다.

낭비되고 있는 유휴 전산자원
평소 메인프레임의 경우 60%, 유닉스 서버의 경우 10%, PC 의 경우 보통 5% 미만의 컴퓨팅 용량을 활용하고 있는것이 대부분의 기업 전산 운영 환경의 실태입니다.
그리드 컴퓨팅은 전산 자원의 가용성을 최대한 높이고,물리적, 지리적으로 분산되어 있는 텍스트 정보, 컴퓨팅 파워,데이터 저장장치, 첨단 실험 장비뿐만 아니라 인적 자원까지 네트워크로 공유하여, 마치 공성능 슈퍼컴퓨터를 도입한 것처럼 기업 또는 저직에서 필요로 하는 방대한 업무 프로세스를 더욱 신속하게 처리할수 있도록 해줍니다.

사용자 삽입 이미지

사용자 삽입 이미지


반응형
Posted by 따뜻한 세상
,

네트워크를 통해 수많은 컴퓨터를 연결해 컴퓨터의 계산능력을 극대화한 차세대 디지털 신경망 서비스fh 전력을 공급하는 진공관의 전극(grid)과 유사하다고 해서 이런 이름이 붙었다. 지리적으로 분산된 고성능 컴퓨터, 대용량 저장장치, 첨단장비 등의 자원을 초고속 네트워크로 연결해 상호 공유하고 이용할 수 있도록 하는 차세대 디지털 신경망 서비스를 말한다.

일종의 가상 컴퓨터로, 일정 시간 동안 어느 컴퓨터의 자원이 남아 도는지를 측정해 어느 한 작업에 집중시켜 컴퓨터 사이의 효율성을 극대화시켜 주기 때문에 작업 속도를 무한정으로 향상시킬 수 있다.

다시 말해서 서로 분산되어 있는 컴퓨터들을 네트워크로 연결해 각각의 컴퓨터가 가지고 있는 자원을 공유하는 서비스이다.

그러나 과학자들이나 물리학자들, 민간 기업이나 국가 연구기관을 중심으로 이에 대한 연구가 진행되고 있어, 몇 년 안에 수많은 컴퓨터를 연결해 컴퓨터의 계산 능력을 극대화할 수 있을 것으로 전문가들은 보고 있다. 이 그리드 컴퓨팅이 실현되면 엄청난 양의 숫자 계산이나 정보에 대한 접근이 가능해져 질병·교통문제·금융문제 등 다양한 문제를 해결하는 데 크게 이바지할 수 있다

수천 명의 사람들이 자신의 PC에서 사용되지 않는 프로세서 사이클을 공유하는 것으로, IBM의 인터넷 전략담당 부사장인 존 패트릭에 의하면, "다음에 일어날 가장 큰 변화는 그리드 컴퓨팅이 될 것"이라고 한다.

그리드 컴퓨팅을 하기 위해서는 하나의 프로그램을 수천 대의 컴퓨터에 작은 조각으로 나누어 일을 시킬 수 있도록 해주는 소프트웨어가 필요하다. 그리드 컴퓨팅은 대규모 분산 클러스터 컴퓨팅 및 네트웍 상에 분산된 병렬처리의 한 형태라고 간주할 수도 있다. 그리드 컴퓨팅은 한 기업 내에 있는 컴퓨터 워크스테이션들의 네트웍으로 한정될 수도 있지만, 때로 일반이 참여하는 대중 협업으로 확장될 수도 있다.

그리드 컴퓨팅은 다음의 세 가지 이유 때문에 일반적인 추세가 될 가망성이 있어 보인다.

1.주어진 량의 컴퓨터 자원을 비용편익 측면에서 가장 효율적으로 만들 수 있는 능력
2.엄청난 량의 컴퓨팅 능력 없이는 풀기 어려운 문제들을 해결할 수 있는 하나의 방편
3.많은 수의 컴퓨터들을 하나의 공동목표를 위한 상승적인 협동작업으로 이용하고 관리할 수 있다는 점

반응형

'Computing..' 카테고리의 다른 글

그리드 컴퓨팅에 관한 좋은 글..  (0) 2007.04.26
판도라TV 관련 임시 파일.. PDRTVn.che..  (0) 2007.04.26
Web 2.0에 관하여.. 2  (0) 2007.04.21
Posted by 따뜻한 세상
,

사용자 삽입 이미지
최근 UCC 열풍이 일면서 동영상을 쉽게 재생해주는 프로그램이 다양하게 출시되고 있습니다. 그 중 아마도 판도라TV를 많이 보게되지요..

판도라 TV를 재생하면 임시파일들이 임시폴더에 생성됩니다.
바로 PDRTVn.che(여기서 n은 숫자를 의미)라는 파일인데요..
PDRTV0.che ~ PDRTV9.che 라는 파일이 생성됩니다.

그런데 문제는요, 하나의 파일이 계속 누적되어 최대 82MB가 될때까지 커지는데요..
일반적인 방법을 이용하여 임시파일을 삭제해도 이 파일은 그냥 남아있다네요..

쓸데없이 큰 공간을 차지하고 있는 셈이지요...

검색해보세요..
저도 검색해보니 정말 임시 폴더에 떡하니 자리를 잡고 있더군요..

그렇다고 판도라TV가 나쁘다는 것은 절대 아닙니다.
참고하라는 겁니다..^^

참, 그러나 더욱 의심스러운 것은 캐시 파일뿐만 아니라 .cfg 파일까지 있기 때문에 혹시 그리드 컴퓨팅이 아닐까 의심이된다는 점이라네요.

사용자 삽입 이미지

더 자세한 내용은 여기서) http://skywoodz.egloos.com/1113410
반응형

'Computing..' 카테고리의 다른 글

그리드 컴퓨팅(Grid Computing)..  (0) 2007.04.26
Web 2.0에 관하여.. 2  (0) 2007.04.21
이건희회장의 창조경영이란..  (0) 2007.04.11
Posted by 따뜻한 세상
,
사용자 삽입 이미지
지난 Web 2.0에 관한 설명에 이어서 2부 글을 올린다.


기사 펌) http://article.joins.com/article/article.asp?ctg=1502&Total_ID=2701880

입소문보다 빠른 `넷소문` 커지는 개인 미디어 파워

블로그가 기존 전통 미디어들의 뒤를 이을 것이라는 의견이 무성하다. 블로그는 인터넷에 글을 올려주는 게시판의 일종이며, 1990년대 유행했던 PC통신과 기본구조가 크게 다르지 않다. '제목'과 '본문'을 입력한 뒤 '저장' 버튼을 누르면 인터넷 상에 글이 올라가는 단순한 시스템이다. 최근엔 기술의 발달로 사진.동영상까지 올릴 수 있게 되고, 그 덕분에 싸이월드.유튜브 같은 스타 기업이 탄생했다.
 
이렇게 간단한 시스템이 미디어로서 영향력을 갖게 된 이유는 뭘까. 사람들이 인터넷으로 다량의 정보를 접하게 되면서 어느 순간 정보량이 소화할 수 있는 한계를 벗어나게 됐다. 이에 따라 정보의 소비 범위가 누구나 관심을 가질 만한 대중적 정보에서 개인의 관심 분야인 사적 정보로 축소됐다. 정보 습득 방식도 일방적으로 전달되는 정보를 수동적으로 받는 게 아니라, 필요한 정보를 능동적으로 찾아가는 것으로 바뀌었다. 이는 '개인 미디어'의 탄생을 가져왔으며, 개인 미디어의 근간이 바로 블로그다.

우리는 이미 개인 미디어의 위력을 과거 PC통신에서 경험한 바 있다. 서울에서 삼풍백화점 붕괴사고가 났을 때 그 소식을 가장 먼저 전달한 것은 당시 최대 PC통신망인 '하이텔'이었다. 누군가가 '우리 집 앞 백화점이 무너졌어요'라는 게시물을 올린 것을 시작으로 실시간으로 상황을 전달해줬다. 붕괴 소식이 PC통신인들을 중심으로 번져나간 한참 뒤에야 TV 중개차가 현장에 출동했다. 이젠 과거 PC통신의 역할을 블로그가 수행하고 있다. 블로그는 실시간 정보와 함께 생생한 증거 사진과 동영상도 전달해준다. 이렇게 탄생한 소식은 빠르게 입소문을 타고 네티즌에게 퍼져 나간다. 포털들의 검색 엔진은 소식의 전파 속도를 더욱 높여준다. 소식을 접한 사람들은 각자 다양한 해석과 추가 의견을 활발히 내놓게 된다. 이러한 블로그의 정보 유통 과정에서 바로 영향력이 생겨나는 것이다.

블로그의 영향력은 최근 한 병원에서 발생한 의료사고의 해결 과정에서도 확인해볼 수 있다. 간단한 수술을 받던 어린이가 사망한 것과 관련, 유족과 병원 측이 의료 사고 여부를 놓고 다투는 장면이 여러 블로그에 동영상으로 소개됐다. 이를 본 네티즌의 분노 여론이 형성되자 하루 만에 양측은 합의에 이를 수 있었다. 최근 구글은 한국법인 출범을 알리는 홍보 행사에 수백 명의 블로거를 초청하기도 했다. 앞서가는 회사들이 블로그에 얼마나 많은 신경을 쓰고 있는지 단적으로 보여준다.

이와 달리 국내 기존 미디어와 거대 포털들은 아직 블로그의 중요성을 간과하는 것 같다. 그러나 전통 미디어와 포털도 새로운 기술을 가장 먼저 추종한 혁신가에 의해 오늘의 지위에 이르렀다는 점을 잊어선 안 된다. 21세기의 놀라운 기술 진보 속도는 방심을 허용하지 않는다. 지금 시작하지 않으면, 뒤처지게 된다.

진화하는 블로그 화두는 '네트워크'
새로운 의사소통 도구로 자리이동


블로그는 인터넷을 통해 개인의 생각을 정리하고, 이를 다른 이들과 나누는 도구다. 블로그라는 단어가 "웹을 통한 기록"이라는 뜻인 'web log'의 약자이기도 하지만, 지금처럼 블로그가 유행하게 된 것은 자신의 생각을 전파하려는 블로거들이 적극 참여한 덕분이다. 사실 블로그 관련 기술도 블로거들의 자발적인 참여를 통해 만들어진 것이다. 기술적 진화에 힘입어 블로그는 이제 단순히 개인의 의견이나 정보를 담는 틀에서 벗어나 사회적 인적 네트워크(social network)를 구성하기 위한 도구로 진화하고 있다. 게시판과 채팅으로 대표되는 커뮤니티 서비스의 인기가 정점에 이른 무렵, 인터넷 사용자들의 욕구는 새로운 방향을 향했다. 기존 서비스들이 만족시켜주지 못한 '내가 중심이 되는 커뮤니케이션 도구'에 대한 바람이었다. 현재 블로그는 단순한 개인 미디어의 단계를 벗어나 블로거들의 상호 교류 과정을 거치면서 새로운 커뮤니케이션 도구로 다시 태어나고 있다. 이렇게 '개인을 중심으로 사회적 네트워크를 형성해 나간다'는 테마는 인간의 기본적인 욕구, 즉 사회화의 욕구와 자아 실현의 욕구를 동시에 충족하면서 둘 사이의 균형 또한 잡을 수 있게 해준다. 그런 만큼 이 테마는 블로그 진화의 중심 화두로 자리잡을 것이다.
반응형

'Computing..' 카테고리의 다른 글

판도라TV 관련 임시 파일.. PDRTVn.che..  (0) 2007.04.26
이건희회장의 창조경영이란..  (0) 2007.04.11
IT환경의 진화...  (0) 2007.04.11
Posted by 따뜻한 세상
,

아래의 글로부터 많은 것을 깨닫게 됩니다..

박수근 화백의 그림에서 원가는 10만원일 수 있지만 세상 사람들이 그림의 가치를 25억으로 정했다는 것이 중요하다... 라는 말이 기억에 남네요...

---------------------
    공급자 중심의 농경사회가 제1의 물결, 효율경영이 강조되는 공업사회는 제2의
물결, 지식ㆍ정보경영이 중시되는 시대를 제3의 물결이라고 한다면 제4의 물결은 단
순히 지식과 정보를 이용하는 데 그치지 않고 이를 통해 새로운 가치를 창조하는 시
대이며, 제4의 물결에 맞는 경영이 바로 창조경영이라는 것.
 
   
  1990년대에는 다른 기업의 선진 경영 노하우를 벤치마킹하는 것이 중요했지만 2
1세기의 무한경쟁 시대에는 남이 하지 않는 새로운 것을 제시해야 살아남는다는  것
이다.
    창조경영에서는 제품의 가격보다 고객의 가치가 중시된다.

    제품의 원가보다 가격이 높고 가격보다는 가치가 더 높을 수 밖에 없고, 지금까
지는 컨슈머(Consumer)가 중시됐다면 이제는 커스터머(Customer)가  제품의  가치를
결정한다
고 최 사장은 설명했다.

    이때 컨슈머는 상품을 비판 없이 선택하는 수요자를 말한다면 커스터머는  시간
과 공간의 제약 없이 모든 제품을 비교하며 능동적으로 필요한 제품을 고르는 '고객'
을 뜻한다.

    최 사장은 최근 경매에서 최고가인 25억원에 낙찰된 박수근 화백의 '시장의  사
람들'을 언급하며 "그림의 가격은 30만원, 원가는 10만원일 수 있지만 세상  사람들
은 그림의 가치를 25억원으로 정했다는 것이 중요하다
"며 "
이런 높은 가치를 인정받
을 수 있는 제품을 만들어 내는 것이 창조경영"
이라고 강조했다.

    삼성전자 디지털미디어총괄 박종우 사장도 창조경영에 대한 소신을 밝혔다.
    박 사장은 "이건희 회장의 창조경영은 이미 10년 전부터 제시됐던 것"이라며  "
이 회장이 '마누라와 자식 빼고 다 바꿔라'라고 말한 1993년 프랑크푸르트 선언이야
말로 창조경영"이라고 말했다.

    박 사장은 "이 회장은 모든 것에 대해 왜? 왜? 왜? 세 번 이유를  묻고  문제가
있으면 개선하고 더 좋은 제품을 만들어 내야 한다고 강조했다
"며 "생각하고 새로운
것을 만들어 내는 것(Think and Innovation)이 창조경영"이라고 강조했다.

    박 사장은 TV를 예로 들며 "TV가 아무리 발달한다 해도 100인치 TV가 안방에 들
어오기는 어렵지 않겠느냐"며 "앞으로 IP TV나 AM OLED(능동형 유기발광 다이오드)
TV가 창조제품이 될 수 있다"고 말했다.

펌) 연합뉴스

반응형

'Computing..' 카테고리의 다른 글

Web 2.0에 관하여.. 2  (0) 2007.04.21
IT환경의 진화...  (0) 2007.04.11
Google vs NHN vs Cyworld.. 흥미로운 한판..  (0) 2007.04.10
Posted by 따뜻한 세상
,

IT환경의 진화...

Computing.. 2007. 4. 11. 11:08

데스크톱 PC와 노트북PC로 나뉘던 단순 구분은 초소형 UMPC, 홈 PC, 태블릿PC 등으로 세분화되었다. 게다가 디자인에 있어서도 획기적인 혁신이 이루어져 슬림하고, 작게 바뀌면서 이전에는 상상도할 수 없을 만큼 파격적인 소재나 컬러를 채택한 스타일리시한 PC도 등장하고 있다.

네트워크 환경의 변화도 그 속도를 높이고 있다. 이동 중에도 초고속 인터넷을 느낄
수 있는 와이브로나 고속영상이동전화(HSDPA)의 등장에 힘입어 언제 어디서든지 정보
에 접속할 수 있는 유비쿼터스 환경
을 즐길 수 있게 되었다.

불과 얼마 전만 하더라도 어두컴컴한 방 한구석에서 혼자만의 세계를 향유하던 '방콕
족'들의 전유물이던 PC가 가정 내에서는 디지털 홈이라는 이름으로 가족 구성원이 중
요한 소통수단으로써 자리잡게 되었고, 쌍방향의 개방적인 커뮤니케이션 환경으로 바
뀌게 되었다.

콘텐츠와 개선된 기술환경도 PC 진화를 가속화시키고 있다. 웹 2.0은 과거 일방적인
정보 전달의 흐름을 제공했던 한계를 극복하고 검색부터 쇼핑, 콘텐츠 생산까지 제작
자가 아닌 사용자 중심으로 인터넷 패러다임 자체를 개선했다
.

원하는 구성요소와 디자인으로 개성을 뽐낼 수 있는 블로그, 포털 화면을 개인별로 재
구성할 수 있는 맞춤 포털이 대표적인 경우다. 게다가 UCC(손수제작물)와 같은 사용자
 중심의 다양한 컨텐츠의 등장으로 웹 2.0은 시간이 갈수록 더 큰 위력을 보일 것이다

이러한 인프라들은 인간의 삶 자체를 송두리째 바꿀 게 분명하지만 PC 역시 함께 진화
해야 한다. 앞서 언급한 PC 진화의 단면을 볼 수 있는 사례가 있다. 최근 선보인 '코
어2 듀오'라는 프로세서는 하나의 CPU에 두 개의 두뇌를 탑재하여 동시에 많은 업무를
 수행한다. 이른바 멀티 코어라는 시대를 개척한 것이다.

한 얼마전 화려한 등장으로 이목을 집중시킨 '윈도우 비스타'의 경우 보다 인간 친화
적이며 화려해진 인터페이스와 강력한 멀티미디어 기능으로 마치 공상과학 영화에서
나오는 PC 화면을 보여주는 듯하다.

이와 같은 몇 가지 최근의 기술 트렌드를 보더라도 앞으로 선보이는 PC는 월등히 진화
된 '수퍼PC'라고 불릴 만 할 정도로 멋지고 막강한 제품이 쏟아져 나올 것이다.

요컨대 PC의 발전은 단순히 PC 혼자만이 이룰 수 있는 것이 아니다. 질 높은 콘텐츠와
 더불어 발전된 컴퓨팅 기술 및 인프라가 서로 유기적으로 움직여야 한다. 그러한 의
미에서 올해가 PC 진화의 원년이라고 해도 과언이 아니다. 한편 업체들 입장에서 이러
한 신기술 각축전이 피를 말리는 전쟁일 수 있지만 사실 소비자들은 질적,양적으로 다
양한 선택의 폭을 가질 수 있는 절호의 기회다. 하지만 그럴수록 현명한 선택도 중요하다.

펌) 머니투데이

반응형

'Computing..' 카테고리의 다른 글

이건희회장의 창조경영이란..  (0) 2007.04.11
Google vs NHN vs Cyworld.. 흥미로운 한판..  (0) 2007.04.10
Web 2.0에 관하여.. 1  (1) 2007.04.07
Posted by 따뜻한 세상
,
세 회사의 위치가 조렇게 붙어있을 줄은 몰랐네요... 특히 구글과 NHN은...ㅋㅋ
모쪼록 우리 나라의 회사들이 몽조리 세계를 석권하기를 빌며.........


한국과 미국이 '하나의 시장'(한.미 FTA 타결)을 선언한 2일. 캘리포니아주 마운틴뷰 구글 본사에서 만난 앨런 유스테이스 수석 부사장은 미국 연락처가 찍힌 '한글'명함을 내밀었다. 한글 명함은 구글의 한국 공략 의지를 웅변하는 듯했다.

그는 "한국은 세계 온라인 시장의 요충지다. 구글은 다음달 서울에 연구개발센터를 열어 첨단 서비스를 선보일 계획"이라고 소개했다. 같은 날 인근에 자리 잡은 NHN USA 건물 3층에 들어서자 남궁훈 이사가 '영문' 명함을 건넸다. 그는 "다음달 게임 사이트 '이지닷컴'을 미국 전역에 상용 서비스한다"고 말했다.

구글은 한국 시장을 발판으로 삼아 동아시아 검색시장을 장악할 태세다. 구글의 유스테이스 수석 부사장은 "구글 코리아 직원들은 센터장을 포함해 모두 한국 사람으로 뽑고 있다. 한국 R&D센터의 진용은 이달 중 갖춰질 것이다"라고 말했다. 그는 전 세계 R&D센터를 총괄하는 구글의 핵심 인물. 구글 한국센터는 ▶검색 ▶광고 ▶모바일 등 3개 분야에서 일제히 한국 온라인 시장을 공략한다.
사용자 삽입 이미지

특히 앞으로 한국어 검색틀을 짜임새 있게 하는 한편 삼성전자.LG전자와 제휴해 검색 전용 구글폰도 내놓는다. 그는 "한국산 휴대전화 단말기에 구글서치와 구글맵.G메일 등이 담길 것이다. 단말기 초기화면에 이들 서비스의 아이콘이 띄워져 이용자들이 쉽게 쓸 수 있다"고 설명했다. 구글은 한국 포털이나 미디어와도 공조체제를 구축할 예정이다.

유스테이스 부사장은 이와 관련해 "구글은 정보 세상의 창이다. 소비자와 생산자 사이에 좋은 정보를 연결해주는 역할만 한다. 한국의 어느 포털과도 손잡을 수 있다"고 강조했다. 구글의 한국시장 공략에 NHN도 맞불을 놓는다. 요즘 NHN USA는 지난해 7월 선보인 이지닷컴의 시험 서비스를 다음달 중순께 상용화하려는 작업이 한창이다.

남궁훈 이사는 "미국 게임 시장에서는 방안에서 혼자 하는 비디오 게임이 주류다. 이와 달리 이지닷컴은 수많은 네티즌과 대화를 하면서 진행하는 온라인 게임을 내놔 미국인들의 마음을 사로잡을 것"이라고 설명했다. 이지닷컴 시험판의 일일 방문자는 15만 명이고, 하루 최고 동시 접속자는 1만6000명이다. 싸이월드 USA도 지난해 8월 15일 서비스를 시작한 영문판 싸이월드를 이달부터 대폭 보강하고 있다. 미니 홈페이지 외에 플라자(미니 홈피용 게시판) 등 다양한 서비스를 선보였다.

이 회사 헨리 전 대표는 "최근 가입한 20여만 명의 회원 중 87%가 미국인이고, 한국인은 5%에 불과하다. 이용자도 대부분 17~27세로 젊은 미국인을 겨냥한 서비스가 일단 성공했다"고 말했다. 미국인 사이에서 최근 '도토리'도 인기다. 올해 50만 달러어치의 도토리가 팔릴 것 같다는 게 전 대표의 전망이다.

기사펌) http://article.joins.com/article/article.asp?total_id=2689120
반응형

'Computing..' 카테고리의 다른 글

IT환경의 진화...  (0) 2007.04.11
Web 2.0에 관하여.. 1  (1) 2007.04.07
HSDPA에 관하여..  (0) 2007.04.06
Posted by 따뜻한 세상
,
Web 2.0이라는 용어에 대한 개념을 잡기가 정말 어려운 것 같다.
자료를 찾아보면 어떤 전문가는 Web 2.0이라는 것은 실체가 없다고 하기도 하고...
개념을 알  것 같으면서도 명확한 개념을 잡기가 어렵다..

이런 시점에 Web 2.0 개념을 명확히 정리할 수 있는 기사가 있어 계속 올릴 생각이다..

아래 기사 펌) http://article.joins.com/article/article.asp?total_id=2687100

KAIST `웹 2.0 특강` 지상중계
① 웹 2.0 시대 어떻게 맞아야 하나
`사용자 중심 미디어 활성화 사회 전 분야 혁신 계기될 것`

한국과학기술원(KAIST) 정보미디어 경영대학원이 최근 '웹 2.0 특강'을 개설했다. 이 강좌는 웹 2.0이 우리 생활과 미디어 산업에 어떤 변화를 가져올지 각 분야 전문가가 릴레이 강연하는 식으로 진행 중이다. 차동완 KAIST 정보미디어 경영대학원장은 "웹 2.0이 개인의 참여와 공유에 의한 정보 생산과 유통을 촉발해 정치.경제.문화 등 전 분야에 걸쳐 변화를 주도하는 거대한 힘으로 작용할 것"이라고 말했다. 웹 2.0이 가져올 미디어 이용 변화상을 총체적으로 알아보기 위해 KAIST 협조로 강연 내용을 연재한다.

요즘 세간의 초미의 관심사는 '웹 2.0'이다. 웹 2.0은 최근 달라진 웹 환경을 이전과 구별하기 위해 만든 용어다. 웹 2.0이 기존 웹과 차별화되는 핵심 요소는 수동적 정보 소비자였던 사용자가 적극적으로 참여해 목소리를 내게 됐다는 점이다. 웹이란 열린 공간에서 다양하고 질 좋은 정보를 쉽게 획득하는 데 머무르던 사용자들이 적극적으로 의견을 제시하고 다른 사람과 연계해 다양한 분야에서 전문가 수준의 영향력을 갖게 됐다. 이 같은 현상을 반영해 미 시사주간지 타임은 지난해 말 2006년의 인물로 사용자를 뜻하는 'You'를 뽑기도 했다. 웹으로 연결된 개인이 집단지성을 통해 힘을 발휘하는 양상은 다양한 형태로 나타나고 있다. 웹 2.0의 위력은 누구나 참여해 만드는 온라인 백과사전 'Wikipedia' 사이트나 중요한 이슈를 사람들의 관심 정도에 따라 보여주는 'Digg' 사이트 등에서 확인할 수 있다. 최근엔 동영상 UCC(사용자 제작 콘텐트)를 통한 개인의 참여와 연계가 활발해지고 있다. 누구나, 언제든지 세계를 대상으로 주장을 펼치는 게 가능해졌다. 이러한 개인 미디어가 모여 기존 신문사나 방송국에 버금가는 영향력을 행사할 수 있게 됐다. 'We, the Media'(대중 미디어) 시대가 열린 것이다. 갈수록 많은 사람이 웹에 참여함으로써 더욱 큰 가치가 생성되고, 이로 인해 웹 사용자가 크게 늘어나는 선순환적 생태계가 형성되면서 웹이 지속적으로 발전하는 양상이다.

웹 2.0은 '제2의 불의 발견'이라 할 만큼 우리의 삶 구석구석에 큰 파장을 일으키고 있다. 기존 계층적 사회구조를 무너뜨리고 누구나 평등하게 정보와 힘을 가지는 시대를 열어가고 있다. 똑똑한 사용자들은 개인화된 맞춤형 광고를 이용해 다양한 서비스를 무료로 즐길 수 있다. 직접적 수입이 발생할 때만 광고비를 지불하는 후불식 광고(CPA.Cost Per Action)가 등장하면서 돈 없이도 인터넷 쇼핑을 할 수 있는 여건이 마련됐다. 웹 출현 이후 가상세계가 실세계와 연계돼 중요한 삶의 일부로 여겨지는 점도 변화의 일면이다. 이같이 웹2.0은 우리 삶의 미래 모습을 바꿔가고 있다.

우리나라는 세계 최고 수준의 인터넷 인프라와 보급률을 갖고 있어 어느 나라보다 빠르게 다양한 개념의 인터넷 서비스가 등장하고 있다. 하지만 웹 2.0 시대의 기본 정신인 '사용자 중심의 서비스' 측면에선 아직 초보 수준으로 볼 수 있다. 특히 중앙집중식 포털로의 쏠림 현상은 혁신적 서비스의 출현을 가로막는 요인이 되고 있다.

웹 2.0은 사용자 개개인의 힘으로 이 같은 집중 현상을 개인 중심으로 분화시켜 기존 인터넷 판도를 크게 바꿀 것이다. 급속한 변화는 항상 기회와 위기를 동반하기 마련이다. 웹 2.0으로 인한 변화를 읽고 대비하느냐 못하느냐에 따라 개인과 조직의 미래가 달려 있다.

웹 2.0에 대한 통찰과 미래에 대한 비전을 갖고 개인.가족.회사.정부.국가.세계 등 각 분야에서 새로운 혁신과 변화의 전기를 마련하는 게 필요한 시점이다.


"웹 2.0으로 콘텐트 융합 시대 미디어 산업에 위기이자 기회"

웹 2.0의 3대 특징은 참여.개방.공유다. 참여 측면에서 웹 2.0 사용자는 댓글.블로그.UCC 등을 통해 프로슈머(prosumer.생산에 참여하는 소비자)로서 영향력을 갖는다.

과거엔 사회 여론 형성이 신문.방송 등에 의해 주도된 반면 웹 2.0 시대의 여론 형성은 이들 미디어와 소비자의 상호 소통에 의해 이뤄지는 양상이다.

둘째 특징인 개방은 정보의 전달.저장.유통의 표준화로 한 콘텐트를 다양한 매체를 통해 접할 수 있게 한다. 끝으로 공유는 개별 기업의 고유한 망이 누구나 쓸 수 있는 공용망 성격으로 바뀌어가고 사용자 참여로 만들어진 콘텐트들을 공유하는 것을 의미한다. 이러한 웹 2.0의 특징 덕분에 TV.라디오.신문 등 전통 매체뿐 아니라 유.무선 인터넷, 휴대용 단말기, 인터넷TV(IPTV) 등 다양한 채널을 통해 콘텐트의 생산 및 유통이 이뤄지는 게 가능해졌다.

이는 기존 미디어 산업에 위기와 기회를 동시에 제공한다. 전통 채널만을 고수하는 사업자에겐 위기로 작용하겠지만 다양한 채널을 이용한 새로운 서비스 사업 모델을 창출해내는 사업자에겐 기회가 될 것이다.
반응형
Posted by 따뜻한 세상
,

HSDPA에 관하여..

Computing.. 2007. 4. 6. 08:22

요즘 HSDPA라는 용어를 자주 접하게 됩니다. 무언지 무척 궁금하네요..
우리는 보통 업로드보다는 다운로드를 더욱 많이 받게되는 경향을 보이지요..
저도 마찬가지이고요..

따라서 상향(업로드)보다는 하향(다운로드)쪽을 조금더 고속화시키기 위한 하나의 기술로 무선 이동통신 환경에서 최대 10Mbps의 속도를 보인다는 군요...

아래 내용 펌1)
http://itdic.empas.com/dicsearch/view.tsp/?q=60425&s=l
펌2) http://blog.naver.com/jopaint?Redirect=Log&logNo=70003576228

HSDPA란?


무선 이동 환경에서 최대 10Mbps의 고속 패킷 데이터 서비스를 제공하기 위한 전송 규격. 이동 통신을 이용한 인터넷 접속이 증가함에 따라 정보의 흐름이 하향에 집중되는 현상을 보이고 있다. 이를 위하여 하향의 전송 규격을 보완한 것으로 적응형 변복조 및 부호화 방식(adaptive modulation and coding), 송수신 다중 다이버시티(multiple input multiple output), 하이브리드 ARQ(automatic repeat request) 기술을 채용하고 있다.

High Speed Downlink Packet Access의 머리글자를 딴 명칭으로서 '하향고속화패킷접속방식'이라는 뜻이다. 비동기식 3.5세대(G)의 이동통신 서비스로서 3세대 서비스인 W-CDMA가 진화된 방식이라 할 수 있다. 이론상 1초당 최대 14Mb를 전송받을 수 있고(14Mbps), 실제로 2~3Mbps의 속도로 데이터를 전송받을 수 있다. 이에 비해 W-CDMA는 1초당 최대 2Mbps이며, 실제 전송속도는 300~400Kbps에 지나지 않는다.

 

따라서 HSDPA가 본격 상용화되면 현재 최대 2Mbps 수준인 모바일 데이터 통신 환경이 최대 7배나 빨라짐으로써 고속으로 이동하는 동안에도 모바일 영상전화 등의 멀티미디어 서비스를 안정적으로 구현할 수 있게 된다. 3Mbps만 되더라도 4MB의 MP3 파일을 약 11초 만에 다운로드받을 수 있다. 망 처리 용량도 크게 개선되어 1개 기지국에서 수용할 수 있는 사용자 수가 이전보다 2~3배 늘어난다.

반응형
Posted by 따뜻한 세상
,
요기(http://safe.creditbank.co.kr/event/mogaha/index.html)에 가시면 기간별로 내 주민번호를 이용한 내역을 사이트별로 상세히 알 수가 있네요..

한번쯤 확인해 보시면 좋을듯 하네요..^^

전 다행히도 도용당한 경우가 없는 것 같습니다..

사용자 삽입 이미지
반응형
Posted by 따뜻한 세상
,

프린터를 이용하여 화면의 내용을 인쇄해야 할 경우가 많지요?
그런데 어떤 경우에는 특히, 인터넷 웹사이트의 정보를 출력하고자 하는 경우..
출력할 페이지는 많은데, 굳이 한페이지씩 출력할 필요는 없을때...
종이가 좀 아까울때...

선택적으로 1, 2, 4, 8 페이지를 하나의 용지에 인쇄할 수 있는 프로그램이 있네요..

종이를 절약할 수 있는 기능외에도, Watermark 기능이나..
스프링 제본을 위한 기능이외에도 아주 다양한 기능이 부가되어 있습니다....

다운은 요기(http://www.fineprint.com/)서...

사용자 삽입 이미지

반응형
Posted by 따뜻한 세상
,

간혹 dll 파일이 실수로 지워지거나 문제가 생길때 있지요?
이럴때 아주 유용하게 사용할 수 있는 사이트네요...

바로 요기서 .... http://www.dll-files.com..

사용자 삽입 이미지
반응형

'Computing..' 카테고리의 다른 글

종이 절약 프로그램..Fineprint..  (0) 2007.04.04
mdm.exe 자동 실행 막기..  (0) 2007.04.02
Windows의 주요 Process 정리..  (0) 2007.04.02
Posted by 따뜻한 세상
,

 mdm.exe 자동 실행 막기


MDM(Machine Debug Manager)은 Office 2000과 Windows NT Option Pack / Developer Studio에서 설치한 디버깅 관련 파일로  mdm.exe 파일을 자동 실행시키지 않기 위해서 다음과 같은 방법을 이용하면 된다.

1. windows/system32 폴더에서 mdm.exe 파일 이름을 변경(예 mdm1.exe)
2. c:\Program Files\Common Files\Microsoft Shared\VS7Debug\ 폴더에서도 mdm.exe 파일 이름을 변경(예 mdm1.exe)
3. 제어판-인터넷-고급-스크립트 디버깅 사용안함 체크


반응형
Posted by 따뜻한 세상
,

Windows를 부팅하고 나면 많은 프로세스들이 시작됩니다..
때로 컴퓨터가 이상하다고 생각될 때, [작업 관리자]를 들여다 보게 됩니다..
이때 볼수 있는 주요 Process 들을 정리해 봅니다..

CPU 점유율이 5%이상 점유되는 프로세스는 문제가 될수 있으므로 신중히 고려해 봐야 겠습니다..

[IExplorer.exe]ㅡ>Internet Explorer 관리
[svchost.exe]ㅡ>연결 파일 관리하는 프로세스로서  
[lsass.exe] ㅡ>보안 관련.
[services.exe]ㅡ>백 그라운드 서비스 관리.
[winlogon.exe]ㅡ>사용자 로그인 관련.
[csrss.exe]ㅡ>16 비트 가상 MS-DOS 모드 관리.
[smss.exe]ㅡ>이용자 세션 관리자.
[ctfmon.exe]ㅡ>IME 한글 입력기로서 한영 입력 관리.
[taskmgr.exe]ㅡ>작업 관리자.
[explorer.exe]ㅡ>윈도우의 기본 셀로서 프로그램 실행시 윈도우로 연결.
[System.exe]ㅡ>윈도우의 기본 프로세스.
[System ldle Process]ㅡ>CPU 점유률.
[wuauclt.exe]ㅡ>윈도우 자동 업데이트 관련.
[Spoolsv.exe]ㅡ>프린트 관련.
[Services.exe]ㅡ>윈도우 서비스팩 프로세스.
[winlogon.exe]ㅡ>윈도우 클라이언트.
[alg.exe]ㅡ>인터넷 연결보안.
[internat.exe]ㅡ>IME표시기를 화면상에 표시해주는 역할.

제가 위에서 정리한 것 보다 훨씬 정리가 잘된 사이트가 있군요.... 괜히 정리했넹...ㅠ.ㅠ

요기(http://www.liutilities.com/products/wintaskspro/processlibrary/system/)가 보세요

반응형
Posted by 따뜻한 세상
,

잘 되던 컴퓨터가 갑자기 왜이러는 거야?
아니 컴퓨터의 실행도 늦어졌고.. 
네트웍 또한 끊김문제가 심해졌습니다...

작업 관리자를 뒤적여보니 vircatch.exe라는 녀석이 혼자 CPU를 엄청 잡아먹고 있는 탓인것 같았습니다... 이런 저런 해결방법을 다 써보아도 도무지 저녀석의 존재를 알 길이 없었습니다..

알아보니...
제가 사용중인 Hauri의 ViRobot과 관련한 파일이었는데..
그 파일의 버그로 인한 것이었답니다..

해결 방법은 ViRobot 실행 > (중간쯤에) 업데이트 > (아래 왼쪽) 환경설정 > (아래쪽 서버설정에서) 기타서버 선택 >서버주소 http에 'hup.hauri.net'을 넣고 > 확인,, 업데이트 진행....

요렇게 하니 문제가 해결되더군요..... 휴~~
포맷의 공포로 부터 벗어나는 순간이었습니다...........

반응형
Posted by 따뜻한 세상
,

 주식수수료 계산기 프로그램


제가 사용하려고 조금은 허접하게 만든 증권 계산기 프로그램이..
심파일(http://simfile.chol.com/)에 등록되었네요...

DB연결된 부분은 아직 못 올리고, 저만 사용하고 있는데..
암튼 기분은 좋으네요..ㅋㅋ

다운은 요기서(http://simfile.chol.com/view.php?fnum=123803) 받으세요..

버전업을 조만간 계속 해 올리겠습니다..ㅋㅋ

사용자 삽입 이미지


  • 매수가, 매도가, 매도수량을 입력한 후 엔터(Enter)를 치거나 [계산]단추를 누르면 손익과 손익률을 계산해 줍니다.
  • 다른 값을 입력하려면 [지우기] 단추를 누르면 값이 지워집니다. 하지만 지우지않고 매수, 매도가, 매도수량을 입력해도 됩니다. 값을 편하게 입력하고 수정하기 위해 기존에 값을 지우지 않고 그냥 사용하는 경우에는 기존의 값이 블록처리되어 바로 입력이 가능합니다.
  • [계산기] 단추를 누르면 계산기 프로그램이 실행됩니다.
  • [도움말] 단추를 누르면 프로그램 사용에 관한 도움말을 볼 수 있습니다.
  • [거래내역 입력 및 관리] 단추는 데이터베이스를 이용해 거래내역을 체계적으로 관리하실 수 있도록 V2.0에서 선보일 계획입니다.
  • [종료] 단추를 누르거나 [ESC] 키를 누르면 프로그램이 종료됩니다.
  • 매수, 매도시 정확한 손익 계산을 원하시는 경우를 위해 하단에 수수료 관련된 부분을 마련했습니다.
  • 증권사별로 수수료율이 다르기 때문에 직접 자신이 사용중인 증권사의 수수료를 입력하도록 했습니다.
  • 매수수수료, 매도수수료, 세금비율은 0.15%이면 0.0015 형태로 입력해주세요.
  • 수수료와 세금비율을 입력한 후 우측의 [파일로 저장하기] 단추를 누르면 그 값이 파일(infosave.ini)로 저장됩니다. 만일 수수료율이 변경되면 다시 입력후 재 저장해 주셔야 합니다.
  • 수수료율이 입력된 경우에는 제세금 합계와 제세금을 제외한 실제 순손익을 확인하실 수 있습니다. 추후에는 [증권사]별로 선택만하면 되도록 프로그램을 수정할 생각입니다.
  • 사용자 삽입 이미지

    사용자 삽입 이미지


    반응형
    Posted by 따뜻한 세상
    ,


     가벼운 PDF, Foxit Reader


    업무적으로 여러면에서 pdf 파일을 많이 사용하고 열어보지요..

    그럴때마다 느끼는 건데..

    Acrobat Reader는 열리는데 너무 버거운 느낌을 지울 수 없습니다...

    오호 그런데 아주 가벼운 pdf를 읽을 수 있는 프로그램이 있네요...
    Foxit Reader라고 하는 프로그램인데요...

    여러 페이지를 동시에 볼수도 있고 기능도 매우 다양하네요...후후~

    다운로드는 요기(http://www.foxitsoftware.com/downloads/)서..

    사용자 삽입 이미지


    반응형
    Posted by 따뜻한 세상
    ,
    Web 2.0 이게 도무지 뭘까?
    대강은 이해가 되는데, 아무튼 무언지 설명하라면 정말 못하겠다... 훔 답답해...

    다음의 기사를 보면 전문가들도 Web 2.0이라는 것이 실체가 없다고 하는데....

    아래 기사 펌(http://article.joins.com/article/article.asp?total_id=2675506)

    웹 2.0이라는 말은 실리콘 밸리의 기술 트렌드를 이끌고 있는 오라일리 미디어 대표 팀 오라일리가 2004년 10월의 컨퍼런스를 '웹2.0 컨퍼런스'라 명명한데서 비롯됐다. 기존의 인터넷 서비스('웹1.0')와 차원이 다른 새로운 버전이란 의미에서 나온 말이다. 이후 이 용어는 시대의 화두처럼 전 세계로 퍼져나갔지만 정확히 웹 2.0이 무엇인지에 대해서는 대중뿐 아니라 전문가들 사이에서조차 의견이 분분하다. 중앙일보 취재팀은 19일부터 일주일간 국내 정보통신 전문가 28명에게 '웹 2.0의 실체가 있느냐'고 물었다. 그 결과 '실체가 없다'(16명), '실체가 있다'(10명), '모르겠다' (2명) 순으로 나왔다.

    ◆ "개념적 용어일 뿐"

    "실체가 없다"고 답한 16인은 웹2.0이 인터넷 환경 및 우리 사회를 변화시켰다는 점에 있어서는 대체적으로 동의했다. 하지만 그 실체가 정확히 존재한다기보다는 일종의 현상. 변화.흐름 등에 이름을 붙인 것에 불과하다는 것이다.

    IT전략연구원의 황지연 책임연구원은 "어느 순간 갑자기 나타난 신기술의 등장이나 변화의 특정한 지점을 말하는 것이 아니라, 커다란 변화의 경향을 '웹 2.0'이라는 용어로 표현한 것일 뿐이다"고 말했다. 삼성경제연구소 기술산업실 고정민 수석연구원도 "웹 환경의 변화 경향성 자체를 뜻할 뿐 별 의미는 없다고 본다"고 밝혔다. 김영수 KT 경영연구소 미래사회연구센터 책임 연구원 역시 "웹2.0을 기술적으로만 설명하기에는 사회문화적으로 너무나 광범위한 특징과 의미를 포함하고 있는 개념이기 때문에 특정한 실체를 지정하기는 어렵다"고 말했다.

    ◆ "실제로 존재한다"

    '웹 2.0의 실체는 있다'고 밝힌 10명은 주로 새로운 기술의 등장이나 웹2.0이 산업적 구조로 완전히 정착한 것을 근거로 제시했다.

    웹 미디어 컨설턴트 김용섭씨는 "사용자 참여를 중심으로 하는 웹이라는 특징을 가진 웹2.0의 실체는 시맨틱웹(컴퓨터가 이해할 수 있는 웹)을 비롯한 참여 기반형 웹 기술들로 구성된다"고 말했다. 김상범 블로터닷넷 대표 역시 트랙백(두개의 블로그를 연결하는 링크를 만들어 주는 것) 등 새로운 인터넷 커뮤니케이션 기술의 등장이 웹2.0의 실체를 대변해준다고 생각한다''고 말했다.

    산업 자체가 변화한 것이 웹2.0의 실체라고 말한 사람도 있었다. 한국소프트웨어진흥원 백영란 팀장(43)은 '롱테일 이코노미'가 가능해져 경제적 측면에서 완전히 새로운 장이 열렸다며 "비즈니스 모델 자체가 바뀌었다"고 말했다. IT칼럼니스트인 김중태 씨는 "웹 2.0은 용어 자체가 만들어진 것이긴 하나, 돈을 버는 실재하는 기업들을 지칭한다"고 말했다. 그는 또 "닷컴버블 붕괴 이후 살아남은 기업들 중 수익을 창출하는 비즈니스적 관점과 사용자 중심이라는 관점을 갖고 있어 살아남은 순위권 회사들이 웹2.0의 실체"라고 정의했다.

    이 외에도 '현재 진행 중인 것을 총칭하는 것이기 때문에 실체가 있다 없다 말하기 곤란하다', '실체에 대한 논란은 무의미하다'등의 의견이 있었다.

    아래의 그림은 Web2.0의 특징이란다...
    사용자 삽입 이미지
                                   
    -웹2.0의 특징은-

    웹2.0의 실체가 존재한다고 답변한 사람들에게 웹2.0의 특징을 물었다. 제일 많이 나온 답변은 역시 '참여, 공유, 개방. 이 세 가지 요소 외에도 전문가들은 집단지성, 정보의 분산, 생산자-소비자 사이의 유통이 아닌 소비자-소비자 사이의 유통 출현, 양방향성의 증폭 등을 웹2.0의 특성으로 꼽았다. 연세대 정보대학원 이준기 교수는 '웹을 통해 놀이터 만들었을 때 누구나 들어와서 안에서 플레이 하는 것이 웹2.0'이라면 '지식의 장을 만들면 위키피디아고 시장을 만들면 이베이가 될 수 있다'고 말하기도 했다.
    반응형
    Posted by 따뜻한 세상
    ,
    시장 규모면에서 보면 규모가 가장 큰 제품은 PC가 차지했네요..
    금액 기준으로 2006년 2013억달러를 기록해 TV·휴대폰의 두 배에 달한다고 하네요.. 훔

    판매 대수로 보면 휴대폰이 단연 1등이네요..
    휴대폰은 2007년 10억대 정도로 다른 아이템이 감히 넘볼 수 없는 규모네요..

    부가가치면에서 볼때는 DRAM이 1등이네요...

    개인적으로는 부가가치가 제일 중요하지 않을까요?..
    적게 팔아도 많이 남는...
    반응형

    'Computing..' 카테고리의 다른 글

    Web 2.0의 실체는 있는가?  (0) 2007.03.30
    시스템 깨끗이 청소..CCleaner..  (0) 2007.03.30
    작고 귀여운 라디오 IceRadio..  (0) 2007.03.29
    Posted by 따뜻한 세상
    ,

    사용하는 컴퓨터 시스템을 자주 청소해 주지 않으면, 자주 다운되거나 실행이 안되거나 하는 등의 많은 문제가 발생하지요..

    해서 정기적으로 Registry나 여러 임시 파일들을 청소해 주는 것이 좋은데요..

    전 개인적으로 지금까지 Easy Cleaner라는 프로그램을 사용해 왔습니다. 헌데 업데이트가 중지된지 워낙 오래된 터라 조금 아쉬웠는데, 그렇다고 난무하는 시스템 청소 프로그램들은 악성 소프트웨어들도 끼어있고 해서 사용하기가 겁나더라고요..

    헌데 아주 괜챦아보이는 CCleaner라는 프로그램을 찾았습니다... 아주 말끔하네요...

    다운은 바로 요기(http://simfile.chol.com/view.php?fnum=137897)서...
    혹은 요기(http://www.ccleaner.com/update/?v=1.38.485&l=1042)서...

    사용자 삽입 이미지

    반응형
    Posted by 따뜻한 세상
    ,