본문 바로가기

공부/리눅스

리눅스 1일차 (리눅스 사용자 인터페이스 및 명령어)

반응형


   사용자                       shell                            kernel               cpu 
ls (명령어) -> 명령어 해석(이진수로 변환) -> cpu에 명령내림 -> 명령동작

bash : 기본 쉘

쉘없이 처리하고 싶다면 ftp이용

 

기본적인 인터페이스 환경 이해.

- GUI (Graphic User Interface)

Xwindow (xwindows를 위한 function key 는 alt+f7)                                    

- text mode

리눅스는 Multi User System 으로 동시 접속이 가능하다.

alt+f1 ~ f6 까지 6개의 가상콘솔을 사용할 수 있다.
(* vmware에서는 ctrl+shift+alt+f1)

- 부팅시 디폴트 user interface를 GUI 와 text mode를 선택 지정할 수 있다.
( /etc/inittab 파일에서 지정한다)

* 계정

보안을 위해 로그인시 패스워드를 요구한다.

기본적으로 세가지 형태의 계정이 존재한다.

1. root - 관리자 계정 - 거의 모든 권한을 행사할 수 있다.

2. system 계정 - 시스템 운영에 사용되며 정상적인 로그인 불가

3. 일반사용자 계정 - 필요에 따라 일반사용자 계정을 만들고 로그인을 허락할 수 있다.

- 시스템 사용에 많은 제약을 받을 수 있는 권한을 가진다.

 

** 실습하기전에 실습계정을 하나 만든다

(useradd user1

passwd user1))

 

리눅스 명령어

(* 명령어는 대소문자를 철저히 구분한다)

명령어 형태

프롬프트  명령어 -옵션 인수

ex)

[lee@river lee]$ ls -l a.txt b.txt

명령어 옵션 인수의 기본 구분자는 스페이스 문자이며 다시 옵션과 인수의 구분은 - 문자의 유무에 따라 일반적으로 구분된다.

ls -l ; 여기서 -l 은 옵션ls l ; 여기서 l은 인수

리눅스 명령어는 크게 두 가지로 분류된다.

1. 셀 내장 명령어

*. shell - 명령어 해석기.

msdos 의 내부명령어와 유사.
셀에 포함되어 있는 명령어.
도움말보기는 help 명령어로

ex)

[lee@river lee]$ help cd

cd: cd [-L|-P] [dir]

Change the current directory to DIR.  
The variable $HOME is the    default DIR.  The variable CDPATH defines the search path for
 the directory containing DIR.  Alternative directory names in CDPATH    are separated by a colon (:).
 A null directory name is the same as    the current directory, i.e. `.'.  If DIR begins with a slash (/),    
then CDPATH is not used.  If the directory is not found, and the    shell option `cdable_vars' is set, then try the word as a variable    name.  If that variable has a value, then cd to the value of that    variable.  The -P option says to use the physical directory structure    instead of following symbolic links; the -L option forces symbolic links    to be followed.

[lee@river lee]$

* 똑같은 이름의 명령어가 셀 내장 명령어 및 외부명령어로 각각 존재하는 경우에는 경로명 없이 명령어를 입력하면 셀 내장 명령어가 실행된다.
명령어를 찾는 순서가 셀 내장 명령어가 먼저이다.

2. 외부 명령어

디스크에 존재하는 명령어

리눅스 명령어는 주로 bin 이라는 이름의 디렉토리에 존재한다.

대개의 실행파일 경로는 환경변수 PATH를 출력해보면 알수 있다.

전역/지역 변수는 프로그래밍, 운영체제 환경에서 동일하게 사용되는 개념입니다.

전역(환경)변수란..

컴퓨터가 시작될 때 환경을 불러들이는 변수들입니다.

즉, 모든 사용자에게 공통적으로 적용이 되는 변수들이지요.

전역 변수를 변경하고, 적용을 하게 되면 모든 사용자는 해당 설정으로 사용이 됩니다.

지역(사용자)변수란..

특정 사용자, 환경에 국한되어 사용되는 변수입니다.

컴퓨터가 시작되고, 특정 사용자가 환경을 설정하여 사용하는 변수들이지요..

부모 쉘 ---------------> 자식 쉘
          사용자 변수 상속O
          환경 변수 상속X



[root@river root]#

echo $PATH

/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:/usr/bin/X11:/usr/X11R6/bin:/root/bin

(PATH 환경변수 변경은 export PATH=경로명으로 재지정 할 수 있으며 로그인 시 자동으로 실행되는 profile 에 저장해

두지 않으면로그아웃 할 때 원래값으로 초기화 된다)

*. 도움말은 man 명령어로 출력해 볼 수 있다.

ex)

root@river root]# man ls

LS(1)                                 FSF                                LS(1)

NAME

       ls - list directory contents

  SYNOPSIS       ls [OPTION]... [FILE]...DESCRIPTION       

List  information  about  the FILEs (the current directory by default).   

Sort entries alphabetically if none of -cftuSUX nor --sort.       Mandatory arguments to long options are  mandatory  for  short  

options       too.       -a, --all              do not hide entries starting with .       -A, --almost-all              do not list implied . and ..       --author              

*. PATH

경로는 두 가지가 있다. 절대 경로 및 상대경로.

1. 절대 경로 - 파일 위치를 나타날 때 / 가 기준이 된다.

2. 상대경로  - 파일위치를 나타낼 때 현재디렉토리가 기준이 된다.

. : 현재디렉토리

.. : 부모디렉토리

ex)             

 /---os

|   +---linux

|   |   +---debian

|   |   +---redhat

|   +---windows

|   |   +---2000

|   |   +---xp

tree 구조의 예.

*. 디렉토리 관련 명령어

Is

list, 파일의 리스트를 보여준다. 도스의 dir과 비슷하다.    

ls [-옵션] [파일 또는 디렉토리]

자주 쓰이는 옵션은,    

-l 파일에 대한 긴 정보(파일 허가권, 소유자, 그룹, 크기, 날짜)를 준다.

 -a “.”로 시작하는 파일은 hidden 파일이다. 이 옵션을 사용하면 볼 수 있다.

 -t 가장 최근에 변경된 파일을 최근의 것부터 보여준다.    

-F 파일의 특성을 보여준다.

이름 뒤에 디렉토리면 /를 실행파일이면 *, 심블릭 링크된 파일이면 @를 붙여준다.    

-R 하위 디렉토리의 파일도 모두 보여준다.   

 

cd (change directory)

현재 작업 디렉토리 변경 명령어

cd . : 현재디렉토리로 이동 (아무런 변화 없음)

cd .. : 부모디렉토리로 이동

cd ../../ : 2단계 상위 디렉토리로 이동

cd : 현재 사용자 홈 디렉토리로 이동(bash shell에서)

cd ~ : 현재 사용자 홈 디렉토리로 이동(bash shell에서)

cd $HOME : 현재 사용자 홈 디렉토리로 이동

cd ~kildong : kildong 사용자의 홈 디렉토리로 이동

위의 그림(그림 2-1)과 같은 디렉토리 구조에서 현재 디렉토리가 linux 라고 가정할 때

xp 디렉토리로 이동하려면

 

cd /os/windows/xp ; 절대경로

cd ../../windows/xp ; 상대경로

mkdir(make directory)

디렉토리를 만든다.

 

cp - 파일을 복사한다.     

cp file1 file2    cp file(s) directory   

[-r] option을 주면 directory도 copy가 가능하다.

file1을 file2로 복사한다.

하나 또는 여러 개의 파일을 directory에 복사한다.

명령어 사용형식은 dos와 유사하나 dos와 달리 타겟은 절대 생략할 수 없다.

ex)

[lee@river lee]$ cp /bin/ls  <= 타겟경로가 빠져있다.

cp: missing destination file <= 역시 에러다.더 많은 정보를 보려면 `cp --help' 하라.

[lee@river lee]$ cp /bin/ls .[lee@river lee]$파일을 현재 디렉토리에 복사할 때도 현재 디렉토리 경로를 적어줘야 한다.

 

mv

move, 파일이나 디렉토리의 위치를 바꾸거나 이름을 바꾼다. 사용법은 다음과 같다.

    1.mv [options] oldname newname

    2.mv [options] file(s) directory

mkdir( make directories)

mkdir dir(s) => 한 번에 여러 개도 만들 수 있다.

rmdir

remove directory, 디렉토리를 지운다. 단. 디렉토리가 비어있지 않으면 지울 수 없다.

pwdprint working directory, 현재 작업 Directory를 출력한다.

rm

remove, 파일을 제거한다. (디렉토리 삭제시에는 -r 옵션을 반드시 사용해야 한다)

 rm [options] file(s)

사용 가능한 옵션은 다음과 같다.   

 -f (force) 물어보지 않고 강제로 지운다.   

 -i (interactive) 삭제하기전에 물어 온다.   

 -r 서브디렉토리를 포함한 모든 내용을 지운다.

반응형