본문 바로가기

전체 글

(32)
파일 압축하기, 풀기 아카이브는 엄연히 파일을 "압축" 하는 것이 아니라 "묶는" 것이라고 이야기 했었습니다. 이 차이를 가장 명확히 알 수 있는 건 "압축률" 이라는 이야기도 했었습니다. 이번에는 아카이브(tar)로 묶는 것 뿐만 아니라 파일 압축(gzip) 도 해볼겁니다. gzip/gunzip : .gz 파일 gzip 명령은 지정한 파일을 압축하여 '파일명.gz' 파일을 생성합니다. gzip - 기능 : 파일을 압축한다. - 형식 : gzip [옵션] 파일명 - 옵션 -d : 파일 압축을 해제한다. -l : 압축 파일의 정보를 보여준다. -r : 하위 디렉터리를 이동하여 파일을 압축한다. -t : 압축 파일을 검사한다. -v : 압축 정보를 화면에 출력한다. -9 : 최대한 압축한다. - 사용 예 : gzip a.txt ..
APM을 이용한 웹서버 구축 오늘은 APM을 이용해 웹서버를 구축해보려고 합니다. APM은 Apache, PHP, MySQL(또는 MariaDB) 을 뜻하는데, 웹서버를 구축하는 기본적인 패키지 3개라고 할 수 있습니다. APM 설치 시 어떤 패키지를 먼저 설치하냐에 따라 오류가 발생할 염려가 있기 때문에, 저는 MariaDB, Apache, PHP 순서로 설치하려고 합니다. MariaDB 설치 sudo apt install mariadb-server 위 명령어로 mariadb를 설치했습니다. 저는 이미 패키지를 받아놓았기 때문에 위와 같이 출력됐지만, 다소 시간이 소요됩니다. 설치가 완료되면 systemctl status mariadb.service 로 mariadb가 제대로 작동하는지 확인해봐야 합니다. 현재 active 상태인..
파일 아카이브와 압축 아카이브(archive) 는 원래 보관소라는 뜻을 가지고 있지만, 리눅스에서는 '파일을 묶어서 하나로 만든 것' 이라는 뜻을 가지고 있습니다. 얼핏 이야기를 들어봤을 때는 윈도우의 압축과 같은 의미가 아닌가 싶지만, 엄연히 다릅니다. 파일을 한대 묶고, 실제로 용량이 줄어들긴 하지만 유의미한 차이는 없는 수준이기 때문입니다. 압축은 아카이브 이후에 다뤄볼 생각입니다. 파일 아카이브 tar(tape archive) 명령은 원래 여러 파일이나 디렉터리를 붂어서 마그네틱테이프와 같은 이동식 저장 장치에 보관하기 위해 사용하는 명령이었습니다. 하지만 지금은 다른 시스템과 파일을 주고받거나, 백업하기 위해 여러 파일이나 디렉터리를 하나의 아카이브 파일로 생성하거나, 기존 아카이브에서 파일을 추출하는 데 사용합니다..
우분투 패키지 설치 우분투에서 패키지를 설치하는 데에는 APT 명령을 사용하는 방법, dpkg 명령을 사용하는 방법, aptitude 명령을 사용하는 방법이 있습니다. 또한 명령을 따로 사용하지 않고 우분투 소프트웨어 센터에서 패키지를 선택해서 설치하는 방법 또한 가능합니다. 어떤 방법으로든 받아지면 그만이기 때문에 본인이 편한 걸 사용하면 됩니다. 저는 보편적으로 많이 쓰이는 apt-get 명령을 많이 사용하기 때문에 이에 대해서 알아보려고 합니다. apt-get 명령 apt-get 명령을 사용해 패키지 저장소를 업데이트하고 패키지를 설치하거나 제거할 수 있습니다. apt-get - 기능 : 패키지를 관리한다 - 형식 : apt-get [옵션] 서브 명령 - 옵션 : -d : 패키지를 내려받기만 한다. -f : 의존성이 ..
리눅스 시스템의 종료 이번에는 리눅스 시스템을 종료하는 방법에 대해서 알아보려고 합니다. 우리가 윈도우에서 "윈도우 - 전원 - 끄기" 의 순서로 시스템을 종료하는 것처럼, 리눅스도 비슷한 기능을 가지고 있습니다. 위 사진은 우분투 화면 우측 상단 메뉴얼바 입니다. 위 방법 이외에도 다양한 방법이 존재하는데, 오늘은 이에 대해서 알아보려고 합니다. 일단 어떤 방법이 있는지 나열해 보겠습니다. shutdown 명령 사용 halt 명령 사용 poweroff 명령 사용 런레벨을 0이나 6으로 전환 (target 전환) reboot 명령 사용 전원 종료 마지막에 소개한 전원 종료는 시스템이 먹통이 되어서 아무것도 할 수 없을 때의 조치입니다. 때문에 최후의 수단이라고 생각하고, 자주 사용해서는 안됩니다. 나머지 다섯개 명령을 알아보..
리눅스 시스템의 부팅 (3) systemd와 런레벨 앞에서 살펴보았듯, 런레벨은 현재 시스템의 상태를 나타내는 한자리의 숫자입니다. 이에 대응하는 systemd의 target 유닛은 아래 표와 같습니다. 런레벨 target 파일(심벌릭 링크) target 원본 파일 0 runlevel0.target poweroff.target 1 runlevel1.target rescue.target 2 runlevel2.target multi-user.target 3 runlevel3.target 4 runlevel4.target 5 runlevel5.target graphical.target 6 runlevel6.target reboot.target 런레벨이니 target 파일이니 여간 생소한 단어가 아닌데, 단어가 어려울 뿐입니다. 자세한건 ..
리눅스 시스템의 부팅 (2) systemd 관련 명령 systemd 기반으로 서비스를 시작하거나 종료할 때 사용하는 명령이 바로 systemctl 입니다. systemctl 기능 systemd를 제어한다 형식 systemctl [옵션] [명령] [유닛명] 옵션 -a : 상태와 관계없이 유닛 전체를 출력한다. -t 유닛 종류 : 지정한 종류의 유닛만 출력한다. 명령 start : 유닛을 시작한다. stop : 유닛을 정지한다. reload : 유닛의 설정 파일을 다시 읽어온다. restart : 유닛을 재시작한다. status : 유닛 상태를 출력한다. enable : 부팅 시 유닛이 시작하도록 설정한다. disable : 부팅 시 유닛이 시작하지 않도록 설정한다. is-active : 유닛이 동장하고 있는지 확인한다. is-enab..
리눅스 시스템의 부팅 (1) 리눅스의 부팅은 PC의 전원을 켜는 순간부터 리눅스가 완전히 동작해 로그인 프롬프트가 출력되는 과정을 모두 포함해서 이야기합니다. 시스템을 관리하는 사람이라면, 이 과정에 대한 이해도가 높아야 합니다. 과정이 진행되면서 지금이 어느 단계인지, 이런 부분에 대한 이해를 포함한 이야기입니다. 부팅이 진행되다 어떤 문제가 발생했을 때 조치가 필수적이기 때문이죠. 리눅스 시스템의 부팅은 PC 부팅, LINUX 부팅으로 나뉩니다. 리눅스가 설치된 하드웨어의 부팅과 리눅스 OS 부팅 절차로 구분된다는 이야기입니다. 리눅스는 본래 PC를 기반으로 개발됐기 때문에, PC를 중심으로 한번 살펴보겠습니다. 과정을 6가지로 나눌 수 있는데, 1. 전원 켜기 2. 바이오스 단계 3. 부트 로더 단계 4. 커널 초기화 5. s..