Có an toàn để tắt trao đổi vĩnh viễn?


54

Hệ thống của tôi ngày càng chậm hơn, đặc biệt là khi tôi sử dụng các trình duyệt như Firefox / Chromium và Virtual Machines. Tôi nhận thấy rằng tôi đã có ít nhất 3,2 GB RAM miễn phí (sử dụng màn hình hệ thống Gnome) và không có sự hoán đổi.

Những gì tôi đã làm bây giờ là swapoff -avà hiệu suất hệ thống tăng 30%. Vì vậy, câu hỏi của tôi là: Có an toàn để sử dụng swapoff? Nó có an toàn cho PC của tôi để khởi động lại swapoffkhông?

nhập mô tả hình ảnh ở đây


1
Bạn có chắc chắn rằng Ubuntu đang sử dụng trao đổi của bạn trước khi nó sử dụng hoàn toàn ram không? Đầu ra với free -m là gì? Thông thường, tắt trao đổi sẽ không tạo ra sự khác biệt vì Ubuntu cố gắng sử dụng ram càng nhiều càng tốt và không nên xảy ra việc ram không được sử dụng và trao đổi được sử dụng.
ste_kwr

2
Chỉ cần fyi, tôi không có trao đổi trên hệ thống 8GB của mình với một ổ SSD duy nhất.
Lekensteyn

3
Bạn có thể tắt trao đổi, điều này sẽ ổn hoặc điều chỉnh giá trị trao đổi. Nó có thể được tìm thấy tại / Proc / sys / vm / swappiness. Sử dụng 'sysctl' để thay đổi lâu dài hơn. Một điều cần lưu ý là ngủ đông cần trao đổi. Tôi nghĩ rằng giấc ngủ không thực sự cần nó, nhưng ngủ đông thì có.
Marky

@kniwor ya tôi đã làm, sau 2,5 GB ram ... nó sử dụng trao đổi & tôi phải khởi động lại thì hệ thống của tôi chạy ổn. & một thời gian sau 1 GB hệ thống của tôi bị chậm
One Zero

@ tôi đã kiểm tra điều này 5 đến 6 lần
One Zero

Câu trả lời:


94

Nhân Linux cung cấp một cài đặt có thể điều chỉnh để kiểm soát tần suất sử dụng tệp hoán đổi, được gọi là swappiness

Cài đặt swappiness bằng 0 có nghĩa là đĩa sẽ được tránh trừ khi thực sự cần thiết (bạn hết bộ nhớ), trong khi cài đặt swappiness 100 có nghĩa là các chương trình sẽ được hoán đổi sang đĩa gần như ngay lập tức.

Hệ thống Ubuntu đi kèm với mặc định là 60, có nghĩa là tệp hoán đổi sẽ được sử dụng khá thường xuyên nếu mức sử dụng bộ nhớ chiếm khoảng một nửa RAM của tôi. Bạn có thể kiểm tra giá trị trao đổi của hệ thống của riêng bạn bằng cách chạy:

one@onezero:~$ cat /proc/sys/vm/swappiness
60

Vì tôi có 4 GB RAM, vì vậy tôi muốn giảm xuống còn 10 hoặc 15. Tệp hoán đổi sau đó sẽ chỉ được sử dụng khi mức sử dụng RAM của tôi khoảng 80 hoặc 90 phần trăm. Để thay đổi giá trị swappiness hệ thống, mở /etc/sysctl.conf as root. Sau đó, thay đổi hoặc thêm dòng này vào tệp:

vm.swappiness = 10

Khởi động lại để thay đổi có hiệu lực

Bạn cũng có thể thay đổi giá trị trong khi hệ thống của bạn vẫn đang chạy

sysctl vm.swappiness=10

bạn cũng có thể xóa trao đổi của mình bằng cách chạy swapoff -avà sau đó swapon -alà root thay vì khởi động lại để đạt được hiệu quả tương tự.

Để tính Công thức hoán đổi của bạn

free -m (total) / 100 = A

A * 10

root@onezero:/home/one# free -m
             total       used       free     shared    buffers     cached
Mem:          3950       2262       1687          0        407        952
-/+ buffers/cache:        903       3047
Swap:         1953          0       1953

vậy tổng cộng là 3950/100 = 39,5 * 10 = 395

Vì vậy, ý nghĩa của nó là khi 10% 395 MB ram còn lại thì nó bắt đầu sử dụng tính hoán đổi


11
+1 Đây là một cách tuyệt vời để định cấu hình trao đổi. Câu trả lời chính xác. Bạn thậm chí có thể đăng một câu hỏi mới hỏi 'làm cách nào để định cấu hình swappiness' và sao chép câu trả lời này, để người khác dễ dàng tìm thấy hơn. Những người đến với câu hỏi này sẽ tìm kiếm câu trả lời 'có hoặc không', câu trả lời của bạn là cách dành cho những người đã chọn 'có'
Tom Brossman

1
@TomBrossman, tôi đã làm bạn có thể kiểm tra nó hỏiubub.com/questions/103915/how
One Zero

11
Điều này, trong khi là một hướng dẫn hữu ích, không trả lời câu hỏi. Người hỏi muốn biết liệu nó có an toàn hay không , không phải làm thế nào.
bốn

2
@InkBlend Ngay cả weirder, câu trả lời không này là của người hỏi.
gạch dưới

Trong mọi trường hợp, cảm ơn rất nhiều cho tiền boa. Đó là một thế giới hoàn toàn mới khi sử dụng Ubuntu này.
Don Pflaster

17

Có lẽ. Bạn nên đọc phần 'Tại sao tôi cần hoán đổi' trên trang Câu hỏi thường gặp về Ubuntu tại đây và tự mình phán đoán.

Nếu bạn coi trọng tốc độ trên trao đổi mạng an toàn có thể cung cấp, bạn nên vô hiệu hóa nó

Nếu bạn không bao giờ tạm dừng vào đĩa và luôn tắt và khởi động lại, bạn có thể vô hiệu hóa nó một cách an toàn.

Nếu bạn có nhiều RAM (4GB + VM của bạn đang chạy là một cuộc gọi gần) thì bạn có thể.

Đối với tôi, tôi có HĐH trên SSD, RAM 8GB và không bao giờ bị treo. Tôi không cần trao đổi, chưa bao giờ thấy nó được sử dụng và tôi chỉ cài đặt nó theo thói quen.

Thay vào đó, đây là một chỉnh sửa about: config cho Firefox từ Lifehacker giải thích cách chỉ sử dụng RAM cho bộ đệm của trình duyệt. Đọc các phản bác được liên kết ở dưới cùng của bài viết trước khi bạn thử nó.


1

Không, nó không an toàn. Lý do là khi hệ thống hết RAM và sẽ không thể trao đổi bất kỳ thứ gì trong số đó, nó có thể bị đóng băng mà không có cơ hội phục hồi ngoài việc thiết lập lại cứng. Nó không chỉ là về việc có thể đình chỉ hay không.
Nguồn: 14.04 của tôi làm điều đó.

Bạn nên giữ một lượng không gian trao đổi tối thiểu, hãy xem Câu hỏi thường gặp về Ubuntu để biết số.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.