Giới thiệu
Trong lab này, bạn sẽ học cách sử dụng lệnh sysctl
trong Linux để xem và sửa đổi các tham số kernel tại thời điểm chạy. Lệnh sysctl
cho phép bạn tinh chỉnh hành vi của hệ thống Linux bằng cách điều chỉnh các cài đặt cấp kernel khác nhau, chẳng hạn như mạng, quản lý bộ nhớ và cấu hình bảo mật. Bạn sẽ bắt đầu bằng cách hiểu mục đích và chức năng của lệnh sysctl
, sau đó học cách sửa đổi các tham số kernel bằng lệnh và cuối cùng, khám phá cách duy trì các thay đổi cấu hình này sau khi khởi động lại hệ thống.
Hiểu Mục đích và Chức năng của Lệnh sysctl
Trong bước này, bạn sẽ tìm hiểu về mục đích và chức năng của lệnh sysctl
trong Linux. Lệnh sysctl
được sử dụng để xem và sửa đổi các tham số kernel tại thời điểm chạy, cho phép bạn tinh chỉnh hành vi của hệ thống Linux.
Lệnh sysctl
cho phép bạn:
- Xem giá trị hiện tại của một tham số kernel
- Sửa đổi giá trị của một tham số kernel
- Duy trì các thay đổi tham số kernel sau khi khởi động lại hệ thống
Để xem giá trị hiện tại của một tham số kernel, bạn có thể sử dụng lệnh sysctl
với tên tham số:
$ sysctl kernel.hostname
kernel.hostname = ubuntu
Thao tác này sẽ hiển thị giá trị hiện tại của tham số kernel.hostname
.
Để sửa đổi giá trị của một tham số kernel, bạn có thể sử dụng tùy chọn -w
hoặc --write
:
$ sudo sysctl -w kernel.hostname=myhost
kernel.hostname = myhost
Thao tác này sẽ thay đổi hostname của hệ thống thành myhost
.
Ví dụ đầu ra:
$ sysctl kernel.hostname
kernel.hostname = myhost
Lệnh sysctl
cung cấp quyền truy cập vào một loạt các tham số kernel, cho phép bạn tùy chỉnh và tối ưu hóa hệ thống Linux của mình cho các trường hợp sử dụng cụ thể.
Sửa đổi Tham số Kernel bằng Lệnh sysctl
Trong bước này, bạn sẽ học cách sử dụng lệnh sysctl
để sửa đổi các tham số kernel trong hệ thống Linux của bạn.
Lệnh sysctl
cho phép bạn xem và thay đổi giá trị của các tham số kernel khác nhau tại thời điểm chạy. Điều này có thể hữu ích để điều chỉnh hiệu suất hệ thống, bảo mật và các khía cạnh khác của hệ thống Linux của bạn.
Để sửa đổi một tham số kernel bằng sysctl
, bạn có thể sử dụng tùy chọn -w
hoặc --write
, tiếp theo là tên tham số và giá trị mới:
$ sudo sysctl -w net.ipv4.ip_forward=1
net.ipv4.ip_forward = 1
Trong ví dụ này, chúng ta đang bật IP forwarding bằng cách đặt tham số net.ipv4.ip_forward
thành 1
.
Bạn cũng có thể sử dụng lệnh sysctl
để sửa đổi nhiều tham số cùng một lúc:
$ sudo sysctl -w net.ipv4.ip_forward=1 vm.swappiness=10
net.ipv4.ip_forward = 1
vm.swappiness = 10
Ở đây, chúng ta đang bật IP forwarding và đặt tham số vm.swappiness
thành 10
.
Ví dụ đầu ra:
$ sysctl net.ipv4.ip_forward vm.swappiness
net.ipv4.ip_forward = 1
vm.swappiness = 10
Các thay đổi được thực hiện bằng lệnh sysctl
chỉ là tạm thời và sẽ mất sau khi khởi động lại hệ thống. Để làm cho các thay đổi này tồn tại vĩnh viễn, bạn cần sửa đổi tệp cấu hình thích hợp, điều mà chúng ta sẽ đề cập trong bước tiếp theo.
Duy trì Thay đổi Cấu hình sysctl Sau khi Khởi động lại
Trong bước trước, bạn đã học cách sử dụng lệnh sysctl
để sửa đổi các tham số kernel. Tuy nhiên, những thay đổi này chỉ là tạm thời và sẽ mất sau khi khởi động lại hệ thống. Trong bước này, bạn sẽ học cách làm cho các thay đổi cấu hình sysctl
tồn tại vĩnh viễn sau khi khởi động lại.
Để duy trì các thay đổi cấu hình sysctl
, bạn cần sửa đổi tệp /etc/sysctl.conf
. Tệp này được kernel đọc khi khởi động và các tham số kernel được chỉ định sẽ được áp dụng.
Đầu tiên, mở tệp /etc/sysctl.conf
bằng trình soạn thảo văn bản:
$ sudo nano /etc/sysctl.conf
Sau đó, thêm các tham số kernel bạn muốn duy trì, mỗi tham số trên một dòng, theo định dạng sau:
parameter=value
Ví dụ: để duy trì các thay đổi được thực hiện trong bước trước:
net.ipv4.ip_forward=1
vm.swappiness=10
Lưu tệp và thoát trình soạn thảo văn bản.
Để áp dụng các thay đổi ngay lập tức, mà không cần đợi khởi động lại, hãy chạy lệnh sau:
$ sudo sysctl -p
Thao tác này sẽ tải cấu hình mới từ tệp /etc/sysctl.conf
và áp dụng các thay đổi.
Ví dụ đầu ra:
$ sudo sysctl -p
net.ipv4.ip_forward = 1
vm.swappiness = 10
Giờ đây, các thay đổi tham số kernel sẽ tồn tại vĩnh viễn sau khi khởi động lại hệ thống.
Tóm tắt
Trong lab này, bạn đã tìm hiểu về mục đích và chức năng của lệnh sysctl trong Linux, cho phép bạn xem và sửa đổi các tham số kernel tại thời điểm chạy. Bạn đã khám phá cách sử dụng lệnh sysctl để xem giá trị hiện tại của tham số kernel, cũng như cách sửa đổi giá trị của tham số bằng tùy chọn -w hoặc --write. Ngoài ra, bạn đã biết rằng lệnh sysctl cung cấp quyền truy cập vào một loạt các tham số kernel, cho phép bạn tùy chỉnh và tối ưu hóa hệ thống Linux của mình cho các trường hợp sử dụng cụ thể. Cuối cùng, bạn đã khám phá cách sửa đổi nhiều tham số kernel đồng thời bằng lệnh sysctl.