如果我做我的執行下面的命令叫做「版本」,在Fedora Core 11編,我得到這個輸出什麼是Linux文件命令的輸出版本號字段
文件版本
版本:ELF 32位LSB的可執行文件,英特爾80386,版本1(SYSV),動態鏈接(使用共享庫),爲GNU/Linux 2.6.18 ,不可剝離
有什麼2.6的意義.18數字接近結尾,是否適用於dis向客戶討論他們應該下載哪些版本的軟件?
從我看了看,到目前爲止,這個數字絕對不是
- 內核版本
- 的libc版本的不同
- 任何與該lsb_release
我爲了讓客戶知道應該下載哪個二進制版本,他們應該通過鍵入一個命令來理想地識別它們(比如uname -a,儘管這顯然是而不是在這種情況下)。
感謝
謝謝 - 如此有效,具有與可執行的二進制兼容性的最低內核版本?我最初將內核版本打包爲libc.so上的用戶空間程序「依賴」(如ldd輸出),但我可以在那裏看到鏈接。 – 2010-01-25 16:57:07
你可以這樣說。真正的事實是更加微不足道的:並不是每個內核版本都會帶來新的系統調用,並且在正常的程序中使用來自libc的系統調用包裝器。所以這些數字在程序本身並不是硬編碼的,而是在libc中。但是如果一個內核發明了一個新的系統調用,你的程序依賴於它,你不能在一個較舊的內核上執行該程序... – 2010-01-25 17:00:14
是的 - 這就是我的想法 - 作爲一個用戶空間程序,我不關心內核 - 只有libc。但是,當然,libc必須關心內核,因爲它將用戶空間與內核橋接在一起。所以,實際上,這個數字是libc編譯的內核版本,它來自供應商(在這種情況下是Fedora)。 感謝您的時間 – 2010-01-25 17:05:39