Giống như bất kỳ hệ điều hành nào khác, GNU / Linux đã thực hiện quản lý bộ nhớ một cách hiệu quả và thậm chí còn hơn thế nữa. Nhưng nếu bất kỳ quá trình nào ăn mòn bộ nhớ của bạn và bạn muốn xóa nó, Linux cung cấp một cách để xóa hoặc xóa bộ nhớ cache ram.

  • Tìm 15 quy trình hàng đầu theo mức sử dụng bộ nhớ trong Linux
  • Tìm các quy trình chạy hàng đầu theo mức sử dụng CPU và bộ nhớ cao nhất trong Linux
  • Cách giới hạn thời gian và bộ nhớ sử dụng các tiến trình trong Linux

Làm thế nào để xóa bộ nhớ cache trong Linux?

Mỗi Hệ thống Linux đều có ba tùy chọn để xóa bộ nhớ cache mà không làm gián đoạn bất kỳ quy trình hoặc dịch vụ nào.

1. Chỉ xóa PageCache.

# sync; echo 1 > /proc/sys/vm/drop_caches

2. Rõ ràng răng giả và inodes.

# sync; echo 2 > /proc/sys/vm/drop_caches

3. Xóa pagecache, răng giả và inodes.

# sync; echo 3 > /proc/sys/vm/drop_caches 

Giải thích lệnh trên.

đồng bộ hóa sẽ xóa bộ đệm hệ thống tệp. Lệnh được phân tách bằng “;” chạy tuần tự. Trình bao đợi mỗi lệnh kết thúc trước khi thực hiện lệnh tiếp theo trong chuỗi. Như đã đề cập trong tài liệu hạt nhân, việc viết thư tới drop_cache sẽ làm sạch bộ nhớ cache mà không giết bất kỳ ứng dụng / dịch vụ nào, lệnh echo đang thực hiện công việc ghi vào tệp.

Nếu bạn phải xóa bộ nhớ cache trên đĩa, lệnh đầu tiên là an toàn nhất trong doanh nghiệp và sản xuất là “...echo 1 > ….” sẽ xóa PageCache chỉ một. Không khuyến khích sử dụng tùy chọn thứ ba ở trên “...echo 3 >” trong quá trình sản xuất cho đến khi bạn biết mình đang làm gì, vì nó sẽ rõ ràng pagecache, răng giả,inodes.

See also  20 lệnh Linux YUM (Yellowdog Updater, đã được sửa đổi) để quản lý gói
Giải phóng Bộ đệm và Bộ nhớ đệm trong Linux có thể được Nhân Linux sử dụng có phải là một ý kiến ​​hay không?

Bộ đệm và bộ nhớ đệm miễn phí trong Linux

Khi bạn đang áp dụng các cài đặt khác nhau và muốn kiểm tra xem nó có thực sự được triển khai đặc biệt trên điểm chuẩn mở rộng I / O hay không, thì bạn có thể cần phải xóa bộ đệm đệm. Bạn có thể xóa bộ nhớ cache như đã giải thích ở trên mà không cần khởi động lại Hệ thống, tức là không cần thời gian chết.

Linux được thiết kế theo cách mà nó nhìn vào bộ nhớ cache của đĩa trước khi nhìn vào đĩa. Nếu nó tìm thấy tài nguyên trong bộ nhớ cache, thì yêu cầu không đến được đĩa. Nếu chúng ta dọn dẹp bộ nhớ cache, bộ nhớ cache trên đĩa sẽ ít hữu ích hơn vì Hệ điều hành sẽ tìm kiếm tài nguyên trên đĩa.

Hơn nữa, nó cũng sẽ làm chậm hệ thống trong vài giây trong khi bộ đệm được dọn sạch và mọi tài nguyên mà HĐH yêu cầu được tải lại trong bộ đệm ổ đĩa.

Bây giờ chúng ta sẽ tạo một tập lệnh shell để tự động xóa bộ nhớ cache RAM hàng ngày tại 2 giờ sáng thông qua một tác vụ lập lịch cron. Tạo một tập lệnh shell clearcache.sh và thêm các dòng sau.

#!/bin/bash
# Note, we are using "echo 3", but it is not recommended in production instead use "echo 1"
echo "echo 3 > /proc/sys/vm/drop_caches"

Đặt quyền thực thi trên clearcache.sh tập tin.

# chmod 755 clearcache.sh

Bây giờ bạn có thể gọi tập lệnh bất cứ khi nào bạn được yêu cầu xóa bộ nhớ cache ram.

See also  12 lệnh Tcpdump - Công cụ dò tìm mạng

Bây giờ, hãy đặt cron để xóa bộ nhớ cache RAM mỗi ngày vào lúc 2 giờ sáng. Mở ra crontab để chỉnh sửa.

# crontab -e

Nối dòng bên dưới, lưu và thoát để chạy nó tại 2 giờ sáng hằng ngày.

0  2  *  *  *  /path/to/clearcache.sh

Để biết thêm chi tiết về cách thực hiện một công việc, bạn có thể muốn xem bài viết của chúng tôi về 11 Công việc Lập lịch trình cho Cron.

Bạn có nên tự động xóa bộ nhớ cache RAM trên máy chủ sản xuất không?

Xóa bộ nhớ cache RAM trên Máy chủ sản xuất Linux?

Không! không phải vậy. Hãy nghĩ đến một tình huống khi bạn đã lên lịch tập lệnh để xóa bộ nhớ cache ram mỗi ngày vào lúc 2 giờ sáng. Mỗi ngày vào lúc 2 giờ sáng, tập lệnh được thực thi và nó sẽ xóa bộ nhớ đệm RAM của bạn. Một ngày nào đó vì bất kỳ lý do gì có thể có nhiều hơn dự kiến ​​người dùng trực tuyến trên trang web của bạn và tìm kiếm tài nguyên từ máy chủ của bạn.

Đồng thời, tập lệnh theo lịch trình sẽ chạy và xóa mọi thứ trong bộ nhớ cache. Bây giờ tất cả người dùng đang tìm nạp dữ liệu từ đĩa. Nó sẽ dẫn đến sự cố máy chủ và làm hỏng cơ sở dữ liệu. Vì vậy, chỉ xóa bộ nhớ cache ram khi được yêu cầu và biết được bước chân của bạn, nếu không bạn là Quản trị viên Hệ thống Giáo phái Hàng hóa.

See also  10 lệnh thu thập thông tin hệ thống và phần cứng trong Linux

Làm thế nào để xóa không gian hoán đổi trong Linux?

Nếu bạn muốn xóa không gian Swap, bạn có thể chạy lệnh dưới đây.

# swapoff -a && swapon -a

Ngoài ra, bạn có thể thêm lệnh trên vào một tập lệnh cron ở trên, sau khi hiểu tất cả các rủi ro liên quan.

Bây giờ chúng ta sẽ kết hợp cả hai lệnh trên thành một lệnh duy nhất để tạo một tập lệnh thích hợp để xóa RAM Cache và Swap Space.

# echo 3 > /proc/sys/vm/drop_caches && swapoff -a && swapon -a && printf 'n%sn' 'Ram-cache and Swap Cleared'

OR

$ su -c "echo 3 >'/proc/sys/vm/drop_caches' && swapoff -a && swapon -a && printf 'n%sn' 'Ram-cache and Swap Cleared'" root

Sau khi kiểm tra cả hai lệnh trên, chúng tôi sẽ chạy lệnh “miễn phí -h”Trước và sau khi chạy tập lệnh và sẽ kiểm tra bộ nhớ đệm.

Xóa bộ nhớ đệm RAM và trao đổi không gian

Đó là tất cả bây giờ, nếu bạn thích bài viết, đừng quên cung cấp cho chúng tôi những phản hồi quý giá của bạn trong phần bình luận để cho chúng tôi biết, bạn nghĩ ý kiến ​​hay để xóa bộ nhớ đệm ram và bộ đệm trong sản xuất và doanh nghiệp là gì?

By admin

Leave a Reply