화면 출력 관련

화면 지우기

clear

화면 출력 stop: Ctrl + s

화면 출력 start: Ctrl + q

복사, 붙여 넣기

복사: Ctrl + Insert

붙여넣기: Shift + Insert

파일 조작 관련

파일 생성, 타임스탬프 업데이트

touch: 파일의 접촉시간을 나타냄, 없으면 빈 파일을 생성

touch newFile

 

파일 삭제

rm: ReMove

  • [파일명]: 해당 파일 삭제
  • -r [디렉토리명]: 디렉토리와 그 안에 포함된 모든 파일 및 하위 디렉토리 삭제 (r은 recursive)
rm newFile
rm -r folder1

 

파일 이동

mv: MoVe

  • [파일명] [경로]: 해당 파일을 해당 경로로 옮긴다 
  • [파일명] [새로운 파일명]: 이름 변경
mv newFile Documents/
mv newFile newNewFile

 

파일 복사

cp: CoPy

  • [파일명] [경로]: 해당 파일을 경로에 복사
  • -r [복사할 경로명] [목적경로]: 해당 경로의 파일들을 목적 경로로 복사

 

디렉토리 관련

디렉토리 내 목록 보기

ls: LiSt

  • -a: all 숨김 파일까지 출력
  • -l : 리스트 형태로 상세 보기
ls
ls -al

 

현재 디렉토리 확인하기

pwd

디렉토리 이동

디렉토리 이동하기

cd: Change Directory

  • [디렉토리 경로]: 해당 경로로 이동
    • 하위 디렉토리: 상위 경로에서 하위 경로로 이동할 경우
    • 절대 경로: '/' 부터 시작하는 파일 시스템 루트부터 시작하는 경로
    • 상대 경로: ./ 부터 현재 경로 입력
  • ..: 상위 디렉토리로 이동
  • ~: 홈 디렉토리로 이동
  •  -: 이전 디렉토리로 이동
cd Documents
cd /home/hyndrome/Documents
cd ./Documents
cd ..
cd ~
cd -

디렉토리 조작

디렉토리 생성

mkdir: MaKe DIRectory

  • [디렉토리명]: 디렉토리 생성 
  • -p [상대경로]: 디렉토리 하위 경로까지 한번에 생성 (p는 parent를 뜻함)
mkdir win
mkdir ./folder1/folder2/folder3/

 

디렉토리 제거

rmdir: ReMove DIRectory

  • [디렉토리명]: 해당 디렉토리 삭제 - 디렉토리 내에 파일이 있으면 삭제가 되지 않음

rm -r: 디렉토리와 그 안에 포함된 모든 파일 및 하위 디렉토리 삭제 - 삭제는 되돌릴 수 없다(r은 recursive) 

rm -r

 

디렉토리 복사

cp -r [복사할 경로명] [옮길 경로]

cp -r newFolder/ Documents/

 

파일 관리

cat [파일명]

cat /proc/cpuinfo
  • 파일 내용을 출력
  • cat /proc/cpuinfo : cpuinfo에 저장된 내용 출력
  • 내용을 파일로 저장
    • > : 파일에 내용 쓰기 : cat /proc/cpuinfo > abc
    • >> : 파일에 내용 덮어쓰기 : cat /proc/cpuinfo >> abc

find [경로] -name [파일명] -type 옵션]

sudo find / -name "*info" -type f
  • 파일 찾는 명령어
  • 경로에 / 를 넣으면 모든 곳에서 검색 (sudo 권한 필요)
  • 파일만 찾기: -type f
  • 디렉토리만 찾기: -type d

grep [텍스트]

grep kB /proc/meminfo
ls -la | grep test*
  • 문자열 검색
  • 다른 명령어 출력 결과에 |(파이프)를 사용하는 방식으로 많이 사용

du -sh [파일명]

  • 디렉토리 or 파일의 용량을 확인
  • -s : 디렉토리 개별이 아닌, 총 사용량만을 출력
  • -h : 인간 옵션 (보기 쉽게 출력) 

file [파일명]

  • 파일 종류 확인
  • 파일 or 디렉토리 or 실행파일 등 구분이 가능
  • file /dev/stdout

which [명령어]

  • 명령어의 실행가능한 위치를 찾음
  • 예시
    • sudo apt install sl -y : sl 앱 설치
    • which sl
    • 결과: /usr/games/sl

기타

echo [텍스트]

  • 텍스트를 화면에 출력
  • 띄워쓰기를 하나만 인정
  • 문자 그대로 출력

date

  • 현재 시간 확인 가능
  • 시간 변경 : date -s "20241212 08:33:00"

uptime

  1. 현재 시간, 시스템 시간과 커널이 부팅된 후 시간을 나타냄
  2. 접속자 수와 CPU 시스템 부하율 나타냄

dmesg

  • 커널의 로그 메세지를 출력
  • 부팅 이후 일어날 모든 커널의 로그를 시간 순으로 출력

history

  • 입력한 모든 명령어가 출력
  • ![숫자]를 이용해 해당 번호의 명령어 다시 실행 가능

ln -s [원본파일명] [복사본파일명]

  • link 파일 생성 (바로가기와 비슷한 파일)
  • link 파일을 수정하면 원본에 영향을 미침

 

'Linux > tips' 카테고리의 다른 글

압축, 압축 해제  (0) 2024.12.12
아카이브 변경하기  (0) 2024.12.11
Vim 설치, 단축키, vimrc  (0) 2024.12.10

우분투(Ubuntu)와 리눅스(Linux) 그리고 운영체제는 무엇일까?

운영체제부터 간단히 알아보자

 

운영체제

운영체제(OS, Operating System)는 컴퓨터 하드웨어와 소프트웨어를 관리하고, 사용자와 하드웨어 간의 인터페이스 역할을 하는 시스템 소프트웨어이다

운영체제는 다양한 자원을 효율적으로 관리하고, 사용자가 프로그램을 실행하거나 작업을 수행할 수 있도록 환경을 제공한다.

리눅스는 운영체제인가?

리눅스는 운영체제가 아니라 커널(Kernel)이다.

 

운영체제 = App + Shell + Kernel 

 

Linux에 App 과 Shell을 추가하여 만든 하나의 운영체제를 리눅스 배포판이라고 한다

Kernel이란?

커널(Kernel)은 운영체제의 핵심 부분으로, 하드웨어와 소프트웨어를 연결하는 중간 역할을 담당한다.

운영체제의 중심 구성 요소로, 시스템 자원을 관리하고 사용자 프로그램이 하드웨어를 사용할 수 있도록 인터페이스를 제공한다.

주요기능

  • 프로세스 관리
  • 메모리 관리
  • 장치 드라이버 관리
  • 파일 시스템 관리
  • 보안 및 권한 관리

우분투

우분투는 리눅스 배포판의 일종이다.

우분투 = 리눅스 + Shell + Application 이다.

 

우분투의 Shell

우분투는 기본적으로 CLI 환경의 Bash shell과 GUI 환경의 GNOME shell을 제공한다.

 

우분투의 App

기본 제공 App

  • 파일 관리자: GNOME Files(기본 파일 탐색기).
  • 웹 브라우저: Mozilla Firefox.
  • 텍스트 편집기: Gedit(기본 텍스트 편집기).
  • 터미널: GNOME Terminal(Bash 쉘 실행 가능).
  • 패키지 관리자: APT(Advanced Package Tool).
  • 소프트웨어 센터: Ubuntu Software(GUI 기반 앱 설치 관리).

추가 설치 가능한 App

  • 개발 도구: Visual Studio Code, IntelliJ IDEA, Vim 등.
  • 그래픽 도구: GIMP, Inkscape 등.
  • 멀티미디어: VLC Media Player, Audacity 등.

Shell

Shell에 대해서 알아보자

 

Shell은 사용자와 Kernel 간의 인터페이스를 제공하는 프로그램이다.

사용자와 Kernel이 상호작용할 수 있도록 명령어를 입력받고, 그 명령어를 실행하는 중간 다리 역할을 한다.

명령줄(CLI)나 Script를 작성하여 Kernel과 작업을 수행할 수 있다.

OS가 부팅된 후 실행되는 프로그램이다.

Shell은 마치 조개 껍데기 같이 커널을 감싸고 있어서 붙여진 이름이라고 한다.

 

다시 위에 올렸던 이미지로 돌아가면

사용자가 Application에서 Kernel 명령을 전달하려면 interface 역할을 하는 Shell을 통해 전달한다.

사용자는 Shell을 통하여 명령에 대한 결과를 확인할 수 있다.

'Linux > 개념' 카테고리의 다른 글

환경변수  (0) 2024.12.12
Bash shell script 문법  (0) 2024.12.12
리눅스 사용자 및 권한 관리  (0) 2024.12.11
포트포워딩  (0) 2024.12.11
리눅스 파일 시스템 및 구조  (0) 2024.12.10

가상머신(Virtual Box)에 우분투(Ubuntu) 올리기

해당 포스트에서 이어집니다

 

가상머신(Virtual Box)에 우분투(Ubuntu) 올리기

Virtual 박스 설치아래 링크로 가서 VirtualBox를 다운로드 한다https://www.virtualbox.org/wiki/Downloads Downloads – Oracle VirtualBoxThis VirtualBox Extension Pack Personal Use and Educational License governs your access to and use of th

thinkandscratch.tistory.com

 

가상머신에 올려진 Ubuntu를 server로 설정하여 ssh로 접속해보자!

ssh란?

SSH(Secure Shell)는 네트워크를 통해 다른 컴퓨터에 안전하게 접속하고 명령어를 실행하거나 파일을 전송할 수 있도록 해주는 암호화된 통신 프로토콜

기본 포트 번호는 22번이다

공개키 암호화 방식(Public Key Cryptography)란?
서버는 공개키를 가지고, 클라이언트는 비공개키(개인키)를 가지게 된다.

밑에 그림에서는 왼쪽에 있는 사람이 서버 역할이다.

이런 공개키 암호화 방식은 비밀번호를 사용하지 않아 보안성이 높은 장점이 있지만, 대칭키에 비해서 느린 단점이 있다.

그래서 처음 클라이언트-서버 간의 인증을 공개키-비공개키 인증을 하여 대칭키 공유를 하고 통신은 대칭키를 사용하여 양방향 통신을 하는 방식으로 보안과 통신 속도를 확보하는 방식을 사용한다고 한다.

우분투에 openssh-server 설치

가상머신을 켜고 터미널을 킨다음 openssh-server를 설치한다

sudo apt update
sudo apt install openssh-server -y

설치 완료된 모습

포트포워딩 설정

VirtualBox 관리자에서 실행중인 ubuntu2004 우클릭 / 설정 

네트워크 / 포트 포워딩 클릭

우측에 + 아이콘을 눌러서 항목을 추가하고 호스트포트와 게스트포트에 22를 작성해준다

포트번호 22는 ssh 의 기본 포트번호이다

이후 확인을 눌러서 나가준다

MobaXterm 설치

MobaXterm은 원격 시스템에 접속하고 작업을 수행할 때 사용하는 다기능 원격 데스크톱 및 터미널 소프트웨어이다

사용이 편하고 빠르다. ssh 세션 연결 시 자동으로 SFTP 창이 열려 파일 전송이 편한 장점이 있다

아래 링크에 가서 MobaXterm을 다운로드한다

MobaXterm 설치 공식 링크

 

MobaXterm free Xserver and tabbed SSH client for Windows

The ultimate toolbox for remote computing - includes X server, enhanced SSH client and much more!

mobaxterm.mobatek.net

좌측은 설치가 필요 없는 버전 / 우측은 설치가 필요한 버전이다

취향에 따라서 선택하면 되는데 설치가 필요한 버전으로 진행하겠다

다운받은 폴더의 압축을 풀어주고 msi 확장자 파일을 실행시켜준다

Next

동의하고 Next

원하는 설치 경로 입력하고 Next

Install

MobaXterm ssh 연결

MobaXterm을 실행해보자

Session 선택

SSH / Remost host: localhost 입력 / Specify username 체크, 우분투 유저 이름 입력 / OK

Accept

Ubuntu 해당 유저 비밀번호 입력 (입력해도 아무것도 안보임 주의)

비밀번호를 저장할 거냐는 입력창이 나오면 원하는 걸로 선택

ssh 접속 완료

'Linux > 환경설정' 카테고리의 다른 글

가상머신(Virtual Box)에 우분투(Ubuntu) 올리기  (2) 2024.12.09

Virtual 박스 설치

아래 링크로 가서 VirtualBox를 다운로드 한다

https://www.virtualbox.org/wiki/Downloads

 

Downloads – Oracle VirtualBox

This VirtualBox Extension Pack Personal Use and Educational License governs your access to and use of the VirtualBox Extension Pack. It does not apply to the VirtualBox base package and/or its source code, which are licensed under version 3 of the GNU Gene

www.virtualbox.org

원하는 옵션을 선택해준다

설치 완료된 모습

Ubuntu 설치

빠른 설치를 위해서 미러사이트에서 다운로드를 하자

미러사이트: 특정 웹사이트나 서버의 복제본으로, 원본 사이트와 동일한 데이터를 제공하는 사이트

공식 Ubuntu 배포

 

Ubuntu 20.04.6 LTS (Focal Fossa)

Select an image Ubuntu is distributed on three types of images described below. Desktop image The desktop image allows you to try Ubuntu without changing your computer at all, and at your option to install it permanently later. This type of image is what m

releases.ubuntu.com

카이스트 미러

 

Index of /ubuntu-cd/20.04.6/

 

ftp.kaist.ac.kr

iso 파일을 받아주자

Virtual Box에서 Ubuntu 설치 

VirualBox 실행 / 새로 만들기 클릭

이름을 ubuntu2004 로 설정해주면 자동으로 아래 설정이 바뀐다

아래는 권장 사항

설정을 다하고 완료를 눌러준다.

설정으로 들어간다

저장소 / Choose a Disk File에서 아까 다운 받은 iso 파일을 추가한다

시작 버튼을 누르고 기다리면 설치가 시작된다

원하는 언어를 선택하고 Install Ubuntu를 클릭

원하는 키보드 레이아웃을 선택하고 Continue

Continue

Install Now 클릭

Continue 클릭

Continue 클릭

원하는 이름과 암호, 로그인 옵션을 선택하고 Continue 클릭

설치 중... 5분 정도 소요됐음

재시작해주자

Enter를 눌러주자

설치 완료

설치가 완료되었다!

추가 설정

안사요

Ctrl + Alt + t 를 눌러 터미널을 열고 apt를 업데이트 해주자

비밀번호도 쳐서 진행해주자

sudo apt update

 

추가 VirtualBox 설정 - 해상도

창크기가 마음에 안들어서 창 크기를 키우면 Ubuntu 창의 해상도는 변경되지 않는 것을 볼 수 있다

공식 홈페이지에서 VirtualBox Extension Pack을 설치해주자 (Education 전용)

다운링크

해당 파일 실행

스크롤 내리고 동의합니다 클릭

실행되고 있는 가상머신 터미널에서 아래 명령어를 쳐서 종료해준다

sudo shutdown now

VirtualBox 관리자에서 설정 / 디스플레이 / 그래픽컨트롤러 옵션을 VBoxVGA로 변경

다양한 해상도에 대응하는 것을 확인할 수 있다

VirtualBox 확장기능 - VBox_GAs

공유폴더, 클립보드 공유, 드래그앤 드롭 등 가상 머신으로 Data를 쉽게 전송할 수 있음

VirtualBox 상단 장치/ 게스트확장 CD 이미지 삽입

메세지 박스가 뜨면 Run 클릭

안뜰 경우 좌측에 VBox_GAs 클릭 / 우측 상단 Run Software 클릭 하면 메시지 박스 확인

Authenticate 해주자

성공적으로 설치가 되면 sudo reboot를 통해 다시 껏다 켜주자

sudo reboot

공유폴더 설정하기

home 경로에서 폴더를 하나 만들어주자

좌측 폴더 아이콘 / home / 우클릭 / New Folder

파일이름은 원하는 폴더명으로 해주자. 나는 win으로 설정하였다.

현재 사용자 이름은 "hyndrome"이므로 만든 경로는 "/home/hyndrome/win" 이다.

생성된 모습

혹은 git bash 명령어에 익숙하다면 해당 경로에서 mkdir을 사용하여 폴더를 생성할 수 있다

mkdir <경로이름>

윈도우로 돌아가서 원하는 경로를 생성하고 임시로 메모장 폴더를 생성해보자

나는 C:\ubundtu2004 경로에 txt 파일을 하나 만들어주었다

VirtualBox 상단의 장치 / 공유폴더 / 공유 폴더 설정 클릭

폴더+ 아이콘을 눌러서 폴더 경로와 마운트지점을 위 설정대로 작성 자동마운트, 항상 사용을 체크 / 확인 / 확인

Authenficate하고 들어가면 파일이 있는 것을 확인할 수 있음

드래그앤드롭으로 파일 공유

VirtualBox 상단 장치 / 드래그 앤 드롭 / 양방향 클릭

해당 설정을 할 경우 window <-> ubuntu 로 파일을 드래그해서 옮길 수 있다 (몰론 버그도 있다...!)

클립보드 공유

VirtualBox 상단 장치 / 클립보드 공유 / 양방향 클릭

해당 설정을 할 경우 window <-> ubuntu 에서 클립보드에 복사된 내용을 적용할 수 있다

+ Recent posts