리눅스에 대한 간단한 설명 및 우분투 설치 방법

Linux, Ubuntu, SSH

리눅스

1. 개발환경

Linux

1. Linux의 특징

유닉스 기반의 무료 오픈 소스 운영체제이며, 윈도우와 맥과 가장 구별되는 점으로 ‘오픈 소스’를 꼽을 수 있다.
커스터마이즈된 OS를 만들 수 있는 커널로, Linux 커널을 기반으로 하며, 커널은 운영 체제의 핵심이라고 할 수 있다. 즉, 이 커널로 자신의 운영 체제를 개발할 수 있다.
Linux 아키텍처는 커널, 시스템 라이브러리, 시스템 도구와 같은 구성 요소로 이루어진다.
장치 메모리를 관리하고 프로세스를 관리하는 역할을 수행한다.
현재 여러 사용자가 기본 설정에 따라 다운로드할 수 있는 Linux 배포판을 사용할 수 있으며, 이 배포판은 여러 개발자들이 만들었다.
현재 Linux 커널은 운영 체제 역할을 위한 다양한 배포판을 지원하는데, 이 중 하나가 바로 Ubuntu이다.

2. Linux의 장점

안정적이며 안전한 운영 체제이며 여러 사용자가 동시 작업할 수 있기 때문에 다중 사용자 시스템으로 사용된다.
많은 프로세서를 지원하며 멀티 태스킹으로 많은 프로세스의 실행이 가능하다.

3. OS(Operating System, 운영체제)

컴퓨터 시스템의 하드웨어, 소프트웨어 자원들을 효율적으로 운영해, 사용자의 시스템 이용을 편리하도록 하는 시스템 소프트웨어를 말한다.
애플리케이션들이 동작하도록 자원을 관리하며 핵심 소프트웨어의 역할을 수행한다.
추가적으로, 외부의 접근을 방어하는 역할도 수행한다.
운영체제는 사용자 영역커널 영역으로 나눌 수 있다.

4. Kernal(커널)

컴퓨터의 운영체제의 핵심이 되는 프로그램으로, 시스템의 모든 것을 통제하는 역할을 수행한다.
운영체제의 프로그램 수행을 위한 여러 서비스를 제공한다.
보안, 자원관리, 추상화 같은 역할을 수행한다.

5. 배포판?

리눅스에서 작동하는 여러 프로그램을 모아 놓은 것으로, 이렇게 여러 프로그램이 모여 주어진 일을 수행하는 경우가 있으며, 이 중 하나가 Ubuntu이다.

6. Parallels, Ubuntu 설치

이미 윈도우 사용을 위해 Parallels 구입을 한 상태이기 때문에 Parallels로 Ubuntu 설치를 진행했다.
우선, Ubuntu 페이지에서 다운로드를 진행하면 ubuntu-20.04.3-desktop-amd64.iso라는 이름의 파일이 생기게 된다.
Parallels에서 새로운 OS 설치 버튼을 클릭하면 다운로드된 iso파일을 스스로 인식해 진행할 수 있다.

drawing

drawing

일반적인 윈도우 같은 운영체제의 설치와 같은 방식으로 진행되며, 따라서 진행을 하다보면 Ubuntu의 설치가 완료된다.

drawing

7. SSH 설정

원격 접속 설정을 위해 ssh 설정을 해야 하는데, Ubuntu 내의 터미널 파일을 켜야 한다.

drawing

좌측 하단에 메뉴 버튼을 클릭 시 이러한 창이 나오는데, 거기서 terminal을 찾아서 실행하면 된다. 단축키는 Ctrl + Alt + T(맥에서는 아직 찾지 못함)

drawing

위와 같은 창이 나오게 되고, ssh와 관련된 입력들을 넣어주면 된다.

1) SSH server install

$ sudo apt update
$ sudo apt install openssh-server

위 명령어를 입력해 SSH server를 설치한다.
설치 여부의 확인을 위해 sudo systemctl status ssh를 입력하면 아래와 같은 결과가 나오는 것을 볼 수 있다.

drawing

여기서 active(running)이라는 표시가 있으면 제대로 동작하고 있다고 할 수 있다.
만약, 동작하지 않을 시 아래의 명령어 중 하나를 입력해 실행시킨다.

$ sudo systemctl enable ssh
$ sudo systemctl start ssh

2) Firewall

방화벽을 사용 중일 경우, SSH를 허용해야 하며, $ sudo ufw allow ssh를 입력해 허용할 수 있다.
방화벽 사용 여부의 확인은 $ sudo ufw status를 통해 할 수 있다.

3) Client

Ubuntu는 기본적으로 SSH client가 설치되어 있는데, 혹시 설치되지 않은 경우에는 $ sudo apt-get install openssh-client를 통해 설치할 수 있다.
Client에서의 실행을 위해 username과 IP주소가 필요한데, IP주소는 ip a명령어를 통해서 확인할 수 있다.
명령어 입력 시 긴 줄이 나오게 되는데, 이 중 inet (IP주소)/24 brd~라고 되어 있는 부분에서 IP주소를 가져오면 된다.

drawing

원래의 이용하는 PC(Client)에서 터미널로 들어가 username@IP를 입력하면 접속과 관련된 질문이 나오고, yes를 누른 뒤 비밀번호 입력까지 완료하면 접속이 된다.

drawing

접속을 나오고 싶을 때에는 exit를 입력하면 나올 수 있고, SSH 종료를 위해서 sudo systemctl stop ssh를 입력하면 된다.

drawing

4) Directory 생성

mkdir (filename)입력 시 생성이 가능하다.
이전과 같이 원격으로 접속을 하고, 입력하게 될 시, 새로운 디렉토리가 만들어지게 된다.

drawing

ls는 디렉토리 내의 파일 목록들을 보여주는데, mkdir을 한 뒤 다시 보면 생성된 것을 확인할 수 있다.

5) 접근 권한 부여

chmod라는 명령어를 통해서 파일과 폴더에 대한 접근권한을 부여할 수 있다.
정확한 명령어는 아래와 같다.

chmod [옵션] [사용자] [설정기호] [권한] [file or directory]
구분 기호 설명
접근권한 r 읽기
  w 쓰기
  x 실행
수행 연산 + 권한 추가
  - 권한 제거
  + 권한 부여
사용자 u user의 약자, 소유자
  g group의 약자, 그룹
  o other의 약자, 일반 사용자
  a all의 약자, 모든 사용자
  비어 있음 a와 동일
8진수 2진수 파일 모드 권한
0 000 - - - 권한 없음
1 001 - - x 실행
2 010 - w - 쓰기
3 011 - w x 쓰기, 실행
4 100 r - - 읽기
5 101 r - x 읽기, 실행
6 110 r w - 읽기, 쓰기
7 111 r w x 읽기, 쓰기, 실행

숫자열 세 개를 작성하는 경우, 소유자(u), 그룹(g), 일반사용자(o)의 순서로 권한을 부여한다.
예를 들어 754의 경우 소유자는 7(읽기, 쓰기, 실행), 그룹은 5(읽기, 실행), 일반사용자는 4(읽기)가 가능한 것으로 설정할 수 있다.

jinjeon@ubuntu:~$ chmod 764 test

위와 같이 입력 시, test 디렉토리에 소유자 7, 그룹 6, 일반 사용자 4의 권한을 준 것이다.

링크