1樓:網友
aufs 聯合掛載乙個 tmpfs ,和你的檔案系統。
寫入資料指定為 tmpfs 。
這樣所有的寫入資料,都會寫到 tmpfs 裡,而讀取時,如果 tmpfs 沒有資料,aufs 會去真正的檔案系統找資料讀取。
tmpfs 在記憶體裡,重啟就沒了,不過 tmpfs 佔用記憶體,所以要限制他的容量,不然他存的資料太多,佔用記憶體大了。系統正常執行就會受影響。
不過整個系統的檔案系統都要 aufs ,可能需要在 initrd 或者啟動指令碼里面做操作後 chroot 繼續啟動。
如果你非要想實現不寫回,而不是用 aufs 聯合掛載,必須 hack 核心的寫入資料模組,截獲所有寫入資料到自己的快取裡。
這個難度很大,而且相容性也是問題。
除了 aufs ,老系統可以用 unionfs 。
另外,linux 除非安裝程式,不然大部分資料其實都是放在個人目錄裡面,你把個人目錄掛載成 tmpfs 其實就能實現不寫入硬碟的功能。只有很少量的資料會寫入特殊的目錄裡,但這些都是伺服器或者系統的系統管理、配置什麼的資料。
還原精靈的某些功能目的,其實 linux 本身就自己已經提供了。不需要要在折騰什麼。
2樓:網友
直接sync,這樣就把記憶體的資料寫到磁碟上了。
linux shell 如何把資料寫入快取區,然後在寫入磁碟
3樓:鎖菲哈媼
linux的shell用乙個exec函式把使用者的命令來執行,資料寫入的時候,先把資料寫入到核心的緩衝區,使用write函式(linux的系統呼叫函式),在資料去滿或者sync的時候,再把資料寫入到磁碟,把資料寫入到磁碟的時候使用cpu來寫,寫的細節,大概是cpu把所有的外設(注入磁碟,鍵盤,滑鼠等)都有乙個埠可以直接訪問,不過需要有對應的驅動程式,寫的時候就通過對應的介面來寫,真正想徹底瞭解的話,必須要讀linux核心**了。。。
4樓:駒成華嫣
現在linux對ntfs格式支援不好。我用的是suse10,在linux下可以直接瀏覽windos的硬碟,系統開機就自動掛載,中文顯示也很正常,當然前提是windos盤是fat格式的,建議把windos的格式整成fat的。
5樓:示煙愛雪
sync:將記憶體緩衝區內的資料寫入磁碟;
sync之前資料可能在緩衝區,僅僅是可能。
怎麼在linux系統裡修改硬碟格式呢?
6樓:網友
我的意思是 弄乙個u盤或者光碟 安裝xp的之前用dm重新給硬碟分割槽 格式化。
7樓:網友
fdisk
修改分割槽的 id 。
之後再格式化。
8樓:黎明陽光
自帶的有個 分割槽管理器 用這個。
linux核心中有關將記憶體中資料重新整理回磁碟時間的選項有誰知道嗎?
9樓:呂剛
bootloader 階段使用 bios 功能,所有的 sata 預設都有乙個簡單的 bios 讀寫相容功能提供支援。也就是說開了 ahci ,bios 依然會提供相容模式。不過現在的作業系統在核心啟動後就會繞過 bios 直接操作硬體。
這個時候如果開啟了 ahci 模式,那麼 ide 相容部分的硬體介面模擬就沒了,不過 bios 自己提供的讀寫功能雖然繼續提供,但系統已然不用了。所以 bootloader 可以讀寫硬碟並不代表 linux 核心可以讀寫硬碟。
linux 的驅動有兩種存放狀態,編入核心或者編成模組。
initrd 裡面的就是模組,會被 bootloader 在讀取核心時一起讀取進入記憶體。一般核心模組只在需要時載入,可以節省核心的執行體積。但現在新版 linux 核心的 sata 驅動已經高度整合了,所以很多發行版的 sata 驅動都直接進入核心不需要模組載入方式了。
當然這要看系統的設計,有的系統既然 initrd 必然會提供,那麼編入核心確實沒意義。不過需要另外找驅動的硬體,都是模組方式存在,他們在系統啟動時必須存在於 initrd 裡面,不然核心自己沒法整合,也不能從硬碟裡面讀取(沒驅動沒法讀盤,沒法讀盤就沒法讀驅動)。
bios 的 int13 功能太簡單了。限制也特別多,現在都是能不用就不用的。所以這東西現在只有 bootloader 才會用。
在linux中可否把應用程式都編譯到核心中,讓系統啟動後完全在記憶體中執行?不讀硬碟!
10樓:網友
1全部不行,核心是核心,只提供最基本的服務。很多服務可以編譯成模組裝入核心,但是模組也不是無限多的。你編譯過核心嗎?
核心檔案不大,解壓出來有200多m吧,如果全部功能編譯的話,一般電腦沒有幾天可能下不來。
把程式編譯到核心,不是不行,不過你的程式要修改。如果你能為linux核心提供**的水平,估計離你說的就不遠了。
你的想法有點。在你硬碟上讀點東西就那麼吝嗇嗎?
我linux4g多的檔案,分了6g資料空間,還有2g的交換檔案,我都沒心疼。
11樓:網友
讓系統啟動後完全在記憶體中執行是可行的。有這樣的發行版。不過不讀硬碟,核心放到**?
12樓:王蓉上那顆
不行,核心只能提供最基層的服務,如果把應用程式整合到核心的話,那麼,計算機將會執行超級慢。
為什麼我在linux下看不到硬碟的檔案?
13樓:匿名使用者
因為你沒有掛載啊!
在linux系統裡面所有的裝置都是要掛載才可以看到的!
mount /dev/指定裝置 /指定掛載點。
上面的那條就是命令了!
14樓:匿名使用者
確認是否已經正確掛載你所希望看到檔案的分割槽,在linux中分割槽都是需要掛載到linux系統中才可以訪問的。如果沒有掛載,自然也就看不到檔案了。
檢視是否掛載可以在命令模式下使用mount命令,看輸出是否有你希望使用的分割槽。
15樓:潘苑陰天欣
我建議你換乙個系統安裝,redhat9和redflag5不支援你的硬碟(我以前用的就是red hat 9,但裝了n次都跟你說的情況一樣,找不到硬碟,只好在虛擬機器上玩了),你的硬碟是ide的吧,換乙個其它系統,我向你推薦幾個如下:redflag 6centos 或者是rhel 5,rhel也是red hat公司的,centos 為rhel的轉殖版本。)(我強烈建議你學centos 完全免費,而rhel還得掏錢)fedora core 9ubuntu還有其它的我就說了,我的blog,裡面有不少的linux知識。
target="_blank">
linux 中如何修改path,使得不在path中的檔案執行時不以 ./** 的形式
16樓:網友
這麼幹是可以的,就是把當前目錄 . 點)新增到path,但是這樣不安全,如果本目錄的程式與系統資料夾裡的程式同名,就可能優先執行本目錄的程式,如果該程式有破壞性,就不好了。
所以linux採用點槓的強調形式呼叫本目錄的程式。
我給乙個檔案建立了乙個軟連線 linux 更改了軟連線裡的資料 但是 原始檔卻沒有變 這是為啥
17樓:網友
這個事情是不符合邏輯的,如果真發生了,你可以把你的電腦拿去公正了,估計還有獎金;
軟連線是是什麼?就是在inode對應的磁碟塊中儲存的不是資料,而是另外乙個檔案的路徑名;
修改DataTable中某列的資料型別
修改資料表datatable某一列的型別和記錄值 正確步驟 1.克隆表結構,2.修改列型別,3.修改記錄值,4.返回希望的結果 資料表datatable 資料表datatable private datatable updatedatatable datatable argdatatable for...
在E盤中我如果用虛擬機器安裝Linux系統,會不會對電腦的物理磁碟造成什麼損壞
不用擔心,不會有任何損壞,用虛擬機器安裝linux無非是佔用點硬碟空間,不必擔心是否會給硬碟照成損害。 飛黃騰地 正確安裝應該不會,讀寫都會造成損壞,除非不用 小兔獸性大發啦 不會,vm會讓你建立以虛擬硬碟來進行安裝 如果讀寫太頻繁是有可能的。虛擬機器安裝linux系統,會對物理的磁碟有影響嗎?怎樣...
如何修改資料庫表中的某欄位的值,如何修改資料庫表中的某一個欄位的值
愛軍 修改方法 使用update語句。語法是 update table name set column value colunm value.where condition 中的部分表示可以有也可以沒有。例如 update students set stu name zhangsan stu gen...