2024_02_01_리눅스 기초

이기태·2024년 2월 1일

리눅스

목록 보기
2/27

1. 파일 종류

종류: 일반파일, 디렉토리 파일, 링크 파일, 장치 파일, 소켓 파일, 도어 파일, 파이프 파일

일반 파일

echo 1111 > file1
ls -l file1
cat file1
ls -il

  • ls -l -> inode(파일의 정보)
  • cat file1 -> data block(파일의 데이터 저장하는 역할.)

-: 일반파일
d: 디렉토리
b: 블록 디바이스 파일
c: 문자 디바이스 파일
l: 심볼릭 링크

디렉토리


디렉토리는 목록만 가지고 있어 용량이 크지 않음. 포인터로 ./..을 가지고 있음.

링크 파일


1. 하드 링크 파일
-> 하드 링크 수: 파일 - 1 , 디렉토리 - 2
-> 디렉토리 하위에 디렉토리를 만들면 하드 링크 수 증가.
-> 바로 밑 디렉토리의 개수만 적용됨. dir1/dir2/dir4에서 dir4는 세지 않음.
원본파일의 경로를 저장하고 있는 파일
#ln file1 file2

  1. 심볼릭 링크 파일, 소프트 링크 파일 == 윈도우 바로가기 아이콘
    정보를 가지고 있는 파일이라 가볍다. 권한은 777이지만 실질적으로 원본 파일의 권한이 중요하다.
    #ln -s file1 file2
    심볼릭 링크는 파일시스템을 넘어서 링크를 걸 수 있다.
    디렉토리에 링크를 걸 수 있다.

장치 파일

장치
장치 드라이버
운영체제(커널)
장치 파일
1. 블록 장치 파일: IO단위를 높여서 한번에 많이 읽는 걸 통해 성능을 높이기 위해 사용.
mount, disk등이 블록. 4k

  1. 캐릭터 장치 파일: 보통 운영체제는 캐릭터 장치파일을 사용. 512바이트(섹터)

2. 관리자가 알아두면 유용한 명령어

파일 비교

cmp/diff CMD
#cmp fil1 file2
#diff file1 file2
[실무예] 백업후 작업 후 비교
diff httpd.conf httpd.conf.OLD

[실무예] 마이그레이션(이관)작업
diff -r /was1 /was2

정렬

sort CMD
정렬 기준:
1필드/2필드.... 순 <---> -k 필드 지정 정렬
오름차순 <--> -r 내림차순,
문자열 정렬 <---> -n 숫자열 정렬
-t: 구분자 지정 ex) sort -t : /etc/passwd
[사용 예] df+du+find
CMD | sort -k 3 -n
CMD | sort -nr
#df -k
#du -sk /var
#cd /var ; du -sk * | sort -nr | more
#find /var -type f -size +1G

파일 종류 확인

file CMD
Linux는 윈도우와 다르게 확장자가 큰 의미가 없다.
실무에서 가끔 다른 종류의 OS간 파일 전송으로 파일의 확장자가 변경되는 경우가 있다.
그럴때 어떤 파일인지 확인 해 볼 수 있다.
#file *


3. 압축과 아카이빙

압축: 저장된 정보를 압축해 작은 기억공간에 동일한 정보를 저장하는 기술

압축률: gzip < bzip < xz

  • gzip/gunzip CMD
    gzip file1
    gunzip -c file1.gz
    ginzip file1.gz

  • bzip/bunzip CMD
    bzip2 file1
    bunzip2 -c file1.bz2
    bunzip2 file1.bz2

  • xz/inxz CMD
    xz file1
    unxz -c file1.xz
    unxz file1.xz

아카이빙: 장기간 보관.

  • tar CMD
    #tar cvf file.tar file1 file2 // 아카이빙
    #tar tvf file.tar // 내용 확인
    #tar xvf file.tar // 아카이빙 해제

  • cpio CMD

압축 + 아카이빙

  • tar CMD
    #tar cvzf file.tar file1 file2 // 아카이빙 + gzip
    #tar tvzf file.tar
    #tar xvzf file.tar

    #tar cvjf file.tar file1 file2 // 아카이빙 + bzip2
    #tar tvjf file.tar
    #tar xvjf file.tar

    #tar cvJf file.tar file1 file2 // 아카이빙 + xz
    #tar tvJf file.tar
    #tar xvJf file.tar

  • jar(Java Archive)
  1. 선수작업JDK/SDK 설치
    #yum -y install java-1.8.0-openjdk.x86_64
    #yum -y install java-1.8.0-openjdk-devel.x86_64
  2. 명령어 형식
    #jar cvf file.jar file1 file2 file3
    #jar tvf file.jar
    #jar xvf file.jar
  • zip/unzip -- 윈도우 압축 툴과 호환이 가능
    (압축) # zip [-r] file.zip file1 file2 file3
    (확인) # unzip -l file.zip
    (해제) # unzip file.zip
    -r : 하위 디렉토리와 내용도 같이 압축

0개의 댓글