본문 바로가기

개발노트/LINUX

[centOS 7] 리눅스 명령어 노트

<리눅스 기본>

슈퍼유저(default : root) : 리눅스에서 모든 권한을 가진 최상위 유저 / CUI환경에서 샵 (#) 으로 표시됨

일반유저 : 리눅스에서 일반 유저 / CUI환경에서 달러 ($) 로 표시됨 / 일반유저가 슈퍼유저이 권한을 얻어 명령어를 실행하려면 명령어의 가장 앞에 "sudo"를 추가하고 슈퍼유저의 비밀번호를 알아야 함


내가 공부하면서 사용하는 명령어들을 정리해보는 것에 의의가 있는 글


자세한 것은 -help 또는 man 으로 확인할 것


</리눅스 기본>


<파일과 디렉토리>

cd : Change Directory - 작업 디렉토리 변경


pwd : 현재 작업 디렉토리가 어딘지 궁금할 때


ls : 현재 디렉토리에 있는 파일/디렉토리 리스트 출력

ls -al : 파일에 대한 모든 정보 출력


mkdir : 현재 디렉토리에 새 디렉토리 생성

mkdir -p : 기술된 경로가 없을 경우 자동 생성


rm : 파일 또는 디렉토리 삭제(remove)

rm : 파일만 삭제

rm -r : 현재디렉토리 및 하위 디렉토리까지 모두 삭제

rm -f : 강제 삭제


cp : 복사 & 붙여넣기

cp -r : 현재디렉토리 및 하위 디렉토리까지 모두 복사


mv : 파일 또는 디렉토리 이동


touch

1. 파일의 시간 및 정보 변경

2. 비어있는 파일 생성


</파일과 디렉토리>


<유저 관련>

adduser : 대화형으로 유저 생성


useradd : 옵션 지정으로 바로 유저 생성


deluser : 대화형으로 유저 삭제


userdel : 옵션 지정으로 바로 유저 삭제


passwd : 현재 유저의 비밀번호 변경

- 수퍼유저는 모든 유저의 비밀번호 변경 가능


chfn : 대화형으로 유저 정보 변경


chsh : 대화형으로 유저 쉘 변경


usermod : 옵션 지정으로 유저 정보 변경


addgroup : 대화형으로 그룹 생성


groupadd : 옵션 지정으로 바로 그룹 생성


groupmod : 옵션 지정으로 그룹 정보 변경


delgroup : 대화형으로 그룹 삭제


groupdel : 옵션 지정으로 그룹 바로 삭제


su : 유저 전환(switch user)


</유저 관련>


<권한 관련 explain="ACL(Access Control List) : 파일과 디렉토리 사용 권한 관리">

<property name="r" value="읽기 권한" />

<property name="w" value="쓰기 권한" />

<property name="x" value="실행 권한" />

<property name="uid" value="유저의 고유 ID" />

<property name="gid" value="그룹의 고유 ID" />


chmod : change mode. 파일과 디렉토리의 권한 설정

1. (ex) chmod u+r file : file이라는 이름의 파일에 대한 소유자(u)의 읽기 권한(r)을 부여(+)

2. (ex) chod 761 file : file이라는 이름의 파일에 대한 권한을 변경

소유자(u)의 권한은 읽고 쓰고 실행 가능(4+2+1)

그룹(g)의 권한은 읽고 쓰기 가능(4+2)

기타(o, other)의 권한은 실행만 가능(1)


chown : 파일과 디렉토리의 소유자 변경

(ex) chown terrylee sampleFile : sampleFile 이라는 파일의 소유자를 terrylee 라는 유저로 변경

(ex) chown terrylee:terryGroup sampleFile : sampleFile 이라는 파일의 소유자를 terrylee로, 그룹을 terryGroup로 변경


chgrp : 파일과 디렉토리의 그룹 변경

chgrp -R : 하위 디렉토리까지 포함하여 변경

(ex) chgrp terryGroup sampleFile : sampleFile 이라는 파일이 속한 그룹을 terryGroup 이라는 그룹으로 변경


</권한 관련>


<마운트 관련 explain="파일시스템(e.g. ODD/USBDrive 등)을 (언)마운트 하기 위한 명령어">

mount : 마운트

umount : 언마운트

</마운트 관련>


<프로세스 관련>

<property name="pid" value="프로세스의 고유 ID" />

<property name="ppid" value="부모 프로세스의 ID" />


ps : 프로세스 관리를 위하여 현재 점유중인 프로세스 정보 출력

ps : 명령어 실행 해당 유저 점유 프로세스 정보 출력

ps a : 모든 유저 점유 프로세스 정보 출력

ps u : 모든 유저 점유 프로세스 정보 유저별 그룹화 출력

ps x : 백그라운드 + 포그라운드 모든 프로세스 정보 출력

ps aux : 모든 유저 점유 백그라운드 + 포그라운드 프로세스 유저별 그룹화 출력


top : 프로세스 정보를 동적으로 출력


kill : 프로세스 종료


</프로세스 관련>