亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 系統 > Ubuntu > 正文

Ubuntu 針對 SSD 的優化方案

2024-06-28 13:20:43
字體:
來源:轉載
供稿:網友
Ubuntu 針對 SSD 的優化方案

.

.

.

.

.

首先看下 LZ 的分區情況:

>$ sudo fdisk -lDisk /dev/sda: 120.0 GB, 120034123776 bytes255 heads, 63 sectors/track, 14593 cylinders, total 234441648 sectorsUnits = sectors of 1 * 512 = 512 bytesSector size (logical/physical): 512 bytes / 512 bytesI/O size (minimum/optimal): 512 bytes / 512 bytesDisk identifier: 0x0001cbca   Device Boot      Start         End      Blocks   Id  System/dev/sda1   *        2048      206847      102400   83  linux/dev/sda2          206848   234438655   117115904   83  LinuxDisk /dev/sdb: 1000.2 GB, 1000204886016 bytes255 heads, 63 sectors/track, 121601 cylinders, total 1953525168 sectorsUnits = sectors of 1 * 512 = 512 bytesSector size (logical/physical): 512 bytes / 4096 bytesI/O size (minimum/optimal): 4096 bytes / 4096 bytesDisk identifier: 0x000a1ddb   Device Boot      Start         End      Blocks   Id  System/dev/sdb1            2048  1922080767   961039360   83  Linux/dev/sdb2      1922082814  1953523711    15720449    5  ExtendedPartition 2 does not start on physical sector boundary./dev/sdb5      1922082816  1953523711    15720448   82  Linux swap / Solaris

兩塊硬盤,/dev/sda 是固態硬盤,/dev/sdb 是機械硬盤,所以這里只針對 /dev/sda 進行優化。

/dev/sda1 是 /boot 分區,/dev/sda2 是 / 分區。

1.針對 /etc/fstab 的優化配置

>$ sudo vim /etc/fstab# /etc/fstab: static file system information.                                                                                                           ## Use 'blkid' to PRint the universally unique identifier for a# device; this may be used with UUID= as a more robust way to name devices# that works even if disks are added and removed. See fstab(5).## <file system> <mount point>   <type>  <options>       <dump>  <pass># / was on /dev/sda2 during installationUUID=d9a9c636-a561-4b71-acc5-51d3204c75ba /               ext4    noatime,discard,errors=remount-ro 0       1# /boot was on /dev/sda1 during installationUUID=1716571d-14c5-4d09-9e69-8c97d5543de1 /boot           ext4    noatime,discard,defaults        0       2# /home was on /dev/sdb1 during installationUUID=aa94f45f-8dcb-45c8-bef4-c8adace32a3b /home           ext4    defaults        0       2# swap was on /dev/sdb5 during installationUUID=d93e0ac2-c372-470c-9dd6-1e17a9242ee4 none            swap    sw              0       0tmpfs   /tmp            tmpfs   defaults,noatime,mode=1777      0       0tmpfs   /var/tmp        tmpfs   defaults,noatime,mode=1777      0       0tmpfs   /var/log        tmpfs   defaults,noatime,mode=1777      0       0

上面紅色和加粗的部分是 LZ 手工添加進去的,下面 LZ 詳細解釋一下手工添加的部分的含義。

noatime 表示訪問文件時不更新文件訪問時間,這樣可以減少對磁盤的寫入動作。

Linux 文件系統中有三種時間,想要詳細了解可以查閱 LZ 的博文《(三) 一起學 Unix 環境高級編程(APUE) 之 文件和目錄》。

discard 表示開啟 TRIM 功能。

TRIM 的作用主要有兩個:1 提高硬盤寫入效率;2 根據平均寫入算法提高 SSD 壽命。

具體原理各位自行查找資料吧。

Linux 內核從 2.6.33 開始支持 TRIM 指令,所以首先查看內核版本以確定操作系統是否支持 TRIM:

>$ uname -aLinux yuhuashi-Linux 3.13.0-24-generic #46-Ubuntu SMP Thu Apr 10 19:11:08 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux>$

LZ 的內核版本是 3.13.0,所以是支持 TRIM 的。

接下來檢查 SSD 是否支持 TRIM,雖然現在絕大多數 SSD 都支持 TRIM,但是也并非所有的 SSD 都支持。

$ sudo hdparm -I /dev/sda | grep TRIM       *    Data Set Management TRIM supported (limit 8 blocks)$>

顯示類似這個信息的表示支持,不同的 SSD 顯示的提示可能不一樣。

當然,上面這兩個配置是沒有依賴關系的,所以先配置誰或僅配置誰都是可以的。

文件的最后將 /tmp、/var/tmp 和 /var/log 三個目錄掛載到內存上了,這樣做有兩個目的:

1)利用內存來加速:內存的速度比硬盤的速度快得多,將這種頻繁讀寫的目錄掛載到內存中可以大大提高它們的讀寫速度。

2)減少對 SSD 的寫入次數:因為這種臨時目錄通常都會保存很多小文件,而且讀寫頻繁,為了提高 SSD 的壽命,把它們掛載到內存中。

注意:上面的 /var/log 目錄是系統日志所在的目錄,如果掛載到內存中將意味著關機之后這些日志全部都會丟失!當然,對于個人來說通常歷史系統日志是沒什么用的,所以 LZ 把它們也掛載到內存中了。

下面檢查一下上面的配置是否生效:

>$ sudo mount -oremount /dev/sda1>$ mount -l/dev/sda2 on / type ext4 (rw,noatime,discard,errors=remount-ro)tmpfs on /tmp type tmpfs (rw,noatime,mode=1777)tmpfs on /var/tmp type tmpfs (rw,noatime,mode=1777)tmpfs on /var/log type tmpfs (rw,noatime,mode=1777)/dev/sda1 on /boot type ext4 (rw,noatime,discard)/dev/sdb1 on /home type ext4 (rw)>$

可以看到,/dev/sda1 和 /dev/sda2 已經有 noatime 和 discard 掛載屬性了;并且 /tmp、/var/tmp 和 /var/log 也已經被掛載為 tmpfs 了。這說明我們上面的配置成功了。

2.減少 SWAP 換出量

LZ 分配了很大的 SWAP,但在實際使用中發現 SWAP 空間實際使用得很少,而且 LZ 從來不使用休眠功能,所以不分配或少分配 SWAP 也是可以的。

當然前提是你的內存足以滿足你日常的使用,LZ 是 8GB 內存。

LZ 的 SWAP 是分配在機械硬盤上的,由于平時 SWAP 用得少所以速度慢點也無所謂。

其實這一步通常僅適用于把 SWAP 分配在 SSD 上的童鞋,像 LZ 這種把 SWAP 分配在機械硬盤上的,設不設置都無所謂。

>$ suPassWord:># echo 1 > /proc/sys/vm/swappiness>#

0 到 100 之間,值越大換出量越大。

3.使用 noop I/O 調度算法

noop 相當于實現了一個最簡單的 FIFO 隊列,由于 SSD 不需要像機械硬盤一樣尋址,所以采用最簡單的調度算法也能相應的提高效率。

>$ suPassword: # 查看當前的調度算法,下面被中括號選中的表示當前的調度算法># cat /sys/block/sda/queue/schedulernoop [deadline] cfq # 修改調度算法再重新查看># echo noop > /sys/block/sda/queue/scheduler># cat /sys/block/sda/queue/scheduler[noop] deadline cfq # LZ 發現這種方式只能臨時設置,下次重啟又變回去了,所以需要修改系統啟動腳本># vim /etc/rc.local# 在最下面(exit 0 的上面) 添加這句,保存退出,可重啟后用上面的 cat(1) 指令驗證echo noop > /sys/block/sda/queue/scheduler>#

4.關閉 EXT4 日志功能

把這步放在最后是因為需要進入 LiveCD 才能做,所以裝完系統之后首次進入系統還是先把其它的優化工作做完吧,不然先做這步的話一會兒還要再重啟一次再做前面的優化。

關閉文件系統日志是為了減少 I/O 操作對 SSD 的寫入次數,從而提高 SSD 的壽命。

但是,關閉文件系統的日志更容易導致文件系統的損壞,比如發生突然斷電的情況等。不過 LZ 使用的是筆記本電腦,不怕突然斷電哈。為了提高 SSD 的壽命,還是值得一試的。

1)重啟進入 LiveCD。

2)在 shell 中執行命令:

# 修改 root 密碼,因為命令要在 root 下運行,所以需要先取得 LiveCD 的 root 權限。>$ sudo passwd root輸入新的 UNIX 密碼: 重新輸入新的 UNIX 密碼: passwd:已成功更新密碼>$ su密碼: # 查看分區的設備文件,還好設備文件名與在系統中查看的是一樣的,這樣大家就不用費力氣的重新對照了。># fdisk -lDisk /dev/sda: 120.0 GB, 120034123776 bytes255 heads, 63 sectors/track, 14593 cylinders, total 234441648 sectorsUnits = 扇區 of 1 * 512 = 512 bytesSector size (logical/physical): 512 bytes / 512 bytesI/O size (minimum/optimal): 512 bytes / 512 bytesDisk identifier: 0x0001cbca   設備 啟動      起點          終點     塊數   Id  系統/dev/sda1   *        2048      206847      102400   83  Linux/dev/sda2          206848   234438655   117115904   83  LinuxDisk /dev/sdb: 1000.2 GB, 1000204886016 bytes255 heads, 63 sectors/track, 121601 cylinders, total 1953525168 sectorsUnits = 扇區 of 1 * 512 = 512 bytesSector size (logical/physical): 512 bytes / 4096 bytesI/O size (minimum/optimal): 4096 bytes / 4096 bytesDisk identifier: 0x000a1ddb   設備 啟動      起點          終點     塊數   Id  系統/dev/sdb1            2048  1922080767   961039360   83  Linux/dev/sdb2      1922082814  1953523711    15720449    5  擴展分區 2 未起始于物理扇區邊界。/dev/sdb5      1922082816  1953523711    15720448   82  Linux 交換 / Solaris# 關閉 /boot 分區的文件系統日志,這個是針對分區的,所以要在每一個 SSD 分區上做。># tune2fs -O ^has_journal /dev/sda1 tune2fs 1.42.9 (4-Feb-2014)# 關閉 / 分區的文件系統日志># tune2fs -O ^has_journal /dev/sda2 tune2fs 1.42.9 (4-Feb-2014)# 運行文件系統檢測,據說不運行可能會導致文件系統出錯,LZ 沒有親自挑戰過,所以還是乖乖的運行比較好。這個也是針對分區的,所以要在每一個關閉了文件系統日志的分區上做。># e2fsck -f /dev/sda1 e2fsck 1.42.9 (4-Feb-2014)第一步: 檢查inode,塊,和大小第二步: 檢查目錄結構第3步: 檢查目錄連接性Pass 4: Checking reference counts第5步: 檢查簇概要信息/dev/sda1: 301/25688 files (1.0% non-contiguous), 38564/102400 blocks># e2fsck -f /dev/sda2 e2fsck 1.42.9 (4-Feb-2014)第一步: 檢查inode,塊,和大小第二步: 檢查目錄結構第3步: 檢查目錄連接性Pass 4: Checking reference counts第5步: 檢查簇概要信息/dev/sda2: 182739/7323648 files (0.2% non-contiguous), 1599116/29278976 blocks# 在 LiveCD 上面的工作就做完了,重啟進入系統># reboot>#

由于上面的內容比較多,所以 LZ 把需要手工執行的命令用紅色加粗標記出來了。

3)重啟進入系統之后,驗證一下是否成功了:

>$ dmesg | grep EXT4[    3.787513] EXT4-fs (sda2): mounted filesystem without journal. Opts: (null)[    4.194035] EXT4-fs (sda2): re-mounted. Opts: discard,errors=remount-ro[    4.362051] EXT4-fs (sda1): mounted filesystem without journal. Opts: discard[    4.382329] EXT4-fs (sdb1): mounted filesystem with ordered data mode. Opts: (null)>$

出現了類似上面加粗字體的提示表示配置成功了,如果出現了上面藍色字體的內容就說明沒有生效。當然對于 LZ 來說配置是生效了的,因為 LZ 僅關閉了 sda1 和 sda2 的文件系統日志。sdb1 本來就不是固態硬盤,LZ 根本沒有關閉它的文件系統日志。

參考文獻:

1.Ubuntu系統SSD硬盤優化全記錄

2.SSD的TRIM功能有什么作用?

3.小結一下linux 2.6內核的四種IO調度算法


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
欧美高清在线播放| 久热99视频在线观看| 国产成人精品最新| 欧美激情videoshd| 欧美日韩国产综合新一区| 国产欧美一区二区| 国产精品成人免费视频| 在线观看欧美日韩国产| 国产一区二区黑人欧美xxxx| 日韩美女免费视频| 欧美国产中文字幕| 国产精品第2页| 韩国19禁主播vip福利视频| 国产精品人人做人人爽| 亚洲天堂免费在线| 国产精品69精品一区二区三区| 黄色一区二区在线| 自拍偷拍亚洲欧美| 亚洲人精选亚洲人成在线| 欧美另类交人妖| 日本久久亚洲电影| 欧美黄网免费在线观看| 中文字幕久久精品| 成人黄色av免费在线观看| 国产精品黄色av| 国产色婷婷国产综合在线理论片a| 亚洲欧洲日产国产网站| 国内精品免费午夜毛片| 久久久久久久久久av| 欧美第一淫aaasss性| 亚洲欧洲国产一区| 亚洲国产精品久久精品怡红院| 久久伊人91精品综合网站| 亚洲乱码国产乱码精品精天堂| 日韩专区在线播放| www.亚洲人.com| 国产精品美女呻吟| 久久久久成人精品| 亚洲女性裸体视频| 欧美大片免费看| 国产视频在线观看一区二区| 中文字幕欧美精品日韩中文字幕| 国产午夜精品全部视频在线播放| 久久天天躁日日躁| 成人午夜在线影院| 国产一区二区三区网站| 色爱精品视频一区| 伊人亚洲福利一区二区三区| 91日本在线观看| 久久亚洲精品中文字幕冲田杏梨| 色狠狠久久aa北条麻妃| 亚洲国产女人aaa毛片在线| 中文欧美日本在线资源| 一本一道久久a久久精品逆3p| 亚洲精品中文字幕av| 欧美日韩国产成人高清视频| 亚洲一区二区三区sesese| 欧美一区二区三区精品电影| 国产99久久精品一区二区| 亚洲已满18点击进入在线看片| 亚洲成人xxx| 欧美整片在线观看| 国产精品日韩在线播放| 日本精品一区二区三区在线播放视频| 欧美人与物videos| 久久99精品久久久久久青青91| 日韩视频精品在线| 亚洲第一中文字幕在线观看| 色偷偷av亚洲男人的天堂| 精品久久久91| 一本色道久久88综合日韩精品| 91久久精品日日躁夜夜躁国产| 亚洲精品美女久久久久| 久久亚洲精品一区| 91国语精品自产拍在线观看性色| 亚洲男女自偷自拍图片另类| 最新国产成人av网站网址麻豆| 国语自产精品视频在线看一大j8| 91精品中文在线| 日韩av手机在线观看| 国产精品美女主播| 欧美成人手机在线| 欧美激情精品久久久久久黑人| 久久天天躁日日躁| 欧美激情按摩在线| 日本一区二区三区在线播放| 欧美日韩在线免费| 日韩av电影中文字幕| 国产精品稀缺呦系列在线| 色偷偷av一区二区三区| 亚洲女人被黑人巨大进入al| 日韩经典一区二区三区| 国产精品自拍网| www.久久草.com| 日韩精品久久久久久福利| 中文字幕av一区中文字幕天堂| 久久精品国产亚洲7777| 国产精品视频资源| 日韩av在线网页| 91免费视频网站| 亚洲国产97在线精品一区| 欧美麻豆久久久久久中文| 亚洲japanese制服美女| 亚洲欧美激情精品一区二区| 亚洲免费伊人电影在线观看av| 欧美国产乱视频| 欧美老女人bb| 91国内免费在线视频| 亚洲综合中文字幕在线观看| 国产91av在线| 亚洲最大成人免费视频| 亚洲自拍欧美另类| 亚洲午夜久久久影院| 亚洲人成在线电影| 91在线中文字幕| 欧美激情精品久久久久久黑人| 欧美成人全部免费| 久久久久久久久久久久久久久久久久av| 精品视频在线导航| 中文字幕一区电影| 性色av一区二区咪爱| 66m—66摸成人免费视频| 日韩精品欧美激情| 欧美成人一二三| 国产一区二区三区毛片| 91精品国产91久久久久久吃药| 国产亚洲成av人片在线观看桃| 中文字幕亚洲一区二区三区五十路| 亚洲国产精品女人久久久| 欧美理论电影在线观看| 国产成人在线一区二区| 中日韩午夜理伦电影免费| 欧美激情伊人电影| 欧美高清无遮挡| 欧美精品成人在线| 亚洲xxxx妇黄裸体| 日韩中文字幕视频| 久久噜噜噜精品国产亚洲综合| 97视频在线观看免费| 久久伊人精品视频| 欧美高清在线观看| 精品国产欧美一区二区五十路| 欧美精品做受xxx性少妇| 亚洲小视频在线观看| 久久精品99国产精品酒店日本| 欧美性猛交xxxx乱大交3| 午夜精品一区二区三区在线视频| 欧美激情一区二区三区高清视频| 亚洲第一网中文字幕| 中文字幕日韩欧美在线| 福利视频第一区| 亚洲黄页视频免费观看| 色香阁99久久精品久久久| 日韩免费视频在线观看| 夜夜嗨av色一区二区不卡| 欧美高清理论片| 久久国产精品视频| 国语自产精品视频在线看一大j8| 成人一区二区电影| 成人性生交xxxxx网站| 日韩av在线播放资源| 日韩在线观看免费高清| 欧美成年人视频| 精品久久久久久中文字幕|