主頁 > 作業系統 > 磁盤管理

磁盤管理

2020-09-21 22:36:12 作業系統

磁盤管理

懶惰的文字搬運工,

一、磁盤基礎概念

  對檔案操作指令

    open() read() write() close()

 

  設備號碼:

    主設備號:major     標識設備型別

    次設備號:minor     在同一設備型別設備下區分不同設備

    如果主設備號和次設備號一致,說明兩者就是同一個設備,即使檔案的INODE不一樣也是同一個設備

  硬碟介面及速率

    IDE        133MB/S          并口

    SCSI      640MB/S          并口

    STAT     6Gbps等同于768MB/S    串口

    SAS       6Gbps等同于768MB/S    串口

    USB       480MB/S

    M.2     450MB/s

      NVME  3200 MB/s

    注意,速度不單單是由介面決定了,

    并口介面:同一線纜可以接多個設備

    串口介面:同一線纜只能接一個設備

 

  服務器硬碟大小:

    LFF 3.5寸,早期都是這種,和普通家用電腦一樣

    SFF 2.5寸,不同與2.5英寸的筆記本硬碟

 

  機械硬碟:

    生產中一般都是用機械硬碟,容量大,性價比高,由磁頭、機械臂、盤片組成

        磁頭: header     磁頭數=盤面數

        磁道: cylinder      磁道數=柱面數  

        扇區: secotr 512位元組

    在centos7及以后版本就不在按照柱面劃分磁區了,而以扇區作為劃分磁區的單位,更加精細化,

    centos5\6還是以柱面為單位進行劃分磁區

    機械硬碟轉速 5400 7200 10000 15000 RPM 每分鐘轉多少圈

 

  尋址方式:

    CHS: 早先方式,已經淘汰

      CHS的意思就是先確認柱面(Cylinder),再確認磁頭(Header),最后確認扇區(Sector),先柱面再磁頭再扇區

      CHS采用24位尋址

        其中前10位表示磁道,中間8位表示磁頭,后6位表示扇區

             2^10*2^8*2^6=1024*256*64=16,777,216

      磁盤最大容量:

            16,777,216*512=8,589,934,592?=8,388,608?K=8,192M=8G

 

    LBA:

      LBA是一個整數,通過轉換成CHS格式繼續完成磁盤具體尋址

        ATA-1規范采用28位LBA,同樣每個扇區512位元組,最大128GB

        ATA-6規范采用48位LBA,同樣每個扇區512位元組,最大128PB

      最大尋址個數:2^48

      磁盤最大容量:2^48*512=131,072?T=128P

 

    磁道號越小,速度越快,磁道號越大,速度越快,

    訪問資料的時間=尋道的時間 + 盤片轉圈的時間 + 起頭讀資料的時間

          也可以把盤片轉圈的時間算到尋道的時間內

 

  硬碟的命名

    centos5中: IDE 稱為 hd## hda1 hda2 hdb1 hdc1...

          STAT稱為 sd## sda1 sda2 sdb1 sdb2...

          USB 稱為 sd## sda1 sda2 sdb1 sdb2...

          SAS 稱為 sd## sda1 sda2 sdb1 sdb2...

          SCSI稱為 sd## sda1 sda2 sdb1 sdb2...

    centos6\7\8中: 無論IDE還是STAT SCSI SAS都稱為sd##

 

二、磁盤磁區:

(一)、添加硬碟

  查看硬碟的方式:

    cat  /proc/partitions     查看記憶體中的磁區表資訊

    ll  /dev/sd*          查看記憶體中的設備資訊

    lsblk             查看記憶體中的設備磁區資訊

    fdisk  -l           查看硬碟中的磁區資訊

 

  在不關機重啟的下識別硬碟

    echo '---' > /sys/class/scsi_host/host0/scan

        其中host0可以改成host1 host2 host3 host4

        其中scsi_host標識是scsi介面型別的磁盤

    小技巧:可以定義成別名

        alias scandisk='echo '\''- - -'\'' > /sys/class/scsi_host/host2/scan;echo '\''- - -'\'' > /sys/class/scsi_host/host0/scan' #表示數字0-n

 

  判斷硬碟型別:

    lsblk -d -o name,rota 1  表示機械硬碟 0表示固態硬碟

        -f   可以顯示對應的檔案系統

    cat /sys/block 1  表示機械硬碟 0表示固態硬碟

 

(二)、磁區介紹

  磁盤磁區格式化分為低級格式化和高級格式化,

    低級格式化主要是磁盤生產廠商再磁盤出廠時進行的,主要時劃分磁道,生成簇,

    高級格式化主要是用來創建檔案系統,

 

  磁區的優勢:

      優化I/O性能

      實作磁盤空間配額限制

      提高修復速度

      隔離系統和程式

      安裝多個OS

      采用不同檔案系統

 

  查看磁區資訊

      cat /proc/partitions     查看記憶體中的磁區表資訊

      ll /dev/sd*          查看記憶體中的設備資訊

      lsblk            查看記憶體中的設備磁區資訊

      fdisk -l           查看硬碟中的磁區資訊

 

  現在磁盤磁區格式有兩種型別,一種是早期的MBR型別,一種是現在較為流行的GPT型別,

  MBR型別:

    MBR,又稱為主引導記錄(Master Boot Record),位于0柱面,0磁頭,0扇區當中,使用了32位二進制來表示扇區數,也就是最大只能支持2TB大小的磁盤,

    該扇區共計512位元組,分成三個部分,

    第一部分:前446位元組,用來存放作業系統引導程式(bootloader),這是引導某個磁區上的作業系統起來的第一段程式,

    第二部分:后64位元組,用來存放磁區表,每16個位元組標識一個主磁區,一共可以標識4個主磁區,

      其中每個磁區16個位元組介紹:

          第1個位元組:引導標志,十六進制80表示活動磁區,00表示非活動磁區,在一個硬碟上只能由一個活動磁區,標識此磁區上存在作業系統,

            第2~4個位元組:描述了磁區起始位置的磁頭號,柱面號,扇區號,其中第2個位元組的8位標識起始磁頭號,第3個位元組低6位標識起始扇區號,第3個位元組高2位和第4個位元組的8位標識起始柱面號,這3個位元組也就是磁區起始位置的CHS描述方法

          第5個位元組:磁區型別,0標識磁區未使用,83表示linux型別磁區,82表示swap磁區,8e表示LVM邏輯卷,05表示擴展磁區

          第6~8個位元組:描述了磁區結束位置的磁頭好,柱面號,扇區號,其中第6個位元組的8位標識結束磁頭號,第7個位元組低6位標識結束扇區號,低7個位元組高2位和第8個位元組的8位標識結束柱面號,這3個位元組也就是磁區結束位置的CHS描述方法

          第9~12個位元組:使用LBA方式描述了磁區的起始位置,

          第13~16個位元組,使用LBA方式描述了磁區的結束位置,

     

    第三部分:最后2個位元組,有效標識位,55AA表示磁區表有效,

 

    如果4個磁區不夠使用,可以拿出一個主磁區來擴展使用,變成擴展磁區,擴展磁區的16個位元組里面記錄了另外一段磁盤空間,利用另外一段磁盤空間的EBR(前512位元組)記錄磁區資訊,

    其中EBR的前446位元組未使用,中間64位元組,最后2位元組的結束表示,

    而中間64位元組中,

        第一個16個位元組記錄了當前邏輯磁區的起始位置、結束位置、磁盤型別等等,同MBR型別;

        第二個16個位元組記錄了下一個邏輯磁區的起始位置、結束位置、磁盤型別等,同MBR

        第三個16個位元組,未使用

        第四個16個位元組,未使用

    這樣就可以突破只能記錄4個磁區的限制了,同時也就解釋了邏輯磁區不允許中間有間隔,如果刪了sda5后,后面的sda6就會自動變成sda5的原因,因為邏輯磁區是靠前一個邏輯磁區中的EBR記錄下一個邏輯磁區的起始位置的,

    MBR磁區中一塊硬碟最多有4個主磁區或者也可以有最多3個主磁區+1個擴展磁區(N個邏輯磁區)

 

    例如,  我們想劃分出6個磁區,就有下面幾種可行方案

        一個主磁區和五個擴展磁區:1P + 5L

            sda1 + sda5 + sda6 + sda7 + sda8 + sda9

        兩個主磁區和四個擴展磁區:2P + 4L

            sda1 + sda2 + sda5 + sda6 + sda7 + sda8

        三個主磁區和三個擴展磁區:3P + 3L

            sda1 + sda2 + sda3 + sda5 + sda6 + sda7

    備注:所有的邏輯磁區一定是從5號開始的,前1~4可以是主磁區和擴展磁區,

 

 

 

  GPT型別 :

    GPT型別出來的所有型別都是主磁區,GPT突破了MBR只能分4個主磁區的限制,最大允許128個主磁區,

    分為4個區域:EFI資訊區(GPT頭),磁區表,GPT磁區區域、備份區域,

      GPT頭:前512位元組為保護的MBR磁區,其作用是定位磁區表的位置和大小,GPT頭還包括GPT頭和磁區表的校驗和

      磁區表:這個區域由GPT頭定義,一般占用磁盤LBA2~LBA33號扇區,每個扇區可儲存4個主磁區的磁區資訊,所以一共可以分128個主磁區,

          每個磁區由起始地址、結束地址、型別值、名字、屬性標志、GUID值組成,

      GPT磁區區域:資料區,這個區域的起始地址和結束地址由GPT頭定義,

      備份區:備份區域我i與磁盤的尾部,包含GPT頭和磁區表的備份,一共使用了最后的33個扇區,最后一個扇區備份GPT頭,倒數第二個扇區備份LBA2的扇區內容,等等倒敘備份,

 

   老式的BIOS不支持GTP,需要使用UEFI,所以就由了兩種組合

        BIOS  +  MBR

        UEFI  +  GPT

 

  BIOS和UEFI區別

    BIOS采用了16位匯編語言撰寫,只能運行在實模式(記憶體尋址方式由16位段暫存器的內容乘以16(10H)當欄位基地址,加上16位偏移地址形成20位的物理地址)下,可訪問的記憶體空間為1MB,只支持字符操作界面

    UEFI采用32位或者64位的C語言撰寫,突破了實模式的限制,可以達到最大的尋址空間,支持圖形操作界面,使用檔案方式保存資訊,支持GPT磁區啟動,適合和較新的系統和硬體的配合使用

 

(三)、磁區的相關命令

    fdisk 管理MBR磁區

    gdisk 管理GPT磁區

    parted 高級磁區操作,可以是互動或非互動式 ,慎重使用,沒有保存這一說法,直接就生效

 

  parted命令

      備注,此命令是立即生效,小心謹慎,centos6上不能使用parted命令

     pirnt           列印磁區表

     mklabel [gpt|msdos]    指定卷標

    mkpart [primary] # ##     創建primary磁區,大小是從第#個扇區到第##個扇區

    rm #            洗掉第幾個磁區

 

  fdisk命令

      fdisk [option] DEVICE

    查看磁區資訊

      fdisk -l DEVICE 查看DEVICE設備上的磁區資訊,DEVICE可以省略,標識列出系統所有硬碟的磁區資訊

    管理磁區資訊

      注意:管理磁區時,DEVICE不能省,必須指定,

      m   幫助

      w   保存

      q   不保存退出

      p   顯示磁區表

      n   新增磁區

      d   洗掉磁區

      t   更改磁區型別,也就是更改system ID

      l   可以顯示磁區型別

 

  gdisk命令

    查看磁區資訊

      gdisk -l DEVICE 查看DEVICE設備上的磁區資訊,DEVICE可以省略,標識列出系統所有硬碟的磁區資訊

    管理磁區資訊

      m   幫助

      w   保存

      q   不保存退出

      p   顯示磁區表

      n   新增磁區

      d   洗掉磁區

      t   更改磁區型別,也就是更改system ID

      l   可以顯示磁區型別

 

三、檔案系統創建

  mkfs命令

    -f       強制創建檔案系統

    -L "LABEL"   創建卷標,最好加上引號

    -t TYPE     指定創建的檔案系統型別

    -b ##     指定塊大小,[1024|2048|4096]也就是指定檔案系統分配的最小單位

    

    mkfs.xfs DEVICE   創建xfs檔案檔案系統

    mkfs.ext4 DEVICE  創建ext4檔案系統

    mkfs -t xfs     創建xfs檔案系統

    mkfs -t ext4     創建ext4檔案系統

  uuidgen命令

    用于隨機生成UUID

  tune2fs命令  

    -l DEVICE      查看DEVICE設備的資訊

    -U DEVICE     更改設備的UUID

  dumpe2fs命令

    dumpe2fs  DEVICE 查看DEVICE設備的分組資訊

  xfs_info命令

    xfs_info DEVICE 查看DEVICE設備的資訊

  blkid命令

    可以查看塊設備的UUID和設備型別,沒有創建檔案系統的磁區,這個命令是查不出的

  findfs命令

    可以查找設備

 

 

四、檔案系統檢測和修復

    注意:一定不要在掛載狀態下執行修復命令

  fsck命令

    fsc.FS_TYPE或 fsck -t FS_TYPE

    選項:

      -a     自動修復錯誤

      -r     互動式修復錯誤

  e2fsck命令

    選項:

      -f     強制修復

      -y     自動回答yes

      -p     自動進行安全的修復檔案系統問題

  xfs_repair命令

    xfs檔案系統專用檢測修復工具

    選項:

      -f     修復檔案

      -n     只檢查

      -d     允許修復只讀的掛載設備,在單用戶下修復 / 時shiyong ,然后立即重啟

 

 

五、掛載

  關于掛載,在centos6當中每次掛載都會把資訊寫入到/etc/mtab檔案中,

  

  cat /proc/mounts可以讀取實時掛載資訊

 

  mount命令

    一個掛載點,同一時間只能掛載一個設備,一個掛載點同時掛載多個設備,但只能看到最后一次掛載的設備內容

    如果一個未掛載的掛載點內有檔案,掛載后,此掛載點內原來檔案會暫時無法訪問,作為掛載點的目錄一般未空目錄

    mount命令讀取的也是/etc/mtab的資訊,可以使用mount -n選項不更新寫入到/etc/mtab檔案

      mount   [OPTIONS]   掛在設備   掛載點

    mount 單命令可以查看已經掛載的設備資訊

    選項:

      -t TYPE     指定掛載的設備型別

      -r        掛載成只讀

      -w       掛在成讀寫

      -n       不更新/etc/mtab

      -a        自動掛載,只會掛載那些未掛載的設備,掛載上的設備不會重新掛載,

      -L  '卷標名'   使用卷標名掛載

      -U 'UUID'     使用UUID掛載

      -B 或 --bind    把一個檔案夾掛載到另外一個檔案夾

      -o OPTIONS

          remount       重新掛在

          rw            讀寫掛載

          ro           只讀掛載

          async/sync      是否異步寫入,建議asnyc

          atime/notime    是否更新檔案或目錄的訪問時間,建議noaime

          diratime/nodiratime   是否更新目錄的訪問時間

          exec/noexec     里面的可執行檔案直接運行,但是還可以通過腳本呼叫,間接運行

          suid/nosuid      是否支持suid

          user/nouiser     是否支持普通檔案掛載設備

          loop 掛        載成回環設備檔案

          defaults       默認

          nouuid       不檢測UUID掛載

 

      掛載設備:

          DEVICE

          UUID=

          LABEL=

       有部分特殊的設備:tmpfs swap

  lsof命令

    lsof  /PATH/TO/SOMEFILE 可以查看誰在使用此檔案

  fuser命令

    -V     顯示誰在使用

    -k     結束

    -m      指定掛載點

  findmnt命令

    判斷目錄是不是掛載點,然后判斷echo $?判斷狀態

      如果是掛載點,就會把掛載點的資訊都顯示出來

      如果不是掛載點,就不會又任何顯示

    可以使用$?判斷狀態,0表示又是掛載點,1表示不是掛載點

    示例

[root@CentOS7 ~]# findmnt /media

[root@CentOS7 ~]# echo $?

1

[root@CentOS7 ~]# findmnt /boot

TARGET SOURCE    FSTYPE OPTIONS

/boot  /dev/sda1 xfs    rw,relatime,attr2,inode64,noquota

[root@CentOS7 ~]# echo $?

0

[root@CentOS7 ~]# echo $?

0

[root@CentOS7 ~]# findmnt /media

[root@CentOS7 ~]# echo $?

1

 

  umount命令

    取消掛載

   關于快取和緩沖

    緩沖區buffer 緩沖寫入到磁盤的資料,寫入快取

    快取cache 快取資料到記憶體當中,主要用來加速資料從硬碟中讀取的速度,讀入快取,

    在centos6中還是區分buffer和cache了,centos7以后的版本就不區分了,復用相同檔案內容,

      swap建議值:

        低于2GB 建議2倍記憶體大小

        2~4G 建議1倍記憶體大小

        4~ 4G或0.5倍記憶體大小

    swap是根據/proc/sys/vm/swappiness的值決定是否啟用swap

    /proc/sys/vm/swapiness的值表示剩余記憶體達到此值的百分比就啟用

  mkswap命令

    用來格式化swap磁區

  swapon命令

    選項:

      -a      自動掛載swap磁區

      -s    可以查看掛載的swap磁區,實際上-s選項就是顯示/proc/swaps檔案的內容,而且可以顯示多個設備的優先級(priority)

   swapoff命令

    swapoff DEVICE禁用某個swap設備

  mkisofs命令

    mkisofs -r -o /root/etc.iso /etc 把某個目錄打包成iso鏡像檔案

  lsusb命令

    查看usb設備是否識別

  dmesg命令

    可以查看硬體設備

  df命令

    可以查看已掛載的各個磁區使用資訊,包括資料和元資料的占用

    選項:

      -h     人性化顯示

      -i      顯示inode節點資訊

      -P     按POSIX規范顯示

      -T     顯示出檔案系統型別

  du命令

    可以顯示檔案或目錄的資料實際使用大小

    選項:

      -h     人性化顯示,默認是以k為單位顯示

      -s     求和,只顯示總共大小

 

六、RAID陣列

  RAID0 多個硬碟組合成大的虛擬硬碟,虛擬硬碟之和就是多個硬碟的大小總和,

    讀性能提升,寫性能提升,如果一個磁盤損壞,資料就徹底報廢,沒有任何容錯性,所以生產中不會使用,

  RAID1 多個硬碟互為鏡像,主要用來防止單點失敗,這和備份不一樣,僅是用來防止一個硬碟損壞,

    讀性能提升,寫性能略有下降,

  RAID4 其中一個硬碟固定只放了校驗位,當其中一塊硬碟壞了,可以通過異或計算出來,也就是允許壞一塊硬碟,存放校驗位的硬碟經常損壞

    讀性能提升,寫性能提升

  RAID5 多塊硬碟輪流存放校驗位,只允許壞一塊硬碟,

    讀性能提升,寫性能提升

  RAID6     和RAID5差不多,只不多有兩塊硬碟用來存放校驗位

  RAID10   先RAID1 再RAID0  先鏡像 再組合  一般都用這個

  RAID01   先RAID0 再RAID1  先組合 再鏡像 現在不用這個了

  RAID50   先RAID5 再RAID0

  JBOD 先用使用一個硬碟,再使用一個,依次,主要用來組合不同容量的硬碟

 

七、LVM邏輯卷

(一)邏輯卷創建  

  先創建PE,再創建卷組,再創建邏輯卷,格式化,掛載就能使用了,

  pvcreate命令

    pvcreate DEVICE1 DEVICE2 創建PE

  pvs命令

    可以顯示簡要pe資訊

  pvdisplay命令

    可以顯示詳細的pe資訊

 

  vgcreate命令

     創建邏輯卷組

  vgs命令

    可以顯示簡要pv資訊

  vgdisplay命令

    可以顯示詳細pv資訊

  vgextend命令

    vgextend  VG_NAME  DEVICE 把PE物理卷加入到vg卷組中

 

  lvcreate命令

    lvcreate -n LV_NAME -L 600M VG_NAME

      -n   指定邏輯卷的名稱

      -l   指定PE的個數

      -L   指定容量大小,容量是PE的整數倍,不一定會剛剛好600M

      -s   創建快照

    lvcreate -n binlogo_snapshot -s -L 100M /dev/vg0/binlog

  lvs命令

    可以顯示簡要lv資訊

  lvdispaly命令

    可以詳細顯示lv的資訊

  lvextend命令

    lvextend -L +100%free  VG_NAME

    -l   指定PE的個數 +100%vg表示全部空間

    -L   指定容量大小,容量是PE的整數倍,不一定會剛剛好600M  +100%free表示全部空間

    -r   自動擴展檔案系統,無論什么檔案系統,

  同步檔案系統邊界命令

    resizee2fs LV_DEVICE        同步ext系列檔案系統

    xfs_growfs 掛載點          同步xfs檔案系統

 

(二)邏輯卷縮減 

    ext4檔案系統才支持縮減,xfs檔案系統不支持縮減

      縮減只支持離線縮減,先取消掛載

      縮減有風險,建議先備份

  縮減邏輯卷五大步

    第一步、取消掛載

    第二步、檢查檔案系統

        e2fsck DEVICE

    第三步、縮減檔案系統

        resize2fs DEVICE ###

    第四步、縮減邏輯卷

        lvreduce -L ### DEVICE

    第五步、重新掛載

 

(三)邏輯卷創建快照 

    lvcreate -n binlogo_snapshot -s -L 100M /dev/vg0/binlog 創建快照

    lvcreate --merge /dev/vg0/binlog_snapshot 恢復快照,合并快照之前先要取消掛載

    再掛載xfs檔案系統型別的快照的時候,需要使用-o -nouuid選項,一定要ro掛載  ext系列檔案系統,不用加-o -nouuid直接就能掛載

  快照特點:

      備份速度塊

      應用場景是測驗環境,不能完全代替備份

      創建快照之后性能可能會略有下降

 (四)邏輯卷洗掉 

  從卷組總拆除硬碟

    pvmove DEVICE       意思就是把DEVICE上面的資料移動到別的設備上

    vgreduce vg0 DEVICE     意思就是把DEVICE設備從vg0中洗掉

    pvromove DEVICE        從PE中移除DEVICE設備

  邏輯卷洗掉

    先取消掛載

    再洗掉邏輯卷

    再洗掉卷組

    在洗掉物理

轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/100143.html

標籤:Linux

上一篇:Shell筆記:for,while和until回圈

下一篇:Parallels Desktop的安裝

標籤雲
其他(157675) Python(38076) JavaScript(25376) Java(17977) C(15215) 區塊鏈(8255) C#(7972) AI(7469) 爪哇(7425) MySQL(7132) html(6777) 基礎類(6313) sql(6102) 熊猫(6058) PHP(5869) 数组(5741) R(5409) Linux(5327) 反应(5209) 腳本語言(PerlPython)(5129) 非技術區(4971) Android(4554) 数据框(4311) css(4259) 节点.js(4032) C語言(3288) json(3245) 列表(3129) 扑(3119) C++語言(3117) 安卓(2998) 打字稿(2995) VBA(2789) Java相關(2746) 疑難問題(2699) 细绳(2522) 單片機工控(2479) iOS(2429) ASP.NET(2402) MongoDB(2323) 麻木的(2285) 正则表达式(2254) 字典(2211) 循环(2198) 迅速(2185) 擅长(2169) 镖(2155) 功能(1967) .NET技术(1958) Web開發(1951) python-3.x(1918) HtmlCss(1915) 弹簧靴(1913) C++(1909) xml(1889) PostgreSQL(1872) .NETCore(1853) 谷歌表格(1846) Unity3D(1843) for循环(1842)

熱門瀏覽
  • CA和證書

    1、在 CentOS7 中使用 gpg 創建 RSA 非對稱密鑰對 gpg --gen-key #Centos上生成公鑰/密鑰對(存放在家目錄.gnupg/) 2、將 CentOS7 匯出的公鑰,拷貝到 CentOS8 中,在 CentOS8 中使用 CentOS7 的公鑰加密一個檔案 gpg -a ......

    uj5u.com 2020-09-10 00:09:53 more
  • Kubernetes K8S之資源控制器Job和CronJob詳解

    Kubernetes的資源控制器Job和CronJob詳解與示例 ......

    uj5u.com 2020-09-10 00:10:45 more
  • VMware下安裝CentOS

    VMware下安裝CentOS 一、軟硬體準備 1 Centos鏡像準備 1.1 CentOS鏡像下載地址 下載地址 1.2 CentOS鏡像下載程序 點擊下載地址進入如下圖的網站,選擇需要下載的版本,這里選擇的是Centos8,點擊如圖所示。 決定選擇Centos8后,選擇想要的鏡像源進行下載,此 ......

    uj5u.com 2020-09-10 00:12:10 more
  • 如何使用Grep命令查找多個字串

    如何使用Grep 命令查找多個字串 大家好,我是良許! 今天向大家介紹一個非常有用的技巧,那就是使用 grep 命令查找多個字串。 簡單介紹一下,grep 命令可以理解為是一個功能強大的命令列工具,可以用它在一個或多個輸入檔案中搜索與正則運算式相匹配的文本,然后再將每個匹配的文本用標準輸出的格式 ......

    uj5u.com 2020-09-10 00:12:28 more
  • git配置http代理

    git配置http代理 經常遇到克隆 github 慢的問題,這里記錄一下幾種配置 git 代理的方法,解決 clone github 過慢。 目錄 git配置代理 git單獨配置github代理 git配置全域代理 配置終端環境變數 git配置代理 主要使用 git config 命令 git單獨 ......

    uj5u.com 2020-09-10 00:12:33 more
  • Linux npm install 裝包時提示Error EACCES permission denied解

    npm install 裝包時提示Error EACCES permission denied解決辦法 ......

    uj5u.com 2020-09-10 00:12:53 more
  • Centos 7下安裝nginx,使用yum install nginx,提示沒有可用的軟體包

    Centos 7下安裝nginx,使用yum install nginx,提示沒有可用的軟體包。 18 (flaskApi) [root@67 flaskDemo]# yum -y install nginx 19 已加載插件:fastestmirror, langpacks 20 Loading ......

    uj5u.com 2020-09-10 00:13:13 more
  • Linux查看服務器暴力破解ssh IP

    在公網的服務器上經常遇到別人爆破你服務器的22埠,用來挖礦或者干其他嘿嘿嘿的事情~ 這種情況下正確的做法是: 修改默認ssh的22埠 使用設定密鑰登錄或者白名單ip登錄 建議服務器密碼為復雜密碼 創建普通用戶登錄服務器(root權限過大) 建立堡壘機,實作統一管理服務器 統計爆破IP [root ......

    uj5u.com 2020-09-10 00:13:17 more
  • CentOS 7系統常見快捷鍵操作方式

    Linux系統中一些常見的快捷方式,可有效提高操作效率,在某些時刻也能避免操作失誤帶來的問題。 ......

    uj5u.com 2020-09-10 00:13:31 more
  • CentOS 7作業系統目錄結構介紹

    作業系統存在著大量的資料檔案資訊,相應檔案資訊會存在于系統相應目錄中,為了更好的管理資料資訊,會將系統進行一些目錄規劃,不同目錄存放不同的資源。 ......

    uj5u.com 2020-09-10 00:13:35 more
最新发布
  • vim的常用命令

    Vim的6種基本模式 1. 普通模式在普通模式中,用的編輯器命令,比如移動游標,洗掉文本等等。這也是Vim啟動后的默認模式。這正好和許多新用戶期待的操作方式相反(大多數編輯器默認模式為插入模式)。 2. 插入模式在這個模式中,大多數按鍵都會向文本緩沖中插入文本。大多數新用戶希望文本編輯器編輯程序中一 ......

    uj5u.com 2023-04-20 08:43:21 more
  • vim的常用命令

    Vim的6種基本模式 1. 普通模式在普通模式中,用的編輯器命令,比如移動游標,洗掉文本等等。這也是Vim啟動后的默認模式。這正好和許多新用戶期待的操作方式相反(大多數編輯器默認模式為插入模式)。 2. 插入模式在這個模式中,大多數按鍵都會向文本緩沖中插入文本。大多數新用戶希望文本編輯器編輯程序中一 ......

    uj5u.com 2023-04-20 08:42:36 more
  • docker學習

    ###Docker概述 真實專案部署環境可能非常復雜,傳統發布專案一個只需要一個jar包,運行環境需要單獨部署。而通過Docker可將jar包和相關環境(如jdk,redis,Hadoop...)等打包到docker鏡像里,將鏡像發布到Docker倉庫,部署時下載發布的鏡像,直接運行發布的鏡像即可。 ......

    uj5u.com 2023-04-19 09:26:53 more
  • 設定Windows主機的瀏覽器為wls2的默認瀏覽器

    這里以Chrome為例。 1. 準備作業 wsl是可以使用Windows主機上安裝的exe程式,出于安全考慮,默認情況下改功能是無法使用。要使用的話,終端需要以管理員權限啟動。 我這里以Windows Terminal為例,介紹如何默認使用管理員權限打開終端,具體操作如下圖所示: 2. 操作 wsl ......

    uj5u.com 2023-04-19 09:25:49 more
  • docker學習

    ###Docker概述 真實專案部署環境可能非常復雜,傳統發布專案一個只需要一個jar包,運行環境需要單獨部署。而通過Docker可將jar包和相關環境(如jdk,redis,Hadoop...)等打包到docker鏡像里,將鏡像發布到Docker倉庫,部署時下載發布的鏡像,直接運行發布的鏡像即可。 ......

    uj5u.com 2023-04-19 09:19:04 more
  • Linux學習筆記

    IP地址和主機名 IP地址 ifconfig可以用來查詢本機的IP地址,如果不能使用,可以通過install net-tools安裝。 Centos系統下ens33表示主網卡;inet后表示IP地址;lo表示本地回環網卡; 127.0.0.1表示代指本機;0.0.0.0可以用于代指本機,同時在放行設 ......

    uj5u.com 2023-04-18 06:52:01 more
  • 解決linux系統的kdump服務無法啟動的問題

    問題:專案麒麟系統服務器的kdump服務無法啟動,沒有相關日志無法定位問題。 1、查看服務狀態是關閉的,重啟系統也無法啟動 systemctl status kdump 2、修改grub引數,修改“crashkernel”為“512M(有的機器數值太大太小都會導致報錯,建議從128M開始試,或者加個 ......

    uj5u.com 2023-04-12 09:59:50 more
  • 解決linux系統的kdump服務無法啟動的問題

    問題:專案麒麟系統服務器的kdump服務無法啟動,沒有相關日志無法定位問題。 1、查看服務狀態是關閉的,重啟系統也無法啟動 systemctl status kdump 2、修改grub引數,修改“crashkernel”為“512M(有的機器數值太大太小都會導致報錯,建議從128M開始試,或者加個 ......

    uj5u.com 2023-04-12 09:59:01 more
  • 你是不是暴露了?

    作者:袁首京 原創文章,轉載時請保留此宣告,并給出原文連接。 如果您是計算機相關從業人員,那么應該經歷不止一次網路安全專項檢查了,你肯定是收到過資訊系統技術檢測報告,要求你加強風險監測,確保你提供的系統服務堅實可靠了。 沒檢測到問題還好,檢測到問題的話,有些處理起來還是挺麻煩的,尤其是線上正在運行的 ......

    uj5u.com 2023-04-05 16:52:56 more
  • 細節拉滿,80 張圖帶你一步一步推演 slab 記憶體池的設計與實作

    1. 前文回顧 在之前的幾篇記憶體管理系列文章中,筆者帶大家從宏觀角度完整地梳理了一遍 Linux 記憶體分配的整個鏈路,本文的主題依然是記憶體分配,這一次我們會從微觀的角度來探秘一下 Linux 內核中用于零散小記憶體塊分配的記憶體池 —— slab 分配器。 在本小節中,筆者還是按照以往的風格先帶大家簡單 ......

    uj5u.com 2023-04-05 16:44:11 more