国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

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

這篇具有很好參考價值的文章主要介紹了Linux xfs文件系統(tǒng)stat命令Birth字段為空的原因探究。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

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

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)建時間,該屬性是ext4的新功能(當然也適用于xfs文件系統(tǒng)),也稱為crtime或btime,但是當前兩個測試環(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.

但是上面這個差異現(xiàn)象,還是讓我有點好奇,因為兩個測試環(huán)境對應的xfs版本都是v5,如下所示。

KerryDB這臺機器的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這臺機器的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搜索了相關資料,原來,如果stat命令查看xfs文件系統(tǒng)的文件時,如果要Birth字段不顯示空置,必須滿足幾個條件,一個是xfs的版本為v5,另外,對操作系統(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這臺服務器內(nèi)核信息如下所示

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

mysqlu02這臺服務器的內(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]

1: https://git.kernel.org/pub/scm/fs/xfs/xfs-documentation.git/tree/design/XFS_Filesystem_Structure/ondisk_inode.asciidoc文章來源地址http://www.zghlxwxcb.cn/news/detail-438280.html

到了這里,關于Linux xfs文件系統(tǒng)stat命令Birth字段為空的原因探究的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權(quán),不承擔相關法律責任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領支付寶紅包贊助服務器費用

相關文章

  • Linux磁盤掛載及格式化文件系統(tǒng)格式為xfs

    Linux磁盤掛載及格式化文件系統(tǒng)格式為xfs

    注釋:重新空白掛載磁盤及重新格式化磁盤文件系統(tǒng)格式第一步需解除磁盤掛載,否則從下面第一步開始做 1、查看未掛載的磁盤: 2、磁盤新建分區(qū)? ? ?3、新建目錄,準備將分區(qū)掛載到該目錄 4、格式化分區(qū)文件系統(tǒng)格式為xfs ?5、掛載磁盤到/data目錄下 6、重新掛載所有分

    2024年02月15日
    瀏覽(32)
  • linux 文件管理命令:lsattr \ od \ paste \ stat \ tee

    作用:查看由 chattr 設置的文件屬性。 用法:lsattr [選項] [文件或者目錄] 主要選項如下: 命令 描述 -R 遞歸地列出目錄及其下內(nèi)容的屬性。 -V 顯示程序版本。 -a 列出目錄中的所有文件,包括以“.”開頭的文件的屬性。 -d 以列出其他文件的方式列出目錄的屬性,而不列出其

    2024年02月13日
    瀏覽(20)
  • 前端response為空的排查思路

    前端response為空的排查思路 首先發(fā)現(xiàn)登錄的時候,點擊了登錄沒有反應 然后發(fā)現(xiàn)post 發(fā)出的消息的response為空 觀察后端控制臺,發(fā)現(xiàn)有相應的錯誤日志,證明請求是打到了后端的。 因此考慮后端的鏈路出現(xiàn)了問題 首先去看posturl對應的controller的return 發(fā)現(xiàn)return中存在對應,那

    2024年02月16日
    瀏覽(19)
  • Linux命令:stat命令

    stat命令:顯示文件或文件系統(tǒng)的狀態(tài) 使用:stat [OPTION]… FILE 常用選項: -L, --dereference:如果一個文件是一個鏈接文件,顯示鏈接指向的文件的信息。不加-L時,默認顯示的是鏈接文件本身 -f, --file-system:顯示文件系統(tǒng)的狀態(tài)而不是文件本身的狀態(tài) -c --format=FORMAT:按照FORMAT輸

    2024年02月20日
    瀏覽(15)
  • Java 判斷字符串為空的方法

    一.判斷方法 if(s == null || s.equals(\\\"\\\")); if(s == null || s.length() == 0); if(s == null || s.isEmpty()); if (s == null || s == \\\"\\\"); 二.哪些情況會拋出空指針異常 s == null 是有必要存在的 String 類型為null, 而去進行 equals(String) 或 length() 等操作會拋出java.lang.NullPointerException. s==null 的順序必須出現(xiàn)在前面

    2024年02月16日
    瀏覽(26)
  • 淺談Java判斷變量是否為空的問題

    淺談Java判斷變量是否為空的問題

    ??Java的StringUtil.isEmpty(str)和\\\"\\\".equals(str)都是用來判斷字符串是否為空的方法,但它們有一些不同的使用場景。 ?? StringUtil.isEmpty() ??StringUtil.isEmpty(str)通常用于判斷字符串是否為null或者長度為0,如果字符串為null或者長度為0,則返回true,否則返回false。這種方式適用于需

    2023年04月11日
    瀏覽(92)
  • 蟻劍返回數(shù)據(jù)為空的幾種原因

    蟻劍返回數(shù)據(jù)為空的幾種原因

    中國蟻劍返回數(shù)據(jù)為空, 1,可能是post沒有大小寫, 2,看防火墻有沒有關, 3,代理是不是手動。 一句話木馬?php @eval($_POST[\\\"password\\\"]);? 今天連接蟻劍死活連不上到頭來發(fā)現(xiàn)post沒有大寫 然后就連接成功了 4.格式要換成base64,上下格式都要換成base64

    2024年02月11日
    瀏覽(147)
  • loadrunner錄制腳本為空Action為空的解決辦法(loadrunner12+win10)

    loadrunner錄制腳本為空Action為空的解決辦法(loadrunner12+win10)

    前言:網(wǎng)上搜索過很多解決loadrunner錄制腳本為空的解決辦法,包括設置默認瀏覽器為IE、設置Recording Options -Network-Mapping and Filtering中的Capture leve為Socket level and?WinlNet level data、下載fiddler、更改端口映射捕捉級別、關閉殺毒軟件等等、嘗試各種瀏覽器等等方法都不奏效,Actio

    2024年02月11日
    瀏覽(26)
  • 解決Pycharm的available packages為空的問題

    解決Pycharm的available packages為空的問題

    看了很多方法,添加鏡像源什么的都不行,最后終于在外網(wǎng)一個論壇找到了解決方法: (1)退出pycharm; (2)刪除project里的.idea文件夾; (3)重新打開pycharm; 問題解決: 不知道什么原因,反正問題是解決了。

    2024年02月16日
    瀏覽(24)
  • 判斷List、Map集合是否為空的方法

    1.判斷List集合是否為空 1.1List集合已經(jīng)完成初始化? 這里的List集合已經(jīng)完成了初始化操作,相當于是一個瓶子可以裝水了,但是此時還沒有水。? 控制臺輸出:List is empty. ?1.2List集合未完成初始化? 這里的List集合,還沒有進行初始化,相當于瓶子還不存在,用list.isEmpty()會產(chǎn)

    2024年02月15日
    瀏覽(27)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領取紅包,優(yōu)惠每天領

二維碼1

領取紅包

二維碼2

領紅包