본문 바로가기

컴퓨터/Ubuntu

006. 데비안 기반 리눅스 사용법(우분투, 라즈비안 등)

기본편

[디렉토리 내용 보기]

$ ls -la

※ 「-la」 는 내용을 자세히 보겠다는 옵션이다.

[위치 이동하기]

* 현재 위치 기준 하위의 특정 디렉토리로 이동

$ cd ./디렉토리명/
$ cd 디렉토리명/
$ cd 디렉토리명/디렉토리명/

* 현재 위치 기준 상위 디렉토리로 이동

$ cd ../
$ cd ../../

* 현재 위치 무관하게 특정 디렉토리로 이동

$ cd /디렉토리명
$ cd /디렉토리명/디렉토리명

※ 「cd」 명령어는 "Change Directory"의 약자이다.
※ 경로에 대한 개념은 리눅스 내의 어떤 명령에서도 동일하게 적용된다.

* 홈 디렉토리로 이동

$ cd ~

[디렉토리·파일 편집]

* 디렉토리 만들기

$ mkdir 디렉토리명

※ 「mkdir」는 "Make Directory"의 약자이다.

* 삭제하기

$ rm -rf 디렉토리명
$ rm 파일명.확장자

※ 「rm」는 "ReMove"의 약자이다.
※ 「-rf」는 디렉토리 내부의 모든 디렉토리와 파일에 까지 명령을 적용하겠다는 옵션이다.

* 복사하고 붙여넣기

$ cp -rf 원본디렉토리명 대상디렉토리명
$ cp 원본파일명.확장자 대상파일명.확장자

※ 「cp」는 "CoPy"의 약자이다.

* 잘라내고 붙여넣기

$ mv 원본디렉토리명 대상디렉토리명
$ mv 원본파일명.확장자 대상파일명.확장자

※ 「mv」는 "MoVe"의 약자이다.


[로그아웃]

* 종료

$ sudo shutdown -h now

* 재부팅

$ sudo shutdown -r now
심화편

[사용자 설정]

* 유저의 종류

리눅스 사용자는 일반유저와 슈퍼유저로 나뉜다. 일반유저는 제한된 범위에서 디렉토리와 파일을 편집·실행할 수 있지만 슈퍼유저는 범위에 제한없이 가능하다. 일반유저의 아이디는 본인이 설정하고, 슈퍼유저의 아이디는 "root"이다.

* 유저 보기

$ cat /etc/passwd

※ cat 명령은 "concatenate"의 약자로, 파일의 내용을 보여준다.

* 사용자 추가

$ sudo adduser 사용자

※ sudo 는 슈퍼유저(관리자)의 권한으로 실행할 수 있게 해준다.

* 비밀번호 설정

$ sudo passwd 사용자

* 사용자 삭제

$ sudo deluser 사용자

* 홈 디렉토리까지 삭제

※ 삭제 전에 백업확인 할 것

$ sudo deluser 사용자 --remove-home

* 홈 디렉토리와 소유중인 파일을 모두 삭제

※ 삭제 전에 백업확인 할 것

$ sudo deluser 사용자 --remove-all-files

[APT]

라즈비안은 프로그램을 설치하거나 제거할 때 데비안과 동일하게 apt(Advanced Packageing Tool)라는 패키지 매니저를 이용한다.

* 패키지 목록을 갱신

$ sudo apt update

* 패키지를 최신 버전으로 업그레이드

$ sudo apt upgrade

* 패키지 설치

$ sudo apt install 패키지명

* 패키지 삭제

※ 설정은 삭제되지 않는다.

$ sudo apt remove 패키지명

* 패키지+설정 삭제

$ sudo apt purge 패키지명

* 패키지명에 문자열이 포함된 모든 패키지를 검색

$ sudo apt-cache search 문자열

[네트워크]

* IP 확인

터미널에서 아래 명령으로 IP 주소를 확인하고 메모한다.

$ hostname -I

※ 옵션의 'I'는 대문자 '아이'이다. 소문자 '엘'이 아니니 헷갈리지 말자.

* 포트포워딩

- 포트포워딩 상태 확인

$ sudo iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 3000

- 불필요한 포트포워딩 삭제

$ sudo iptables -t nat -D PREROUTING [번호]

- 포트포워딩 설정

$ sudo iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 3000

※ 80번 포트로 접근하면 3000번 포트로 연결해준다.

* 방화벽

  방화벽을 설정하는 ufw는 기본 비활성화 상태이다.

- 상태 확인

sudo ufw status verbose

- 활성화

sudo ufw enable

- 비활성화

sudo ufw disable

- 룰 확인

sudo ufw show raw

- 기본 정책 차단

sudo ufw default deny

- 기본 정책 허용

sudo ufw default allow

- 특정 정책 허용

sudo ufw allow 포트/프로토콜

※ 프로토콜은 tcp, udp 가 있고 적지 않으면 tcp, udp를 특정하지 않으면 둘 다 적용된다.

예)

sudo ufw allow 22/tcp

- 특정 정책 거부

sudo ufw deny 포트/프로토콜

- 룰 삭제

sudo ufw delete 룰

※ 룰에는 허용 혹은 거부한 룰을 적어준다. (예: allow 22/tcp)


[Shell 프로그래밍]

* 작성

~$ vi start.sh
명령어1
명령어2
...
echo "완료!"

* 실행 권한 부여

~$ chmod a+x start.sh

* 실행

~$ ./start.sh

[소유자 관리]

기능

chown은 파일이나 디렉터리의 소유자나 소유 그룹을 변경하기 위한 명령어이다.

소유자와 소유그룹을 알아보려면

ls -la

실행결과 : -rw-rw-rw- 1 root user 18048 Apr 27 12:52 test.csv

위의 결과는 test.csv 란 파일의 소유자(uid)는 root이고 소유 그룹은(gid) user라는 뜻이다.

chown 사용 예제

현재 경로의 test 디렉터리와 그 하위 디렉터리, 파일의 소유자를 ubuntu, 소유 그룹을 family로 변경해보겠다.

sudo chown -R ubuntu:family ./test/ 

-R 은 지정한 디렉터리와 하위 디렉터리 및 파일의 소유자, 소유그룹을 모두 변경한다는 옵션이다.

 

APM 환경에서 웹접속이 가능한 소유자와 그룹은 www-data:www-data 이다.


[윈도우10에서 데비안 리눅스 원격제어하기]

1. xrdp 설치

~$ sudo apt install xrdp

2. xrdp 설정

  부팅 후 자동 실행되도록 설정한다.

~$ sudo systemctl enable --now xrdp

3. 방화벽 개방

~$ sudo ufw allow from any to any port 3389 proto tcp

4. 포트포워딩

  상황에 맞게 외부 접근을 3389번 포트로 포워딩 시킨다.

5. 윈도우 원격 데스크톱 프로그램 실행

  [Wind키 + s] 눌러서 검색창을 열고, 「mstsc」를 검색해서 원격 데스크톱 프로그램을 실행한다.

6. 접속

  IP주소를 입력하고 root 계정으로 접속한다.


[권한 변경]

「chmod」 명령어는 파일 권한을 변경시켜준다.

$ sudo chmod 전달인자1 전달인자2
$ sudo chmod gu+rwx file.c
$ sudo chmod -R 777 file.c

 

1. 전달인자1: 권한을 주거나 뺏는다.

권한

r: 읽기권한

w: 쓰기권한

x: 실행권한

주거나 뺏기

주기: +

뺏기: -

대상

그룹: g

사용자: u

다른 사용자: o

전부: a

2. 전달인자2: 파일명

 


[여러 명령 연속적으로 실행하기]

mkdir app && cd app

'컴퓨터 > Ubuntu' 카테고리의 다른 글

curl 사용법  (0) 2022.01.30
010. wget 사용법  (0) 2021.10.28
vi, vim 사용법  (0) 2021.10.26
라즈비안 Raspbian 설치  (0) 2021.10.22
우분투 Ubuntu 설치  (0) 2021.10.04