본문 바로가기
운영체제

리눅스 필수 개념과 명령어 01

by ^..^v 2019. 5. 29.
728x90
반응형

01 시작과 종료

  • 종료 : poweroff, shutdown -P now, halt -p, init 0
  • 재부팅 : shutdown -r now, reboot, init 6
  • 로그아웃 : logout, exit

02 가상 콘솔

  • 우분투는 7개의 가상 콘솔을 제공
  • Ctrl + Alt + F1~F7 
  • Ctrl + Alt + F7 = X-Window Mode

03 Run Level

  • 시스템이 가동되는 방법
  • 2번과 4번은 우분투에서는 사용하지 않음 (호환성을 위해 3번과 동일하게 취급)
  • /lib/systemd/system/runlevel?.target 파일로 확인
  • init 0 = 지금 즉시 런레벨 0번으로 전환하라 = 종료 모드 (poweroff.target)
  • init 6 = 지금 즉시 재부팅하라
  • /lib/systemd/system/default.target = 현재 시스템에 설정된 런레벨 

부팅 시 텍스트 모드로 부팅되도록 런레벨을 변경

# ln -sf /lib/systemd/system/multi-user.target /lib/systemd/system/default.target
런레벨 영문 모드 설명 비고
0 Power off 종료 모드  
1 Rescue 시스템 복구 모드 단일 사용자 모드
2 Multi-user   사용하지 않음
3 Multi-user 텍스트 모드의 다중 사용자 모드  
4 Multi-user   사용하지 않음
5 Graphical 그래픽 모드의 다중 사용자 모드  
6 Reboot    

 

04 vi 에디터

05 마운트 (mount)

물리적인 장치를 특정한 위치에 연결시켜 주는 과정 

root@server:~# mount <== 현재 마운트 되어 있는 장치를 확인
	:
/dev/sda2 on / type ext4 (rw,relatime,errors=remount-ro,data=ordered) <== 첫번째 하드디스크가 / 디렉터리에 마운트
	:
/dev/sr0 on /media/root/Ubuntu 16.04 LTS amd64 type iso9660 (ro,nosuid,nodev,relatime,uid=0,gid=0,iocharset=utf8,mode=0400,dmode=0500,uhelper=udisks2) <== CD-ROM 장치가 /media/root/Ubutun ... 디렉터리에 마운트

root@server:~# umount /dev/sr0 <== CD-ROM 장치를 마운트 해제

06 ls

해당 디렉터리에 있는 파일 목록을 나열

root@server:~# ls -a <== 숨길 파일을 포함해서 해당 디렉터리의 파일 목록을 나열
.              .bashrc  .gnupg    .xsession-errors      바탕화면
..             .cache   .local    .xsession-errors.old  비디오
.ICEauthority  .config  .mozilla  공개                  사진
.Xauthority    .dbus    .presage  다운로드              음악
.bash_history  .gconf   .profile  문서                  템플릿

root@server:~# ls -l <== 현재 디렉터리의 파일 목록을 자세히 나열
합계 32
drwxr-xr-x 2 root root 4096  5월 25 00:36 공개
drwxr-xr-x 2 root root 4096  5월 25 00:36 다운로드
drwxr-xr-x 2 root root 4096  5월 25 00:36 문서
drwxr-xr-x 2 root root 4096  5월 25 00:36 바탕화면
drwxr-xr-x 2 root root 4096  5월 25 00:36 비디오
drwxr-xr-x 2 root root 4096  5월 25 00:36 사진
drwxr-xr-x 2 root root 4096  5월 25 00:36 음악
drwxr-xr-x 2 root root 4096  5월 25 00:36 템플릿

07 cd

디렉터리를 이동

root@server:~# cd /etc/systemd/ <== 절대 경로로 이동
root@server:/etc/systemd# cd ../etc/systemd <== 상대 경로로 이동

08 pwd

Print Working Directory

현재 디렉터리의 전체 경로를 출력

root@server:~# pwd <== root 사용자의 홈디렉터리 확인
/root
root@server:~# su - ubuntu
ubuntu@server:~$ pwd <== ubuntu 사용자의 홈디렉터리 확인
/home/ubuntu

09 rm 

파일 또는 디렉터리를 삭제

root@server:~# mkdir test0 <== 디렉터리 생성
root@server:~# touch test1 <== 파일 생성
root@server:~# touch test2
root@server:~# touch test3
root@server:~# ls -l test* <== test로 시작하는 파일과 디렉터리 확인
-rw-r--r-- 1 root root    0  5월 29 08:37 test1
-rw-r--r-- 1 root root    0  5월 29 08:37 test2
-rw-r--r-- 1 root root    0  5월 29 08:37 test3

test0:
합계 0
root@server:~# rm -i test1 <== 삭제 여부 확인 후 삭제
rm: 일반 빈 파일 'test1'를 제거할까요? y
root@server:~# rm -f test2 <== 삭제 여부 확인 없이 삭제
root@server:~# rm -r test* <== test로 시작하는 파일과 디렉터리를 삭제
root@server:~# ls -l test* <== test로 시작하는 모든 파일과 디렉터리 삭제 확인
ls: 'test*'에 접근할 수 없습니다: 그런 파일이나 디렉터리가 없습니다

10 cp 

파일 또는 디렉터리를 복사

root@server:~/exam# touch file <== 파일과 디렉터리를 생성
root@server:~/exam# mkdir dir
root@server:~/exam# ls
dir  file
root@server:~/exam# cp file file2 <== 파일 복사
root@server:~/exam# cp -r dir dir2 <== 디렉터리 복사
root@server:~/exam# ls <== 파일과 디렉터리 복사 확인
dir  dir2  file  file2

11 touch 

크기가 0인 새 파일을 생성

이미 파일이 존재하는 경우 최종 수정 시간을 변경

root@server:~/exam# touch file
root@server:~/exam# ls -l
합계 0
-rw-r--r-- 1 root root 0  5월 29 08:44 file
root@server:~/exam# touch file <== 파일이 존재하는 경우 최종 수정 시간이 변경된 것을 확인
root@server:~/exam# ls -l
합계 0
-rw-r--r-- 1 root root 0  5월 29 08:45 file

12 mv

파일이나 디렉터리의 이름을 변경하거나 다른 디렉터리로 이전

root@server:~/exam# touch aaa <== 파일과 디렉터리를 생성
root@server:~/exam# touch bbb
root@server:~/exam# touch ccc
root@server:~/exam# mkdir ddd
root@server:~/exam# ls 
aaa  bbb  ccc  ddd
root@server:~/exam# mv aaa bbb ccc ddd <== aaa, bbb, ccc 파일을 ddd 디렉터리로 이전
root@server:~/exam# ls
ddd
root@server:~/exam# ls ./ddd
aaa  bbb  ccc

13 mkdir

디렉터리를 생성

root@server:~/exam# mkdir aaa <== aaa 디렉터리 생성
root@server:~/exam# mkdir -p aaa/bbb/ccc <== aaa/bbb/ccc 디렉터리를 순환적으로 생성
root@server:~/exam# cd aaa/bbb/ccc
root@server:~/exam/aaa/bbb/ccc# 

14 rmdir

디렉터리를 삭제

root@server:~/exam# tree . <== 현재 디렉터리 아래에 aaa/bbb/ccc 디렉터리가 존재하는 것을 확인
.
└── aaa
    └── bbb
        └── ccc

3 directories, 0 files

root@server:~/exam# rmdir aaa <== 디렉터리가 비어있지 않으므로 삭제할 수 없음
rmdir: failed to remove 'aaa': 디렉터리가 비어있지 않음

root@server:~/exam# rmdir ./aaa/bbb/ccc <== 비어있는 디렉터리는 삭제할 수 있음
root@server:~/exam# tree . <== 디렉터리 삭제 확인
.
└── aaa
    └── bbb

2 directories, 0 files

root@server:~/exam# rm -r aaa <== rm -r 명령어로 비어있지 않은 디렉터리를 삭제
root@server:~/exam# tree . <== 디렉터리 삭제 확인
.

0 directories, 0 files

 

 

728x90
반응형

'운영체제' 카테고리의 다른 글

VirtualBox에 Ubuntu Desktop 설치  (0) 2020.09.02
RAID 2  (0) 2019.05.30
RAID 1  (0) 2019.05.30
하드디스크 관리 2  (0) 2019.05.11
하드디스크 관리 1  (0) 2019.05.11

댓글