[네이버클라우드] AIaaS 개발자 과정/Linux

[네이버클라우드캠프] 2023.4.25 Linux(1) - 로그인과 기초 사용법, 절대경로와 상대경로

_꼬마돌 2023. 4. 29. 15:58
반응형

로그인과 기초 사용법

  • 로그인의 의미
    Computer System에게 사용을 허가받는 것.
    계정 (ID, Pssword 필요)

    리눅스 접속 프로그램 PuTTY, SecureCRT 등의 터미널 프로그램을 이용하여 네트워크에 연결된 어디서든 리눅스 서버에 접속한다.

 

  • 날짜와 시간 확인 등 명령어
$date 현재 날짜와 시간 보기
$cal 이번 달 달력 보기
$cal 2023 2023년 달력 보기
$cal 12 2023 2023년 12월 달력 보기
$logname 자신의 최초 로그인 계정 출력
$hostname 컴퓨터의 이름을 출력하거나 설정
hostname 명령어를 실행하면 현재 시스템의 호스트 이름이 출력됨
$who 로그인 정보 표시
$whoami 자신의 현재 로그인 계정 출력
$w 현재 로그인한 사용자와 다른 사용자들의 로그인 정보를 출력
$arch 현재 시스템의 프로세서 아키텍쳐를 출력
$uname -r 현재 커널의 버전을 출력
'uname'은 unix name의 약자이며 커널과 관련된 정보를 출력하는 데 사용됨
'-r'은 커널의 버전 정보 중에서도 릴리즈 버전만을 출력하도록 지정하는 옵션
$df -h 디스크 사용 현황을 보여줌 (파티션 정보)
'df'는 disk free의 약자, '-h'는 사람이 읽기 쉬운 형식으로 출력하도록 지정하는 옵션
$dpkg -l Debian 패키지 관리 시스템을 사용하는 패키지들의 목록을 출력
'dpkg'는 Debian Package의 약자이며, Debian 리눅스에서 패키지를 설치, 업그레이드, 제거하는 데 사용됨.
'-l' 은 시스템에 설치된 모든 패키지를 나열하도록 지정하는 옵션
$echo ~ 현재 사용자의 홈 디렉토리 경로를 출력 (나의 집은 어디인가?)
'echo' 명령어는 인자로 전달된 문자열을 출력하는 데 사용됨
'~' 는 현재 사용자의 홈 디렉토리를 나타내는 약속된 기호
$echo $HOME echo ~ 와 동일

*$는 일반 사용자
*#은 root 사용자 (관리자)
 
 

  • 파일 목록 보기 - ls
$ls List의 약어. 현재 디렉토리의 파일 및 디렉토리 목록을 표시.
'$man ls'를 입력하여 ls 명령의 메뉴얼 페이지를 확인할 수 있다.
$ls / root 디렉토리의 파일 및 디렉토리 목록을 출력.
시스템에서 사용 가능한 모든 파일 및 디렉토리를 나열한다.
$ls /etc 시스템 구성 파일이 저장된 디렉토리인 /etc 디렉토리의 파일 및 디렉토리 목록을 출력.
이 디렉토리에는 시스템 설정 파일이 포함되어 있으며, 이 파일들은 시스템 구성 및 관리에 필요한 정보를 저장한다.
$ls -l /etc /etc 디렉토리의 파일 및 디렉토리 목록을 "long format"으로 출력.
이 명령은 파일의 권한, 소유자, 그룹, 파일 크기, 수정 날짜 및 시간 등과 같은 자세한 정보를 출력한다. 
$ls -al /etc /etc 디렉토리의 파일 및 디렉토리 목록을 "long format"으로 출력하면서, 숨겨진 파일이나 디렉토리를 포함하여 모든 파일을 나열.
$ls -a -l /etc $ls -al /etc 명령과 동일.
리눅스 명령어에서 옵션의 순서는 중요하지 않으므로, 두 명령어는 동일한 결과를 출력함.
$ls -ld /etc /etc 디렉토리의 파일 및 디렉토리 정보를 "long format"으로 출력하지만, 실제로는 /etc 디렉토리 자체에 대한 정보만 출력.
$ls /etc /usr /etc 디렉토리와 /usr 디렉토리에 포함된 파일과 디렉토리 목록을 출력.
이 명령을 실행하면 /etc 디렉토리와 /usr 디렉토리에 포함된 파일과 디렉토리 목록이 각각 출력되며, 각 목록은 구분되어 출력된다.
$ls ~ 현재 로그인한 사용자의 홈 디렉토리에 포함된 파일과 디렉토리 목록을 출력.
$ls . 현재 작업 디렉토리에 포함된 파일과 디렉토리 목록을 출력.
$ls $HOME '$ls ~' 명령과 대부분의 경우에 동일한 결과를 출력하지만, 세팅된 값에 따라 차이가 있을 수 있다.
$ls -F /etc /etc 디렉토리에 있는 파일과 디렉토리 목록을 출력하면서, 파일과 디렉토리를 구분하기 쉽게 표시하는 기능을 가진 ls 명령.
$ls -r /etc /etc 디렉토리에 있는 파일과 디렉토리 목록을 출력할 때, 파일의 역순으로 풀력하는 ls 명령.

 

  • 옵션
-a ls 명령에서 -a 옵션은 all의 약자로, 숨김 파일 및 디렉토리도 출력하도록 지정하는 옵션.
숨겨진 파일/디렉토리는 .으로 시작함
예) .bashrc, .confif
-A ls 명령어에서 -A 옵션은 현재 디렉토리 . 과 상위 디렉토리 .. 를 제외하고 숨겨진 디렉토리와 파일을 포함한 모든 파일 및 디렉토리를 나열하도록 지정하는 옵션. 
-l ls 명령에서 -l 옵션은 파일의 상세 정보를 출력하도록 지정하는 옵션.
-t ls 명령에서 -t 옵션은 파일을 수정 시간 순서대로 정렬하여 출력하는 옵션. 수정한 시간이 가장 최근인 것부터 출력됨.
-S ls 명령에서 -S 옵션은 파일 크기 순서대로 정렬하여 출력하는 옵션. 파일 크기가 가장 큰 것부터 출력됨.
-Sr ls 명령에서 사용할 수 있는 옵션 중, -S와 -r 두 가지 옵션을조합한 것. 파일 크기가 큰 것부터 작은 것으로 정렬된 결과를 역순으로 출력.
-r ls 명령에서 -r 옵션은 파일 목록을 역순으로 출력하는 옵션.
-R ls 명령에서 -R 옵션은 하위 디렉토리의 파일 목록까지 모두 출력하는 옵션.
-h ls 명령에서 -h 옵션은 파일 크기를 인간이 이해하기 쉬운 형식으로 출력하는 옵션.
-d ls 명령에서 -d 옵션은 디렉토리를 나타내는 경우에도 해당 디렉토리 내부의 파일 목록을 보여주지 않고, 해당 디렉토리 자체의 정보만 보여주는 옵션. 디렉토리 내부의 파일 목록 대신, 해당 디렉토리의 정보(권한, 소유자, 그룹 등)만 출력됨.
-F ls 명령에서 -F 옵션은 각 파일의 종류를 나타내는 문자를 출력하는 옵션. 디렉토리인 경우에는 /, 실행 파일인 경우에는 *가 추가로 출력됨.

* 디렉토리 (Directory): 파일을 담고 있는 폴더로, 다른 파일이나 디렉터리를 포함할 수 있는 파일 시스템 객체.
* 파일 (File): 데이터를 저장하는 기본적인 저장 매체.
 
 

  • 파일 내용 보기 - nl, cat, head, tail
$cat /etc/passwd /etc/passwd 파일의 내용을 출력하는 명령어
$cat -n /etc/bash.bashrc /etc/bash.bashrc 파일의 내용을 출력하며, 모든 행마다 행 번호를 출력하는 명령어
$cat -b /etc/bash.bashrc /etc/bash.bashrc 파일의 내용을 출력하며, 비어있는 행은 제외하고 행 번호를 출력하는 명령어.
$nl /etc/bash.bashrc cat -b와 동일하게 비어있는 행은 제외하고 행 번호를 출력하는 명령어.
$tail /etc/services /etc/services 파일의 마지막 10줄만 출력하는 명령어.
$head /etc/services /etc/services 파일의 첫 10줄만 출력하는 명령어.
$head -5 /etc/services /etc/services 파일의 첫 5줄만 출력하는 명령어.
-숫자 형식의 옵션을 추가하면 원하는 양만큼 출력할 수 있다.
tail 명령어에도 동일하게 적용.

* 리눅스 명령어 형식
명령어 [option] ... 인수1 인수2 인수n
하나의 명령어에 다양한 옵션들이 존재한다. 명령어마다 사용법이 조금씩 다를 수 있으며 shell 환경마다 차이가 있다. 명령어가 가장 앞에 나온다.
 
 

  • PATH (경로)
절대경로 / 부터 시작
상대경로 pwd 가 기준
pwd: 현재 작업중인 디렉토리를 확인할 수 있는 명령어
         print working directory
. 현재 디렉토리
.. 부모 디렉토리
~ HOME 디렉토리
/ 최상위 root 디렉토리

* 경로 이동 명령어 - CD (change directory)
예) $cd /usr/local/share - usr 디렉터리 안의 local 디렉토리 안에 있는 share 디렉터리로 이동하겠다는 명령어.
 
 

  • 절대경로 상대경로

  • 절대경로: pwd와 관계없이 최상위 디렉터리(/)부터 경로를 명시하는 방법.

예시) 위 그림에서 local 디렉터리 밑에 있는 lib 디렉터리로 절대경로를 이용하여 이동하려 한다면

$cd /usr/local/lib

이렇게 cd 이동 명령어 뒤에 lib 디렉터리의 상위 디렉토리들을 순서대로 나열해주면 된다. 상위 디렉토리부터 순서대로 모두 나열하기 때문에 현재 작업중인 디렉토리 (pwd)와 무관하다.
 
 

  • 상대경로: pwd를 기준으로 현재 위치부터 경로를 명시하는 방법.

예시) 현재 pwd를 local 디렉토리 밑에 있는 lib 디렉터리로 가정하고 바로 옆 etc 디렉토리로 상대경로를 이용하여 이동하려 한다면

$cd ../etc

현재 pwd (lib)에서 .. (부모디렉터리, local)로 올라갔다가 local 디렉토리안에 있는 etc로 가겠다는 명령을 하면 된다. 상대경로는 현재 작업중인 디렉토리를 기준으로 하기 때문에 해당 디렉토리 안에서만 유효하다.
 
 

  • 리눅스 디렉터리
/bin 실행 파일 모음 /usr/bin도 같음. binary
/sbin 관리 명령어 모음
/etc 설정 파일 모음
/var 가변 디렉터리 variable
/usr 설치된 파일
/root root HOME
/home 일반 사용자의 기본 HOME
/tmp 임시 디렉터리 temporary
/mnt mount 디렉터리
/dev 장치 파일 모음 device
/proc 프로세스 상태, 하드 디스크과 관련 없음. 메모리 상태 process
/lost+found 백업, 복구를 위한 디렉터리

반응형