歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux基礎 >> 關於Linux

Linux學習日志(六)

文件系統

按名稱存取是文件系統存在的一個主要目的
定義: 文件系統是一個軟件,對磁盤上存在的二進制進行管理

 MBR:Master Boot Record 主引導記錄
512byte:
    bootloader:記載器,4 46bytes
    fat:每16個字節引導一個分區,
    MBR有效性標記:5A

  4個主分區
      3主,1擴展分區,引用其他額外的分區表
  邏輯分區

硬盤:

    存放位置 /dev

硬盤接口:

  IDE(ATA):並口,每個控制器可接兩個硬盤,master/slave,133MB/S
    /dev/hd[a-z]
      /dev//hda[1-4]
      邏輯分區5開始
      /dev/hda[5+]
  SCSI:Small Computer System Interface 小型計算機接口
      320mb/s
  SATA(Serial):300Mbps,600Mbps,6Gbps
  SAS:6Gbps
  DMA:Direct Memory Access直接內存訪問機制

 USB:
   /dev/sd[a-z]
       [1-4]
       [5+  ]

VFS:

文件系統:

 基本文件系統:Ext3,Ext3,Ext4,Reiserfs,xfs(支持單個巨大的文件),JFS,vfat,NTFS
 交換分區:swap
 集群文件系統:GFS2,OCFS2
 網絡文件系統:NFS,smbfs(window是CIFS)
 光盤:iso9660 

raw:

  沒有做任何的文件系統  

實現分區工具:

   fdisk sfdisk parted

fdisk

d 刪除分區
n:新建一個分區
p:列出已有分區
t:調至分區ID
l:列出內核支持的分區id
w:保存退出
q:不保存退出 
m:幫助

Centos5:partprobe
Centos6:partx kpartx

 kpartx -l /dev/sda
 kpartx -af /dev/sda
 partx -a /dev/sda

mkfs:用來格式化

-t 文件系統 :指定文件系統以後來格式化分區   


 mke2fs -t
 Ext4:mkfs -t ext4 = mkfs.ext4 = mke2fs -t ext4
 Ext3(日志文件系統):mkfs -t ext3 = mkfs.ext3 = mke2fs -t ext3 = mke2fs -j

mke2fs:

   配置文件:/etc/mke2fs.conf
   -t:指定文件類型
   -j:
   -L label: 指定卷標,
   -b{1024|2028|4096}:指定塊大小
   -i # :#個字節給指定一個indone
   -N # : 直接指定預留多少個indone
   -I # : 指定Inode大小
   -m # :預留給管理員的空間百分比,默認為5
   -O :指定分區特性

e2label

e2label /dev/SOMEDEVICE 查看卷標,
e2label /dev/SOMEDEVICE  Label 直接更改卷標

blkid

   格式:blkid /dev/SOMEDEVICE
   查看設備的屬性,UUID和TYPE

dumpe2fs 查看超級塊和是否有碎片

    -h:僅顯示超級塊中保存的信息

tune2fs:調整mke2fs的信息

      -l:查看超級塊中的信息
      -L: 設定卷標
      -m:預留管理員的空間百分比
      -j:如果原來的文件系統為ext2,-j能夠將其提升為ext3
      -o:[^]mount-options[,...] 指定默認掛載選項
      -O:[^]feature[,...] 調整分區特性
      tune2fs -o 掛載選項 設備
      tune2fs -o ^設備選項 取消   

fsck:文件系統檢測

-t 文件類型 設備
-f 強行檢測
-a 自動修復錯誤
-r 交互式修復錯誤

e2fsck -t 指定時間

   -y 自動回答為yes
   -f 強行檢測

交換分區:

  虛擬內存

mkswap 格式化為虛擬內存

  -L label 指定卷標

swapon 啟動虛擬內存

  -a 啟動所有的虛擬分區
  -p:指定優先級

swapoff 關閉虛擬內存

獲取IDE磁盤的相關信息
hdparm

-i 從操作系統讀取
-I 直接從硬盤讀取
-g 顯示硬盤的布局信息
-t 測試硬盤的性能
-T 測試硬盤的性能

*/proc/partitions 查看掛在信息
/proc/meminfo
/proc/filesystems 內核能識別的文件系統類型*

掛載:

手動掛載 :按需要掛載
按需掛載 : autofs 自動文件系統 有人訪問就掛載
開機自動掛載

命令

mount[options] -t 文件類型 -o option 設備 掛載點
 [options] : 命令的選項
   -n:不更新/etc/mtab文件
   --bind:dir1 dir2 將目錄掛載到目錄上,使得dir2也能訪問dir1的文件
   -t fstype
   -r 只讀掛載
   -w:讀寫掛載
   -L lable 以卷標指定,也可以使用LABLE="lable"
   -U UUID:使用UUID掛載,也可以使用 UUID="uuid"

-o options:掛載時啟動分區特性

     async:異步I/O
     sync:同步I/O
     noatime/atime 是否更新文件時間戳,不是特別重要的文件,建議noatime
     auto: 是否能夠被mount -a 自動掛載所有(/etc/fstab中)的文件自動掛載
     dev/nodev:是否能創建設備文件
     diratime/nodirtime:是否更新目錄的時間戳
     exec/noexec:是否允許執行二進制程序
     _netdev:網絡設備
     remount:重新掛載
     relatime/norelatime 是否實時更新
     acl 文件訪問控制列表

 ##tune2fs -o mount-option  設備 設置屬性 
 ##tune2fs -o ^mount-option 設備 取消默認掛載屬性

掛載點:掛載以後原始數據將被隱藏

      1、選擇空閒目錄
      2、必須事先存在

卸載:

    1、空閒時可以卸載 

直接使用mount可以顯示當前系統的掛載信息,也可以查看/proc/mounts或者/etc/mtab

光盤:
/dev/cdrom /dev/dvdrom /dev/sr0

 [-t iso9660]

查看占有掛載的設備的進程

     fuser -v 掛載點
     fuser -km 掛載點 強制剔除shell進程

df 磁盤空間使用狀態報告

df [options] [device]      
   -h:顯示易讀的信息
   -i:顯示indoen
   -P:全部顯示

du 顯示文件占用磁盤的情況

  -s :整個目錄大小
  -h : 顯示易讀信息

開機自動掛載

 /etc/rc.d/rc.sysinit:系統初始化腳本
 其中一個功能:掛載/etc/fstab文件中定義的文件系統掛載表


/dev/mapper/vg0-root    /                       ext4    defaults        1 1
UUID=58894bb8-5b23-4f00-baff-0c19d450bfe9 /boot                   ext4    defaults        1 2
/dev/mapper/vg0-usr     /usr                    ext4    defaults        1 2
/dev/mapper/vg0-var     /var                    ext4    defaults        1 2
/dev/mapper/vg0-swap    swap                    swap    defaults        0 0
tmpfs                   /dev/shm                tmpfs   defaults        0 0
devpts                  /dev/pts                devpts  gid=5,mode=620  0 0
sysfs                   /sys                    sysfs   defaults        0 0
proc                    /proc                   proc    defaults        0 0    
 ##要掛載的設備:設備文件,LABEL=“” UUID
 ##掛載點: swap沒有掛載點,掛載點為swap
 ##文件系統類型 
 ##掛載選項:多個選項間使用逗號分隔
 ##轉儲頻率: 
            0:從不備份
            1:每日備份                              2:每隔一天備份
 ##自檢次序

               1:首先自檢,通常只能被/使用
              2-9:順序
              0:從不自檢

交換分區:

物理內存不夠才會使用到交換分區

linux使用內存機制:/proc/sys/vm/swapiness

多大選擇:

   大於2G,小於4G =4G
   小於2G =2*物理內存
   8G+:=4G

查看內存空間使用狀態

   cat /proc/meninfo
   free 
      -m:顯示結果以MB為單位
      -g:顯示結果以GB為單

本地回環設備

  使用情況:磁盤沒有空間,創建不了新的分區,有空閒的空間可以用,交換分區不夠用

dd命令:

   bs:一次讀多大的數據量
   count:讀取次數
   if:輸入文件
   of:輸出文件
   oflag=FLAGS 寫出數據時的格式 

 #格式:  
   dd if=input_file of=output_file
   dd if=input_file of=output_file bs=#[b|k|m|g] count=#

##/dev/zero:吐01的

文件鏈接

ln 源文件 目標文件

硬鏈接:
     不能跨分區,
 指向同一個indone的兩個位置
     不能對目錄創建硬鏈接
 硬鏈接會改變文件被鏈接的次數

符號鏈接: ln -s

 符號鏈接可以跨分區
 符號鏈接文件跟源文件不同一個inode
 可以對目錄創建符號鏈接
 符號鏈接不會改變源文件被鏈接的次數

壓縮工具

zip:

  gzip:gunzip= gzip -d,zcat
      後綴:.gz
      -c 將壓縮結果送往標准輸出,可以使用重定向將其保存在壓縮文件,從而保留文件

   bzip2,bunzip2 =bzip2 -d
             -k 保留源文件
          後綴 .bz 
   xz
      後綴.xz

 -#:指定壓縮比 1-9,默認的為6

歸檔工具:

   tar [options] -f file.tar file1....

    -c: 創建歸檔
    -x:展開歸檔
    -t:不展開而直接查看被歸檔的文件
    -z:使用gzip壓縮
    -j:使用bz2壓縮
    -J:使用xz壓縮   

    通常使用 zcf  zxf jcf jxf Jcf Jxf 
     命令總結 hdparm ln,dd,df,du,gzip,gunzip,zcat,bzipw,bunzip2,bzcat,zip,unzip,xz,unxz,xzcat,tar
Copyright © Linux教程網 All Rights Reserved