Etc

리눅스 마스터 2급 정리(8) - 에디터 활용과 프로그램 설치

하다보면 되겠지 2025. 5. 10. 22:10

에디터 활용

개요

  • 리눅스에서 지원하는 편집기로는 vi, emacs, pico, gedit, xedit 등이 있음
  • 버퍼 기반 편집기 방식의 장단점
    • 장점: 사용자가 잘못 편집 시 해당 편집을 중지하여 원본 파일 보존 가능
    • 단점: 외부적인 원인으로 갑자기 편집기가 종료되었을 경우 수정 내용 손실

 

pico

pico <옵션> [파일명]

  • 워싱턴 대학에서 개발된 유닉스 기반의 텍스트 에디터
  • 메뉴 선택 방식의 편집기로, 원도우의 메모장과 유사
  • 자유 소프트웨어 라이센스가 아니기 때문에 소스 수정이 불가능함
  • 기능이 부족하고 업데이트가 잘 되지 않음
  • 복제 버전인 nano 편집기가 존재

 

emacs

  • 리차드 스톨만이 개발, 이후 제임스 고슬링이 LISP 언어로 기능 추가 개발
  • 매크로 기능이 존재
  • 단순 편집기를 넘어 소스 코드 작성 모드에 특화된 통합 개발 환경을 제공

 

vi

  • 리눅스 배포판과 유닉스에 기본적으로 포함되어 있음
  • mode형 편집기(명령, 입력, 편집)

 

vim

  • vi 편집기와 호환되며 다양한 기능을 추가함
  • 디양한 색상을 사용해 가시성을 높이고, ex모드에서 히스토리 기능을 제공함
  • 확장된 정규 표현식 문법, 다중 되돌리기, 문법 검사 기능 지원

 

gedit

  • 자유 소프트웨어 편집기로, 마이크로소프트, 윈도우, 맥OS X에서 사용 가능
  • GNOME(GUI) 데스크톱 환경에서 사용 가능하며 UTF-8과 호환됨
  • 그래픽 기반이기 때문에 CLI에서 사용 불가

 

nano

  • 단축키 기반의 메뉴(편집기 하단에 표시)

 


프로그램 설치

리눅스 소프트웨어 설치

  • 설치 방법
    • 배포판에서 제공하고 있는 패키지 매니저 혹은 레퍼지토리를 활용해 설치
    • 오픈소스 코드를 직접 컴파일하여 사용
  • 패키지 관리 프로그램


패키지 매니저를 활용한 설치

rpm(Redhat Package Manager)

  • 패키지 확장명: .rpm
  • 프로그램 패키지 파일 형식: 패키지명-버전(주버전.부버전.패치번호)-릴리즈번호.페도라버전.아키텍처
    (EX: sendmail-8.12.3.-5.fc11.i586.rpm)
  • 커널 패키지 파일 형식: 패키지명-버전(주버전.부버전.패치번호)-릴리즈번호.CentOS버전.아키텍처
    (EX: kernel-3.5.0-327.el7.x76_x64.rpm)
  • 패키지 관리 명령: rpm <옵션> 패키지명

 

yum(Yellowdog Updater Mofiied)

  • 레포지토리에 접속하여 패키지 관리. 즉, 인터넷 기반으로 설치하므로 네트워크 필요
  • RPM 의존성 문제를 해결하기 위한 유틸리티
  • 페도라 22 이후 yum 문제점을 보완한 dnf로 전환되고 있음
  • 패키지 관리 명령: yum <옵션> [패키지명]

 

dpkd

  • 데비안의 low level 패키지 관리 도구
  • 패키지 설치 및 제거 시 rpm과 같은 의존성 문제 발생할 수 있음
  • deb 패키지 형식: 패키지이름_버전-릴리즈버전-리버전_아키텍처.deb
  • dpkg <옵션> [패키지명.deb]

 

apt-get(Advanced Package tool Get)

  • 데비안 계열 리눅스의 패키지 관리 도구
  • dpkg의 의존성 문제를 해결(/etc/apt/source.list 파일 참조)
    • 패키지 유형(바이너리, 소스), 저장소 주소(URL), 우분투 버전 정보, 카테고리로 구성

 

aptitude

  • 우분투의 패키지 관리 유틸리티
  • API처럼 패키지 관리를 자동화함
  • aptitude 서브명령

 


소스 파일을 이용한 설치

파일 아카이브

  • 아카이브는 다수 개의 파일이나 디렉터리를 하나의 파일로 묶는 것
  • 백업, 배포에 활용
  • 대표적인 파일 압축은 compress, gzip, bzip2, xz가 존재
  • 압축률이 가장 낮은 것은 compress, 높은 것이 xz

 

tar

  • tar <옵션> [파일명]

 

소스 코드 설치

  • 소스 코드를 압축 해제 후 컴파일 순서에 따라 프로그램을 설치함
  • “./”에서 알 수 있듯, 현재 폴더에서 실행하는 것
  • configure 결과로 makefile(컴파일 시 참고 정보)이 생성됨
  • cmake(Cross Platform Make): OS별 makefile 생성. 의존 관계 분석, 다양한 개발 환경 지원, 타임스탬프(변화 확인)

 


References