LINUX

[LINUX] LINUX 명령어 정리

너굴위 2023. 11. 9. 14:50
728x90
반응형

< 지난 포스팅 정리 >

 

절대경로: /(root)

상대경로: 현재 작업 위치(pwd) /../ .

현재 작업 위치 - 프롬프트 (사용자 아이디 @ 호스트: 현재위치)

 

프로그램 소스 에디터

visualstudio code

vi / nano(디폴트)

명령모드 < - > 입력모드

               < - > 마지막행 모드

=> java / python

=> c / shell script

 

사용자 - 하드디스크 공간할당..

관리자(root)명령자

일반 사용자 -> 관리자 권한 위임: sudo

*master(설치 시 생성한 사용자)

 

* 사용자 생성하기

$ sudo adduser

$ sudo useradd

$ sudo userdel(-r)

사용자의 생성 과정 ( master에서 사용자로 넘어갈 때 su 명령어 사용)

 

 

* 특정 별칭 설정하기 ( 자주 사용하는 명령어, 해당 명령어가 너무 길 때)

$ sudo nano .bashrc (home 디렉토리에 위치, 안보이면 $ls -al)

alias cls='clear'  ( alias 별칭='명령어')


사용자 계정 조작

 

* 사용자 암호 변경

해당 사용자의 계정 안에서 $ passwd 명령어를 통해 변경 가능

 

$ sudo - 사용자 아이디

$ sudo su (-)   : 루트 사용자로 넘어감

 

 

* 사용자의 정보 확인

$ who : 현재 시스템을 사용하고 있는 사용자의 목록

옵션 

    -H : 어떤 정보인지에 대한 열 이름 확인

    -q : 접속자의 수 확인

    -b : 시스템 부팅 시간

다른 프롬프트로 tester3 사용자 로그인을 했을 때 master에서의 who 명령어 실행 결과

 

$ w : 로그인한 사용자의 접속정보 및 작업정보를 확인할 수 있음

$ last : 마지막 로그인에 대한 로그 확인

$ whoami : 현재 사용자의 이름 확인

$ who am i 

결과

$ id : 자신의 정보를 확인할 수 있음 (uid, gid, group..)


파일/디렉토리의 권한 관리하기

                                  소유자                                      그룹                                                기타사용자

 파일/디렉토리          읽기 쓰기 실행                          읽기 쓰기 실행                               읽기 쓰기 실행

 

읽기 : ls 명령으로 디렉터리 목록을 볼 수 있다. (단, ls 명령의 옵션은 실행권한이 있어야 사용가능)

쓰기 : 파일의 생성과 삭제

실행: cd 명령을 사용할 수 있다. 파일을 디렉터리로 이동하거나 복사할 수 있다.

 

숫자로 환산하기

읽기:4   쓰기:2  실행:1    => 총 7

활성화 된 기능마다 환산한 숫자가 다르다.

ex) r - x   -> 4+0+1 = 5

 

$ chmod   권한모드   파일/디렉터리명  : 파일이나 디렉터리의 접근 권한을변경한다. 

ex) $ sudo chmod 777 test1.txt

 

기호로 부여하기

$ chmod 사용자 카테고리 문자     연산자 기호      접근권한 문자    파일

ex)  $ sudo chmod g+rx test1.txt    : 그룹의 읽기와 실행권한을 부여한다.

 

기본 접근 권한 설정

            디렉토리(777) / 파일(666 - 실행권한)

일반      775                     664

 

$ umask 마스크 값  : 기본 접근 권한을 출력하거나 변경한다.

 

$ chown 소유자.소그룹   파일/디렉토리: 파일이나 디렉토리의 소유권을 변경할 수 있다.

chown으로 소유권을 root에서 master로 변경

 

 

$ chgrp 사용자 계정    파일/디렉토리명  : 파일과 디렉터리의 소유 그룹을 변경한다.

 


프로세스 관리하기

사용자   

     생성 / 삭제 / 권한변수

     허가권 / 소유권

 

프로그램 

    설치

    실행(프로세스)관리

 

 

$ ps : 현재 실행 중인 프로세스에 대한 정보를 출력한다.     => java IO

옵션:

$ ps -ef  | grep bash  (많이 사용된다)

$ ps aux

vi 실행 후 프로세스 확인

 

 

접속자 프로세스를 tty로 구분한다. ( 특정 tty에 대한 동작 프로세스를 확인할 수 있다)

ctrl+alt+f3 에서 tester3 접속 + vi 실행 후 프로세스

 

$ pgrep : 지정한 패턴과 일치하는 프로세스에 대한 정보를 출력한다.

$ pgrep - xl bash : bash 패턴의 PID와 프로세스 이름을 출력한다.

+)  $ pstree : 실행되고 있는 프로세스들을 트리형태로 보여줌

다른 사용자가 vi를 사용하고 있다는 것을 확인

 

$ top : 현재 실행 중인 프로세스에 대한 정보를 주기적으로 출력

   top => gui

 

 

ProcessBuilder (명령어, 옵션1,..) -> 가변처리

top -b -n 1  ( top 내용을 한 번 가져올 수 있다 => 변하지 않음)

$ java ProcesStateEx01 | head -n 5  : 결과물 출력을 위에서부터 5줄만 출력하기

결과

 

 

프로세스

   foreground process - 전면부 실행 

         일반적인 프로그램

   background process - 후면부 실행 

         서버류 - 실행과정에 대한 출력이 없음

 

 

$ sleep [&]  :  포그라운드 상태에서 sleep상태 / &을 붙이면 백그라운드로 넘어감 

$ jobs : 백그라운드 상태를 확인할 수 있음

 

+) $ gedit으로 메모장 실행 가능

    $ gedit & 으로 백그라운드 실행 가능

 

$ fg 1 / bg 1을 통해 포그라운드 백그라운드 변경 가


압축파일 생성하기

프로그램 설치 

1. 압축파일 

          소스(c / c++) : 예전(최적화)

                 컴파일 - 설치 - 실행

          실행파일

                 설정 - 실행

           zip

           zip / tar.gz 

           tar - 파일 묶기 

           gz - 파일 압축

 

2. 인스톨 파일

   * window *.msi / setup

    패키지별로 구분

    1) Redhat - rpm

    2) Debian - deb(DKPG - Debian Package)

 

$ tar cvf  압축파일이름.tar      파일1  파일2  파일3     : 여러 파일들을 압축한다.

$ tar tvf   압축파일이름.tar    :  압축파일 안의 내용을 확인한다.

$ tar uvf  압축파일이름.tar     새로운 파일 이름 : 압축파일 내용 갱신

$ tar xvf  압축파일이름.tar     : 압축해제

 

 

$ gzip

 

다운로드

tar zvf 이클립스

 

인스톨

dkpg -i 패키지 파일

dkpg --install 패키지명

 

설치된 패키지 검색

dpkg

옵션

- l  목록확인

--list

 

패키지 제거

dpkg -r

dpkg --remove

dpkg -p

dpkg --purge

 

 

 

 

 

 

 

728x90
반응형