회사에 출근하고 퇴근할 때까지 리눅스에서 업무를 한다. 이전에 교육을 받을 때 잠깐이지만 리눅스 명령어에 대해 배워서 그런지 (그때는 취업하면 이런 거 안쓸 줄 알고 등한시했는데 지금은 맨날 쓴다.....) 업무를 시작하고 리눅스를 사용하는 것에 대해 거부감이 들지 않았다.
하지만 맨날 같은 명령어만 사용하게 되는데 그러다가 그거만 쓸 줄 아는 개발자로 전락할 것 같아서 기본 명령어부터 차근차근 정리해보면서 여러가지 명령어에 대해 공부하기 위해 포스팅을 계획하게 되었다.
필자는 Windows OS를 사용하고 있어서 VMware를 사용해서 Linux OS 환경을 만들어야 할까 고민을 하다가 아주 좋은 사이트를 발견하게 되었다.
'리눅스 명령어 연습 사이트'라고 검색해서 알게 되었는데 별도의 설치 과정없이 사용할 수 있다는 것이 매력적이었고, 이 글을 보시는 분들과 같이 공유하면 좋겠다 싶어서 같이 첨부했다.
root 계정 비밀번호 설정
가장 기본적인 사용자이며 가장 상위에 위치하는 사용자가 바로 root 계정이다. root 계정 아래에 그룹을 생성하고 유저를 포함시킨다. 다른 유저를 생성하기 앞서 root 계정의 비밀번호을 설정하는 방법을 보자.
명령어 : # sudo passwd
Group , user 생성
명령어 : # addgroup [ 그룹 이름 ]
생성한 test 그룹에 wodud 이라는 유저를 생성해보자.
명령어 : # adduser [ 유저 이름 ] [ option ] [ 그룹 이름 ]
생성한 그룹에 유저가 들어갔는지 확인해보자.
명령어 : # cat /etc/group
왼쪽부터 '그룹명 : 비밀번호 : 그룹 ID : 그룹 사용자'을 가리킨다. test 그룹에 aaa 라는 유저가 잘 들어간 것을 볼 수 있다.
명령어 : usermod -g 그룹이름 유저이름
위 명령어를 사용해서 유저를 그룹에 속하게 만들려고 했지만 필자가 위에서 제시한 JSLinux에서는 명령어가 안들어서 adduser를 응용해서 생성했다.
위에 필자가 사용한 명령어로 생성이 안된다면
'usermod -g 그룹이름 유저이름'를 사용해서 유저를 생성하면 된다.
위에서 만들어준 aaa 계정으로 들어가서 작업을 한다고 가정해보자. aaa 계정으로 바꾸기 위해 'su' 명령어를 사용한다.
명령어 : su - 계정이름
비밀번호를 치도록 요구한다면 계정을 생성할 때 정한 비밀번호를 치면 된다.
▷ mkdir( make directory )
명령어 : mkdir [폴더명]
→ mkdir FIRST
+) mkdir FIRST/SECOND 라고 경로를 입력하면 FIRST 안에 SECOND 이름으로 폴더를 생성할 수 있다.
▷ ls( list )
명령어 : ls
옵션
a | 모든 파일 엔트리 정보를 표시 |
l | 파일타입, 펴미션, 하드링크수, 오너, 그룹, 파일사이즈 등의 정보를 표시 |
R | 하위의 모든 정보를 표시 |
옵션을 조합해서 다양하게 사용할 수 있다. 개인적으로 ls -al 명령어를 가장 많이 사용한다.
EX) 위에서 만든 FIRST 폴더를 ls 명령어를 통해 확인할 수 있다.
▷ cd (change directory)
명령어 : cd [디렉토리명]
옵션
. | 현재 위치 |
.. | 부모 디렉토리 |
~ | 홈 디렉토리 |
- | 이전 디렉토리 |
위에서 만든 FIRST 디렉토리로 이동하고 현재 위치를 아래 명령어를 통해 확인해보자.
▷ pwd(print working directory)
명령어 : pwd
위에서 cd 명령어로 FIRST 디렉토리로 이동한 결과를 위에서 알 수 있다.
▷ mv ( move )
명령어 : mv
→ 파일을 이동시킬 때 사용하지만 파일 이름을 변경할 때도 사용된다.
FIRST 디렉토리에 SECOND 디렉토리와 test 파일이 현재 있다. mv test test-mv를 사용하면 아래처럼 이름이 변경된다.
test-mv 파일을 SECOND 디렉토리 하위로 이동시켜보자. mv test-mv SECOND라고 명령어를 입력한다.
이전에는 FIRST 디렉토리에 있던 test-mv가 SECOND 디렉토리로 이동한 것을 볼 수 있다.
▷ cp ( copy )
명령어 : cp [파일명, 디렉토리명 ]
옵션
-f | 같은 이름의 파일이 있으면 확인하지 않고 덮음 |
-i | 같은 이름의 파일이 있으면 확인하고 덮음 |
-R | 디렉토리의 하위 파일을 모두 복사 |
현재 위처럼 파일이 두 개 존재하고 '-f' 과 '-i'의 차이점을 보려고 한다.
'-i' 옵션을 사용하면 위처럼 덮어쓸지 한 번 물어보는 것을 알 수 있다. 파일이 많아서 구분이 안갈 때 유용하게 사용할 수 있다.
▷ rm( remove )
명령어 : rm [파일명, 디렉토리명]
옵션
-f | 파일이 없는 경우에도 오류를 표시 X |
-r | 디렉토리를 삭제 |
▷ df ( disk free)
→ 파일 시스템의 디스크 사용량을 표시
명령어 : df [옵션]
옵션
-a | 모든 파일시스템을 표시 |
-h | 사람이 읽을 수 있는 형태로 용량을 변환하여 표시 |
-T | 파일시스템의 타입을 표시 |
▷ du ( disk usage )
→ 파일과 디렉토리의 사용량을 표시
명령어 : du [옵션]
옵션
-b | 바이트 단위로 표시 |
-k | 킬로바이트(KB) 단위로 표시 |
-m | 메가바이트(MB) 단위로 표시 |
-s | 디스크 사용량의 합계를 표시 |
-h | 사람이 보기 편한 형태로 표시 |
▷ find
→ 파일을 검색할 때 사용
명령어 : find [옵션]
옵션
-name | 검색할 이름을 지정. *도 사용가능 |
-exec | 찾은 파일을 이용해서 다른 명령을 실행해야 할 때 사용 |
-mtime | 수정시간을 이용하여 검색. n*24시간 전 수정파일 |
-type | 찾는 파일의 타입을 지정 |
type 옵션
b | 블록형 특수 파일 |
c | 캐릭터형 특수 파일 |
d | 디렉토리 |
f | 일반 파일 |
l | 심볼릭 링크 |
p | 파이프 |
s | 소켓 |
▷ ln
→ 파일, 디렉토리에 대한 링크를 생성할 때 사용합니다.
명령어 : ln -s [원본] [링크]
옵션
-s | 심볼릭 링크 파일을 생성 |
심볼릭 링크란 ?
→ 윈도우의 바로가기 파일과 같다. 원본 파일을 삭제하면 심볼릭 링크는 작동하지 않는다.
▷ lsof (list open files)
→ 현재 열려있는 모든 파일을 확인할 수 있다
명령어 : lsof [옵션]
옵션
i | IP 확인 |
n | 호스트 이름 |
P | 포트 이름 |
REFERENCE
'기타' 카테고리의 다른 글
인증번호 전송 기능을 구현해보자! (6) | 2022.09.21 |
---|---|
메시지 큐(Message Queue)에 대해 알아보자! (1) | 2022.09.14 |
동기와 비동기의 차이(+ 블로킹과 논블로킹) (0) | 2022.07.22 |