파일 시스템

14459 단어 숙제.
파일 시스템
                                ;
              。                             ,      

       ,                      ,                       。
    ,          ,  、  、  、    ,       ,    ,  ,  ,   

       :/lib/modules/`uname –r`/kernel/fs

      :
    https://en.wikipedia.org/wiki/Comparison_of_file_systems

파일 시스템 형식
Linux    :
    ext2(Extended file system):             ,         ,   /boot   
    ext3:  ext2      ,       ,                    。             
    ext4:  ext         。         ,        、         (16TB)、  1EB     ,       
    xfs:SGI,    8EB     
    btrfs(Oracle), reiserfs, jfs(AIX), swap
  :iso9660
Windows:FAT32, NTFS,exFAT
Unix:FFS(fast), UFS(unix), JFS2
      :NFS, CIFS
      :GFS2, OCFS2(oracle)
       :fastdfs,ceph, moosefs, mogilefs, glusterfs, Lustre
RAW:                   (   )

파일 시스템 분류
       "journal"  :
           : ext3, ext4, xfs, ...
            : ext2, vfat

         :
          :ext4, xfs, vfat
             :mkfs.ext4, mkfs.xfs,mkfs.vfat
    lsmod 
                      (      、         )
    locate xfs.ko
              

Linux       :VFS
                         
         :cat /proc/filesystems

    centos6    xfs           ,      
          
        which xfs_info
         
        rpm -qf `which xfs_info`
    yum  xfs
        yum install -y xfsprogs

Liux 가 항상 스토리 지 하 는 것 은 어떤 차이 가 있 습 니까?
1. EXT3  
(1)      32TB      2TB   ,      2TB      16GB     
(2)Ext3     32000      
(3)Ext3      32         i-     
(4)      Ext3      ,Ext3               4KB    

2. EXT4  
EXT4 Linux          , EXT3         。  
(1)Ext4         1EB,        16TB  
(2)               
(3)Ext4      64         i-      
(4)Ext4                     

3. XFS  
(1)                           
(2)      ,                  
(3)     64-bit     ,        T         
(4)       I/O        

파일 시스템 생 성
mkfs  :
(1) mkfs.FS_TYPE /dev/DEVICE
        ext4
        xfs
        btrfs
        vfat
     :mkfs.ext4 /dev/sda2 

(2) mkfs -t FS_TYPE /dev/DEVICE (   )
         -L 'LABEL'     ,   
         :mkfs.ext4 -L /data/mysql /dev/sdb1

(3)blkid         

예:
mkfs.ext4 /dev/sdb1
       journal (16384 blocks)      16384       
             5% root
lsblk -f           

mkfs.xfs /dev/sdb1
               :
   :   (        )、  (      )
          
             :        
                             realtime,          (data)

ext 파일 시스템 만 들 기
mke2fs:ext            
    -t {ext2|ext3|ext4}         
    -b {1024|2048|4096}      
    -L ‘LABEL’     
    -j     -t ext3
        mkfs.ext3 = mkfs -t ext3 = mke2fs -j = mke2fs -t ext3
    -i #                 inode;     block  
    -N #           inode
    -I   inode           ,128---4096
    -m #   5%,                   mke2fs.ext4 -m 0.1 /dev/sdb1
    -O FEATURE[,...]       
    -O ^FEATURE       
mke2fs    ext2    

        :
    dd if=/dev/zero of=/dev/sdb bs=1  count=64 seek=446
  sdb1    :
    dd if=/dev/zero of=/dev/sdb bs=1 count=16 seek=446

swap       
              

파일 시스템 태그
          
     

blkid:         
blkid [OPTION]... [DEVICE]
    -U UUID       UUID        
    -L LABEL      LABEL        

e2label:  ext       LABEL
    e2label DEVICE [LABEL]

findfs :    
    findfs [options] LABEL=

tune2fs
tune2fs:    ext             
    -l              ;super block
    -L 'LABEL’     
    -m #                
    -j  ext2   ext3
    -O            , –O ^has_journal
    -o              ,–o ^acl
    -U UUID   UUID 

dumpe2fs:  ext      ,        
    -h:       ,       
     :dumpe2fs /dev/sdb1

xfs_info:       xfs       
    xfs_info mountpoint
fdisk       ,          
 1.echo -e "n
19822
+1G
w
" |fdisk /dev/sda 2. fdisk /dev/sda < n > 19954 > +2G >w >EOF
centos6   ,          ext      ,  acl
tune2fs -o acl /dev/sdb1   acl  
centos7 ,ext、xfs      acl

 :centos6     acl
1.  sda7
mkdir /mut/sda7;mount /dev/sda7 /mut/sda7
2.df     
3.  txt  ,  acl  
seracl -m u:wang:rwx /mnt/sda7/f1.txt
       
4.    
umount /mnt/sda7
5.      acl
tune2fs -o acl /dev/sda7   acl 
6.    
mount /dev/sda7 /mnt/sda7
7.   txt    acl,    
seracl -m u:wang:rwx /mnt/sda7/f1.txt

파일 시스템 검색 및 복구
                      ,          “no clean”
  :                  

fsck: File System Check
    fsck.FS_TYPE
    fsck -t FS_TYPE
          :FS_TYPE                
    -a     
    -r        

\e2fsck:ext             
    -y       yes
    -f     
    -p                

xfs_repair:xfs            
    -f     ,   
    -n    
    -d            ,        /    ,    reboot
 :
[root@cenos7 ~]#df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/sda2        47G  4.5G   43G  10% /
devtmpfs        895M     0  895M   0% /dev
tmpfs           910M     0  910M   0% /dev/shm
tmpfs           910M   11M  900M   2% /run
tmpfs           910M     0  910M   0% /sys/fs/cgroup
/dev/sda1      1014M  174M  841M  18% /boot
/dev/sda5        19G  1.2G   18G   7% /data
tmpfs           182M     0  182M   0% /run/user/0
tmpfs           182M   32K  182M   1% /run/user/1000
/dev/sr0        4.3G  4.3G     0 100% /run/media/adong/CentOS 7 x86_64
/dev/sdb1       2.0G   33M  2.0G   2% /mut/sdb1

    :
dd if=/dev/zero of=/dev/sdb1 bs=1M count=6

      
umount /mut/sdb1

     
fsck /dev/sdb1 -y 

    
mount /dev/sdb1

마 운 트 마 운 트
  :                          ,                    
  :           
        :mount Point
    mount
   :     ,        
    umount    |   
                    
         

파일 시스템 을 mount 명령 으로 마 운 트 합 니 다.
    :mount DEVICE MOUNT_POINT
mount:
    /etc/mtab            
            ,          

mount [-fnrsvw] [-t vfstype] [-o options] device dir
    device:        ;
        (1)     :  /dev/sda5
        (2)   :-L 'LABEL',    -L 'MYDATA'
        (3) UUID, -U 'UUID':   -U '0c50523c-43f1-45e7-85c0-a126711d406e'
        (4)        :proc, sysfs, devtmpfs, configfs
    dir:   
            ,       
                       

mount 상용 명령 옵션
-t vsftype                      
-r              readonly,    
-w              read and write,     
-n                 /etc/mtab,mount   
-a                             (    /etc/fstab   ,       auto  )
-L 'LABEL'               
-U 'UUID'        UUID        
-B, --bind                 

                
    cat /proc/mounts

-o options:(         ),          
    async           sync     ,     ,     
    atime/noatime              
    diratime/nodiratime         
    auto/noauto                 ,    -a  
    exec/noexec                         
    dev/nodev                            
    suid/nosuid             suid sgid  
    remount                 
    ro                rw   
    user/nouser                      ,/etc/fstab  
    acl                          acl  
    loop                  loop  
    defaults               rw, suid, dev, exec, auto, nouser, async  

 :mount -o rw,remount /mnt/sdb1
 /mnt/sdb1    ,    

mount -o acl /mnt/sdb1
 /mnt/sdb1  acl
mount  
mount   acl,         ,      ,     
/etc/mtab    mount    ,    

centos7  
/etc/mtab -> /proc/self/mounts mtab     (    )

   ,     、  、UUID   ,
   ,       ,    

    :
1.      ,           ,      ,             
2.             (        )
3.                    

파일 마 운 트
centos6             ,        /dev/loop0  
losetup -a         
 :
1       
    dd if=/dev/zero of=/data/bigfile bs=1M count=10 
2 bigfile        
    mkfs.ext4 /data/bigfile
3  bigfile     
    blkid /data/bigfile
    /data/bigfile: UUID="6a176a88-5eb9-4a25-8a39-0249aceedb13" TYPE="ext4" 
4.     ,    
    mkdir /mnt/file
    mount /data/bigfile /mnt/file
5.    
    echo abc >> /mut/file/f1.txt
6.losetup -a         
7.hexdump -C /data/big -v |less 
       
centos6   loop  
losetup -a 
ll /dev/loop*
mknod /dev/loop8 b 7 8 
ll /dev/loop*

      loop  
vim /boot/grub/grub.conf
max loop=100 
reboot

디 렉 터 리 마 운 트
          
mkdir /mnt/boot
mount /boot /mnt/boot -B
  /boot   /mnt/boot          
mount          
(centos7   )
mount -B -n /etc /mnt/etc
/etc/mtab               
cat /proc/mounts           

마 운 트 해제 명령
      
    findmnt MOUNT_POINT|device
 :findmnt /boot
TARGET SOURCE    FSTYPE OPTIONS
/boot  /dev/sda1 xfs    rw,relatime,attr2,inode64,noquota

               
    lsof MOUNT_POINT
    fuser -v MOUNT_POINT

                  
    fuser -km MOUNT_POINT

  
    umount DEVICE
    umount MOUNT_POINT

마 운 트 지점 과 / etc / fstab
        
 mount、fsck       
             
              
  mount -a     /etc/fstab        

파일 마 운 트 프로필
/etc/fstab              
1、            
        
    LABEL:LABEL=""
    UUID:UUID=""
           :proc, sysfs
2、   
3、      :ext4,xfs,iso9660,nfs,none
4、    :defaults ,acl,bind
5、    :0:        1:         2:      
6、fsck          :      0 1 2
    0:   
    1:    ;    rootfs  
    2: rootfs  

 : /mnt/sda1      
vim /etc/fstab
UUID=a6867ce0-a5a2-4c35-b6f9-215dcab5a097   /mnt/sda1   ext4  ro,acl   0  0 
    ,    
mount -a 

lost+found
lost+found       
lost+found ext            
         ,                ,        lost+found 

centos 6 복구 시스템 고장
       /etc/fstab     
        ,         
          
    /     rw. mount -o rw,remount /dev/sda1
  /etc/fstab,          ,              0,         ,    
    
      ,               fsck /dev/sdb1

파일 마 운 트 기록 / etc / fstab
  UUID              UUID
   UUID    ,             
mount /data/bigfile /mnt/bigfile
      
/data/bigfile  /mnt/bigfile  ext4  loop 0 0
    
mount -a 
    

디 렉 터 리 마 운 트 기록 / etc / fstab 형식
/etc  /mnt/etc   none  bind  0 0 

CD 마 운 트 기록 / etc / fstab 형식
/dev/cdrom  /mnt/derom  iso9660 defaults  0 0

교환 파일 과 파 티 션 처리
swap       RAM   ,Swap         。
       RAM                  swap   

      swap    ,     RAM          。
     swap                   ,    ,   swap           

마 운 트 교환 구역
      :
    •          
    •  mkswap      
    • /etc/fstab          
    •  swapon -a       
  :swapon
    swapon [OPTION]... [DEVICE]
    -a:         
    -p PRIORITY:     
    -s           
    /etc/fstab   4  :pri=value
  :swapoff [OPTION]... [DEVICE]

시스템 swap 가 부족 할 때 하 드 디스크 할당 swap 를 추가 해 야 합 니 다.
mkfswap /dev/sdb2
 swap    /etc/fstab 
UUID=...   swap  swap defaults 0 0 
(mount -a   swap  )
swapon -s           
swapon -a     

SWAP 우선 순위
    swap  0 32767    ,        
        ,        swap       ,      -1  ,                 swap,         

    swap         ,             ,         (   )              (   )
    :    ,       

 /etc/fstab    pri=10      
swapoff /dev/sdb1 
swapon /dev/sdb1
swapon -a 
    swap,     

  swap
1. swapoff /dev/sdb1    swap
      swap     
2.  /etc/fstab  swap  
3.       
dd if=/dev/zero of=/dev/sdb bs=1 count=16 seek=446
4.    
partx -d --nr 1 /dev/sdb
fuser -v /mnt/sdb1
         
fuser -km /mnt/sda4
                    
(         )

mount /dev/sda4 /mut/sda4
findmnt /mnt/sda4
echo $?
     ,        

이동 매체
                           
   ,       
   ,       
      ,            (  、DVD、  、USB  )
      /media  /mnt 

시디롬 을 사용 하 다
            /run/media//

USB 미디어 마 운 트
  USB      
    •lsusb
      SCSI  
    •/dev/sdaX、/dev/sdbX        
          
    •   [   ]     
    •   /run/media//

일반적인 도구
                

df                     
    -H  10   
    -T       
    -h human-readable
    -i inodes instead of blocks
    -P  Posix       

             
du           ,   df      Linux,du                   ,   df        
du 
    -h human-readable
    -s summary
    --max-depth=#         

도구
dd   :convert and copy a file
  :
    dd if=/PATH/FROM/SRC of=/PATH/TO/DEST bs=# count=#
    if=file                     
    of=file                     
    ibs=size       size byte
    obs=size       size byte
    bs=size     block size,      (   ibs  obs)
    cbs=size        size byte
    skip=blocks      blocks ibs    
    seek=blocks      blocks obs    
    count=n       n bs
    conv=conversion[,conversion...]           

        :
    ascii      EBCDIC   ASCII
    ebcdic     ASCII   EBCDIC
    lcase               
    ucase               
    nocreat        
    noerror       
    notrunc        
    sync             ibs   ,      (NUL)    
    fdatasync     ,        

도구
  MBR
    dd if=/dev/sda of=/tmp/mbr.bak bs=512 count=1
  MBR  bootloader
    dd if=/dev/zero of=/dev/sda bs=64 count=1 seek=446
     2K      fileA。     64         ,        128Byts。  fileB,         128Bytes   32        ,  128Bytes,    
    dd if=fileA of=fileB bs=1 count=128 skip=63 seek=31 conv=notrunc
  :
    dd if=/dev/sdx of=/dev/sdy
        /dev/sdx     /dev/sdy
    dd if=/dev/sdx of=/path/to/image
     /dev/sdx            image  
    dd if=/dev/sdx | gzip >/path/to/image.gz
      /dev/sdx    ,   gzip  ,       
  :
    dd if=/path/to/image of=/dev/sdx
               
    gzip -dc /path/to/image.gz | dd of=/dev/sdx
                  
         
    dd if=/dev/mem of=/root/mem.bin bs=1024
              root    mem.bin  
     iso  
    dd if=/dev/cdrom of=/root/cd.iso
           root    ,    cd.iso  
      
    dd if=/dev/urandom of=/dev/sda1
               ,                ,       ,/dev/sda1     ,           

좋은 웹페이지 즐겨찾기