ที่นี่ค่ะ Ubunlog เราอุทิศตนเอง - หรือพยายามอุทิศตนเอง - ให้กับผู้ใช้ทุกคน และนั่นรวมถึงการกำหนดค่าฮาร์ดแวร์ที่แตกต่างกันมาก และในทางใดทางหนึ่ง เราชอบคิดว่าด้วยบทช่วยสอนที่เราแสดงที่นี่ เรามีส่วนช่วยในการปรับปรุงประสบการณ์ผู้ใช้ทั่วไปใน distro นี้ที่เราชอบมาก (ในทุกรสชาติ) ซึ่งเป็นสาเหตุที่เรามักจะเผยแพร่คำแนะนำ สำหรับ รับประสิทธิภาพที่ดีที่สุด เป็นไปได้โดยเฉพาะอย่างยิ่งในอุปกรณ์ที่เรียบง่ายกว่า
ตอนนี้เราจะแสดงโดยไม่ต้องดำเนินการใด ๆ เพิ่มเติม วิธีปรับการใช้หน่วยความจำเสมือนใน อูบุนตูเพื่อหลีกเลี่ยงสิ่งนั้นในที่สุดมันก็กลายเป็นการลากและทำให้ประสิทธิภาพแย่ลงกว่าที่จะเป็นไปได้ และแม้ว่าความคิดในการใช้ไฟล์หรือพาร์ติชัน swap จะไม่เลวในตัวเอง แต่ค่อนข้างตรงกันข้ามหากนำไปใช้งานได้ไม่ดีก็สามารถสร้างการใช้งานฮาร์ดดิสก์มากเกินไปได้ช้ากว่า แรม.
ดังนั้นการใช้พาร์ติชัน swap ควร จำกัด เฉพาะในสถานการณ์ที่ไม่มีทางเลือกอื่นนอกจากใช้ในเวลานั้นจะรองรับหน่วยความจำหลัก (ซึ่งก็คือ RAM) ถ้าเราใช้มันตลอดเวลาบางครั้งถึงก่อน RAM ประสิทธิภาพของเราจะถูกลงโทษ มาดูกันดีกว่า วิธีปรับการใช้หน่วยความจำเสมือนใน Linux โดยใช้คำสั่ง Swappiness.
ในระบบปฏิบัติการของเราการสร้างหน่วยความจำเสมือนมักจะดำเนินการในระหว่างขั้นตอนการติดตั้งซึ่งในเวลานั้นเรากำหนดพาร์ติชันรูท (/) พาร์ติชันหน่วยเก็บข้อมูล (/ home) และพาร์ติชันแลกเปลี่ยนหรือ swap ซึ่งโดยปกติจะใช้กับพาร์ติชัน / dev / sda5. พารามิเตอร์เคอร์เนลที่จัดการการใช้หน่วยความจำเสมือนคือความรวดเร็วที่กล่าวถึงก่อนหน้านี้และโดยทั่วไปเราสามารถพูดได้ว่ามีหน้าที่กำหนดความถี่ที่เราเข้าถึงพาร์ติชัน swap และจำนวนเนื้อหาที่เราคัดลอกผ่านอาร์กิวเมนต์ที่แตกต่างกันระหว่าง 0 และ 100
ค่าดีฟอลต์ในการติดตั้ง Linux คือ 60แต่เป็นเรื่องง่ายที่จะสรุปการกำหนดค่าฮาร์ดแวร์บางอย่างไม่เหมือนกันดังนั้นจึงไม่สมเหตุสมผลที่จะรักษาระดับนั้นไม่ว่าจะเป็นของเรา ค่านี้ถูกเก็บไว้ในไฟล์ / proc / sys / vm / swappiness และเราสามารถตรวจสอบได้โดย:
cat / proc / sys / vm / swappiness
มันจะอยู่ที่ 60 อย่างแน่นอนและหากเป็นเช่นนั้นเราอาจต้องแก้ไขโดยเฉพาะอย่างยิ่ง หากเรามีหน่วยความจำ RAM มากกว่า 4 GB เนื่องจากในกรณีนี้เรามักจะต้องการหน่วยความจำเสมือนเพียงเล็กน้อยหรือไม่มีเลย. แต่ก่อนที่จะอธิบายวิธีแก้ไขนั้นเรามาดูตรรกะที่อยู่เบื้องหลังหน่วยความจำเสมือนและสิ่งที่รวดเร็ว และเมื่อมันถูกทิ้งไว้โดยค่าเริ่มต้นที่ 60 สิ่งที่เคอร์เนลได้รับแจ้งคือให้ไปและใช้หน่วยความจำเสมือนเมื่อ RAM ของเรามีความจุว่าง 40 เปอร์เซ็นต์หรือน้อยกว่า ด้วยประการฉะนี้ ถ้าเราตั้งค่า swappiness เท่ากับ 100 หน่วยความจำเสมือนจะถูกใช้ตลอดเวลาและถ้าเราปล่อยทิ้งไว้ในค่าที่ต่ำมากจะใช้ก็ต่อเมื่อ RAM ของเราใกล้จะหมดเท่านั้น ค่าต่ำสุดที่เป็นไปได้คือ 1 เนื่องจากปล่อยให้ค่าเท่ากับ 0 เราจึงปิดใช้งานหน่วยความจำเสมือนอย่างสมบูรณ์.
ดังนั้นสิ่งที่เราต้องทำคือป้อนคำสั่งต่อไปนี้จากเทอร์มินัล (Ctrl + Alt + T):
sudo sysctl vm.swappiness = 10
ตอนนี้ค่าของ ความรวดเร็วจะยังคงอยู่ที่ 10 จากนั้นแทบจะไม่ได้ใช้หน่วยความจำเสมือน. เมื่อค่านี้มีการเปลี่ยนแปลง ไม่จำเป็นต้องรีสตาร์ทคอมพิวเตอร์ แต่จะมีผลทันทีและในความเป็นจริงถ้าเรารีเซ็ตค่ามันจะอยู่ที่ 60 เหมือนเดิมเพราะสิ่งที่เราต้องการคือปล่อยให้การเปลี่ยนแปลงนี้สร้างขึ้นอย่างถาวร ในการทำเช่นนี้เมื่อเราใช้คอมพิวเตอร์ของเราและตรวจสอบแล้วว่าทุกอย่างเรียบร้อยดีด้วยค่าใหม่ของความรวดเร็วเราจะดำเนินการ:
sudo นาโน /etc/sysctl.conf
หลังจากนั้นเราจะค้นหาข้อความ vm.swappiness = และเพิ่มค่าที่ต้องการหลังสัญลักษณ์ "=" เราบันทึกไฟล์และตอนนี้การเปลี่ยนแปลงจะเป็นแบบถาวร
อธิบายได้ดีเยี่ยม !!! บทความดีมาก !! ในกรณีของฉันเมื่อฉันทำการเปลี่ยนแปลงนี้เมื่อรีสตาร์ทโน้ตบุ๊กมันจะกลับไปเป็นค่าดั้งเดิมที่ 60 มันเหมือนกับว่าไฟล์ถูกบันทึกไว้ แต่เมื่อรีสตาร์ทมันเป็น "ฟอร์แมต" ฉันลองทุกอย่างแล้วไม่ประสบความสำเร็จคุณมีความคิดว่าจะเกิดอะไรขึ้นบ้างไหม? ฉันมี Ram 1GB
ขอบคุณ!
สวัสดีCésarฉันดีใจที่คุณคิดว่ามันน่าสนใจ
หากค่าสูญหายเมื่อระบบรีบูตฉันจะดูที่ /etc/rc.local และสคริปต์เริ่มต้นอื่น ๆ (จะแตกต่างกันไปตามแต่ละ distro) เนื่องจากอาจเป็นไปได้ว่าสิ่งนี้ถูกตั้งไว้เมื่อเริ่มต้น
ทักทาย!
คำอธิบายดีมาก!
ในฐานะที่เป็นส่วนเสริมนี่เป็นอีกหนึ่งสิ่งที่น่าสนใจเกี่ยวกับ Swap และ swappiness ใน Linux:
http://www.sysadmit.com/2016/10/linux-swap-y-swappiness.html
คุณไม่รู้ว่าสิ่งนี้ดีแค่ไหนสำหรับฉันขอบคุณ
ขอแสดงความนับถือ
ใน /etc/sysctl.conf ของฉันไม่ใช่ข้อความ vm.swappiness = ฉันมองหามันอย่างดีไฟล์มีขนาดเล็ก บทความระบุว่าให้ค้นหาและแก้ไขค่าไม่ใช่เพิ่มบรรทัดเว้นแต่คุณจะต้องเพิ่ม
ขอแสดงความนับถือ
ใน /etc/sysctl.conf ของฉันไม่มี vm.swappiness = text บทความระบุว่าให้ค้นหาและแก้ไขค่าไม่ใช่เพิ่มบรรทัดเว้นแต่คุณจะต้องเพิ่ม
คุณต้องสร้างมันในตอนท้ายของไฟล์ที่คุณใส่ vm.swappiness = 10 เท่านี้ก็เสร็จเรียบร้อย
หากไม่บันทึกเมื่อรีสตาร์ทอาจเป็นเพราะคุณไม่ได้ใช้คำสั่ง sudo
Ubuntu: sudo gedit /etc/sysctl.conf
Xubuntu: sudo mousepad /etc/sysctl.conf
บทความยอดเยี่ยม ขอบคุณ!
คุณสามารถใส่ศูนย์ มีปัญหาอะไรบ้าง?
สวัสดีและขอบคุณ Willy Clew สำหรับบทความของคุณที่ทำให้ฉันเข้าใจกระบวนการใช้หน่วยความจำ swapp ได้อย่างชัดเจน แต่ทำให้ฉันเกิดข้อสงสัยอย่างมากเพราะเมื่อเข้าสู่เทอร์มินัลและดำเนินการตามคำสั่งที่คุณระบุมันจะส่งคืนข้อความที่ระบุว่า:
bash: cat / proc / sys / vm / swappiness: ไม่มีไฟล์หรือไดเร็กทอรี
สิ่งนี้เกิดจากอะไรได้บ้าง?
คุณเขียนไม่ดี คุณไม่ได้เว้นวรรคหลัง "cat"
เยี่ยมมากเราแบ่งปันในกลุ่ม ubuntu เป็นภาษาสเปน https://t.me/ubuntu_es
มันใช้งานได้ดีสำหรับฉันใน Debian 10.9
ฉันเป็นนักวิทยาศาสตร์คอมพิวเตอร์ ฉันได้ติดตั้งและทดสอบ distros หลายตัว ตัวเลือกที่ดีที่สุดในการกำหนดค่าความสลับไปมาคือการเขียนในเทอร์มินัล
sudo นาโน /etc/sysctl.conf
หลังจากกด Enter ให้เขียนคีย์แล้ว Enter อีกครั้ง จากนั้นให้เขียนต่อท้ายบรรทัดต่อไปนี้
vm.swappiness = 0
แล้วกด ctrl กับ x พร้อมกัน เขาสร้างคำถามว่าถ้าจะเซฟประโยคใหม่ในไฟล์ ให้กดปุ่ม Y เพื่อบอกว่า yes และ n เพื่อไม่ให้เซฟ
ทำไมฉันถึงเขียนศูนย์ 0? การทดสอบได้ทำไปแล้วบนพีซีหลายเครื่องที่ฉันตั้งโปรแกรมไว้เพราะนั่นเป็นตัวเลือกที่ดีที่สุดเนื่องจากใช้การแบ่งหน้า ตัวอย่างเช่น ถ้าเปิดโครเมียมหรือเบราว์เซอร์โดยเปิด Facebook เนื่องจากหน่วยความจำแลกเปลี่ยน (สลับหรือเรียกอีกอย่างว่าการแบ่งหน้า) จะเพิ่มขึ้น แต่เมื่อปิดเซสชันและเบราว์เซอร์หรือโปรแกรมใด ๆ เนื่องจากหน่วยความจำเพจ (swap) จะลดการว่างบนฮาร์ดดิสก์ซึ่งเป็นประโยชน์ในการหลีกเลี่ยงความเสียหาย จำไว้ว่าหน่วยความจำ swap หรือที่เรียกว่าเพจ (swap) ใช้ฮาร์ดดิสก์
ฉันไม่เข้าใจ ขอโทษ ถ้าค่าดีฟอลต์คือ 60 สำหรับ swap ที่จะเปิดใช้งานโดยที่ 40 หรือน้อยกว่านั้น เมื่อตั้งค่าพารามิเตอร์เป็น 10 มันจะเปิดใช้งานด้วย 90 ของ ram ว่างใช่หรือไม่ โดยชะลอการแลกเปลี่ยนข้อมูล