$ dpkg -l | grep -E 'apache2-bin|vsftpd'ii apache2-bin 2.4.52-1ubuntu4 amd64 Apache HTTP Server (modules and other binary files)rc vsftpd 3.0.5-0ubuntu1 amd64 lightweight, efficient FTP server written for security
표시
뜻
ii
정상 설치된 상태
rc
삭제했지만 설정 파일이 남은 상태 (removed, config-files)
줄이 없음
설치된 적이 없거나 -P로 완전히 지웠다
rc가 바로 -r과 -P의 차이가 눈에 보이는 자리다. dpkg -r vsftpd 뒤에는 rc로 남고, dpkg -P vsftpd 를 하면 목록에서 사라진다.
설정을 남기는 이유는 다시 설치했을 때 예전 설정을 그대로 쓰기 위해서다. 깨끗이 새로 시작하려면 purge 한다.
apache2 _ 2.4.52-1ubuntu4 _ amd64 . deb │ │ │ │ │ └── 아키텍처 │ └──────────────── 버전-리비전 └───────────────────────────── 패키지 이름
구분
RPM
DEB
구분 기호
하이픈과 점 (이름-버전-릴리스.아키텍처)
밑줄 (이름_버전_아키텍처)
64비트 인텔·AMD
x86_64
amd64
아키텍처 무관
noarch
all
같은 프로그램이라도 배포판마다 패키지 이름이 다를 수 있다. 아파치 웹 서버는 레드햇 계열에서 httpd, 데비안 계열에서 apache2 다. 아래 apt 예시의 httpd는 어제와 견주기 쉽게 이름을 맞춘 것이고, 실제 우분투에서는 apt install apache2 로 설치한다.
apt update # 패키지 목록 갱신 (설치는 안 한다!)apt upgrade # 설치된 패키지 업그레이드apt install httpd # 설치apt remove httpd # 삭제apt purge httpd # 설정까지 삭제apt search 키워드 # 검색apt show httpd # 정보apt list --installed # 설치 목록
⚠️ update와 upgrade를 반드시 구분한다.apt update 는 저장소에서 "어떤 패키지의 어떤 버전이 있는지" 목록만 새로 받아온다. 실제로 무언가를 설치하거나 바꾸지 않는다.
apt upgrade 가 그 목록을 보고 실제로 업그레이드한다.
그래서 항상 apt update && apt upgrade 순서로 쓴다.
명령
하는 일
apt update
목록만 갱신
apt upgrade
실제 업그레이드
apt-get
apt 의 예전 명령. 지금도 동작한다
aptitude
텍스트 화면을 갖춘 관리 도구
저장소 주소는 /etc/apt/sources.list 와 /etc/apt/sources.list.d/ 에 있다.
deb http://archive.ubuntu.com/ubuntu jammy main restricted │ │ │ │ │ │ │ └── 구성 요소(영역) │ │ └──────────── 배포판 버전의 코드명 │ └────────────────────────────────── 저장소 주소 └──────────────────────────────────────────────────── deb = 바이너리, deb-src = 소스
줄을 고친 뒤에는 apt update를 해야 새 저장소의 목록이 들어온다.
최근 배포판은 같은 내용을 다른 형식의 파일(/etc/apt/sources.list.d/ 아래 .sources)에 담기도 한다. 시험에서 묻는 위치는 /etc/apt/sources.list 다.
tar -z c v f backup.tar.gz /home/alice │ │ │ │ │ │ │ │ │ │ │ └── 묶을 대상 │ │ │ │ └──────────────── -f 가 받는 파일 이름 │ │ │ └── f : 다음에 오는 것이 아카이브 파일 이름 │ │ └──── v : 처리하는 파일을 화면에 표시 │ └────── c : 동작 (c · x · t 중 하나만) └──────── z : 압축 방식 (z · j · J 중 하나)
동작은 c·x·t 중 정확히 하나를 고른다. 여기에 압축 방식 하나와 v·f를 붙이는 구조다.
f는 맨 뒤에 둔다.f 바로 다음 것이 파일 이름으로 해석되기 때문이다. tar -cfv a.tar dir 처럼 쓰면 v라는 이름의 아카이브를 만들려 든다.
하이픈 없이 tar zxvf 파일 로 써도 같은 뜻이다. 두 표기가 모두 보기에 나온다.
옵션
뜻
-C 디렉터리
풀어 놓을 위치를 지정 (대문자). 없으면 현재 디렉터리에 푼다
-p
원래의 권한을 유지하며 푼다
-r
이미 있는 아카이브에 파일 추가 (압축된 아카이브에는 못 쓴다)
tar -zxvf backup.tar.gz -C /tmp # /tmp 아래에 푼다tar -ztvf backup.tar.gz # 풀지 않고 안에 무엇이 있는지만
최근의 GNU tar는 풀 때 압축 형식을 스스로 알아내기도 한다. 하지만 묶을 때는 옵션을 주지 않으면 압축되지 않으며, 시험에서는 확장자에 맞는 옵션을 붙인 것을 정답으로 고른다.
-t로 먼저 목록을 보는 습관이 안전하다. 최상위 디렉터리 없이 묶인 아카이브를 풀면 파일 수백 개가 현재 디렉터리에 쏟아진다.