Sử dụng Etckeeper để kiểm soát phiên bản / etc

Giới thiệu

Thư mục /etc/đóng một vai trò quan trọng trong cách thức hoạt động của hệ thống Linux. Lý do cho điều này là bởi vì gần như mọi tập tin cấu hình hệ thống được đặt bên trong /etc/. Dữ liệu được lưu trữ /etc/không chỉ liên quan đến các thư viện hệ thống tích hợp mà còn cho phần mềm mới được cài đặt và cả cấu hình của nó. Cài đặt hệ thống và phần mềm, nâng cấp và thay đổi cấu hình đều được lưu trữ trong /etc/. Vì vậy, nó có phải là một thực tiễn tốt để sử dụng kiểm soát phiên bản khi quản lý /etc/để tránh các lỗi tiềm ẩn gây ra bởi các hoạt động không lường trước hoặc vô tình.

Với Etckeeper, bạn có thể dễ dàng quản lý /etc/với cơ chế kiểm soát phiên bản của mình bằng cách sử dụng kho lưu trữ Git, Mercurial, Bazaar hoặc Darcs. Theo mặc định, Etckeeper sử dụng git để duy trì /etc/thư mục kho lưu trữ phiên bản ở mức chi tiết hàng ngày để giảm thiểu mất dữ liệu tiềm năng. Ngoài ra, nó cho phép bạn thực hiện các thay đổi của mình theo cách thủ công bất cứ lúc nào.

Trong bài viết này, chúng ta hãy xem cách cài đặt Etckeeper trên phiên bản máy chủ CentOS 6, cũng như cách thực hiện thủ công một cam kết và hoàn tác các thay đổi.

Điều kiện tiên quyết

Các hướng dẫn trong bài viết này đã được xác thực trên phiên bản Vultr CentOS 6 với ngăn xếp LEMP. Hướng dẫn cho các bản phân phối khác có thể khác nhau.

Lưu ý: đó là một thực tiễn bảo mật tốt để truy cập hệ thống của bạn với tư cách là người dùng không root với các đặc quyền sudo.

Bước 1: Cài đặt Etckeeper

Etckeeper được bao gồm trong repo EPEL Yum. Bạn cần thiết lập repo EPEL Yum trước khi có thể cài đặt Etckeeper:

sudo yum install epel-release
sudo yum update
sudo yum install etckeeper

Cài đặt thành công Etckeeper sẽ tự động cài đặt git và các phụ thuộc khác.

Bạn có thể tùy chỉnh cấu hình của Etckeeper bằng cách chỉnh sửa tệp cấu hình tại /etc/etckeeper/etckeeper.conf. Tuy nhiên, cấu hình mặc định là đầy đủ và chúng tôi sẽ sử dụng nó cho mục đích của hướng dẫn này.

Bước 2: Cấu hình / etc làm thư mục git của Etckeeper

Bạn có thể làm cho Etckeeper coi /etc/là thư mục làm việc của git bằng cách thực hiện các lệnh sau:

cd /etc
sudo etckeeper init

Các "init" sub-lệnh trên sẽ tạo ra một file có tên .gitignorevà thư mục có tên .gittrong /etc/.

.gitignorechứa một danh sách các tập tin được xác định trước và không yêu cầu quản lý với kiểm soát phiên bản. Nếu cần, bạn có thể thêm hoặc xóa tên tệp trong đó nếu muốn, chỉ cần nhớ đặt một tên tệp trên mỗi dòng giữa dòng # begin section managed by etckeeper...và dòng # end section managed by etckeeper.

Thư mục .gitlà nơi lưu trữ kho phiên bản của /etc/thư mục.

Bước 3: Thực hiện cam kết ban đầu

Trước khi cam kết ban đầu, bạn có thể xem những gì sẽ được cam kết:

sudo etckeeper vcs status | more

Lệnh vcsphụ của Etckeeper sẽ gọi phần mềm kiểm soát phiên bản (là git) để thực hiện lệnh phụ sau trong /etc/thư mục. Vì vậy, lệnh trên bằng với:

sudo git -C /etc status | more

Nhấn space barđể chuyển một trang. Nếu bạn tìm thấy bất kỳ tệp nào không được kiểm soát phiên bản, hãy thêm chúng vào .gitignoretệp.

Bây giờ, bạn có thể cam kết tất cả các nội dung trong thư mục / etc (ngoại trừ các tệp được xác định trong .gitignore) vào kho git của bạn. Hãy nhớ viết một số ý kiến ​​có ý nghĩa giữa hai dấu ngoặc kép để xem xét.

sudo etckeeper commit "Initial config in /etc"

Tại đây, bạn có thể nén thư mục git để tiết kiệm dung lượng đĩa:

sudo etckeeper vcs gc

Bước 4: Thực hiện một cam kết khác sau khi thực hiện thay đổi trong / etc

Kết hợp với git, Etckeeper có thể ghi lại bất kỳ thay đổi nào xảy ra trong /etc/thư mục, chẳng hạn như thêm, sửa đổi hoặc xóa các tệp, cũng như thay đổi quyền sở hữu và / hoặc quyền đối với các tệp và thư mục. Tất cả mọi thứ thuộc /etc/chính sách kiểm soát phiên bản của nó.

Xin lưu ý rằng việc /etc/kiểm soát phiên bản không có nghĩa là bạn có thể thực hiện bất kỳ thao tác nào trên nó. Các hoạt động sai nghiêm trọng có thể khiến hệ thống không thể hoạt động trước khi Etckeeper có thể khôi phục cấu hình về trạng thái hoạt động.

Đối với mục đích thử nghiệm, bạn chỉ nên thực hiện các thay đổi an toàn /etc/, chẳng hạn như thêm tệp mới, sửa đổi tên máy chủ /etc/hostshoặc cài đặt phần mềm mới bằng Yum.

Ví dụ: thêm tệp abcdevào /etc/:

sudo touch /etc/abcde

Sau đó, thêm dòng 192.168.0.2 desktoptrong /etc/hoststệp:

echo '192.168.0.2 desktop' | sudo tee -a /etc/hosts

Cuối cùng, bạn có thể thực hiện lại lệnh phụ "commit":

sudo etckeeper commit "add a file /etc/abcde and add a line to /etc/hosts"

Bước 5: Thu hồi các thay đổi của bạn

Đầu tiên, bạn có thể kiểm tra lịch sử git để nhận từng id và nhận xét của cam kết:

sudo etckeeper vcs log

Thứ hai, bạn có thể kiểm tra chi tiết của bất kỳ cam kết nào với một vài bit đầu tiên của id cam kết của nó. Ở đây, chúng tôi giả sử rằng id xác nhận đầu tiên là 7f5bff, id xác nhận thứ hai là 1aa658.

sudo etckeeper vcs show 1aa658

Bạn có thể nhấn jđể di chuyển xuống, nhấn kđể di chuyển lên, nhập /keyword<Enter>để tìm kiếm, nhấn qđể thoát.

Thứ ba, bạn cũng có thể so sánh sự khác biệt giữa hai lần xác nhận với lệnh sau. Hãy nhận biết trình tự của hai cam kết, một chuỗi tự nhiên đang đặt cái trước trước cái thứ hai.

sudo etckeeper vcs diff 7f5bff..1aa658

Bây giờ, bạn thấy rằng bạn đã định cấu hình sai tên máy chủ /etc/hoststrong lần xác nhận đầu tiên và lần xác nhận thứ hai, nhưng thêm tệp /etc/abcdelà một thao tác chính xác, bạn có thể thu hồi thay đổi của mình chỉ trong /etc/hoststệp bằng lệnh sau:

sudo etckeeper vcs checkout 7f5bff /etc/hosts

Nếu bạn muốn thu hồi tất cả các thay đổi giữa lần xác nhận đầu tiên và lần xác nhận thứ hai, bạn có thể sử dụng lệnh sau:

sudo etckeeper vcs checkout 7f5bff

Tất nhiên, bạn vẫn có thể quay lại cam kết thứ hai:

sudo etckeeper vcs checkout 1aa658

Phần kết luận

Có Etckeeper được cấu hình đúng cách, bạn có thể điều chỉnh và bảo trì hệ thống của mình một cách tự tin hơn. Tuy nhiên, hãy lưu ý rằng kiểm soát phiên bản khác với sao lưu và /etc/thư mục không phải là nơi duy nhất cần quan tâm. Để giữ cho hệ thống của bạn luôn hoạt động, bạn cũng cần sao lưu hệ thống thường xuyên bên cạnh cơ chế kiểm soát phiên bản.



Leave a Comment

Cách cài đặt SuiteCRM trên Ubuntu 16.04

Cách cài đặt SuiteCRM trên Ubuntu 16.04

Hướng dẫn cài đặt SuiteCRM, một giải pháp CRM mã nguồn mở, trên Ubuntu 16.04 với các bước chi tiết và dễ hiểu.

ReactOS: Đây có phải là tương lai của Windows?

ReactOS: Đây có phải là tương lai của Windows?

ReactOS, một hệ điều hành mã nguồn mở và miễn phí đã có phiên bản mới nhất. Liệu nó có thể đáp ứng đủ nhu cầu của người dùng Windows hiện đại và hạ gục Microsoft? Hãy cùng tìm hiểu thêm về trải nghiệm hệ điều hành kiểu cũ nhưng mới hơn này.

Liệu AI có thể chiến đấu với số lượng các cuộc tấn công bằng Ransomware ngày càng tăng

Liệu AI có thể chiến đấu với số lượng các cuộc tấn công bằng Ransomware ngày càng tăng

Các cuộc tấn công ransomware đang gia tăng, nhưng liệu AI có thể giúp đối phó với loại virus máy tính mới nhất? AI có phải là câu trả lời? Đọc ở đây biết là AI boone hay cấm

Luôn kết nối thông qua Ứng dụng WhatsApp Desktop 24 * 7

Luôn kết nối thông qua Ứng dụng WhatsApp Desktop 24 * 7

Whatsapp cuối cùng đã ra mắt ứng dụng Máy tính để bàn cho người dùng Mac và Windows. Giờ đây, bạn có thể truy cập Whatsapp từ Windows hoặc Mac một cách dễ dàng. Có sẵn cho Windows 8+ và Mac OS 10.9+

Làm thế nào AI có thể đưa quá trình tự động hóa lên cấp độ tiếp theo?

Làm thế nào AI có thể đưa quá trình tự động hóa lên cấp độ tiếp theo?

Hãy đọc phần này để biết Trí tuệ nhân tạo đang trở nên phổ biến như thế nào đối với các công ty quy mô nhỏ và làm thế nào nó đang tăng khả năng khiến họ phát triển và giúp đối thủ cạnh tranh của họ có thể cạnh tranh.

Bản cập nhật bổ sung macOS Catalina 10.15.4 đang gây ra nhiều vấn đề hơn là giải quyết

Bản cập nhật bổ sung macOS Catalina 10.15.4 đang gây ra nhiều vấn đề hơn là giải quyết

Gần đây Apple đã phát hành macOS Catalina 10.15.4 một bản cập nhật bổ sung để khắc phục các sự cố nhưng có vẻ như bản cập nhật đang gây ra nhiều vấn đề hơn dẫn đến việc máy mac bị chai. Đọc bài viết này để tìm hiểu thêm

13 Công cụ trích xuất dữ liệu thương mại của Dữ liệu lớn

13 Công cụ trích xuất dữ liệu thương mại của Dữ liệu lớn

13 Công cụ trích xuất dữ liệu thương mại của Dữ liệu lớn

Hệ thống tệp nhật ký là gì và nó hoạt động như thế nào?

Hệ thống tệp nhật ký là gì và nó hoạt động như thế nào?

Máy tính của chúng tôi lưu trữ tất cả dữ liệu một cách có tổ chức được gọi là hệ thống tệp Ghi nhật ký. Đây là một phương pháp hiệu quả cho phép máy tính tìm kiếm và hiển thị các tệp ngay khi bạn nhấn tìm kiếm. Https://wethegeek.com/? P = 94116 & preview = true

Điểm kỳ dị về công nghệ: Tương lai xa của nền văn minh nhân loại?

Điểm kỳ dị về công nghệ: Tương lai xa của nền văn minh nhân loại?

Khi Khoa học phát triển với tốc độ nhanh chóng, chiếm rất nhiều nỗ lực của chúng ta, những rủi ro của việc phục tùng bản thân trước một Điểm kỳ dị không thể giải thích cũng tăng lên. Hãy đọc, điểm kỳ dị có thể có ý nghĩa gì đối với chúng ta.

Hiểu rõ hơn về 26 kỹ thuật phân tích dữ liệu lớn: Phần 1

Hiểu rõ hơn về 26 kỹ thuật phân tích dữ liệu lớn: Phần 1

Hiểu rõ hơn về 26 kỹ thuật phân tích dữ liệu lớn: Phần 1