들어가기 전에: 패키지 관리자 APT
Ubuntu에서는 apt라는 패키지 관리 도구를 사용합니다. 터미널(Ctrl+Alt+T)을 열고 명령어를 입력하여 패키지를 설치, 업데이트, 삭제할 수 있습니다. 명령어 앞에는 주로 sudo를 붙이는데, 이는 관리자 권한으로 명령을 실행하겠다는 의미입니다. 실행 시 사용자 비밀번호를 물어볼 것입니다.
* VMware를 통해서 설치했을 경우 다음 패키지 설치로 복사/붙여넣기를 활성화 해 주는 것을 잊지마세요.
설치후 재부팅.
sudo apt update
sudo apt install open-vm-tools-desktop
sudo reboot
핵심: 시스템 업데이트 및 업그레이드
가장 먼저 할 일은 시스템을 최신 상태로 유지하는 것입니다.
- 이유: 보안 취약점 해결, 버그 수정, 성능 개선이 포함된 최신 업데이트를 적용하여 시스템을 안전하고 안정적으로 유지합니다.
- 명령어:
# 패키지 목록 업데이트 (어떤 패키지를 설치/업그레이드할 수 있는지 확인) sudo apt update # 실제 패키지 업그레이드 (확인된 목록 기반으로 실제 파일 다운로드 및 설치) sudo apt upgrade -y- 설명:
apt update는 사용 가능한 패키지 버전 목록을 새로고침하고,apt upgrade는 현재 설치된 패키지 중 구 버전을 새 버전으로 업그레이드합니다.-y옵션은 모든 확인 질문에 자동으로 'yes'라고 답하는 옵션입니다.
1. 빌드 도구: build-essential
- 이유: 소스 코드로부터 직접 프로그램을 컴파일하거나, 특정 소프트웨어(특히 Python 패키지 중 C 확장 모듈을 사용하는 경우 등)를 설치할 때 필요한 기본적인 컴파일러(GCC) 및 관련 도구(make 등)를 포함합니다. 당장 필요하지 않더라도 나중에 무언가를 설치하려 할 때 의존성 문제로 막히는 경우가 많으므로 미리 설치해두면 편리합니다.
- 설치 명령어:
sudo apt install build-essential -y - 사용 예제: 직접적인 사용 예제보다는, 다른 소프트웨어를 소스에서 컴파일할 때
make,gcc등의 명령어가 문제없이 실행되도록 기반을 마련해줍니다.
2. 버전 관리 시스템: git
- 이유: 소프트웨어 개발의 필수 도구이자, GitHub 등에서 오픈 소스 프로젝트를 내려받거나 자신의 프로젝트를 관리할 때 사용합니다. 시스템 설정을 버전 관리하는 등 개발자가 아니더라도 유용하게 쓰일 곳이 많습니다.
- 설치 명령어:
sudo apt install git -y - 사용 예제: GitHub에 있는 프로젝트를 내 컴퓨터로 복제(clone)할 때 사용합니다.
# 예시: 특정 프로젝트를 현재 디렉토리로 복제 git clone https://github.com/git/git.git
3. 네트워크 도구: net-tools, dnsutils, curl, wget
- 이유: 네트워크 상태 확인, 문제 진단, 인터넷을 통한 파일 다운로드에 필수적인 도구들입니다.
net-tools:ifconfig,route등 전통적인 네트워크 정보 확인 도구를 포함합니다. (최신 Ubuntu에서는ip명령어가 기본이지만,ifconfig에 익숙한 사용자를 위해 설치하면 좋습니다.)dnsutils:dig,nslookup등 DNS 서버에 질의하여 도메인 정보를 확인하는 데 사용됩니다. 네트워크 문제 진단에 매우 유용합니다.curl: URL(웹 주소)을 통해 데이터를 전송하거나 받아오는 강력한 커맨드라인 도구입니다. API 테스트, 파일 다운로드 등에 광범위하게 사용됩니다.wget:curl과 유사하게 웹에서 파일을 다운로드하는 간단하고 효과적인 도구입니다.
- 설치 명령어:
sudo apt install net-tools dnsutils curl wget -y- 사용 예제:
# 네트워크 인터페이스 정보 확인 (IP 주소 등) ifconfig # 또는 최신 방식: ip addr show # Google DNS 서버에 naver.com의 IP 주소 질의 dig naver.com @8.8.8.8 # 웹 페이지의 헤더 정보만 가져오기 curl -I https://www.google.com # 인터넷에서 파일 다운로드 wget https://cdimage.ubuntu.com/releases/22.04/release/ubuntu-22.04.3-desktop-amd64.iso
4. 시스템 모니터링 및 관리: htop, vim, zip, unzip
- 이유: 시스템 자원 사용량을 시각적으로 확인하고, 강력한 텍스트 편집기를 사용하며, 압축 파일을 다루기 위한 기본적인 유틸리티입니다.
htop: 기본top명령어보다 훨씬 사용자 친화적이고 다채로운 색상으로 시스템 프로세스, CPU/메모리 사용량을 보여줍니다.vim: 강력하고 효율적인 터미널 기반 텍스트 편집기입니다. (초보자에게는nano가 더 쉬울 수 있으며,nano는 보통 기본 설치되어 있습니다. 하지만vim에 익숙해지면 매우 강력합니다.)zip,unzip: Windows 환경에서 흔히 사용되는.zip압축 파일을 생성하고 해제하는 데 필요합니다.
- 설치 명령어:
sudo apt install htop vim zip unzip -y- 사용 예제:
# 시스템 프로세스 및 자원 사용량 확인 (종료는 'q' 키) htop # 'myfile.txt' 파일 편집 시작 (vim 사용법은 별도 학습 필요) vim myfile.txt # 'file1.txt'와 'file2.jpg'를 'archive.zip'으로 압축 zip archive.zip file1.txt file2.jpg # 'archive.zip' 파일 압축 해제 unzip archive.zip
5. (선택) 원격 접속 서버: openssh-server
- 이유: 다른 컴퓨터에서 현재 Ubuntu 시스템으로 SSH(Secure Shell) 프로토콜을 통해 안전하게 원격으로 접속해야 할 경우 필요합니다. 서버로 사용하거나, 집/사무실 외부에서 접속해야 한다면 필수입니다. (단순히 다른 서버로 접속만 할 거라면
openssh-client만 있으면 되는데, 이는 보통 기본 설치되어 있습니다.) - 설치 명령어:
sudo apt install openssh-server -y- 사용 예제:
# SSH 서비스 상태 확인 sudo systemctl status ssh # (다른 컴퓨터에서) Ubuntu 시스템으로 접속 시도 # ssh [사용자명]@[Ubuntu 컴퓨터의 IP 주소] ssh myuser@192.168.0.15
6. (선택) 방화벽 관리 도구: ufw
- 이유: Ubuntu의 기본적인 방화벽 관리 도구인
ufw(Uncomplicated Firewall)를 사용하여 쉽게 방화벽 규칙을 설정하고 관리할 수 있습니다. 보안 강화를 위해 사용하는 것이 좋습니다. (ufw 자체는 기본 설치된 경우도 많지만, 활성화 및 설정이 필요합니다.) - 설치 및 활성화 명령어:
# 설치 (이미 있다면 생략됨) sudo apt install ufw -y # 기본 정책 설정 (들어오는 연결은 모두 차단, 나가는 연결은 허용) sudo ufw default deny incoming sudo ufw default allow outgoing # SSH 접속 허용 (openssh-server 설치 시 필수) sudo ufw allow ssh # 또는 포트 번호 직접 지정: sudo ufw allow 22/tcp # 방화벽 활성화 sudo ufw enable # 방화벽 상태 확인 sudo ufw status verbose- 사용 예제: 웹 서버(포트 80)를 운영한다면 해당 포트를 열어줘야 합니다.
sudo ufw allow 80/tcp sudo ufw reload # 규칙 변경 후 적용
한 번에 설치하기
위에서 추천한 필수 및 유용한 패키지들을 한 번에 설치할 수도 있습니다.
sudo apt update && sudo apt upgrade -y
sudo apt install build-essential git net-tools dnsutils curl wget htop vim zip unzip -y
# 필요에 따라 설치
# sudo apt install openssh-server -y
# sudo apt install ufw -y
이 패키지들은 대부분의 Ubuntu 사용자, 특히 시스템 관리나 개발 관련 작업을 하려는 경우 매우 유용합니다. 물론 사용 목적에 따라 필요한 패키지는 더 다양해질 수 있습니다. (예: 그래픽 작업, 비디오 편집, 특정 프로그래밍 언어 개발 환경 등)
'IT 관련 > 우분투(Ubuntu) 이것저것' 카테고리의 다른 글
| Ubuntu acer 노트북 팬속도 조절 (0) | 2025.04.07 |
|---|---|
| Ubuntu Nginx 설치 (0) | 2025.04.06 |
| 우분투(Ubuntu)설치후 한/영 전환 설정 (0) | 2025.04.06 |
| Ubuntu를 VM에 설치시 네트워크 설정 (0) | 2025.04.06 |
| scp 명령어 (0) | 2025.04.05 |