200 likes | 437 Views
12 장 . 프로그램 설치 , 업그레이드 , 컴파일. 발표자 안병욱. 12.1-1 소프트웨어 업그레이드. 최신을 갖고 싶어서 최신을 한다 ? – 그럴 필요 없다 . 중요한 거 할 때만 새 버전 어디서 알어 ? – http://www.freshmeat. net 으로 가세요 . 인터넷 안돼 ? 구독 신청해서 CD-ROM 받어 업그레이드 어떻게 해 ? – 이거 배우는 게 목적이야. 12.2-1 업그레이드 절차.
E N D
12장. 프로그램 설치, 업그레이드, 컴파일 발표자 안병욱
12.1-1 소프트웨어 업그레이드 • 최신을 갖고 싶어서 최신을 한다? – 그럴 필요 없다. 중요한 거 할 때만 • 새 버전 어디서 알어? – http://www.freshmeat. net으로 가세요. 인터넷 안돼? 구독 신청해서 CD-ROM 받어 • 업그레이드 어떻게 해? – 이거 배우는 게 목적이야.
12.2-1 업그레이드 절차 • 업그레이드 형식은 여러 가지 있다!! – (RPM패키지, 데비안패키지, 수동 등등) • SPARCS는 데비안이므로 데비안패키지만 배웁시다. -_-
12.2-2 데비안 패키지 시스템 • 패키지??? – 장점 : 내려 받은 파일 안에 다 들어 있다. 다른 패키지 건들지 않고 그 패키지만 고려할 수 있다. 자동으로 의존성 검사 (의존성? – 업그레이드 할 수 있는 버전인지 확인) – 단점 : 특정 부분만을 고치는 작업이 어렵다. 안 그러면 의존성 유지가 어렵다.
12.2-3 데비안패키지 관리자(437 pg) • 말 그대로 관리하는 것. dpkg와 apt가 있다. • dpkg들의 옵션 (dpkg-option) 설치 : -i**** 으로 한다. (에러 되면 에러 메시지 뜬다.) 새로운 패키지 와 업그레이드 둘 다 이 방식 을 사용한다. 언인스톨: -r(--remove) **** 또는 -P (--purge) **** -r 은 설정파일을 남기고 -P 는 설정파일도 없앤다.
12.2-4 옵션들 계속 (dpkg-option) • 설치되어 있는 패키지 보기 : -l (--list) 무지 많다. • 설치 이상하게 된 거 보기: --audit 우리는 없다. • 특정 파일 찾아보기: --search **** (ex. python) • 정보 보고 싶을 때 : --status **** (ex. python) • .deb에 관한 정보 보고 싶을 때 : --info ****.deb
12.2-5 옵션들 계속 (dpkg-option) • .deb안에 있는 파일과 디렉토리 볼 때: --contents ****.deb
12.2-6 데비안패키지 관리자(440 pg) • apt • apt-get command 갱신 내용 알아보기 : update 자동으로 업데이트 : upgrade (자동으로 안되는 패키지가 있다면 그건 다른 패키지의 의존성이 맞지 않는 것이다. ) 이 때는 -------------- install설치 안 된 패키지 이름
12.2-7 command 계속 • apt-cache command 패키지 정보 보기 : search “ *******” (“ ” 안의 구문을 찾는다.) 더 자세히 알아보고 싶어 : showpakagename
12.3 다량 자동화 업그레이드444pg • 책 보고 이해하시는 게 빠를 듯싶습니다. -- 설명이 어려워요.
12.4-1 패키지로 주지 않는다면? • 소프트 웨어 - 두 가지 형태가 있다. ( 바이너리, 소스 코드) - 소스코드가 더 좋다. (코드 검사가능) - 바이너리 tar 파일을 직접 푼다. (예전 버전의 파일과 지원 파일을 꼭 지워야 된다. 안 지우면 예전 버전으로 계속 돌린다.)
12.4-2 계속~ - 소스 코드 1. 별도 디렉토리에tar 를 풀도록 한다. 2. README와 INSTALL 을 읽어서 설치 지 시 파일을 읽는다. 3. Makefile을 검사한다. (지시사항 잘 보기) 4. 다른 파일 수정할 일 있으면 해야 된다.(*.h) 5. 만일 Makefile이 없고, Makefile.in과 configure 라는 파일이 있으면, autoconfig 시스템을 사용하여 빌드 된 것이다. 이 때 는 ./configure 을 실행한다.
12.4-3 계속~ 6. make 를 실행한다. 대부분의 경우 make all 또는 make install 을 해야 되는데 후자가 더 많이 쓰인다. (make all – 하나만 컴파일 make install – 컴파일 후 시스템에 실 행 파일과 지원 파일을 설치) 7. 맨페이지와 기타 파일들 보기 .1 확장자-> /man/man1 에 복사 .man확장자-> .man 에서 .1 로바꾼 다음 /man/man1 에 복사
12.4-4 라이브러리 • 두 가지의 라이브러리 (정적 라이브러리,공유 라이브러리) • 공유 라이브러리 사용시 ld.so동작 링커 실행 • ldd ***** :주어진 실행파일이 의존하고 있는 공유 라이브러리 목록을 본다. Ex . ldd/usr/bin/X11/*** 을통해 알아보자. (454pg)
12.4-5 라이브러리 • 라이브러리 교체 .a (정적 버전) - 덮어쓴다. .so.version(공유 라이브러리) - ln -sf /lib/libncurses.so.5.5 /lib/libncurses.so.5 형태로 갱신한다. 이를 먼저 실행하고 그 전 버전을 지우도록 한 다. (안 그러면 뭐…. 망하기 밖에 더하겠어?) • 새 라이브러리는 어디서? ftp://ftp.gnu.org/pub/gnu/glibc
12.4-6 컴파일러 • Root 권한으로 tar 풀고 기타 파일을 삭제한다. • 컴파일러의 버전을 알고 싶다 : gcc -v • 새 컴파일러는 어디서? ftp://ftp.gnu.org/pub/gnu/gcc
12.5-1 압축이 하고 싶어 • 압축 방법에는 여러 가지가 있다. - gzip(확장자gz) , bzip(확장자bz2) • gzip, gunzip - 사용방법 : gzip ****** and gunzip ****** - 이름 바꾸기 : mv ***** ###### 이렇게 이름을 바꾸어도 gunzip –N 을 하면 원래 압축했던 파일로 돌아온다. - gunzip –c 하면 압축 푼 것을 출력한다. - gzip-(1~9) : -1 빠르게 압축, -9 느리게 압축 (6)
12.5-2 압축이 하고 싶어 • bzip2, bunzip2 - gzip보다 더 효율적이다. - 사용방법 : bzip2 ****** and bunzip2 ****** • 구 버전의 압축 - .Z 로 끝남. (gunzip으로 풀 수 있다.)
12.5-3 묶고 싶어 • 압축하지 말고 묶어 보자. • 여러 옵션들이 있으나 잘 쓰이는 걸 알아보자. (기능과 옵션) - tarcf****.tar file - tarcvf****.tar file - tarxvf****.tar - tarxvf****.tar file - tartvf****.tar (dir 안에 tar 이 있으면 안된다.)
12.5-4 묶고 싶어 • 기능과 옵션들은 붙여 쓴다. • tar 로묶고 압축하고 싶다. - tarcvzf****.tar.gz files - tarxvzf****.tar.gz - tar cvjf****.tar.gz files - tarxvjf****.tar.gz