450 likes | 584 Views
Install and Update. 프로그램과 커널의 설치 & 업데이트. SPARCS 11 Kyumin Sim Wheel Seminar. Today we do. Tool wget uncompressing Application install & update By package, source Kernel update. 필요한 툴. 다운로드 & 압축 풀기. wget. $ wget [ url ] $ wget –h 수많은 옵션. tar. 리눅스에서 여러 파일들을 묶는 것 .
E N D
Install and Update 프로그램과 커널의 설치&업데이트 SPARCS 11 KyuminSim Wheel Seminar
Today we do • Tool • wget • uncompressing • Application install & update • By package, source • Kernel update
필요한 툴 다운로드 & 압축 풀기
wget $wget [url] $wget –h 수많은 옵션
tar 리눅스에서 여러 파일들을 묶는 것. $ tar cvf [filename.tar] [directory] $ tar xvf [filename.tar] c – 새로운 파일 생성 v – 묶이게 될 파일을 한 화면에 출력 f – 파일이름 지정 x - 풀기
uncompress tar.gz $ tar –zxvf [filename] tar.bz2 $ tar –jxvf [filename] tar.zip $ unzip [filename]
프로그램 설치 프로그램을 이루는 정보들을 적재적소에 배치하는 과정
schema - dependency shared library dependency - 리눅스에서 각 프로그램들은 의존성을 가진다. 프로그램의 설치와삭제에서 생기는 수많은 문제들은 dependency 때문이므로 주의하도록 한다. (dependency 를자동으로 처리하는 수단을 사용하면 이 문제를 줄일 수 있다.)
schema - 권한 프로그램 설치와 커널은 시스템의 중요한 파트이므로 루트 권한이 필요할 때가 있다. $ - 일반 # - 루트 계정
* ldd를사용하면 프로그램들의 dependency 관계를 알 수 있다.
Install program 패키지 이용 • redhat • RPM, yum, apt-get • debian • Dpkg, dselect, apt-get, aptitude • 기타 패키지 • pip, easy_install, rvm 소스 이용 코드를 다운로드 하여 설치
Redhat-RPM • 커널을 포함한 라이브러리, 응용프로그램이 모두 rpm으로 제공. • ex) foobar-1.0-1.i386.rpm • 컴파일할 필요가 없음
Redhat-RPM # rpm -q 패키지이름 # rpm -Uvh파일이름.rpm # rpm -ivh파일이름.rpm # rpm –e 패키지이름 # rpm –i ftp://[source] 좋은 참고 자료 :http://wiki.kldp.org/wiki.php/LinuxdocSgml/Rpm-Usage-KLDP
Redhat-yum • RPM의 프론트엔드 • 패키지 의존성 문제를 해결 • list 기능 사용
Redhat-yum • #yum update • #yum list update • #yum list installed • #yum update <packagename> • #yum list <packagename> • #yum install <packagename> • #yum remove <packagename>
Debian-dpkg Debian Package Management System. • .deb 파일로 된 패키지로 설치 • rpm과 유사
apt • Advanced Package Tool • apt-get, apt-cache, apt-cdrom… • 패키지 의존성 문제 해결
apt-get • #apt-get update • #apt-get install <packagename> • #apt-get remove <packagename> • #apt-get upgrade • #apt-get purge <packagename>
실습 – sl기차 # apt-get install wget # apt-get install sl $sl /usr/games/ # apt-get remove sl $sl
apt-cache • #apt-cache add • #apt-cache search [정규 표현식] • #apt-cache packgenames
apt-[etc] • #apt-cdrom add • #apt-config [옵션] (shell or dump)
apt 의 소스 • /etc/apt/sources.list에 있다.
Debian-Aptitude • apt의 프론트엔드– ncurses기반
Debian-Aptitude • CLI도 제공. • Ex) #aptitude install <filename>
실습 – python, vim 설치 Python 과 vim을 편한 방법을 골라 설치해 보세요.
Python – setuptools • Download, build, install, upgrade, and uninstall Python packages • support url source, .egg file • #easy_installSQLObject http://pypi.python.org/pypi/setuptools
Python – easy-install • python module • automatically download, build, install, and manage Python packages • support url source, .egg file • #easy_installSQLObject http://peak.telecommunity.com/DevCenter/EasyInstall
Python - pip • easy_install을 향상시킨 버전 • #pip install [pkgname] • #pip uninstall [pkgname] http://www.pip-installer.org
Install by source 여러가지 설정 Makefile파일 설정 Configure Makefile의 정보대로 실행 가능한 바이너리 생성 make make install 바이너리 파일들 시스템의 적재적소에 비치
Install by source $ wget [URL] $ tar –zxvf [filename.tar.gz] $ ./configure $ make # make install
실습 – django설치 apt 같은 툴을 사용하지 않고 설치해 보세요 https://www.djangoproject.com/download/
실습 – 프로그램의 위치 Vim, ls등의 프로그램들이 어디에 깔려 있는지 알아 보세요.
커널 업데이트 Linux의 진화를 따라가기
What is kernel? 운영체제 그 ‘자체’ 효율적으로 사용하기 위해서 커널을 업데이트 하고 다룰 줄 알아야 한다. 좋은 참고 자료 :http://sharkynara.egloos.com/1102607
커널 설치 • 프로그램 소스로 설치와 유사 • 다운로드 -> 세팅-> 빌드-> 설치 -> grub 세팅->재부팅-> 동작 확인 • 루트 계정으로 설치 • 소스는 usr/src로
커널 설치 • 개발툴이 필요하다. (ex : gcc) • #apt-get install gcc • $make menuconfig • $make xconfig • $make gconfig
커널 구하기 Kernel.org 에 가면 있다. 버전 형식 : Major.minor.patchlevel 2.6.39.1-> 커널2.6 버전의 패치 레벨 11, 서브버전 4
커널 설정 $make config • y: 기능사용 • n: 사용안함 • m: 모듈로 사용 • ?: 도움말 표시 • .config파일 생성
커널 컴파일 $ make $ make module # make modules install # make install
부팅 설정 # cd /boot/grub # vi menu.lst 수정 ->
모듈- 참고 • 동적으로 모듈 로딩 가능 • insmod, rmmod • 드라이버와 같은 것을 컴퓨터를 끄지 않고 로딩 가능 • 시스템 자원을 효율적으로 관리 가능