블로그 이미지
송시혁

calendar

1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30

Notice

Tag

Recent Post

Recent Comment

Recent Trackback

Archive

2018. 8. 21. 20:17 리눅스 마스터1급

● chmod (change mode)

디렉터리, 파일 권한 명령어 


옵션 

-R   하위 디렉터리 포함하여 디렉터리 내부의 모든 파일의 접근 권한 변경

-c (--changes)       변경된 정보를 출력 

-f, --silent, --quite  중요한 메시지 아니면 출력하지 않음 

--version                명령어의 버전 정보 


● chmod ugo+rwx a.txt

=> a.txt에게 모든 권한을 준다. 


● chmod o-r, o-w, * 

=> 현재 디렉토리 안에 모든 파일에 다른 사용자에게는 읽기와 쓰기 권한을 없앤다. 

     chmod o-rw *와 동일 


● chmod -R go-rwx * 

=> 모든 하위 디렉토리 및 파일에 대하여 그룹과 다른 사용자의 접근 권한을 없앤다.


● chmod o+t /project 

=> 다른사용자에게 sticky bit를 부여 


● Set-UID

=> 소유자의 권한 인식. x자리에 s로 바뀜 , 실행 권한이 없으면 대문자 S

     번호는 4000 


● Set-GID 

=> 주로 디렉터리에 설정. 번호는 2000


● Sticky-Bit 

=> 공유 디렉터리. 서로 다른 계정이 파일을 공유하고 있으면, 실행과 삭제가 가능하다. 

     sticky비트를 생성하면 다른 계정이 다른 계정이 만든 파일을 삭제할 수 없다. 

본인이 만든 파일은 삭제 가능 

x자리에 t로 표기됨. 번호는 1000

     

● chmod 3070 /project 

=> project 디렉터리를 해당 그룹에게만 읽기 및 쓰기, 실행 권한을 부여 

     Set-GID(2000), Sticky-Bit를 부여 


● chown (change owner)

=> 파일이나 디렉터리의 소유권 및 그룹 소유권을 변경하는 명령어


옵션은 chmod와 동일 


옵션 

-R   하위 디렉터리 포함하여 디렉터리 내부의 모든 파일의 접근 권한 변경

-c (--changes)       변경된 정보를 출력 

-f, --silent, --quite  중요한 메시지 아니면 출력하지 않음 

--version                명령어의 버전 정보 


● chown songsi:songsi11 a.txt 

=> a.txt에 대한 소유자는 sonsi, 그룹은 songsi11로 지정 

     : 대신 .도 사용가능 

 

●  chgrp (change group)

=>  특정한 사용자가 여러 그룹에 속한 경우에 본인 소유의 파일을 본인이 속한 

      그룹 내에서 소유권을  변경시킬 수 있다. 


옵션 

-R      하위 디렉터리 포함하여 디렉터리 내부의 모든 파일의 접근 권한 변경

-c (--changes)          변경된 정보를 출력 

-f, --silent, --quite     중요한 메시지 아니면 출력하지 않음 

-h, --no-dereference  심볼릭 링크 파일의 그룹 소유권을 변경한다. 

--version                     명령어의 버전 정보 


  

●  chgrp -R ihd ~songsi

=> songsi 사용자의 홈 디렉터리를 포함한 모든 파일이나 디렉터리의 그룹 소유권을 ihd로 변경한다. 

 


●  umask u=rwx, g=rw, o=rw 

=>umask를 011로 설정한 것과 동일. 


●  하드링크 

=> ln 사용 


하나의 동일한 파일을 디스크의 다른 곳에 배치하여 여러 이름으로 사용 

원본과 링크 파일의 내용과 크기가 같다.

i-node번호가 같다.

ls -l 명령시 링크의 숫자가 2씩 증가한다. 

원본 파일 삭제해도 영향 안받음 

파일만 설정 가능. 동일한 파일 시스템에서만 사용 가능 

파티션과 디스크 드라이브를 가로질러 사용할 수 없다



●  심볼릭 링크 소프트링크

=> ln -s 사용 

하나의 여러 파일을 여러 이름으로 가르키는 링크. 

파일이나 디렉토리에 모두 사용 가능하면, 일반적으로 경로단축이나

변경에 사용된다. 


i-node번호가 다름 

링크와 파일으 크기가 다르고 내용도 다르다. 

ls -l 명령 시에 출력되는 권한의 맨 앞쪽에 'l'이라고 표신한다. 

원본이나 링크 파일 중에 어떠한 것을 수정해도 같이 반영 

원본 파일 삭제시 아무런 기능이 없음 (윈도우 바로가기키이다)

퍼미션 값은 777이지만, 원본 파일과는 무관한다.


ln 명령어 옵션 


-s  심볼릭 링크                                    (--symbolic)

-v  링크 만드는 정보를 자세히 출력한다(--verbose)

-f   강제로 링크 파일 존재 시에 삭제하고 갱신한다.(--force)


<파일 시스템 관리 및 복구 >


● 하드 디스크 인식 여부 확인    

=> fdisk -l로 파티션 정보 확인 


● 파티션 분할 및 생성 

=> fdisk /dev/sdb1(파티션 분할 및 생성할 장치 이름)

     


● 파일 시스템 생성 

=> mkfs.ext4  /dev/sdb1 파일시스템 ex4로 설정


● 사용하려는 디렉토리 생성  

=> 마운트할 디렉토리 생성 


● 마운트 

=> mount 디렉토리 


● 관련 파일 등록 

=> vi /etc/fstab에 등록. 재부팅시 mount되게끔 함

     반드시 재부팅해야 설정이 동작된다. 


● fdisk 

=> 현재 디스크의 파티션 테이블 정보를 본다.


-l  현재 디스크의 파티션 테이블 정보를 출력한다.

-s partition 특정 파티션의 크기를 출력한다. , 단위는 block 

-v fdisk의 버전을 출력한다. 


● fdisk -s /dev/sdb1

=> /dev/sdb1의 파티션 크기 출력 


옵션 (일부)

n 파티션을 새롭게 생성(추가)한다.

p 현재 디스크의 정보 

a 부트테이블 플래그 

b BSD 디스크라벨 편진 

c 도스 수용가능한 플래그 설정 

w 현재 설정 저장하고  종료 

q 현재 설정을 저장하지 않고 종료 

t  파티션의 속성을 변경한다. 주요 코드로는 82(Swap), 83(Linux), 8e(Linux LVM), fd(Raid)


● mkfs 

=> 새로운 파일 시스템을 만드는 명령어 root만 가능. 

     파일 시스템 설정안하면 ext2로 만들어진다. 


● mkfs -t ext4  /dev/sdb

=> ext4 시스템으로 만든다. mkfs.ext4  /dev/sdb 동일 

옵션 

-t  파일 시스템 유형을 지정하는 옵션(ext3, ext4)

-c 배드 블록(bad block)을 체크한 후 파일 시스템을 구축한다.

-v 결과를 상세히 출력한다.


● mke2fs

=> 파일 시스템 만드는 명령어. 기존의 mkfs명령어에서 확장된 개념 


-j                     저널링 시스템인 ext3으로 만듬 

-t ts_type         파일 시스템 지정 

-b block size    블록사이즈를 지정 1024,2048,4096..

-R raid_options  -R다음에 argument=값 형태로 지정한다. 

-T usage_Type  i-node의 크기를 지정할 수 있는 옵션 

                        RHEL4까지는 news, largefile, largefile4

news       4k

largefile   1M 

largefile4 4M


● mk2e2fs -j -b 4096 -R stripe=32 /dev/md0

=> ext3으로 만들고 블록사이즈를 4096, stripe당 블록 사이즈를 32바이트로 설정 



옵션 


-a /etc/fstab에 명시된 파일 시스템을 마운트할 때 쓰이는 옵션 

-t  fs_type 

-o 마운트시 추가적인 설정을 적용할 때 사용하는 옵션 



< 파일 시스템 유형 > 


ntfs         마이크로소프트사의 윈도우 NT, 2000, XP 이후 버전에서 사용하는파일 시스템 마운트할때 지정 

ext2,3,4   파일시스템을 마운트할 때 지정한다. 

iso9660    CD-ROM이나 DVD를 마운트할때 지정한다. 

udf           DVD 파일 시스템으로 대부분의 배포판 리눅스에서 iso9660으로 지정해도 마운트 할 수 있다. 

smbfs      최근 배포판 지원안함. 네트워크 삼바파일 시스템 마운트  

cifs          삼바 파일 시스템이 확장된 파일 

nfs           DVD파일 시스템으로 대부분의 배포판 리눅스에서 iso9660으로 지정해도 마운트 할 수 있다.


-o의 주요 항목


ro            =  읽기 전용 마운트      

rw            =  읽기/쓰기 모드로 마운트 

remount   = 해당 파티션을 다시 마운트한다.(기본값으로 설정되어있다.)

loop         = loop 디바이스 마운트 , CD-ROM 이미지파일인 ISO를 마운트해서 사용 

noatime    = 파일이 변경전까지 access time이 변경되지 않는다. 

username = 사용자명 

password = 암호 

acl           =  ext3파일 시스템에서 지원하는 접근 제어 리스트(access control list)를 사용 

                  가능하도록 마운트할 때 사용한다. 


● umount 


-a              /etc/mtab에 명시된 파일 시스템을 언마운트할 때 쓰이는 옵션. 

-f fs_type   언마운트할 파일 시스템을 지정할 때 사용하는 옵션.



● eject 

=> cd-rom, DVD등과 같은거 언마운트 


● /etc/fstab 

=> 파일시스템 정보를 담거나 설정하는 파일 

     mount, umount, fsck 명령어 

 


 

fstab에 4번째 필드 주요 옵션 


defaults -  rw, suid, dev, exec, auto, nouser ,async가 적용된다. 

auto           자동 마운트 -a 옵션 사용가능 

noauto       자동 마운트 차단 -a 옵션 못씀 

usrquota     사용자의 용량을 제한하는 Disk quata를 사용 

grpquaota   disk quota를 그룹별로 사용할 때 해당 영역애 설정 

noqouta     qouta를 설정하지 않는다.

nosuid        suid나 sgid 허용 하지 않음 

nodev        문자나 특별한 장치(디바이스)를 허용하지 않는다.

noexec      해당 파티션에서 실행 파일이 실행되지 않도록 설정 

suid           suid나 sgid설정 

ro              읽기 모드 설정 

rw              읽기/쓰기 모드 설정 

async        파일을 비동기적으로 관리 

acl             acl을 사용한다. 


UUID 

=> 범용 고유 식별자. 고유한 이름. blkid라는 명령을 통해서 조회 가능 


fsck 

=> 파일 시스템을 검사하고 수리하는 명령. 

     lost+ found 손상된 디렉터리나 파일을 수정시 임시로 생성하여 

작업을 수행하고 정상적으로 복구되면 사라진다. 


-a  명령 수행에 대한 확인 질문 없이 무조건 수행 

-r   명령 수행에 확인 질문 

-A  /etc/fstab에  정의되어 있는 모든 파일 시스템을 체크 

-P  -A 옵션사용시, 루트 파일 시스템을 다른 파일 시스템과 병렬로 체크한다.

-N  실행을 하지 않고 단지 어떤 것이 실행되어지는 것만 보여줌 

-R  -A옵션을 사용할때, 루트 파일 시스템은 체크하지 않는다. 

-T  검사를 시작할때 제목을 보여주지 않는다. 

-s  fsck 동작을 시리얼화한다. 대화형 모드에서 여러 파일 시스템을 점검할 때 유용하다. 

-V  실행되는 각 파일 시스템용 명령을 포함해 자세한 출력을 수행 

-v  버전 정보를 보여준다. 

-t   fs_type 

 

● e2fsck

=> 리눅스 파일시스템 점검하고 검사하는 명령어 


옵션 

-y 

-n 특정 상황에 대한 물음에 대해 'no'라고 인식하여 처리한다. 

-c 배드 블록까지 체크 

-f 깨끗한 파일 시스템까지 강제적 체크 


e2fsck -y /sda3 

=> 파일 시스템에 점검하는데, 상황에 대한 물음에 무조건 'yes'라고 자동 인식 

 

● df 

=> 현재 마운트되 디스크의 크기 , 사용량, 남아있는 용량   


옵션 

-h   용량의 단위 표시(KB, MB, GB)를 해준다 (--human -readable)

-k   킬로바이트(kilobyte) 단위로 보여준다. (기본값)

-m  메가바이트(megabyte) 단위로 보여준다.

-T  각 파티션에 대한 파일 시스템의 유형을 보여준다.

-i   아이노드의 사용량을 보연준다. 'No space left on device'라는 메시지는 대부분 i-node를 다써버린 경우 


● du

=> 파일이나 디렉터리들이 디스크에서 차지하고 있는 크기를 출력한다.


옵션 

-h  용량의 단위 표시(KB, MB, GB)를 해준다 (--human -readable)

-b  바이트(byte) 단위로 보여줌 

-k  킬로바이트 단위로 보여줌 

-m 메가바이트  

-a  디렉터리에 존재하는 모든 파일에 대해 각각의 크기를 보연준다.

-s  파일들의 전체 크기를 합한 값만 보여준다. 


● du -sh * 

=> 각 디렉터리나 파일별로 총 용량을 출력한다. 


<swap>

=> 하드디스크의 일부를 마치 메모리처럼 사용하게 해주는 기술 


● mkswap 

=> 스왑 파티션이나 스왑 파일을 생성하는 명령이다. 


-c 배드 블록 검사해 주는 옵션 


●  swapon 

=> 스왑 파티션이나 스왑 파일을 활성화시키는 명령으로 상태로 확인 가능 

-s 스왑 영역의 상태를 출력한다. 

-a /etc/fstab 파일에 등록된 스왑 영역을 전부 활성화시킨다. 


●  swapoff

=> 스왑 파티션, 파일 중지 


●  free 

=> 현재 사용중인 메모리 상태 출력 


-m  megar byte단위 

-k   kbyte단위 


스왑영역 만들기 


dd if=/dev/zero of=/swqp-file bs=1k count=104000

=> /dev/zero는 이름 그대로 초기화 할때 사용하는 장치명 

     of에는 생성할 파일명

bs는 블록크기 지정

bs에 지정된 블록의 개수 


<스왑 영역 생성>

1. mkswap /swap-file

2. /etc/fstab 등록 

 => /swap-file swap swap defaults 0 0


 

<스왑 파티션 생성 >

1. fdisk /dev/sdb , mkfs -t 82(swap) /dev/sdb2 로 파일시스템 만듬 

    

2. mkswap -c /dev/sdb2 

스왑 파티션 생성 


3. swapon /dev/sdb2 

=> 스왑영역 활성화  


4. /etc/fstab 등록 (재부팅시 적용할 때만 등록, 그거 아니면 필요 없음)

=> /dev/sdb2 swap swap defaults 0 0 


●  Disk quota 

=> 사용자 및 그룹의 디스크 사용량고 생성할 수 있는 파일의 개수(i-node의 수)를 제한할 수 있다.


●  quotacheck  

=> 디스크를 사용하고 있는 파일 시스템 체크하여 quota 기록파일(aquota.user, aquota.group, quota.user, quota.group)


옵션 

-a  사용자와 그룹에 대한 쿼터를 체크한다.

-m 읽기 전용 모드 등의 이유로 마운트를 하지 못할 때 사용 

-f 쿼터 파일 초기 생성시 인식하지 못하는 경우에강제로 인식시킬 때 사용 

-u 사용자 쿼터 파일을 체크할 때 사용하는 옵션이다.(기본 옵션)

-g 그룹 쿼터 파일을 체크할 때 사용하는 옵션이다.

-c 기존의 생성된 쿠터 관련 파일을 읽지 않고 새롭게 초기화할 때 사용한다.  



●  quotacheck -mf 

=> quotaoff를 하지 않아도 강제로 체크 


●  quotacheck -mf  -u -g

=> 사용자 , 그룹 쿼터 파일을 체크할 때 사용하는 옵션 


●  quotacheck -cf

=> 쿼터 파일을 초기화한다. 


●  equota

 => 쿼터 설정하는 명령어 

 

 -t Soft limit를 초과한 후부터 적용되는 시간제한(grace period)을 설정하는 옵션 

 -p 특정 사용자의 쿼터를 다른 사용자에게 동일한 설정으로 적용시 사용할때 옵션 



'리눅스 마스터1급' 카테고리의 다른 글

리눅스 웹 (약간 추가예정)  (0) 2018.08.26
samba, NIS  (0) 2018.08.25
리눅스 iptables,xinetd,  (0) 2018.08.24
워크스테이션 리눅스 하드디스크 추가하기  (0) 2018.08.21
리눅스 명령어(centOs 정리)  (0) 2018.08.20
posted by 송시혁