1. Giới thiệuMỗi chúng ta luôn có những cài đặt, cấu hình riêng của mình cho hệ thống hoặc các phần mềm mà mình sử dụng. Các cài đặt này càng ngày sẽ càng nhiều hơn theo thời gian, thậm chí không ít người có cả nghìn dòng config riêng. Và rồi một ngày, khi mà bạn bắt đầu dùng thêm một máy tính mới ở cty hoặc cài lại chiếc máy tình mình đang sử dụng, công việc đầu tiên của bạn sẽ là cấu hình mọi thứ cho giống với hệ thống cũ, giống như những gì vẫn quen thuộc với mình. Tuy nhiên, nếu bạn chưa có sự chuẩn bị nào thì rất có thể đây sẽ là một công việc không hề đơn giản và mất nhiều thời gian. Vì vậy hôm nay mình sẽ giới thiệu với mọi người một vài cách để có thể back up các file cấu hình hoặc đồng bộ chúng giữa nhiều máy tính khác nhau. Bài viết sẽ tập trung vào các hệ thống chạy trên nền tảng Linux. Show Đối với hệ thống Linux, các cấu hình thường được lưu trong các file ẩn hoặc forder ẩn ngay tại thư mục HOME. Và một số các config mà bạn có thể cần backup như bash, vim, emac, tmux... 2. Backup sử dụng DropboxHiện nay trong số các các dịch vụ cloud stogare phổ biến có hỗ trợ Linux thì Dropbox chính là cái tên nổi bật nhất. Việc sử dụng Dropbox để đồng bộ các file config là khá dễ dàng. Do Dropbox không cho phép bạn đồng bộ các file nằm ngoài thư mục some_path/Dropbox/. Do đó để đồng bộ các file cấu hình bạn cần sử dụng đến symlinks.
Mặc định lệnh
Tùy chọn
3. Sử dụng Git để đồng bộ và quản lí các file configĐây là cách rất thuận tiện với những ai đã có kinh nghiệm sử dụng Git. Bằng cách này bạn sẽ hoàn toàn chủ động trong việc đồng bộ các file config của mình và đôi khi có những config sai gây ảnh hưởng đến hệ thống thì bạn cũng có thể dễ dàng quay trở lại các phiên bản trước đó của file config. Đầu tiên bạn cần cài đặt Git trên hệ thống của mình (Đối với Ubuntu hoặc Debian)
Đăng nhập vào Git
Tiếp đến bạn cần 1 nơi lưu trữ online các các Git repo của mình. Hai lựa chọn hàng đầu cho việc này là GitHub và BitBucket. Ở đây mình sẽ sử dụng BitBucket bởi đối với các tài khoản miễn phí thì BitBucket cho phép bạn để các repo ở trạng thái private còn đối với GitHub nếu bạn muốn đặt các repo của mình ở dạng private thì sẽ cần trả phí. Và do các file config đôi khi sẽ có những thông tin cần được private nên BitBucket là lựa chọn của mình. Để bắt đầu với BitBucket, bạn cần tạo một tài khoản tại đây Coppy và add publish SSH key của bạn vào tài khoản BitBucket (tham khảo thêm hướng dẫn tại đây) Tạo một repo mới trên BitBucket Đến đây bạn có thể tạo Git repo cho cả thư mục Home của mình trong đó có những file config hoặc tạo riêng một thư mục chứa các file config và tạo repo git cho thư mục đó. 3.1 Sử dụng thư mục Home làm Git RepoĐể Git chỉ quản lí các file config thay vì tất các các file trong thư mục
Thêm remote origin cho repo Git của bạn
Sau đó bạn cần thêm lần lượt những file cần được Git quản lí bằng lệnh
Với cách này bạn sẽ coi cả thư mục gốc của mình là một Repo của Git tuy nhiên sẽ chỉ push lên những file config cần thiết. Commit đầu tiên cho repo config
Push các file config lên origin
3.2 Sử dụng thư mục riêng để lưu các file configTạo thư mục chứa các file config và move tất các các file bạn muốn đồng bộ vào đây.
Thêm remote origin cho repo Git của bạn
Tương tự với cách sử dụng Dropbox, bạn sẽ cần tạo các symlink cho các file này từ thư mục
Ở đây mình dùng đường dẫn tuyệt đối thay vì đường dẫn tương đối vì dùng đường dẫn tương đối có thể bị lỗi khi tạo các symlink. Add các file này và tạo commit
Push lên origin
4. Pull các file config về một máy mớiKhi các file config của bạn đã được đồng bộ lên BitBucket, bạn muốn pull các file này về một máy tính mới, công việc cũng khá giống với phần 3. Bạn sẽ cần cài đặt và cấu hình Git
4.1 Dùng thư mục Home làm git repoTạo git repo cho thư mục Home và add remote là repo BitBucket của bạn
Sau đó bạn cần fetch các các file và reset các commit
Khi bạn có một thay đổi nào đó trên 1 file config ví dụ .bashrc thì sẽ cần push những thay đổi đó lên repo BitBucket
4.2 Sử dụng thư mục chứa các file config riêngClone các file config từ repo trên BitBucket, một thư mục chứa các file config sẽ được tạo ra
Sau đó bạn chỉ cần tạo link cho các file config trong thư mục
Tham khảohttps://www.linux.com/learn/tutorials/431119:weekend-project-using-git-to-manage-config-files http://www.nixtutor.com/linux/sync-config-files-across-multiple-computers-with-dropbox/ https://en.wikipedia.org/wiki/Symbolic_link |