Post

dpkg, apt, tar, sed 등

image

기존의 리눅스는 c코드로 된 파일을 컴파일 시켜 프로그램을 실행 시켰지만, 해당 파일들을 패키지로 만들어 수월하게 설치되도록 함(ex. 윈도우의 exe, msi)

dpkg

 - deb(데미안), (<-> rpm(레드햇))

 - dpkg라는 명령을 통해 deb 패키지 설치

 - 종속성의 단점이 있음(하나하나 설치를 직접 하기 때문에 종속성을 먼저 해결해야 해당 패키지를 설치할 수 있음, 이 과정이 뒤엉켜 있을 수 있음)

apt

 - Update 서버를 인터넷 상에 설치해 놓고 인터넷 연결만 되어있으면 자동으로 다운받아 설치되도록 함(dpkg의 종속성 문제는 해결됨)

 - apt는 공용 인터넷망이 필요함(내부 인트라넷 환경에서는 불가)

 - 서버의 등록되어 있는 버전만 다운 가능(apt 서버에 최신 버전 정보가 업데이트 되어 있지 않으면 최신 버전의 패키지를 다운 받을 수 없음)

image

공식적으로 지원해주는 무료 패키지

image

비공식적으로 지원해주는 무료 패키지

image

공식적으로 지원해주는 유료 패키지

image

비공식적 부분 무료 패키지

image

x86_64 아키텍처 사용 중

image

i386은 32bit 시스템

tar는 패키징, xz는 압축

image

wget 명령어 파일의 위치를 확인(wget 다운되어 있는지 확인하는 것)

man wget으로 wget에 대한 매뉴얼 확인 가능

image image

-P 옵션으로 다운받을 디렉터리 지정 가능

sudo dpkg -i /tmp/mysql

설치하면 종속성 문제 화면이 나옴

image

먼저 아래의 패키지를 설치해야 해당 패키지 설치 가능

sudo apt list install mysql-server

image

이 버전을 제외하고는 설치 안됨(해당 서버에


tar

image

tar 실습을 위한 파일 7개 생성

image

그냥 묶기만(패키징)

image

tar cJf [묶을 tar파일명] [묶을 파일들]

묶으면서 압축까지 진행(J 옵션으로)

image

와일드 카드 사용해서 한번에 지정

image

image

.xz로 압축했으면 풀 때도 해당 알고리즘을 써서 풀어주는 것이 좋다(-> tar xf로도 되긴하지만, tar xJf로 푸는 것이 좋음)


image

image

-P 옵션으로 다운받을 디렉터리 지정

image

image

image

image

image

종속성 문제 발생

image

image

image

image

image

image

image

종속성 문제 해결

image

mc 명령어 사용 가능(윈도우의 파일 탐색기)


bastet 이라는 게임 패키지 설치해보기

image

image

image

image

image

1.74.0 버전 라이브러리를 다운(wget으로)

-> 이거 다 아니야ㅡㅡ https://archive.ubuntu.com/ 사이트에 다 있는데 숨겨져 있던거였어;;

image

의존성 해결해야하는 패키지 경로 이름으로 구글링해서 찾고 아카이브 사이트에서 다운받기(wget)

image

정리하기!

가장 하위 버전으로 하니 의존성 문제도 하나 밖에 안나옴

dpkg 패키지 설치 과정

1) 설치할 패키지 확인

2) 해당 패키지 파일 다운

3) 다운 받은 패키지 파일로 설치


apt

image

image

image

image

image

image

원래는 잘 설치됨

image

dpkg로 다시 지워보자

image

왜 또 설치가 안돼

image

image

apt update

 - Repository(저장소) 업데이트

image

패키지명을 치지 말아 봐라

-> 내가 알아서 너 필요한걸 깔아줄게 하고 libboost-program을 입력해서 깔아 준 것

image

종속성 해결 후 다시 설치

apt로 패키지 설치 시 문제점 해결 솔루션

1) sudo apt update로 저장소 업데이트 후 재설치

2) sudo apt –fix-broken install로 깨진 것들을 고친 후 설치(의존성 해결 해주는)

3) sudo apt autoremove mc로 mc 패키지의 종속성 관련 패키지들을 모두 지워줌

4) sudo apt purge mc로 설정파일까지 제거

=> remove로 패키지 제거, autoremove로 종속성 해결에 필요한 사전에 설치한 파일들 제거, purge로 구성파일까지 모두 제거

-y 옵션으로 질문에 yes

image

bastet 패키지 삭제하기

image

패키지 확인 가능, ‘이제 이 패키지를 설치하면 되겠구나’ 설치하면 됨

image

위 명령을 간략하게 표시

image

설명문으로 찾는 것이기 때문에 여러 개 나올 수 있음(비추)

image

종속성 문제 확인 가능

image

해당 패키지 정보 확인

image

ex) DNS 서버(name server)가 필요하다 -> 먼저 찾고 이 패키지를 설치하면 되겠구나

image

image

repository 확인 가능

image

respository 추가 등록 가능

image

등록된 repository 확인

image

egrep 옵션은 grep이랑 뭐가 다르지?….

image

대소문자 구분 없이 하려면 -i 옵션주고 검색


sed 명령어

image

vi에디터를 사용하지 않고 바로 내용 수정이 가능

image

sed -i ‘s/abc/ABC/’ abc

This post is licensed under CC BY 4.0 by the author.