ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 서버 기술 기초 요약 - 리눅스 쉘 사용법 이해 1
    CS지식/운영체제 2022. 4. 30. 19:48

    리눅스 파일시스템 및 사용자 관리

     

    리눅스와 파일

    • 모든 것은 파일이라는 철학을 따름
      • 모든 인터렉션은 파일을 읽고 쓰는 것처럼 이루어져 있음
      • 마우스, 키보드와 같은 모든 디바이스 관련된 기술도 파일과 같이 다루어짐
    • 파일 네임스페이스
      • A드라이브(A:/), C드라이브(C:window) X
      • 전역 네임스페이스 사용
        • /media/floofy/dave.jpg
        • root 디렉토리부터 / 폴더 / 폴더 / 파일명
        • 전테 파일이 root 폴더 하위에 놓여지게 된다.

     

    리눅스 에서는 하드웨어 같은 것도 모두 파일과 같이 처리를 한다. 즉,  파일을 다루는 인터페이스로 모든 하드웨어를

    다룬다. => 파일의 특징 : 뭔가를 읽고 쓸 수가 있다.

     

    쉘 종류

    • 쉘(shell) : 사용자와 컴퓨터 하드웨어 또는 운영체제간 인터페이스
      • 사용자의 명령을 해석해서, 커널에 명령을 요청해주는 역할
      • 관련된 시스템콜을 사용해서 프로그래밍이 작성되어 있다.

    참고

    https://dodote10.tistory.com/66?category=995235 

     

    커널과 쉘

    사용자가 입력한 명령어는 일려의 과정을 거쳐 하드웨어를 제어하게 된다. 사용자가 명령어를 작성하고 조작하기 까지 이 사이에는 몇 가지의 과정을 거쳐서 수행을 하게 되는데, 명령어를 입

    dodote10.tistory.com

     

    운영체제라는 것은 하드웨어를 제어하는 프로그램이다. 운영체제는 사용자에게 명령을 받는다. 이 과정을 원활이 수행하기 위해서 인터페이스 프로그램으로 만들어 진 것이(보통 운영체제에서 제공을 한다.) shell이다.

     

    보통 CLI shell은 이름이 있다. 여러가지 프로그램이 많다는 의미이다.

     

    쉘 종류

    • Bourne - Again Shell (bash) : GNU 프로젝트의 일환으로 개발됨, 리눅스 거의 디폴트임
    • Bourne Shell (sh) 
    • C Shell (csh)
    • Korn Shell (ksh) : 유닉스에서 가장 많이 사용됨

     

    리눅스 기본 명령어 정리

    • 리눅스 명령어는 결국 쉘이 제공하는 명령어
    • 리눅스 기본 쉘이 bash 이르로, bash에서 제공하는 기본 명령어를 배우는 것

     

    whoami : 로그인한 사용자 ID를 알려줌

     

    # whoami
    root

     

    clear : 앞서 사용한 명령어가 지워진다.

     

    리눅스나 유닉스 계열은 컴퓨터를 한 대 놓고, 여러명이 로그인을 해서 동시에 작업하는 것에 특화된 운영체제이기도 하다. =>  다중 사용 운영체제

     

    그래서 login을 해서 들어가면 자신의 id가 있다. 원래는 [ip주소]만을 가지고 접속을 한다. 하지만 실습은 ssh라는 특별한 기능을 사용해서 (ubuntu@[ip주소]) ubuntu라는 id로 접속을 하는 것이다. ssh 접속은 key 파일을 가지고 접속을 하는 것 이므로, 별도의 password가 필요하지는 않다.

     

    윈도우 같은 경우는 슈퍼 관리자가 존재한다. 따라서, 관리자 권한으로 실행시키기 같은 것이 존재한다. 윈도우는 보통은 개인 PC이기 때문에 자신이 로그인하는 계정이 슈퍼 관리자 이다. 그러면 유니스/리눅스 계열에는 슈퍼 관리자가 따로 있을까? O

     

    root가 기본적인 id로 제공이 되고, 이 root가 바로 슈퍼관리자 id이다. 윈도우와 달리 유닉스/리눅스 계열에서는  root로 로그인 해서 뭔가 작업을 하지는 않는다. 왜냐하면 아무래도 다중 다용자가 사용하는 시스템이고, 사실을 안정성이 굉장히 높아야 하는 시스템인데 root는 모든 권한을 다 가지고 있으므로, 어떤 명령을 하더라도 바로 실행이되고 복구가 안될 가능성이 높다.

     

    sudo 명령어 : root (관리자)권한으로 실행하기

    • root 계정으로 로그인 하지 않은 상태에서 root 권한이 필요한 명령을 실행할 수 있도록 하는 프로그램
    • 기본 사용법
      • sudo 명령어
      • 사용 예)  sudo apt-get update

    리눅스에는 패키지가 있고 그 중에서 실습에서는 ubuntu라는 패키지를 사용하는 것이다. package는 여러 프로그램의 조합이라고 보는 것이 적당하다. 근데 그 package속의 각각의 프로그램들은 수시로 update가 된다. 그리고 그 각가의 update된 프로그램을 어딘가에 저장해 둔다.

     

    sudo apt-get update 명령은 각각의 패키지가 저장되어 있는 서버에서 package들의 최신정보를 update하는 명령이다.

    이 update에서 update된 정보를 기반으로 해서 새로 프로그램을 설치한다 던지 아니면 update된 최신 버전을 설치한다 던지 할때, sudo apt-get update 명령으로 저장된 정보를 활용을 한다.

     

    pwd : 현재 디렉토리 위치

    # pwd

     

    ls : 파일 목록 출력

    # ls -al
    -al : 숨김 파일도 보여준다.

     

    리눅스와 권한

    • 운영체제는 사용자/리소스 권한을 관리
    • 리눅스는 사용자/그룹으로 권한을 관리
    • root는 슈퍼관리자
    • 파일마다 소유자, 소유자 그룹, 모든 사용자에 대해
      • 읽고,쓰고, 실행하는 권한을 관리

    참고

    https://dodote10.tistory.com/147

     

    클라우드 컴퓨팅 설정 - 리눅스 설치

    EC2(서버)생성 Elastic IP(탄력적 IP , 고정 IP) 생성 자기 PC에서 EC2(서버)접속 - 맥 , 윈도우 참고 : UNIX 계열 시스템에서 파일 권한 사용자 소유자 : 소유자에 대한 권한 그룹 : 소유자가 속해 있는 그룹

    dodote10.tistory.com

     

     

    cat : 파일 보기

    # cat mysql.cnf
    mysql.cnf 파일 내용이 출력됨

     

    해당 파일에 어떤 내용이 들어 있는지 확인 할려면  윈도우 에서는 editer를 사용한다. 리눅스 계열에서는 editer가 굉장히 복잡하다.

     

    rm : 파일 및 폴더 삭제

    • 주로 사용하는 명령어 형태 : rm -rf디렉토리명
    • r옵션 : 하위 디렉토리를 포함한 모든 파일 삭제
    • f옵션 :  강제로 파일이나 디렉토리 삭제
    # rm mysql.cnf

       기본적으로 리눅스에는 휴지통이 없다.

     

    [출처 - https://www.inflearn.com/course/%EC%84%9C%EB%B2%84%EA%B8%B0%EC%88%A0-%ED%92%80%EC%8A%A4%ED%83%9D-3/dashboard]

    댓글

Designed by Tistory.