Performansı optimize etmek ve sürücünün maksimum dayanıklılığını sağlamak için Ubuntu'nun Katı Hal Sürücüsüne kurulumundan önce / sırasında / sonrasında ne gibi adımlar atılmalıdır?
Performansı optimize etmek ve sürücünün maksimum dayanıklılığını sağlamak için Ubuntu'nun Katı Hal Sürücüsüne kurulumundan önce / sırasında / sonrasında ne gibi adımlar atılmalıdır?
Yanıtlar:
Ubuntu'nun depolama aygıtını kullanma şeklini (katı halli veya geleneksel sürücü olsun) geliştirmek için başarıyla birkaç farklı teknik kullandım.
SSD'ler için, okuyucular sürücüye aşınma eklememelidir, çünkü sürücünün de yazılma sayısını en aza indirirsiniz.
1) Takas dosyasını yönetin
Bilgisayarınızı hazırda bekleme moduna almazsanız ve tüm uygulamalarınızı çalıştırmak için yeterli RAM belleğiniz varsa, teorik olarak bir takas bölümüne gerek yoktur.
Bir SSD ve sabit sürücü karışımınız varsa, takas bölümünüzü yalnızca sabit sürücülere yerleştirin.
2) Okuma Zaman damgaları için Yazma Yok (SSD'ler ve sabit sürücüler için uygun)
Seçenekleri ile bölümleri Montaj noatime ve nodiratime dosyaları ve klasörleri okurken zaman damgası durur yazar. Bu zaman damgası yazar, genellikle böyle bir yerel posta sunucusu istemcisi kullanmadıkça gerekli değildir. Bunun genellikle kötü bir fikir olmasının nedeni, her okunmanın zaman damgalarını güncellerken bir yazı üretmesidir. Bu, SSD'nin ömrünü azaltır.
Senin düzenleyin / etc / fstab (dikkatlice - çalışmasını size sistemini önleyebilir fstab yapılandırmasını kırma olarak emin olmak için bir yedek almak) yapılandırma dosyasını:
cp /etc/fstab ~/fstab-backup
gksudo gedit /etc/fstab
Onları (/ home) varsa kök (/) ve diğer bölümleri tanımlayan hatlarına metin noatime ve nodiratime ekleyerek bölümleri için montaj seçenekleri düzenleme - Not: Bir / home bölümü varsa, bu sadece değişen başlamak Bir şeyleri kırmakla ilgileniyorsanız bu bölüm
# / was on /dev/sda2 during installation
UUID=587e0dc5-2db1-4cd9-9792-a5459a7bcfd2 / ext4 noatime,nodiratime,errors=remount-ro 0 1
# /home was on /dev/sda3 during installation
UUID=2c919dc4-24de-474f-8da0-14c7e1240ab8 /home ext4 noatime,nodiratime,defaults 0 2
Bu değişikliklerin yürürlüğe girmesinden önce makinenizi yeniden başlatmanız gerekecek
3) İşletim sisteminden ve uygulamalardan gelen yazmaları en aza indirme
Kritik bir ürün sunucusu çalıştırmadığınızı varsayalım, çoğu insan günlüklere bakmazsa bir şeylerin yanlış gitmesi gerekir (özellikle çoğu Ubuntu kullanıcısı için ciddi hatalar nadirdir). Bu nedenle, Ubuntu'yu tüm günlükler SSD yerine RAM belleğe yazılacak şekilde yapılandırabilirsiniz.
Not: Yalnızca, kullanacağınız tüm yazılımları (özellikle Apache web sunucusu gibi) yüklediğinizde aşağıdaki değişiklikleri yapın, aksi halde / var / log içindeki eksik dizinlerle ilgili bazı sorunlar yaşayabilirsiniz.
Bu yaklaşımın arka planı için , flash sürücünüzün ömrünün uzamasını ubuntu-eee.com adresinde görün.
Aç / etc / fstab bir editör ile (eğer / etc / fstab dosyasını yedekledikten varsayarak)
gksudo gedit /etc/fstab
Fstab dosyasının sonuna aşağıdaki satırları ekleyin ve kaydedin:
# Uncomment these after all server based applications installed - eg. apache
#tmpfs /tmp tmpfs defaults,noatime,mode=1777 0 0
#tmpfs /var/tmp tmpfs defaults,noatime,mode=1777 0 0
#tmpfs /var/log tmpfs defaults,noatime,mode=0755 0 0
#tmpfs /var/log/apt tmpfs defaults,noatime 0 0
# none /var/cache unionfs dirs=/tmp:/var/cache=ro 0 0
Bu değişikliklerin yürürlüğe girmesinden önce makinenizi yeniden başlatmanız gerekecek
Ayrıca bakınız:
Genelde rahatsız olmazdım - SSD hayatıyla ilgili endişeler abartılıyor. Neden gerçekten endişelenmemelisiniz hakkındaki bu ayrıntılı makaleyi okuyabilirsiniz . Kısacası, modern SSD'lerin içindeki devre sizin için aşınma seviyesini yönetiyor ve sizden daha iyi yapmayı biliyorlar.
Makalede, sürekli olarak 80M / s hızında yazma yapan bir SSD'nin ömrünün hesaplanmasıdır. Yaşam 51 yıldır . Bu, 2007 teknolojisine dayanıyor - SSD ömrü artık daha uzun olacak. Neredeyse kesinlikle SSD'nize günde 24 saatte 80M / s'de yazmıyorsunuz.
Bununla birlikte, zaman içindeki performansın düşmesi bir sorun olabilir ve TRIM çözümdür. İki seçenek var
Otomatik TRIM'i kendiniz etkinleştirmeniz gerekir . (Temelde discard
, ext4 kullanıyorsanız, takma seçeneklerine seçenek eklersiniz .) Dosyaları silerken atma seçeneğinin sisteminizi yavaşlattığını bildiren bir blog yazısı buldum .
Zaman zaman fstrim kullanarak el ile (veya bir cron işinde) yapabilirsiniz . Eğer sadece bir bölümünüz varsa, yapmanız gereken tek şey:
sudo fstrim /
Fstrim'in sadece 11.10 ve daha yeni sürümlerde mevcut olduğunu unutmayın. Daha eski sistemler için wiper.sh
komut dosyasına ihtiyacınız olacak . Komut dosyasını /usr/share/doc/hdparm/contrib/wiper.sh.gz
sistemimde buldum .
Merak ediyorsanız, TRIM’in Wikipedia’da açıklandığı gibi çözdüğü sorun şudur:
SSD'ler, sayfalar halinde gruplanmış flash bellek hücrelerinde, sayfalar (tipik olarak her biri 4 kB) bloklar halinde gruplandırılmış (blok başına tipik olarak 128 sayfa, toplam 512 kB) depolar. NAND flash bellek hücreleri yalnızca boş olduklarında doğrudan yazılabilir. Veri içerdikleri düşünülürse, bir yazma işlemi güvenli bir şekilde gerçekleştirilmeden önce içeriğin silinmesi gerekir. SSD'lerde, sayfa düzeyinde bir yazma işlemi yapılabilir, ancak donanım sınırlamaları nedeniyle, silme komutları her zaman tüm blokları etkiler. Sonuç olarak, SSD ortamına veri yazmak, boş sayfalar kullanıldığı sürece çok hızlıdır, ancak önceden yazılmış sayfaların üzerine yazılması gerektiğinde önemli ölçüde yavaşlar.. Sayfadaki hücrelerin silinmesi, yeniden yazılmadan önce gerekli olduğundan, ancak yalnızca tüm bloklar silinebildiğinden, üzerine yazma, okuma-silme-değiştirme-yazma döngüsünü başlatacaktır: tüm bloğun içeriği saklanmalıdır. önbellekte, flaş ortamında etkin bir şekilde silinmeden önce, üzerine yazılan sayfa önbellekte değiştirilir, böylece önbellekteki blok günceldir ve yalnızca o zaman flash ortamına yazılan bloğun tamamı (güncellenmiş sayfa ile) . Bu fenomen yazma amplifikasyonu olarak bilinir.
Birkaç nokta var:
hizalama:
Sıkça işaret edilen bölümün doğru hizalanmasıdır . Bu, SSD'nin blok boyutuna eşit olmalıdır. Güvenli oyna ve bölümlerini MiB sınırlarına göre hizala. Bunu Ubuntu yükleyicisinin bölümleme aracıyla (MiB değil MB kullanan) yapamayacağınızı unutmayın, ancak canlı CD'yi önyükleyebilir, Gparted (MiB kullanan) kullanın ve ardından kurduğunuz bölümleri kullanmak için Kur'a tıklayın.
Doğru zamanlayıcı:
Bir önemli nokta zamanlayıcı wich olmalıdır noop
. Bu zamanlayıcıyı kernelparameter elevator=noop
veya echo noop > /sys/block/sda/queue/scheduler
rc.local içine girerek ayarlayabilirsiniz .
Mountflags:
Tavsiye ederim noatime
vediscard
tmpfs
Bir ramdisk'e tmp koymak, ssd'nin ömrünü uzatabilir. Bunu kullanmak için fstab içine aşağıdaki satırı koyun:none /tmp tmpfs defaults 0 0
Genel olarak, bu konuya daha derine dalmak istiyorsanız, bu mükemmel wiki makalesini tavsiye ederim .
Ubuntu'da SSD'niz için hızlı ayar kursu:
dosya sistemi
Arch wiki , SSD dosya sistemi için tercih edilebilecek çok az seçenek belirtiyor - bunlardan biri dengesiz, bazıları ise ext * seçeneklerinden. Sanırım ext4 en iyi seçimlerden biri.
Not: ext4 olması durumunda discard
mount seçeneğini kullanmak isteyebilirsiniz .
fstab
# <file system> <mount point> <type> <options> <dump> <pass>
proc /proc proc nodev,noexec,nosuid 0 0
tmpfs /tmp tmpfs nodev,nosuid,noatime,mode=1777 0 0
/dev/sda1 / ext4 defaults,noatime,discard,errors=remount-ro 0 1
/dev/sda2 /home ext4 defaults,noatime,discard,user_xattr 0 2
/dev/sda3 /windows ntfs defaults,noatime,discard,umask=007,gid=46 0 0
Burada birkaç önemli şey var:
swap
Bölüm yok . Günümüzde sadece hazırda bekletme için gerekli, çünkü modern makineler oldukça fazla miktarda RAM'e sahip.noatime
ve discard
seçenekler Bilgi burada .zamanlayıcı
Çoğu Linux dağıtımının altında cfq (tamamen adil kuyruğa alma) olan varsayılan zamanlayıcıdan, SSD için noop veya son tarih zamanlayıcısına geçmeyi düşünün. Örneğin noop zamanlayıcısının kullanılması, verilerin fiziksel olarak diskte nerede bulunduğuna dikkat etmeden, istekleri alındıkları sırayla işler. Bu seçeneğin SSD'ler için avantajlı olduğu düşünülmektedir, çünkü arama süreleri SSD'deki tüm sektörler için aynıdır.
/Etc/rc.local dosyasına şunu ekleyin :
# SSD performance tuning
echo noop > /sys/block/sda/queue/scheduler
bilgi
/tmp
RAM içinde, bir almak çok kolay bellek dışı bir sürü program kullandıkça, durumun /tmp
(örneğin bir depolama alanı olarak Brasero DVD görüntülerini depolamak için).
tmpfs
varsayılan olarak RAM'in% 10'udur. Yine de size
seçenek kullanılarak boyut ayarlanabilir .
Bu satırı fstab'ınıza eklemeyeceğim, var / tmp klasörü yeniden başlatmaları sağlamaya yöneliktir ve bu sizin için sorunlara neden olabilir.
tmpfs /var/tmp tmpfs defaults,noatime,mode=1777 0 0
Yeni bir sistem yapılandırdığımda tüm tmp klasörlerini bu şekilde yorumlanmış halde bırakıyorum, eğer bir şey olursa günlükleri ve eşyaları kontrol edebilirim. Ardından ana sistem kurulumuna sahip olduktan sonra yorumunu kaldırırım, ancak yukarıdaki satırı hiçbir zaman eklemem, işte kullandığım şey:
tmpfs /tmp tmpfs defaults,noatime,mode=1777 0 0
tmpfs /var/log tmpfs defaults,noatime,mode=0755 0 0
tmpfs /var/log/apt tmpfs defaults,noatime 0 0
Ve eğer sistemimle ilgili herhangi bir sorun yaşarsam, yeniden başlatma veya zorla başlatma sonrasında bile her şeyi kontrol edebilecekleri bir kilitlenmeden sonra yorumlarım.
Ayrıca, zamana ihtiyaç duymuyorsunuz, evlilik opsiyonu her ikisine de kendiliğinden bakıyor.
TRIM'e gelince, eğer hw / sw'niz destekliyorsa, bu bir zorunluluktur, fstab'ta atma kullanmıyorum. Günlük bir cron oluşturuyorum, çünkü bilgisayarım her zaman açık, bunu yaparak:
gksu gedit /etc/cron.daily/trim
Sonra bunu dosyaya ekleyin ve kaydedin (ssd üzerinde ayrı / ana bölümünüz yoksa veya ssd'de başka bölümleriniz yoksa, bunu nasıl değiştireceğiniz hakkında fikir edinmelisiniz:
#!/bin/sh
LOG=/var/log/trim.log
echo "*** $(date -R) ***" >> $LOG
fstrim -v / >> $LOG
fstrim -v /home >> $LOG
Ardından dosyayı çalıştırılabilir duruma getirin:
sudo chmod +x /etc/cron.daily/trim
Ayrıca rc.local'ımı da şöyle düzenledim:
gksu gedit /etc/rc.local
Bunu "çıkış 0" ın üstüne ve son #'nin altına ekleyin:
# Modification for SSD
# you may want to add more folders to be checked/created to this list
for dir in apparmor apt ConsoleKit cups dist-upgrade fsck gdm installer news ntpstats samba speech-dispatcher unattended-upgrades; do
if [ ! -e /var/log/$dir ] ; then
mkdir /var/log/$dir
fi
done
Buradan kopyalayıp yapıştırabilirsiniz, böylece herhangi bir hata olmaz.
Ayrıca, SSD sürücünüzün% 10'unun biçimlendirilmemiş olarak bırakılmasının, görülmesi gereken ömrü uzatmaya yardımcı olabileceğini de okudum. Bu konuyu fazla okumamıştım, bu yüzden mantıklı geldiğinde kefil olamam.
Bu, tüm rehber etrafında en iyisidir, Google'ı bir gündür gezdirmedi ve ardından bir rehber buldu. BURAYA incelemelisiniz.
TRIM, bir işletim sisteminin, artık kullanımda olarak kabul edilmeyen ve dahili olarak silinebilecek veri bloklarını SSD'ye bildirmesini sağlar. Kırpma, SSD'nin atık toplama işlemini başa çıkmasını sağlar; bu, gelecekteki yazma işlemlerini ilgili bloklara önceden önemli ölçüde yavaşlatır. 1
Ubuntu 14.04'te , SSD'leri otomatik olarak otomatik olarak kesen util-linux paketine yeni bir özellik eklendi , ancak yalnızca Intel ve Samsung SSD'leri varsayılan olarak TRIM'i etkinleştirdi, çünkü bazı ucuz SSD'ler TRIM'i çalıştırırken kendilerini tuğlalayabiliyor. 2/etc/cron.weekly/fstrim
Ubuntu 14.04’ün içeriği :
#!/bin/sh
# call fstrim-all to trim all mounted file systems which support it
set -e
# This only runs on Intel and Samsung SSDs by default, as some SSDs with faulty
# firmware may encounter data loss problems when running fstrim under high I/O
# load (e. g. https://launchpad.net/bugs/1259829). You can append the
# --no-model-check option here to disable the vendor check and run fstrim on
# all SSD drives.
exec fstrim-all
1 https://en.wikipedia.org/wiki/Trim_%28computing%29
2 Trim nasıl etkinleştirilir?
/var/tmp
Tanımı gereği, içeriğinin yeniden başlatmanın ötesinde korunması gerektiğinden, tmpfs içerisinde olmaması gerektiği açıktır :
Tamam "uzun lafın kısası":
ext4
Kurulum sırasında olduğu gibi biçimlendirin ve küçük bir takas ~ 1 GB oluşturun. Kurulduktan sonra fstab 'ı düzenleyin sudo gedit /etc/fstab
ve aşağıdaki satırı ekleyin
tmpfs /tmp tmpfs defaults,noatime,mode=1777 0 0
Bu, geçici dosyalarınız için yaşlanmayı azaltacak bir ramdrive oluşturacaktır. Ayrıca noatime,nodiratime,discard
varsayılan ayarlardan sonra ext4 satırınıza ekleyin . Bu aynı zamanda aşınmayı azaltır ve TRIM işlevini etkinleştirir. Kaydet ve yeniden başlat.
Bazı iyi bilgiler vardır http://namhuy.net/1563/how-to-tweak-and-optimize-ssd-for-ubuntu-linux-mint.html adresinden Ubuntu, Linux Nane için SSD ayarını nasıl optimize edersiniz ilgili olmak
Önceden yükle
Ubuntu, Linux Mint veya debian tabanlı dağıtımlara önyükleme yüklemek için
# apt-get update && apt-get install preload
Değiş tokuşu kapat
Değişkenlik ayarını değiştirmek için:
$ su -
# nano /etc/sysctl.conf
Ve bu satırı sysctl.conf dosyasına ekleyin.
vm.swappiness = 10
UPS gerekli. /etc/sysctl.conf
Dosyada
vm.dirty_writeback_centisecs = 15000
vm.swappiness = 10
Yapılandırma dosyası arka /etc/syslog.conf
planını bul, genellikle или /etc/rsyslog.d/
ve formun tüm yolları /var/log/
eksi işaretini ("-") yazarak yolun önüne koy.
/var/log/mail.err
Sonra
mail.err -/var/log/mail.err
FS btrfs
kullanın ve -o ssd
seçeneği kullanın
Daha fazla http://vasilisc.com/speedup_ubuntu_eng#speedup_fs
Ubuntu, Linux Mint için SSD'nin ayarlanması ve optimize edilmesi
TRIM’i etkinleştir
TRIM (Trim komutu, bir işletim sisteminin hangi SSD bloklarının kullanılmadığını ve silinebileceğini bilmesini sağlar)
Yanlış bir şey olması durumunda önce fstab'ı yedekleyin.
# cp /etc/fstab ~/fstab.bk
Fstab dosyasını düzenle
# nano /etc/fstab
Ext4'ten sonra ssd sürücülerinize veya bölümlerinize atın
UUID=bef10b86-494d-41c6-aa46-af72cfba90fd / ext4 discard,errors=remount-ro 0 1
Adding noatime and nodiratime
noatime ve nodiratime, linux dosya sistemi için linux'ta montaj seçenekleridir. noatime dosya sistemindeki atime güncellemelerini devre dışı bırakır ve nodiratime, dizin sistemindeki atime güncellemelerini devre dışı bırakır. Noatime ve nodiratime eklenmesi, ssd yükünü büyük ölçüde azaltacak, performans kazancı anlamına gelir.
Fstab dosyasını düzenle
# nano /etc/fstab
Ext4'den sonra, ssd sürücülerinize veya bölümlerinize noatime, nodiratime ekleyin
UUID=bef10b86-494d-41c6-aa46-af72cfba90fd / ext4 discard,noatime,nodiratime,errors=remount-ro 0 1
Ben sadece yükleme sırasında çok fazla zaman gerektiren herhangi bir uygulamada SSD'de önyükleme sırasında okunan şeyleri yerleştirmenizi öneririm.Tata ve günlükleri ve normal bir HDD'de bulacağım diğer kritik olmayan şeyleri. önyükleme sırasında SSD'den büyük bir initramfs ve ssd'ye yapılan değişiklikleri geri yazmaz. Bu, bu bölümdeki değişikliklerin kalıcı olmadığından ve önyükleme sisteminiz için bir koruma gibi sth.
Örneğin SSD'ye /, / etc, / usr, / boot, / lib 32/64 bölümlerini SSD'ye yerleştiririm;
/ opt, / bin, / sbin, / root, / home ve HDD’de bile takas (RAM artırın !!!)
Wikipedia diyor ki:
Linux çekirdeği 2.6.33 sürümüyle başlayan TRIM işlevini destekler. Ext4 dosya sistemi "at" parametresi kullanılarak monte edildiğinde desteklenir. En yeni disk yardımcı programları (ve bu nedenle bunları kullanan yükleme yazılımı) da uygun bölüm hizalamasını uygular.
Yedeklemeler için en basit (r) senk artı cron işi olan birçok yol vardır.
/root
, /home
ve çoğunlukla salt okunur çünkü takas hız için SSD konulmalıdır. Hız avantajı /var
için, SSD'yi de takın.
/
Kubuntu oneiric için bölüm benim SSD 4,5 GB'tır alır. 20GB /
eksi için yeterli /home
. Dosya sistemi düzenini değiştirmek, onu birkaç bölüme yaymak için harcanan çabaya değmez.
tmpfs
satırlar yorumlanır, öyleyse neden bu satırları ekleme herhangi bir fark yaratır? Bunu uncommented eklemek zorunda mıyız?