Boot
嵌入式Linux:系統啟動後的日期:負責哪個文件(日期準確)
有嵌入式 linux 設備。它有 ar/o rootfs。它沒有連接到乙太網以從某些伺服器獲取時間。我習慣了這樣的設備提供日期:1.1.1970。這裡不一樣。它似乎從文件的日期戳或文件系統本身獲取時間。這似乎是創建根文件系統映像的日期。我可以想像只有一個文件(或者更好的是日期)對此負責。不是 /sbin/init …而是哪一個?
根據使用的文件系統類型,日期可能來自根文件系統的元數據,而不是來自任何特定文件。
例如,
ext2/3/4
文件系統類型在文件系統元數據中嵌入了以下時間資訊,可通過以下tune2fs -l
命令查看:# tune2fs -l /dev/sda2 tune2fs 1.44.5 (15-Dec-2018) [...] Filesystem created: Sun Jan 17 19:56:31 2021 Last mount time: Wed May 12 18:27:00 2021 Last write time: Wed May 12 18:27:35 2021 [...] Last checked: Sun Jan 17 19:56:31 2021
其他文件系統類型可能有也可能沒有類似的嵌入式時間戳。在沒有持久實時時鐘的系統上,核心可能會合理地將根文件系統的“最後寫入時間”作為目前時間的最佳可用猜測,以希望系統過去有正確的時間它以前正在執行。
在具有隻讀根文件系統的系統上,最後一次寫入時間 - 正如您已經意識到的那樣 - 接近文件系統的創建(或映像)時間。