最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

解析Linux?xfs文件系統(tǒng)stat命令Birth字段為空的原因

 更新時(shí)間:2023年05月11日 08:31:32   作者:瀟湘隱者  
這篇文章主要介紹了Linux?xfs文件系統(tǒng)stat命令Birth字段為空的原因探究,stat命令在一些平臺(tái)下Birth字段有值,而在一些平臺(tái)則為空值,這是什么原因呢,下面小編給大家詳細(xì)講解,需要的朋友可以參考下

在Linux平臺(tái)找出某個(gè)目錄下創(chuàng)建時(shí)間最早的文件,測試驗(yàn)證腳本結(jié)果是否準(zhǔn)確的過程中發(fā)現(xiàn)一個(gè)很有意思的現(xiàn)象,stat命令在一些平臺(tái)下Birth字段有值,而在一些平臺(tái)則為空值,如下所示:

RHEL 8.7下, XFS文件系統(tǒng)

[mysql@mysqlu02?~]$?more?/etc/redhat-release?
Red?Hat?Enterprise?Linux?release?8.7?(Ootpa)
[mysql@mysqlu02?~]$?touch?test.txt
[mysql@mysqlu02?~]$?stat?test.txt
??File:?test.txt
??Size:?0???????????????Blocks:?0??????????IO?Block:?4096???regular?empty?file
Device:?fd05h/64773d????Inode:?144?????????Links:?1
Access:?(0644/-rw-r--r--)??Uid:?(??801/???mysql)???Gid:?(??800/???mysql)
Access:?2023-05-06?17:09:44.428050549?+0800
Modify:?2023-05-06?17:09:44.428050549?+0800
Change:?2023-05-06?17:09:44.428050549?+0800
?Birth:?2023-05-06?17:09:44.428050549?+0800

RHEL 7.9 XFS文件系統(tǒng)

[oracle@KerryDB?~]$?more?/etc/redhat-release?
Red?Hat?Enterprise?Linux?Server?release?7.9?(Maipo)
[oracle@KerryDB?~]$?touch?test.txt
[oracle@KerryDB?~]$?stat?test.txt
??File:?‘test.txt'
??Size:?0???????????????Blocks:?0??????????IO?Block:?4096???regular?empty?file
Device:?fd03h/64771d????Inode:?4238838?????Links:?1
Access:?(0644/-rw-r--r--)??Uid:?(??700/??oracle)???Gid:?(??600/oinstall)
Access:?2023-05-06?17:03:42.964517675?+0800
Modify:?2023-05-06?17:03:42.964517675?+0800
Change:?2023-05-06?17:03:42.964517675?+0800
?Birth:?-
[oracle@KerryDB?~]$

stat命令的Birth字段表示文件的創(chuàng)建時(shí)間,該屬性是ext4的新功能(當(dāng)然也適用于xfs文件系統(tǒng)),也稱為crtime或btime,但是當(dāng)前兩個(gè)測試環(huán)境的文件系統(tǒng)為xfs,之前也在xfs文件系統(tǒng)中測試過,發(fā)現(xiàn)xfs不支持creation time. 但是從xfs v5開始,xfs已經(jīng)支持creation time,文檔[1]中已有闡述,如下所示:

/*?version?5?filesystem?(inode?version?3)?fields?start?here?*/
?????__le32????????????????????di_crc;
?????__be64????????????????????di_changecount;
?????__be64????????????????????di_lsn;
?????__be64????????????????????di_flags2;
?????__be32????????????????????di_cowextsize;
?????__u8??????????????????????di_pad2[12];
?????xfs_timestamp_t???????????di_crtime;
?????__be64????????????????????di_ino;
?????uuid_t????????????????????di_uuid;
};
*di_crtime*::
Specifies?the?time?when?this?inode?was?created.

但是上面這個(gè)差異現(xiàn)象,還是讓我有點(diǎn)好奇,因?yàn)閮蓚€(gè)測試環(huán)境對(duì)應(yīng)的xfs版本都是v5,如下所示。

KerryDB這臺(tái)機(jī)器的xfs版本信息:

Oracle用戶:

$?uname?-r
3.10.0-1160.80.1.el7.x86_64
$?dmesg?|?grep?-iE?'xfs.*\s+mounting'?|?head?-1
[????4.041026]?XFS?(dm-0):?Mounting?V5?Filesystem

root用戶:

#?xfs_db?-r?/dev/mapper/vg00-home
xfs_db>?version
versionnum?[0xb4b5+0x18a]?=?V5,NLINK,DIRV2,ATTR,ALIGN,LOGV2,EXTFLG,MOREBITS,ATTR2,LAZYSBCOUNT,PROJID32BIT,CRC,FTYPE
xfs_db>

mysqlu02這臺(tái)機(jī)器的xfs版本信息:

mysql用戶:

$?dmesg?|?grep?-iE?'xfs.*\s+mounting'?|?head?-1
[????7.654324]?XFS?(dm-0):?Mounting?V5?Filesystem

root用戶:

#?xfs_db?-r?/dev/mapper/vg00-home
xfs_db>?version
versionnum?[0xb4b5+0x18a]?=?V5,NLINK,DIRV2,ATTR,ALIGN,LOGV2,EXTFLG,MOREBITS,ATTR2,LAZYSBCOUNT,PROJID32BIT,CRC,FTYPE,FINOBT,SPARSE_INODES,REFLINK
xfs_db>

那么到底是什么原因?qū)е?。Google搜索了相關(guān)資料,原來,如果stat命令查看xfs文件系統(tǒng)的文件時(shí),如果要Birth字段不顯示空置,必須滿足幾個(gè)條件,一個(gè)是xfs的版本為v5,另外,對(duì)操作系統(tǒng)內(nèi)核版本也有要求(如下所示)

stat “now prints file creation time when supported by the file system, on GNU Linux systems with glibc >= 2.28 and kernel >= 4.11.”

KerryDB這臺(tái)服務(wù)器內(nèi)核信息如下所示

$?uname?-r
3.10.0-1160.80.1.el7.x86_64

mysqlu02這臺(tái)服務(wù)器的內(nèi)核信息如下所示:

$?uname?-r
4.18.0-425.3.1.el8.x86_64

如上所示,stat命令Birth字段為空置的操作系統(tǒng)內(nèi)核版本為3.10.0,不滿足條件kernerl >=4.11 所以stat命令顯示空值。

參考資料

1: https://git.kernel.org/pub/scm/fs/xfs/xfs-documentation.git/tree/design/XFS_Filesystem_Structure/ondisk_inode.asciidoc

到此這篇關(guān)于Linux xfs文件系統(tǒng)stat命令Birth字段為空的原因探究的文章就介紹到這了,更多相關(guān)Linux xfs文件系統(tǒng)stat命令內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Linux shell 實(shí)現(xiàn)用for循環(huán)100次的方法

    Linux shell 實(shí)現(xiàn)用for循環(huán)100次的方法

    今天小編就為大家分享一篇Linux shell 實(shí)現(xiàn)用for循環(huán)100次的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2018-06-06
  • Linux中10個(gè)有用的命令行補(bǔ)全例子

    Linux中10個(gè)有用的命令行補(bǔ)全例子

    這篇文章主要為大家詳細(xì)介紹了Linux中10個(gè)有用的命令行補(bǔ)全例子,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-10-10
  • 一些Linux Shell中的權(quán)限相關(guān)知識(shí)總結(jié)

    一些Linux Shell中的權(quán)限相關(guān)知識(shí)總結(jié)

    這篇文章主要介紹了一些Linux Shell中的權(quán)限相關(guān)知識(shí)總結(jié),使Linux入門學(xué)習(xí)中的基礎(chǔ)知識(shí),需要的朋友可以參考下
    2015-07-07
  • shell中無法使用cd命令的原因及解決方法

    shell中無法使用cd命令的原因及解決方法

    本文主要介紹了shell中無法使用cd命令的原因及解決方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-06-06
  • Linux echo命令的使用及三種實(shí)現(xiàn)方式

    Linux echo命令的使用及三種實(shí)現(xiàn)方式

    這篇文章主要介紹了Linux echo命令的使用及三種實(shí)現(xiàn)方式,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2019-05-05
  • 詳解SFTP命令

    詳解SFTP命令

    SFTP(Secure?File?Transfer?Protocol,安全文件傳輸協(xié)議)是一種基于可靠數(shù)據(jù)流(data?stream),提供文件存取和管理的網(wǎng)絡(luò)傳輸協(xié)議,這篇文章主要介紹了SFTP命令,需要的朋友可以參考下
    2022-09-09
  • Shell腳本中計(jì)算字符串長度的5種方法

    Shell腳本中計(jì)算字符串長度的5種方法

    這篇文章主要介紹了Shell腳本中計(jì)算字符串長度的5種方法,來自于個(gè)人Shell腳本長期的開發(fā)經(jīng)驗(yàn),需要的朋友可以參考下
    2014-06-06
  • shell腳本中 /dev/null 的用法小結(jié)

    shell腳本中 /dev/null 的用法小結(jié)

    /dev/null 通常被用于丟棄不需要的輸出流,或作為用于輸入流的空文件,這些操作通常由重定向完成,任何你想丟棄的數(shù)據(jù)都可以寫入其中,本文重點(diǎn)給大家介紹shell腳本中 /dev/null 的用法小結(jié),感興趣的朋友一起看看吧
    2021-09-09
  • Shell腳本定時(shí)備份清除運(yùn)行系統(tǒng)日志的代碼

    Shell腳本定時(shí)備份清除運(yùn)行系統(tǒng)日志的代碼

    寫備份并清除老日志Shell腳本,并附帶一個(gè)清除日志(log)的shell腳本代碼,需要的朋友可以參考下
    2013-02-02
  • Shell編程之/bin/bash和/bin/sh的區(qū)別淺析

    Shell編程之/bin/bash和/bin/sh的區(qū)別淺析

    在redhat的系統(tǒng)中,sh是一個(gè)到bash的軟鏈接,但是如果運(yùn)行如下程序會(huì)產(chǎn)生不一樣的結(jié)果,下面這篇文章主要給大家介紹了關(guān)于Shell編程之/bin/bash和/bin/sh的區(qū)別的相關(guān)資料,需要的朋友可以參考下
    2022-07-07

最新評(píng)論

凤翔县| 金阳县| 康定县| 启东市| 邳州市| 正宁县| 饶平县| 绥宁县| 临西县| 万源市| 南和县| 义马市| 哈密市| 吉安县| 肃南| 页游| 洛扎县| 西峡县| 双鸭山市| 从化市| 罗平县| 高邮市| 麻江县| 永德县| 玉林市| 阜康市| 兴安盟| 疏勒县| 定襄县| 建平县| 科技| 平乡县| 合水县| 炎陵县| 佛冈县| 莎车县| 嵩明县| 泰兴市| 民乐县| 会理县| 乌兰浩特市|