ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 우분투 리눅스 사용법
    Ubuntu 2021. 8. 30. 16:08
    728x90
    우분투/리눅스란? 

    리눅스는 유닉스(UNIX)를 기반으로 개발된 operating system이다. 안드로이드, WIndows, iOS는 일반 사용자, 즉 end user가 사용하게 편리하게 만든 운영체제임. 때문에 가능한 어려운 조작 없이 GUI(<-> CLI. Command Line Interface)를 통해 직관적으로 표현하고자 함. 리눅스도 버전에 따라 GUI로도 제공하지만 메인으로는 CLI로 다루도록 함. 서버도 컴퓨터이기 때문에 특정 OS가 들어가야 함. 윈도우는 정품을 구매해야 하고 맥OS는 맥에서만 돌아가기 때문에 오픈 소스인 리눅스 사용! 

     

     

    리눅스의 특징

    • 유닉스 기반

    리눅스 커널 자체가 유닉스의 미닉스(Minix)를 참고하여 개발됨. 기존의 유닉스는 높은 하드웨어 스펙을 기반으로 복잡하고 큰 네트워크 시스템을 위해서 만들어진 운영체제. 하지만 리눅스는 여기에서 명령어 체계를 바꾸어서 일반인들이 보다 사용하게 쉽게 만들었음. 

    • 다중 사용자와 멀티 태스킹 지원

    리눅스는 다중 사용자와 멀티 태스킹 지원. 때문에 보안성이 높은 파일을 관리하기 용이하여 서버에서 많이 쓰임.

     

    • 자유 소프트웨어 (오픈소스)

    리눅스는 자유 소프트웨어 라이센스를 가짐. 이 말은 누구나 소스 코드를 이용하고 수정해서 재배포할 수 있다는 것이며, 다른 운영체제와 가장 큰 차이점임. 그리고 이러한 리눅스 커널과 소프트웨어 등을 모아서 패키지 관리 프로그래밍으로 구성한 것을 리눅스 배포판이라고 함.. 수많은 리눅스 배포판들은 서로 다른 목적과 환경에서 저마다 다른 옷을 걸쳤지만, 리눅스 커널이라는 하나의 심장을 공유하고 있음. 서버용, 모바일용, PC용 리눅스로 다양하게 파생되고 있음. 대표적으로 안드로이드는 리눅스를 모바일 OS로 개조한 것. 

     

    그렇다면 우분투는 무엇인가? 

     

    우분투는 데비안 GNU/리눅스를 기반으로 만들어졌으며 고유한 데스크탑 환경을 사용하는 리눅스 배포판임. 즉 앞서 말한 리눅스의 배포판과 같이, 우분투는 리눅스의 여러 배포판 중 하나인 데비안에서 또 한 번 파생된 배포판임.

     

    우분투의 특징

    • 개인용, 데스크탑 환경에 최적화

    대부분의 리눅스 배포판들이 서버용으로 사용되고 있는 것에 반해, 우분투는 개인 사용자와 데스크탑 환경에 최적화되도록 사용자 편의를 중점으로 개발되고 있음.

     

    • 자유 소프트웨어에 기반

    앞서 소개한 리눅스의 특징을 상속하여 자유 소프트웨어에 기반하기에 누구나 무료로 다운 받아 사용할 수 있음

     

     

    참고: https://brunch.co.kr/@uxstar/7

     

    우분투(ubuntu)란 무엇인가? 1편

    우분투의 철학과 역사 | 그동안 PC용 리눅스(Linux) 운영체제로만 알려져 왔던 우분투(ubuntu). 그런데 2013 CES에서 캐노니컬(Canonical)이 우분투 운영체제가 탑재된 스마트폰과 태블릿 PC를 소개하면서,

    brunch.co.kr

    https://www.yalco.kr/35_linux/

     

    가장 쉽게 배우는 리눅스

    어려운 프로그래밍 개념들을 쉽게 설명해주는 유튜브 채널 '얄팍한 코딩사전'. 영상에서 다 알려주지 못한 정보들이나 자주 묻는 질문들의 답변들, 예제 코드들을 얄코에서 확인하세요!

    www.yalco.kr

     

     

    우분투 설치 및 사용 

     

    개발하기에 Windows보다 Mac이 낫다고들 하는 이유가 바로 "리눅스와의 호환성" 때문임. 리눅스와 맥 OS 모두 유닉스라는 운영체제로부터 나왔기 때문에 맥의 터미널 명령어들이 리눅스와 공통된 것도 많고, 리눅스에서 실행할 소프트웨어들을 맥에서 일부 바로 돌려볼 수 있기 때문에, 맥이 유리한 점이 많았음. 

     

    하지만, 윈도우에서 WSL이라는 것을 발표한 이후, 아예 윈도우에서 리눅스를 타사 소프트웨어 사용 없이 바로 설치하여 CLI로 돌려볼 수 있게 되었음. 

    https://www.yalco.kr/_01_install_wsl/

    리눅스 명령어

    디렉토리 관련 명령어

    디렉토리 목록 확인

    $ ls
    $ ls -al : 감춰진 파일은 .이 붙는다. a 옵션을 사용하면 해당 파일을 확인할 수 있다.
    $ ls -l

    새 디렉토리 생성

    $ mkdir [디렉토리명]
    $ mkdir -p [디렉토리명/디렉토리명/디렉토리명...] : 여러 디렉토리 생성

    디렉토리 이동

    $ cd [디렉토리명]
    $ cd .. : 부모 디렉토리로 이동

    tip) 디렉토리명이 너무 길 때, 조금만 쓰고 tab키 누르면 자동완성

    디렉토리 삭제

    $ rm -r [디렉토리명]
    : -r (remove directories and their contents recursively; 해당 디렉토리 아래 있는 내용들도 삭제한다.)

    파일 관련 명령어

    비어있는 파일 생성

    $ touch [파일명]

    파일 삭제

    $ rm [파일명]

    파일 복사

    $ cp [파일위치 및 파일이름] [목적지 파일위치 및 파일 이름]

    파일 이동 (파일 이름을 바꿀 때에도 사용)

    $ mv [파일위치 및 파일이름] [목적지 파일위치 및 파일 이름]
    $ mv [원래 파일 이름] [바꾸고 싶은 파일 이름]

    파일 만들고 편집 (nano 에디터)

    $ nano [파일명] : 새 파일 작성 or 존재하는 파일 수정

    파일 내용 보기

    $ cat [파일명]

    파일 위치 검색

    $ locate *.log : (확장자가 .log인 파일 찾기)
    : 디렉토리를 뒤지는게 아니라 데이터베이스(mlocate)를 뒤져서 찾는다.

    $ find . *.log : 디렉토리 뒤짐

    $ whereis ls
    $ whereis rm
    : 실행파일 위치 찾기

    현재 위치 확인

    $ pwd

    명령창 내용 삭제

    $ clear

    명령어 도움말 확인

    $ [명령어] --help
    $ man [명령어] : /[찾고싶은단어] 사용해서 단어찾기 가능, 그 상태로 n을 누르면 다음 단어 찾기

    패키지 매니저 (Package Manager)

    • 기본으로 내장되어 있는 패키지(프로그램)가 아닌 새로운 패키지(프로그램)를 설치하려고 할 때 도와주는 소프트웨어 (안드로이드의 구글플레이, iOS의 앱스토어 같은 ..)
    • apt, yum 등이 있음.

    패키지 목록 업데이트

    $ apt-get update

    • 패키지 매니저를 통해 설치할 수 있는 패키지 목록들을 업데이트한다. (설치하기전에)
    • 패키지가 설치되는게 아니라 패키지 목록들이 업데이트 되는 것.

    패키지 찾기

    $ apt-cache search [패키지명]

    • 저장된 패키지 목록 중에 해당 패키지 찾기..?
    • 관련된 패키지 목록까지 나온다.

    패키지 설치

    $ apt-get install [패키지명]

    패키지 업그레이드

    $ apt-get upgrade
    $ apt-get upgrade [패키지명]

    패키지 삭제

    $ apt-get remove [패키지명]

    패키지를 설치하는 순서 (항상 이 순서를 따르는게 좋음.)

    1. 패키지 목록 업데이트 (apt-get update)
    2. 패키지 설치 (apt-get install)

    다운로드

    파일을 다운로드 (wget 사용)

    $ wget -O [저장할 파일명] [다운로드 url]

    소스코드 다운로드 (git 사용)

    1. git 설치
      $ apt-get install git
    2. 소스코드 다운
      $ git clone [소스코드 url] [디렉토리명] : 명시한 디렉토리에 소스코드 다운받는다.

    why CLI?

    1. 순차적 실행 (using semicolon)
    ex) $ mkdir why; cd why

    • 언제 유용한가?
    • 하나하나의 명령들이 1000시간이 걸린다고 할 때, 명령어 하나하나씩 치는 것과 여러개를 한번에 치는 것은 차이가 있음.
      (여러 개 명령어를 한 번에 치면 알아서 마지막 결과만 나타남.)

    2. 파이프라인

    • 명령어의 연결
    • 어떤 프로세스의 출력을 다른 프로세스의 입력으로 . . .
    • 원하는 정보가 포함되어 있는 행을 출력
    • ex)
      $ grep linux linux.txt : 'linux'가 포함된 행 출력
      $ ls --help | grep sort : ls --help에서 'sort'가 포함된 행을 출력 (ls --help의 출력을 grep의 입력으로)
      $ ls --help | grep sort | grep file : ls --help에서 'sort'와 'file'이 포함된 행을 출력

    IO Redirection

    1. output
      $ ls -l > result.txt : result.txt 확인해보면 ls -l 출력물 담겨있음.
    2. error (에러 결과를 저장하려면? '2>' 를 사용한다. (standard error를 가리킴))
      ex) 해당 디렉토리에 rename2.txt가 없을 때
      $ rm rename2.txt 2> error.log : error.log에 에러 내용이 담겨있음.
    3. input
      $ cat hello.txt : cat의 cammand-line arguments로써 역할
      $ cat < hello.txt : hello.txt 내용을 standard input으로..
      $ head -n1 < linux.txt > one.txt : linux.txt 내용을 input, one.txt에 출력물을 저장

    디렉토리 구조

    • /bin: 사용자가 사용하는 명령어 모음
    • /sbin: 관리자가 사용하는 명령어 모음
    • /etc: 프로그램 설정을 관리하는 디렉토리
    • /etc/init.d: daemon의 목적을 가진 프로그램들 있음.
    • /var: 내용이 바뀔 수 있는 파일들 모음
    • /tmp: 임시파일들. 컴퓨터가 꺼지면 날아간다.
    • /home: 사용자들의 파일들이 저장되는 디렉토리
    • /lib: /bin과 /sbin에 있는 프로그램들이 사용하는 라이브러리 모음
    • /usr: 유저가 다운받은 프로그램들 저장..

    프로세스 관련 명령어

    프로세스 목록 확인

    $ ps

    백그라운드 프로세스 목록까지 확인

    $ ps aux
    $ ps aux | grep apache2 : 'ps aux'의 출력에서 apache2가 포함된 행 출력

    프로세스 강제 종료

    $ kill [pid]

    그 외 프로세스 목록 확인 명령어

    $ top
    $ htop (top과 비슷하지만, 시각적인 면에서 더 좋음)

    백그라운드 실행

    ex) nano 에디터 실행하다가 ctrl + z -> 백그라운드에서 돌아가도록 등록

    백그라운드로 돌아가는 프로그램 확인

    $ jobs
    : +가 붙어있는 프로그램 -> fg 실행했을 때, 실행되는 프로그램
    : -가 붙어있는 프로그램 -> fg 실행했을 때, + 다음으로 실행될 프로그램

    foreground로 돌아가기

    $ fg
    $ fg %번호 : 해당 번호 프로그램으로 돌아간다.

    백그라운드 프로그램 죽이기

    $ kill
    $ kill -9 %번호 : 강제종료

    daemon: 항상 실행되고 있다.

    테스트를 위해 apache2 웹서버 설치

    $ sudo apt-get install apache2

    설치 후 /etc/init.d에 가보면 apache2가 있다.

    apache2 켜기

    $ sudo service apache2 start

    잘 켜진지 확인

    $ ps aux | grep apache2

    apache2 끄기

    $ sudo service apache2 stop

    꺼져있는지 확인

    $ ps aux | grep apache2 : 목록에 나타나지 않음.

    cron (정기적으로 실행시키고 싶은 작업이 있을 때)

    $ crontab -e : 처음 실행했을 땐, 에디터 골라야 함

    m h dom mon dow command

    • m: 분 주기
      ex) 10: 매 시간 10분에 한 번
      ex) */1: 1분에 한 번
    • h: 시간 주기
      ex) *: 시간에 상관 없이
      ex) 1: 매 1시에
    • dom: day of month
      ex) 24: 매 달 24일에 한 번
    • mon: month
    • dow: day of week (요일)
    • command: 주기적으로 실행할 명령어

    테스트
    1. command 자리에 date >> date.log 입력 (>>는 해당 파일 아래로 쭉 출력결과가 쌓임)
    2. $ tail -f date.log (꼬리에 새로운 텍스트가 추가 될 때, 실시간으로 표시해줌.)

    에러가 난 경우도 로그로 남기는게 좋다.
    */1 * * * * date >> date.log 2>&1
    : 표준 출력을 date.log에 남기고 표준 에러가 발생하면 표준 출력으로 리다이렉션
    : date.log에 에러도 함께 저장됨

    단축키 만들기

    $ alias l='ls -al'
    -> l을 입력하면 ls -al의 출력이 나옴

    .bashrc 파일

    bash가 시작되었을 때 실행됨.

    다중 사용자

    $ id : 현재 접속한 계정의 정보 확인
    $ who : 이 컴퓨터에 누가 접속해있는가

    ~$로 끝나면 일반 사용자
    ~#로 끝나면 root 사용자

    sudo (super user do)

    • 리눅스는 다중 사용자 운영체제
    • 사용자마다 어떤 일에 대한 권한이 있음.
    • 중요한 일에 대한 권한은 super user(root)만 가지고 있음.
    • 따라서 super user의 권한이 필요할 때 sudo를 사용한다.
    • 직접 root계정에 접속해서 명령어를 실행 시킬 수도 있지만, 안전을 위해 일반 사용자로 로그인 후 sudo를 사용하도록 하자.

    사용자 추가

    $ sudo useradd -m [사용자명]
    -> /home에 가보면 사용자가 추가된 걸 볼 수 있음.
    -> 그러나, 이렇게 만들면 해당 계정에서 sudo 명령어를 사용할 수 없음.

    sudo 사용할 수 있도록 변경

    $ sudo usermod -a -G sudo [사용자명]

    비밀번호 설정

    $ sudo passwd [사용자명]

    로그인 (su 사용)

    $ su - [사용자명]

    permission (권한)

    $ ls -l
    -> -rw-rw-r-- 1 egoing egoing 0 Dec 4 23:19 perm.txt

    (1) type(2) access mode (r: read, w: write, x: execute)(3) owner(4) group

    -
    file: -, directory: d
    [owenr 권한]rw- [group의 권한]rw- [other의 권한 (!owner && !group)]r-- egoing egoing

    권한 변경 (chmod)

    u: owner
    g: group
    o: other (not owner, not group)
    a: all

    $ chmod o-r perm.txt
    : perm.txt파일의 other read 권한 삭제

    $ chmod o+r perm.txt
    : perm.txt파일의 other read 권한 허가

    execute

    $ nano hi-machine.sh

    #!/bin/bash echo 'hi hi hi hi'

    파일 실행 시도 1
    $ ./hi-machine.sh -> 허가 거부 뜸

    파일 실행 시도 2
    $ /bin/bash hi-machine.sh -> 실행됨

    owner 실행 권한 추가하기
    $ chmod u+x hi-mashine.sh -> 해당 파일 초록색으로 표시됨

    파일 실행 시도 3
    $ ./hi-machine.sh -> 실행됨

    directory

    • r 모드: 해당 디렉토리에 소속된 파일이나 디렉토리를 열람할 수 있는지?
    • w 모드: 해당 디렉토리 내부를 수정 할 수 있는지? (파일 생성, 수정, 삭제, 파일이름 변경 등)
    • x 모드: 해당 디렉토리로 들어갈 수 있는지?
    • chmod 명령어의 -R 옵션: 재귀적으로 해당 디렉토리 안에 있는 것들의 mode를 모두 바꾼다.

    Numerical permissions

    숫자의미영문으로 표현

    0 none ---
    1 execute only --x
    2 write only -w-
    3 write and execute -wx
    4 read only r--
    5 read and execute r-x
    6 read and write rw-
    7 read, write and execute rwx

    ex) $ chmod 111 perm.txt -> --x--x--x로 변경됨.

    '=' 사용

    추가/삭제 개념이 아니라 아예 바뀌는 것

    $ chmod a=r perm.txt -> owner, group, other read만 가능
    $ chmod a= perm.txt -> owner, group, other 아무 권한 없음.

    IP 주소 확인

    $ ip addr : 컴퓨터 IP 확인 (private ip)
    $ curl ipinfo.io/ip : ipinfo.io/ip 입장에서 접속된 ip (public ip)

    웹서버

    웹서버 설치 (apache2)

    $ sudo apt-get update
    $ sudo apt-get install apache2

    웹서버 시작, 중지, 재시작

    $ sudo service apache2 start
    $ sudo service apache2 stop
    $ sudo service apache2 restart

    $ sudo apt-get install elinks
    $ elinks http://10.0.2.15/ (컴퓨터 IP 입력) -> local 서버 접속

    웹서버의 설정

    /etc/apache2 에 아파치 설정파일 있음. (apache2.conf)
    웹서버가 어떤 storage에서 파일을 찾을 것인가는 설정파일에서 확인.
    default는 /var/www/html 인데, 설정 바꿔서 변경시킬 수 있음.
    이때 /var/www/html를 document root라고 부른다. (웹페이지를 찾는 최상위 디렉토리)

    웹서버의 로그 확인

    /etc/apache2/sites-enabled/000-default.conf 가보면 로그는 어디에 기록할지 명시해둔 부분이 있다. (/var/log/apache2)

    access.log: 누군가가 웹서버에 접속할 때마다 기록이 남겨짐.
    error.log: 에러 로그 확인 가능

    실시간으로 확인하려면?
    $ tail -f /var/log/apache2/access.log

    SSH

    • 다른 컴퓨터를 원격제어 할 때 사용
    • 클라이언트를 원격접속 시도하려는 컴퓨터, 서버를 원격접속 당하는 컴퓨터라고 한다면, 클라이언트 컴퓨터에는 ssh client 프로그램이 있어야하고 서버에는 ssh server 프로그램이 있어야 한다.
    • 오늘날 대부분의 유닉스 계열 시스템에서는 ssh 서버가 설치되어있기 때문에 설치할 필요가 거의 없다.
    • 원격 접속 시도
      $ ssh 계정명@접속아이피
      (처음 접속하면 진짜 접속할 건지 물어보는데 yes 하면 됨.)
    • 포트번호와 함께 접속 시도
      $ ssh -p 포트번호 계정명@접속아이피

    ssh 심화수업 - 비밀번호 입력없이 로그인하기

    접속을 시도하는 컴퓨터: 내 컴퓨터
    접속 대상이 되는 컴퓨터: 원격 컴퓨터

    원격 컴퓨터 내 컴퓨터의 공개키를 저장해두면, 원격 컴퓨터에 로그인 없이 (비밀번호 입력없이/인증 없이) 로그인 가능

    어떤 컴퓨터가 인증된 컴퓨터?
    원격 컴퓨터의 ~/.ssh/authorized_keys 파일에 들어있는 키 목록을 보고 판단한다. (authorized_keys 파일은 있을 수도 있고 없을 수도 있음.)

    원격 컴퓨터에 내 컴퓨터를 인증시키는 방법

    1. ssh 공개키 비밀키 만들기 [내 컴퓨터에서 실행]
      $ ssh-keygen
      Q. Enter file in which to save the key?: (저장되는 위치) 엔터
      Q. Enter passphrase: 비밀번호 쓰려면 입력하고 아니면 그냥 엔터
      ~/.ssh 들어가보면 id_rsa(ssh private key), id_rsa.pub(ssh public key)가 있음. (id_rsa는 절대로 비공개)
    2. authorized_keys 파일 끝에다가 내 컴퓨터의 id_rsa.pub 내용을 붙여넣는다. (ssh-copy-id 명령어를 사용하여 안전하게 붙여넣자.) [내 컴퓨터에서 실행]
      -> $ ssh-copy-id (원격 컴퓨터 계정)@(원격 컴퓨터 주소)
      -> 원격 컴퓨터의 비밀번호 입력
    3. 잘 붙여넣어졌는지 확인 [원격 컴퓨터에서 실행]
      $ cat ~/.ssh/authorized_keys
    4. 로그인 없이 로그인 시도 [내 컴퓨터에서 실행]
      $ ssh (원격 컴퓨터 계정)@(원격 컴퓨터 주소)
      -> 비밀번호 입력 없이 로그인 가능

    포트 (port)

    default port (기본적으로 쓰도록 약속)
    ex) 웹서버는 80, ssh 서버는 22

    • 각 서버들은 해당 포트에서 대기중이다. (listen)
    • 약 65000개의 포트가 있는데, 그 중에 1024개의 well-known 포트가 있다. (잘 알려진 포트)

    도메인과 DNS (Domain Name System)

    1. 사용자가 google.com 이라고 브라우저 주소창에 입력하면
    2. DNS 서버가 google.com 이름을 가진 IP를 찾아서 사용자 컴퓨터에 알려준다.
    3. 사용자 컴퓨터는 그 IP 정보로 google.com에 접속
    • /etc/hosts 파일: 아이피-도메인 명시해둔 것?
    • ex) hosts파일에 127.0.0.1 google.com 추가하고 브라우저에 google.com 이라고 입력했을 때, 127.0.0.1 웹서버와 매칭됨.
    • /etc/hosts에서 먼저 찾아보고, 찾아봤을 때 없으면, DNS 서버에서 찾고..
    • 만약 /etc/hosts에 있으면 DNS 서버는 관련없음.
    • /etc/resolv.conf -> nameserver 적혀있음.
    • $ host [도메인] -> 호스트 정보 나옴 (어떤 아이피로 연결되어 있는지)

    서브도메인

    • 하나의 도메인 구입으로 여러 도메인 사용할 수 있음.
    • ex) admin.egoing.ga, blog.egoing.ga, news.egoing.ga
    • 서로 다른 아이피를 가리키게
    • 하나의 도메인으로 여러 사이트를 운영!

    rsync

    동작방법 예시

    $ mkdir src
    $ mkdir dest

    src 디렉토리안에 파일 생성
    $ touch test{1..10}: test1~test10까지 생성됨.

    $ rsync -a src/ dest -> src 아래 있는 파일들이 dest 폴더안으로 복사된다.
    (a 옵션 : 아카이브 모드로 동작. 파일 뿐만 아니라 디렉토리도 복사되고, 권한과 같은 파일/디렉토리 속성이 바뀌면 반영되고, 변경사항들만 전송)

    dest 폴더 가서 test10 삭제
    $ rm test10

    $ rsync -av(더 자세하게 출력) src/ dest 실행 -> dest안에 있던 test10 다시 생김.

    src 폴더 가서 추가 파일 생성 후, rsync 해보면 src에서 만든 파일 만이 dest 안에 생성된다.

    컴퓨터와 컴퓨터 사이에 전송

    $ rsync -azP ~/rsync/src/ k8805@대상아이피:~/rsync/dest
    az: 압축한다.
    P: 전송되는 상황을 progress bar로 보여준다.

    암호화

    대칭적인 방식

    어떤 정보를 암호화/복호화 할 때 키를 사용하는데, 암호화 했을 때와 복호화 했을 때 같은 키를 사용한다면 대칭적인방식

    비대칭적인 방식

    • ssh-keygen으로 만든 private key, public key를 사용
    • 암호화 할 때에는 private key, 복호화 할 때에는 public key를 사용
    • private key, public key는 짝꿍이다.
    • 대표 주자: RSA

    RSA 동작방식

    1. ssh client로 ssh server에 접속하면
    2. ssh server는 랜덤한 키를 생성하여 client 컴퓨터에게 준다.
    3. ssh client는 id_rsa 파일(private key)이 있는지 찾는다. 있으면 그 파일을 이용해서 전달 받은 랜덤키를 암호화 시킨다.
    4. 암호화된 결과를 ssh server에게 전송
    5. ssh server는 authorized_keys에 저장된 공개키를 이용해서 전달받은 암호화된 파일을 복호화 한다.
    6. 복호화된 결과가 처음에 전달한 랜덤키와 같으면 인증 성공

     

    https://velog.io/@devyang97/Linux-%EB%AA%85%EB%A0%B9%EC%96%B4-%EC%A0%95%EB%A6%AC-Ubuntu-%EC%82%AC%EC%9A%A9

     

    [Linux] 명령어 정리 (Ubuntu 사용)

    디렉토리 목록 확인 ` $ ls ` ` $ ls -al ` ` $ ls -l ` 감춰진 파일은 .이 붙는다. a 옵션을 사용하면 해당 파일을 확인할 수 있다. 현재 위치 확인 ` $ pwd ` 새 디렉토리 생성 ` $ mkdir [디렉토리명] ` ` $ mkdir

    velog.io

    https://opentutorials.org/course/2598

     

    리눅스 - 생활코딩

    수업소개 인터넷과 함께 웹이 폭발적으로 성장하면서 저렴한 운영체제에 대한 수요가 폭발적으로 증가했습니다.  클라우드 컴퓨터가 등장하면서 이제 컴퓨터는 필요할 때 사용하고, 필요 없을

    opentutorials.org



    728x90
Designed by Tistory.