linux
的用文件系統都好像對於數據恢復並不友好。
建議聯系數據恢復公司進行處理。建議重要數據設置自動備份防止丟失。
❷ Linux文件系統的演變
說起文件系統的演變與發展,不得不從最早期的 Minix 操作系統開始說起。
Minix(MINI-UNIX) 是早期的一個迷你版本的 「類UNIX操作系統」 ,由荷蘭阿姆斯特丹自由大學計算機科學系的塔能鮑姆教授自行開發的可以與UNIX操作系統兼容的一個操作系統,因其小型,該操作系統被命名為 MINIX 。
MINIX 系統在設計之初,採用程序模塊化的思想,將一眾程序放在用戶空間運行,而不是在操作系統的內核中運行。如 「文件系統」 和 「存儲器管理」 等程序均是如此。
受 MINIX 操作系統的影響,早期的Linux操作系統也曾採用由塔能鮑姆教授開發的MINIX的文件系統。
然而,不只因為早期的 MINIX 操作系統並為真正意義上的開源軟體(在保護著作的前提下進行收費),而且基於 MINIX 的內部使用16位的偏移量,使文件系統能夠支持的最大空間只有64MB,支持的最大文件名為14字元,導致後來 Linux 操作系統轉而開發出了 ext(Extended File System) 第一代可擴展文件系統。
ext(Extended File System) 為Linux系統最早的擴展文件系統,採用 「UNIX文件系統」 的元數據結構,克服了 「MINIX」 操作系統性能不佳的問題。
ext 文件系統採用 虛擬文件系統(VFS) ,最大可支持2GB的文件系統。與 MINIX 文件系統不同的是, ext 可以使用最高2GB的存儲空間並同時處理255個字元的文件名。
但,在 ext 文件系統中,文件創建時生成的 inode 信息是不變的,這導致文件發生修改後 inode 中儲存的文件時間戳並不會發生變化;而且 ext 並不會為文件妥善分配空間,磁碟上的多個文件四散分布,嚴重製約了文件系統的性能。
ext 文件系統推出後不久,其開發者便意識到 ext 文件系統中存在很大缺陷( inode不變性 和 文件空間碎片化 ),並在一年後推出了 ext2 (Second Extened File System) 第二代擴展文件系統,用來代替 ext 文件系統。
ext2 吸取了 「UNIX文件系統」 的眾多優點,並且因其良好的可擴展性( 為系統在磁碟上存儲的數據結構預留了很多空間提供給開發者使用 ),在20世紀90年代眾多文件系統中脫穎而出。
眾多新的特性, POSIX(可移植操作系統介面) 、 訪問控製表 等都是在這一代擴展文件系統上實現的。直至今天, POSIX 仍被眾多操作系統所沿用。
不僅如此, ext2 還在 ext 的基礎上進行了完善,能夠最大支持的單個文件達到 2TB。
ext2 文件系統與20世紀90年代的眾多文件系統一樣,將數據寫入到磁碟的過程中如果發生系統奔潰或斷電,極容易導致文件損壞或丟失。
正是因為類似 ext2 等同時期的一眾文件系統,在遭遇系統奔潰或斷電時會出現文件損壞或丟失。盡管 ext2 文件系統擁有開機後對文件系統中文件的一致性校驗,但校驗的過程極為耗時,且校驗的過程中,操作系統上的任何卷組都是不可訪問的。
然而 ext2 遺留的問題在 ext3(Third Extended File System) 中得到了解決。
ext3 文件系統採用日誌記錄的方式,記錄下了操作系統運行中的所有事件,這意味著即便遇到操作系統非正常關機後也無須對文件系統進行校驗,從而防止了文件系統中數據丟失的可能。
盡管 ext3 使用日誌系統進行記錄文件系統的變化,但這並沒有影響 ext3 文件系統處理數據的速度。基於日誌系統在磁碟上的優化,在 ext3 中數據的傳輸效率是高於 ext2 的,並且可以通過重新設置日誌的級別來提升文件系統的性能。
其次, ext3 在設計之初就吸收了 ext2 的很多思想,這使得 ext2 文件系統遷移到 ext3 變得極為便利。事實上, ext3 可以在從 ext2 遷移 ext3 的過程中,無須進行文件系統資料的備份,且無須擔心升級後的數據恢復問題。
也正是因為 ext3 設計之初沿用了眾多 ext2 的功能,這使得 ext3 缺乏變通。例如, 「inode的動態分配」 和 「可變塊大小」 等問題並沒有得到解決。不僅如此, ext3 文件系統在被掛載為寫入時,無法對文件系統進行完整性校驗。
第四代擴展文件系統( Fourth Extended File System, ext4 ) 是繼 ext3 文件系統的後續版本,不僅支持 ext3 的日誌文件體系 ,同樣支持 大文件系統 ,不僅提高了文件系統對於存儲碎片化的抵抗,而且改進了 inode固一化 的問題。
同時, ext4 文件系統在開發之初就考慮到很多問題,對眾多問題的優化和改進也使得 ext4 擁有了眾多新的特性。例如, 大文件系統 、 使用Extent文件存儲的方式 、 預分配空間 、 延遲文件獲取空間的時間 、 突破原有子目錄限制 、 增加日誌校驗和 、 在線整理磁碟 、 文件系統快速檢查 、 向下兼容其他ext文件系統`。
時至今天, ext4 文件系統已經成為Linux發行版默認使用的文件系統。
與 ext2 文件系統同一時期出現的,還有 xfs 文件系統。 xfs 文件系統是高性能的文件系統,最早在 IRIX 操作系統上開發,後期被移植到 Linux 操作系統上。現在所有的 Linux發行版 都支持 xfs 的使用。
相比 32位 Linux 的操作系統來說,64位 xfs 的文件系統能夠支持的單個文件系統要遠遠超出 32位 操作系統。
xfs 對文件系統元數據提供了日誌支持,當文件系統發生變化後,總是會保證源數據在數據塊寫入磁碟之前被寫入日誌中,磁碟中有一處緩沖區專門用來存放日誌,從而不會影響正常的文件系統。
xfs 同樣支持 「條帶化分配」 。在條帶化RAID陣列上創建 xfs 文件系統時,可以指定 條帶化數據單元。通過配置條帶化單元,使 數據分配、inode分配、日誌等與RAID條帶單元對齊,來提高文件系統的性能。
與 ext4 文件系統不同的是, xfs 文件系統還支持在線恢復。 xfs 文件系統提供了 xfsmp 和 xfsrestore 工具協助備份 xfs 文件系統中的數據。
以下為各文件系統的出現時間及特性:
參考自: https://zh.wikipedia.org/wiki/Ext4
❸ linux文件丟失怎麼查看
如果不小心刪除了重要的文件,還可以將相應的文件從急救盤復制到硬碟上。例如,刪除了文件/bin/login,此時系統無法正常運行到登錄界面,可以用急救盤組啟動系統,將硬碟文件系統安裝到/mnt目錄下,然後使用下述命令:
#cp -a /bin/login /mnt/bin
「-a」選項用於告訴cp在拷貝時保持文件的訪問許可權。當然如果被刪除的基本文件不在「急救盤組」中,也就不能用這種方法了。如果以前做過系統備份的話,那麼就只有用以前的備份來恢復了。
❹ linux 文件系統損壞,如何修復
用fsck檢查文件系統完整性文件系統很復雜,因此易於發生錯誤。可以用fsck 命令檢查文件系統是否正確和有效。它可以根據指令修復找到的小錯誤,並將未修復錯誤報告用戶。幸運的是,文件系統的代碼非常有效,所以根本極少出現問題,並且問題通常原因是電源失敗、硬體失敗、或操作錯誤,例如沒有正常關閉系統。 大多數系統設置為啟動時自動運行fsck ,因此任何錯誤將在系統使用前被檢測到(並根據希望修正)。使用有錯誤的文件系統可能使問題變得更壞:如果數據結構有問題,使用這個文件系統可能使之更糟,導致更多的數據丟失。當然,在大的文件系統上運行fsck 會花一定的時間,如果系統正常關閉,幾乎從不發生錯誤,因此有一些方法可以不進行檢查。如果文件/etc/fastboot 存在,就不檢查。另外,如果ext2文件系統在超級快中有一個特定的標記告知該文件系統在上次mount後沒有正常unmount. 如果標記指出unmount正常完成(假設正常unmount指出沒問題),e2fsck (fsck 的ext2文件系統版) 就不檢查系統。/etc/fastboot 是否影響系統依賴於你的啟動手稿,但ext2標記則在你使用e2fsck 時發生作用--基於一個e2fsck 選項(參閱e2fsck 手冊頁) 自動檢查只對啟動時自動mount的文件系統發生作用。使用fsck 手工檢查其他文件系統,比如軟盤。 如果fsck 發現為修復的問題,你需要深入了解文件系統的一般工作原理和有問題的文件系統的細節,或好的備份。最後一個辦法容易(雖然冗長)安排,如果你自己不知道,有時可以通過朋友、linux新聞組、電子郵件列表或其他支持源安排。我很想告訴你更多,但我對這的學習和實踐也並不多。theodore t』so的debugfs 程序應該有用。 fsck 只能運行於未mount的文件系統,不要用於已mount的文件系統(除了啟動時的只讀根文件系統)。這是因為它存取原始磁碟,在操作系統不知道的情況下修改文件系統。 there will be trouble, if the operating system is confused.
❺ linux內核修復會丟失文件系統嗎
先分析了Linu系統故障的解決辦法,然後具體案例nat123進行了詳細分析解決辦法。
系統在引導期間,很重要的一個過程就是init進程讀取其配置文件/etc/inittab,啟動系統基本服務程序及默認運行級別的服務程序完成系統引導,如果/etc/inittab誤刪除或修改錯誤,Linux將無法正常啟動,如圖7所示。此時,只有通過救援模式才可以解決此類問題。
/etc/inittab文件丟失引導錯誤示例
有備份文件的恢復辦法進入救援模式,執行chroot命令後,如果有此文件的備份(強烈建議系統中的重要數據目錄,如/etc、/boot等要進行備份),直接將備份文件拷貝回去,退出重啟即可。如果是配置文件修改錯誤,如比較典型的/boot/grub/grub.conf及/etc/passwd的文件修改錯誤,也可以直接修正恢復。假設有備份文件/etc/inittab.bak,則在救援模式下執行:
沒有備份文件的恢復辦法如果一些配置文件丟失或軟體誤刪除,且無備份,可以通過重新安裝軟體包來恢復,首先查找到/etc/inittab屬於哪一個RPM包(即便文件丟失,因為存在RPM資料庫,一樣可以查找到結果):sh-3.1#
chroot /mnt/sysimage sh-3.1# rpm -qf /etc/inittab initscripts-8.45.3-1
退出chroot模式:
掛載存放RPM包的安裝光碟(在救援模式下,光碟通常掛載在/mnt/source目錄下):
外網SSH訪問內網LINUX的方法:
確保內網應用正常。在被訪問端LINUX伺服器上安裝nat123客戶端Linux,並使用它。登錄網站,左側用戶中心,添加埠映射。選擇全埠映射類型。填寫內網LINUX固定地址埠,和外網訪問的域名。可以使用自己的域名,也可以使用二級域名。將滑鼠放在輸入框有向導提示。
外網訪問端安裝nat123客戶端並使用訪問者。
訪問者打開LINUX全埠映射後的域名和訪問埠。如添加目標地址埠時,同時勾選允許區域網訪問,則在訪問者區域網內都可以進行訪問。
可以將滑鼠放在訪問者圖標上,看狀態提示。在使用訪問者本機,可以進行訪問LINUX。訪問地址是本地訪問者打開的域名埠。
❻ linux 文件系統丟失怎麼恢復
可以使用光碟rescue修復安裝一下
如果你知道哪個文件丟失了,直接從別的系統把這個文件進去也可以的
❼ linux 里的文件誤刪了 邏輯卷ext4文件系統,請問怎麼找回
找數據公司吧。。可以恢復
❽ linux中的libz.so.1庫文件丟失怎麼辦
libz.so.1
只是一個符號鏈接,如果你只是這個鏈接文件沒了,而真正的庫文回件還在,那就不答要緊。可以用以下方法恢復:
ls
/usr/lib/libz*
正常情況下,你應該看到
libz.so
libz.so.1
libz.so.1.y.z
其中
libz.so.1.y.z
才是真正的庫文件,1.y.z
是其具體版本,如果你的
libz.so.1.y.z
還在,你可以
ln
-s
/usr/lib/libz.so.1.y.z
/usr/lib/libz.so.1
即可。
如果
libz.so.1.y.z
也丟了,你可以用其他命令來傳輸,比如
ftp
甚至
tftp,這些應該都是不依賴於
libz
的,再不行,用個
u盤靠過來也行。
❾ Linux XFS文件系統數據丟失咋樣恢復呢
Linux 的用文件系統都好像對於數據恢復並不友好。
建議聯系數據恢復公司進行處理。建議重要數據設置自動備份防止丟失。