본문 바로가기

CentOS/Study

[이론]디렉터리와 파일 사용하기 연습문제 - 1

1. 파일의 네 가지 종류를 간단히 설명하시오.

    1-1. 일반 파일 : 텍스트 파일, 실행 파일, 이미지 파일 등 리눅스에서 사용하는 대부분의 파일

    1-2. 디렉토리 파일 : 해당 디렉터리에서 저장된 파일이나 하위 디렉터리에 대한 정보

    1-3. 링크 파일

        1-3-1. 하드 링크 : 파일 시스템의 파일의 이름과 연결되는 디렉터리 엔트리

     https://ko.wikipedia.org/wiki/%ED%95%98%EB%93%9C_%EB%A7%81%ED%81%AC

 

하드 링크 - 위키백과, 우리 모두의 백과사전

위키백과, 우리 모두의 백과사전. 둘러보기로 가기 검색하러 가기 하이퍼링크 용어에 대해서는 하드링크 문서를 참조하십시오. 컴퓨팅에서 하드 링크(hard link)는 파일 시스템의 파일의 이름과 ��

ko.wikipedia.org

   

        1-3-2. 심볼릭 링크 : 절대 경로 또는 상대 경로의 형태로 된 다른 파일이나 디렉터리에 대한 참조를 포함하고 있는 특별한 종류의 파일

     https://ko.wikipedia.org/wiki/%EC%8B%AC%EB%B3%BC%EB%A6%AD_%EB%A7%81%ED%81%AC

 

심볼릭 링크 - 위키백과, 우리 모두의 백과사전

위키백과, 우리 모두의 백과사전. 컴퓨팅에서 심볼릭 링크(symbolic link) 또는 기호화된 링크는 절대 경로 또는 상대 경로의 형태로 된 다른 파일이나 디렉터리에 대한 참조를 포함하고 있는 특별��

ko.wikipedia.org

   

    1-4. 장치 파일 : 유닉스 계열 운영 체제에서 마치 흔한 파일처럼 보이는 파일 시스템 안에 보이는 장치 드라이버의 인터페이스

     https://ko.wikipedia.org/wiki/%EC%9E%A5%EC%B9%98_%ED%8C%8C%EC%9D%BC

 

장치 파일 - 위키백과, 우리 모두의 백과사전

위키백과, 우리 모두의 백과사전. 장치 파일(device file) 또는 특수 파일(special file)은 유닉스 계열 운영 체제에서 마치 흔한 파일처럼 보이는 파일 시스템 안에 보이는 장치 드라이버의 인터페이스

ko.wikipedia.org

 

2. 사용자 계정의 홈 디렉토리는 무엇이며, 언제 지정하는가?

시스템의 사용자에게 주어진 파일들을 포함한 다중 사용자 운영 체제의 파일 시스템 디렉토리를 의미한다.

사용자 계정이 생성 되었을때 생성 된다.

 

useradd -m 계정명

 

3. 다음 표에서 cd 명령의 의미를 빈칸에 쓰시오.

명령 의미
cd .. 부모 디렉토리로 이동한다.
cd ../temp 상위 디렉토리에 있는 temp 디렉토리로 이동한다.
cd ~user2 user2의 홈 디렉터리로 이동한다.
cd ~/temp 자신의 홈 디렉터리에서 하위의 temp 디렉토리로 이동한다.
cd /tmp 루트 디렉터리에 있는 tmp 디렉토리로 이동한다.

 

cd ..>

 

[root@linux1 ~]# cd ..
[root@linux1 /]# pwd
/
[root@linux1 /]#

 

cd ../temp>

 

[root@linux1 /]# cd ../temp
[root@linux1 temp]# pwd
/temp
[root@linux1 temp]# 

 

cd ~user2>

 

[root@linux1 temp]# cd ~user2
[root@linux1 user2]# pwd
/home/user2
[root@linux1 user2]# 

 

cd ~/temp>

 

[root@linux1 user2]# cd ~/temp
[root@linux1 temp]# pwd
/root/temp
[root@linux1 temp]# 

 

cd /tmp>

 

[root@linux1 temp]# cd /tmp
[root@linux1 tmp]# pwd
/tmp
[root@linux1 tmp]# 

 

4. 파일의 종류를 구분하기 위해 ls 명령에 지정하는 옵션은 무엇인가?

 

[root@linux1 ~]# ls -F
abc.txt          f1              file1                 linux_ex/  test1.txt  user1/     문서/      사진/
anaconda-ks.cfg  file-16-16.txt  file2                 list0.txt  tmp1/      공개/      바탕화면/  서식/
err1.txt         file-16-18.txt  initial-setup-ks.cfg  temp/      tmp2/      다운로드/  비디오/    음악/
[root@linux1 ~]# 

 

표시 의미
  파일
* 실행파일
/ 디렉토리
= 소켓
@ 심볼릭 링크

 

5. ls 명령으로 파일의 종류를 구분하여 출력했더니 파일명 끝에 @이 추가되었다. 이것은 무엇을 의미하는가?

심볼릭 링크 파일을 의미 / 윈도우의 바로가기처럼 원본 파일을 가리키는 파일을 의미한다.

 

[root@linux1 ch2]# ls -F
data  data1  data1.ln  data1.sl@  temp/  test
[root@linux1 ch2]#

 

6. .(마침표)로 시작하는 파일은 무엇이며, 이 파일을 확인하려면 어떻게 해야 하는가?

.(마침표)로 시작하는 파일 : 숨겨진 파일

 

[root@linux1 ~]# ls -a
.              .bashrc    .lesshst  abc.txt          file1                 test1.txt  문서
..             .cache     .local    anaconda-ks.cfg  file2                 tmp1       바탕화면
.ICEauthority  .config    .pki      err1.txt         initial-setup-ks.cfg  tmp2       비디오
.bash_history  .cshrc     .ssh      f1               linux_ex              user1      사진
.bash_logout   .dbus      .tcshrc   file-16-16.txt   list0.txt             공개       서식
.bash_profile  .esd_auth  .viminfo  file-16-18.txt   temp                  다운로드   음악
[root@linux1 ~]# 

 

7. ls / 명령은 루트 디렉토리의 내용을 보여준다. 루트 디렉토리 자체의 정보를 확인하려면 어떻게 해야 하는가?

 

[root@linux1 ~]# ls /
bin   dev  home  lib64  mnt  proc  run   srv  temp  tree   usr  work
boot  etc  lib   media  opt  root  sbin  sys  tmp   user1  var
[root@linux1 ~]# 

 

-d : 지정 디렉토리 내에 있는 파일을 제외한 디렉토리 목록만 출력한다.

 

[root@linux1 ~]# ls -d
.
[root@linux1 ~]# 

 

-ld : -l( 파일들을 나열할때 자세히 출력) + -d(지정 디렉토리 내에 있는 파일을 제외한 디렉토리 목록만 출력)

 

[root@linux1 ~]# ls -ld
dr-xr-x---. 21 root root 4096  9월 14 09:08 .
[root@linux1 ~]# 

 

8. 절대 경로와 상대 경로를 정의하시오.

   8-1. 절대 경로 : 최상위 디렉토리 (/)부터 시작해서 목표 디렉토리까지 가는 경로를 전부 기술하는 방식

   8-2. 상대 경로 : 현재 자신이 있는 위치를 기준으로 이동을 하는 방식

 

9. 하드 링크와 심볼릭 링크, 복사 파일을 비교하여 설명하시오.

   9-1. 하드 링크

       9-1-1. 원본 파일과 동일한 inode를 가진다.

       9-1-2. 원본 파일이 삭제 되더라도 원본 파일의 inode를 갖고 있는 링크 파일은 여전히 사용 가능하다.

 

[root@linux1 ch2]# ln test test_hard
[root@linux1 ch2]# ls -ali
합계 688
18124022 drwxr-xr-x. 3 root root    104  9월 14 12:36 .
 1520947 drwxr-xr-x. 3 root root     17  9월  6 16:39 ..
18124020 -rw-r--r--. 2 root root     12  9월 14 12:36 test
18124020 -rw-r--r--. 2 root root     12  9월 14 12:36 test_hard
[root@linux1 ch2]# 

 

   9-2. 심볼릭 링크

       9-2-1. 원본 파일의 이름을 가르키는 링크.

       9-2-2. 원본 파일이 삭제 되면 사용을 할 수 없다.(바로가기 개념)

 

[root@linux1 ch2]# ln -s test test_symbolic
[root@linux1 ch2]# ls -ali
합계 688
18124022 drwxr-xr-x. 3 root root    125  9월 14 12:41 .
 1520947 drwxr-xr-x. 3 root root     17  9월  6 16:39 ..
18124020 -rw-r--r--. 2 root root     12  9월 14 12:36 test
18111955 lrwxrwxrwx. 1 root root      4  9월 14 12:41 test_symbolic -> test
[root@linux1 ch2]# 

 

   9-3. 복사 파일

       9-3-1. 파일을 완전 복사하여 다른 파일을 만든다.

       9-3-2. 하드링크와 다르게 inode값이 다른것을 확인 할 수 있다.

 

[root@linux1 ch2]# cp test test_copy
[root@linux1 ch2]# ls -ali
합계 692
18124022 drwxr-xr-x. 3 root root    143  9월 14 12:43 .
 1520947 drwxr-xr-x. 3 root root     17  9월  6 16:39 ..
18124020 -rw-r--r--. 2 root root     12  9월 14 12:36 test
18111960 -rw-r--r--. 1 root root     12  9월 14 12:43 test_copy
[root@linux1 ch2]# 

 

10. rmdir 명령과 rm -r 명령의 차이를 설명하시오.

   10-1. rmdir

       10-1-1. 비어있는 디렉토리를 삭제

       10-1-2. 비어있지 않으면 삭제가 안된다.

 

[root@linux1 ch2]# tree test_d
test_d
├── a
├── b
└── c

0 directories, 3 files
[root@linux1 ch2]# rmdir test_d
rmdir: failed to remove 'test_d': 디렉터리가 비어있지 않음
[root@linux1 ch2]# 

 

   10-2. rm -r

       10-2-1. 비어있지 않은 디렉토리를 삭제

 

[root@linux1 ch2]# tree test_d
test_d
├── a
├── b
└── c

0 directories, 3 files
[root@linux1 ch2]# rm -r test_d
rm: descend into directory 'test_d'? y
rm: remove 일반 빈 파일 'test_d/a'? y
rm: remove 일반 빈 파일 'test_d/b'? y
rm: remove 일반 빈 파일 'test_d/c'? y
rm: remove 디렉토리 'test_d'? y
[root@linux1 ch2]# ll
합계 692
-rw-r--r--. 1 root root 692252  9월 13 17:32 data
-rw-r--r--. 1 root root      0  9월 13 20:48 data1
-rw-r--r--. 1 root root      0  9월 12 21:02 data1.ln
lrwxrwxrwx. 1 root root      5  9월 13 12:28 data1.sl -> data1
drwxr-xr-x. 2 root root     90  9월 13 20:38 temp
-rw-r--r--. 2 root root     12  9월 14 12:36 test
-rw-r--r--. 1 root root     12  9월 14 12:43 test_cpopy
-rw-r--r--. 2 root root     12  9월 14 12:36 test_hard
lrwxrwxrwx. 1 root root      4  9월 14 12:41 test_symbolic -> test
[root@linux1 ch2]# 

 

페도라 리눅스
국내도서
저자 : 이종원
출판 : 한빛아카데미 2017.11.10
상세보기