Mục lục:

Sao lưu máy chủ của bạn: 6 bước
Sao lưu máy chủ của bạn: 6 bước

Video: Sao lưu máy chủ của bạn: 6 bước

Video: Sao lưu máy chủ của bạn: 6 bước
Video: Hướng dẫn sao lưu, khôi phục máy chủ từ bản sao lưu ABB và Hyper Backup | Mstar Corp 2024, Tháng mười một
Anonim

Bởi JohntronJohntron SpeaksFollow More của tác giả:

Xây dựng tường lửa cổng của riêng bạn
Xây dựng tường lửa cổng của riêng bạn
Xây dựng tường lửa cổng của riêng bạn
Xây dựng tường lửa cổng của riêng bạn

Giới thiệu: Nhà phát triển phần mềm, nhà đồng sáng lập Placethings và nhà công nghệ. Hiện đang theo học cao học chương trình Truyền thông và Truyền thông Mới nổi tại Đại học Texas ở Dallas. Thông tin thêm về Johntron »

Tìm hiểu cách sao lưu hộp * nix của bạn vào một ổ đĩa cứng bên ngoài (hoặc ổ đĩa tapedrive mà không cần nỗ lực nhiều). Tôi đề cập đến việc cài đặt phương tiện sao lưu, sử dụng `kết xuất ', khôi phục và cũng sao lưu các tệp từ máy chủ từ xa sang ổ cứng bên ngoài. Để sao lưu PC Windows, hãy đọc bài viết lifehacker.com tại đây.: Hãy `` kết xuất '' Bước 3: `khôi phục Bước 4: Sao lưu từ xa Bước 5: Tự động hóa Logo FreeBSD là thương hiệu của Tổ chức FreeBSD và được John Syrinek sử dụng với sự cho phép của Tổ chức FreeBSD.

Bước 1: Chuẩn bị nội dung

Trước khi sao lưu, bạn cần có thứ gì đó để sao lưu. Theo truyền thống, đây là ổ băng; tuy nhiên, ổ cứng bên ngoài (chất lượng) sẽ hoạt động tốt. Bạn không PHẢI sử dụng ổ cứng gắn ngoài, nhưng với ổ đĩa ngoài, bạn có thể thuận tiện khi mang ổ cứng về nhà (hoặc đến một số địa điểm khác). Tôi đã sử dụng một vài chiếc Western Digital MyBook. Circuit City đã giảm giá 80% đối với (một số) ổ đĩa ngoài và tôi nhận được hai ổ 250GB với giá rẻ. Theo kinh nghiệm của tôi, Western Digital có ổ đĩa chất lượng rất cao (có nghĩa là chúng tồn tại mãi mãi). Điều này làm cho chúng trở nên tuyệt vời để sao lưu. Nếu bạn đang gặp rắc rối khi sao lưu một thứ gì đó, bạn sẽ không muốn phương tiện sao lưu của mình bị ảnh hưởng bởi bạn. Ồ, giống như bài viết khác của tôi, tôi sẽ sử dụng FreeBSD®; tuy nhiên, hầu hết những thứ tôi sẽ đề cập có thể được thực hiện trong bất kỳ phiên bản Linux, Unix hoặc BSD nào. (Bỏ qua đoạn tiếp theo nếu bạn đã có hỗ trợ USB 2.0 hoặc không sử dụng ổ USB bên ngoài) Ổ USB 2.0. FreeBSD 5.4-STABLE không có trình điều khiển EHCI (về cơ bản là thứ cung cấp cho bạn USB 2.0) được bật theo mặc định. Đây là một sửa chữa dễ dàng, mặc dù một số người có thể nghĩ rằng việc biên dịch lại hạt nhân là đáng sợ (không phải vậy). Nếu bạn thuộc tuýp người quá thận trọng, tôi khuyên bạn nên sao lưu TRƯỚC khi biên dịch lại hạt nhân của mình. Có thể không bật USB 2.0 nhưng USB 1.1 vẫn hoạt động. Nó chỉ chậm hơn nhiều. Để bật EHCI, hãy đọc trang này của Sổ tay. Bạn có thể cũng sẽ phải tham khảo phần này của Sổ tay hướng dẫn cách thực sự biên dịch lại hạt nhân. Điều này được thực hiện bằng lệnh `mount` và khá đơn giản. Đây là trang người đàn ông của thú cưỡi. Nếu mount phàn nàn về việc không thể xác định loại hệ thống tệp, có thể bạn sẽ cần phải định dạng ổ đĩa. Để làm điều này, bạn sẽ cần biết thiết bị chính xác để định dạng. Đối với tôi, nó là / dev / da0, nhưng đối với bạn thì nó có thể khác. Tham khảo tài liệu của bản phân phối của bạn. Sau khi xác định thiết bị HD bên ngoài của bạn được gắn vào, bạn sẽ cần phải thực hiện định dạng thực tế của ổ đĩa (tốt, phân vùng). Nếu bạn cần trợ giúp phân vùng ổ đĩa của mình, chỉ cần hỏi tôi. FreeBSD sử dụng mkfs để tạo hệ thống tệp trên phân vùng. Bất kỳ loại hệ thống tệp nào cũng sẽ hoạt động, nhưng tôi đã chọn sử dụng UFS vì đó là những gì FreeBSD sử dụng theo mặc định. FAT32 có lẽ là tương thích nhất với các hệ điều hành khác và Ext3 là thứ mà hầu hết các phiên bản Linux đang sử dụng hiện nay (hoặc ít nhất là chúng đã làm trong lần cuối tôi sử dụng Linux). Vì vậy, tôi đã sử dụng lệnh này để gắn kết ổ đĩa của mình: mount -t ufs / dev / da0 / backupOK, bạn nên chuẩn bị sẵn phương tiện backup của mình. Nếu không, chỉ cần hỏi:) Tiếp tục đến Bước 2. Dấu FreeBSD là nhãn hiệu đã đăng ký của Tổ chức FreeBSD và được John Syrinek sử dụng với sự cho phép của Tổ chức FreeBSD.

Bước 2: Thực hiện một `` bãi chứa ''

Hãy sao lưu nội dung của chúng tôi. Có một số cách để làm điều này. Dump và Tar có lẽ là hai cách phổ biến nhất, và cả hai đều có điểm mạnh và điểm yếu riêng. Dump là cách đáng tin cậy nhất để sao lưu hệ thống của bạn; tuy nhiên, nó chỉ có thể sao lưu toàn bộ phân vùng. Tar nhanh chóng và dễ sử dụng trên các thư mục riêng lẻ, nhưng cần một chút thời gian để sao lưu các khối lượng lớn hơn. Tar cũng nén các tệp, thêm một lớp phức tạp để có thể làm hỏng các bản sao lưu của bạn. Đọc trang này để biết thêm thông tin Tôi quyết định sử dụng kết xuất vì tính đáng tin cậy. Không gian lưu trữ không phải là một vấn đề và vì tôi đã cron thực hiện sao lưu tự động cho tôi khi tôi ngủ, tôi không phải lo lắng về khung thời gian. Một trong những điều kỳ quặc của dump là nó sao lưu toàn bộ phân vùng. Điều này có nghĩa là bạn phải kết xuất từng phân vùng riêng lẻ (ví dụ: phân vùng / usr, / var và / tmp, cũng như phân vùng /). Dump cũng cho phép bạn chỉ định "mức" sao lưu. Tôi sẽ thực hiện sao lưu hàng tuần và hàng đêm. Đối với các bản sao lưu hàng tuần của tôi, tôi sử dụng mức 0 và cho các bản sao lưu hàng đêm, tôi sử dụng mức 2. Nếu bạn đang sử dụng ổ đĩa băng hoặc nếu bạn muốn tiết kiệm dung lượng lưu trữ, hãy xem xét sử dụng sơ đồ sao lưu Tower of Hanoi (Google it. (Hãy nhớ rằng, / backup là nơi tôi đã gắn HD bên ngoài của mình) Các lệnh tôi sử dụng để kết xuất hàng tuần là:

  • dump -0Lna -C 100 -f / backup / hàng tuần / root /
  • dump -0Lna -C 100 -f / backup / week / usr / usr
  • dump -0Lna -C 100 -f / backup / week / var / var
  • dump -0Lna -C 100 -f / backup / hàng tuần / tmp / tmp

Các lệnh tôi đã sử dụng để đổ hàng đêm là:

  • dump -2Lna -C 100 -f / backup / nightly / root /
  • dump -2Lna -C 100 -f / backup / nightly / usr / usr
  • dump -2Lna -C 100 -f / backup / nightly / var / var
  • dump -2Lna -C 100 -f / backup / nightly / tmp / tmp

Tôi thực sự đã sử dụng lệnh `date` để đặt tên cho các tệp của mình, nhưng tôi đã bỏ qua điều này vì mục đích đơn giản. Kết xuất sử dụng lệnh `date` sẽ trông giống như sau: dump -0Lna -C 100 -f / backup / week / usr /` date "+% Y-% B-% d" `/ usr Tất nhiên, bạn sẽ cần để tạo bất kỳ thư mục đích sao lưu thích hợp nào trước khi chạy lệnh kết xuất, nhưng bạn sẽ có thể tìm ra điều đó. và cách tạo đĩa mềm "fixit". ĐỪNG BỎ QUA BƯỚC NÀY, nếu không bạn đang lãng phí thời gian của mình.

Bước 3: `khôi phục`

Đã lâu rồi tôi không phải khôi phục một bản sao lưu, vì vậy hãy chịu đựng với tôi.

Để khôi phục bản sao lưu, bạn phải có một số loại hệ điều hành tối thiểu để chuyển bản sao lưu từ phương tiện sao lưu của bạn sang máy trực tiếp, máy TRỰC TIẾP (ví dụ: không có phần cứng bị lỗi) và chính các bản sao lưu của bạn. Đối với hệ điều hành tối thiểu, tôi sử dụng cùng một đĩa CD mà tôi đã sử dụng để cài đặt FreeBSD. Sysinstall có chế độ "Fixit" để khôi phục các bản sao lưu. Nếu bạn có phần cứng không chuẩn, bạn có thể cần tạo đĩa khởi động tùy chỉnh của riêng mình. Điều này sẽ không được đề cập trong bài viết này, nhưng về cơ bản nó bao gồm việc tạo một hạt nhân trần và đặt nó vào đĩa có thể khởi động. Lưu ý: Hạt nhân FreeBSD 5.4 RẤT tối thiểu chỉ khoảng 2.3MB, có nghĩa là nó sẽ không vừa trên một đĩa mềm. Vì vậy, về cơ bản, nếu poop chạm vào quạt (ger ger ger), bạn khởi động từ đĩa CD của mình, vào chế độ "Fixit", gắn ổ cứng của bạn và sau đó chạy lệnh khôi phục. Tôi tin rằng bạn phải gắn kết và ngắt kết nối các phân vùng mà bạn đang khôi phục từng phân vùng một. Ngoài ra, các bảng phân vùng của bạn phải sạch, có nghĩa là bạn có thể phải sử dụng `bsdlabel` để sửa các phân vùng của mình. Lệnh khôi phục: (sau khi gắn phân vùng sạch và thay đổi thành thư mục của phân vùng đích) khôi phục vrf / dev / da0 Xin lưu ý rằng có thể khôi phục các phần (tệp hoặc thư mục riêng lẻ) của các bản sao lưu được tạo bằng cách sử dụng kết xuất nếu bạn cần.

Bước 4: Sao lưu từ xa

Sao lưu từ xa có thể được thực hiện bằng cách sử dụng rdump, scp hoặc phần mềm tùy chỉnh. Hầu hết các công ty lưu trữ đều cung cấp bản sao lưu hàng đêm (có tính phí). Tôi RẤT khuyên bạn nên điều này nếu bạn coi trọng dữ liệu của mình. Tôi đã có hai máy chủ dành riêng cho tôi từ hai máy chủ khác nhau. Mặc dù các bản sao lưu này thường được lưu trữ trên một ổ đĩa riêng biệt, chúng thường nằm trong cùng một tòa nhà, vì vậy nếu có điều gì đó xảy ra với tòa nhà (điều này khó xảy ra, nhưng chắc chắn là có thể xảy ra), thì bạn là SOL. Đây là lý do tại sao tôi khuyên bạn nên tạo bản sao lưu ngoài trang web của riêng bạn (liên quan đến hệ thống đang được sao lưu) cũng như các bản sao lưu cục bộ, hàng đêm. Xin lưu ý rằng tôi đã phải thêm phần mở rộng.txt để tải lên tập lệnh (bạn có thể xóa phần này). Vì công ty lưu trữ máy từ xa của tôi thực hiện sao lưu `tar` hàng đêm, tôi quyết định chỉ sao chép các tệp này vào một máy cục bộ hàng đêm nền tảng. Tôi đã viết một tập lệnh shell dựa trên PHP (vì đó là những gì tôi biết) để đồng bộ hóa một cách cơ bản các tệp sao lưu của hệ thống từ xa với một bản sao cục bộ. Nó tải xuống các tệp mới, (tùy chọn) tải lại các tệp sao lưu có sự khác biệt về kích thước tệp và xóa các bản sao cục bộ không tồn tại trên hệ thống từ xa. Điều này giúp tiết kiệm băng thông, thời gian và không gian lưu trữ. Về cơ bản nó chỉ là một trình bao bọc `khác biệt` cho` scp`. Nguồn có thể được tìm thấy ở cuối trang này. Nếu bạn sử dụng nó, hãy nhớ chmod nó để có quyền thực thi (chmod u = + rx fetchbackups). Tôi khuyên bạn nên yêu cầu người dùng điều hành chạy tập lệnh này (tìm nạp lại bản sao lưu của toán tử chown). Các phương pháp sao lưu từ xa thay thế bao gồm sử dụng `scp` trên toàn bộ thư mục, sử dụng` rdump` hoặc, như clievers đã chỉ ra, sử dụng `rsnapshot` hoặc` backuppc`. Nếu bạn không có quyền truy cập root vào máy chủ từ xa của mình, một số phương pháp này có thể không thực hiện được và `scp` thường đòi hỏi nhiều thời gian và băng thông.

Bước 5: Tự động hóa

Vì vậy, bạn đã tìm ra cách tạo một ảnh chụp nhanh hệ thống của mình và bây giờ bạn muốn thực hiện nó hàng đêm. Cron hoạt động tốt cho điều này và nó khá đơn giản để thiết lập.

Cron job chỉ đơn giản là các lệnh được chạy một cách thường xuyên. Họ có thể chạy hàng tháng, hàng đêm hoặc thậm chí lúc 7 giờ rưỡi sáng vào các buổi sáng thứ hai. Các công việc cron được chỉ định trong tệp crontab. Trong FreeBSD, tệp này được đặt tại / etc / crontab. Xem trang man cho / etc / crontab để tìm ra cách hoạt động của nó. Tôi đã đính kèm crontab của mình vào trang này (xóa phần mở rộng.txt). Tất cả những gì bạn làm là thêm công việc cron của bạn và lưu tệp. Tệp được đánh giá lại mỗi phút, vậy là bạn đã hoàn tất.

Bước 6: Kết luận và kết luận

Hy vọng rằng bạn đã quản lý để sao lưu (các) máy của mình. Những gì sau đây chỉ là một vài ghi chú về chủ đề này.

Nếu bạn nghiêm túc về việc sao lưu, thì hãy THỬ NGHIỆM KIỂM TRA THỬ NGHIỆM. Đảm bảo rằng quy trình sao lưu và khôi phục của bạn là hoàn hảo. Các bản sao lưu mà bạn không thể khôi phục là vô giá trị. Một vấn đề tôi gặp phải là đặt kích thước bộ nhớ cache của tôi quá lớn. Điều này (về cơ bản) có thể DoS hệ thống của bạn và khiến nó bị đóng băng. Bộ nhớ cache của bạn phải luôn bằng một phần nhỏ RAM của bạn để có hiệu quả (của tôi là 1/5) và KHÔNG BAO GIỜ được vượt quá kích thước không gian hoán đổi của bạn. 32MB là những gì trang người đàn ông của dump đề xuất. Mặc dù thông tin này có thể đã lỗi thời, nhưng việc có một bộ nhớ đệm lớn sẽ không tạo ra nhiều khác biệt nếu bạn có cả đêm để sao lưu hệ thống của mình. Nếu bạn đã tự động sao lưu, hãy đảm bảo rằng chúng đang hoạt động. Sẽ là một cơn ác mộng thực sự nếu hệ thống của bạn gặp sự cố và THÌ nhận ra rằng các ổ sao lưu của bạn đã ngừng hoạt động 6 tháng trước do không đủ dung lượng đĩa. Việc làm Cron chỉ tự động hóa quá trình "tự mãn". Nếu bạn thực hiện sao lưu theo cách thủ công, đừng trở nên tự mãn và quên. Hãy biến nó thành một thói quen. Cũng đừng dựa vào những công việc cron, vì chúng có thể thất bại. Bản sao lưu chỉ là bản sao của các tệp của bạn. Điều này có nghĩa là các bản sao lưu cũng phải được bảo mật, nếu không muốn nói là tốt hơn là hệ thống trực tiếp của bạn. Giữ ổ cứng bên ngoài của bạn ở một vị trí an toàn (như cách xa cả nước VÀ kẻ trộm). Chạy cronjobs dự phòng với tư cách là người dùng 'nhà điều hành'. Đây là một tài khoản giới hạn tồn tại cho những thứ như thế này. Đồng thời đảm bảo rằng người dùng bình thường không thể chạy các bản sao lưu. Nếu bạn cảm thấy mình có khả năng trở thành mục tiêu của một cuộc tấn công tinh vi (hoặc thậm chí nếu bạn không làm vậy), hãy luôn mã hóa dữ liệu được truyền trong quá trình sao lưu từ xa. Do số lượng thông tin cũng như tính thường xuyên của các bản sao lưu (nếu bạn đang sử dụng cronjobs), tin tặc có thể mất thời gian trong việc lấy cắp thông tin của bạn. Mã hóa rất dễ dàng, vì vậy hãy sử dụng nó. Đảm bảo rằng người dùng bình thường không thể chạy sao lưu vào thiết bị của họ. Ngoài ra, `scp` yêu cầu xác thực. Tôi đặc biệt khuyên bạn nên chia sẻ trước các khóa công khai / riêng tư. Bạn không muốn mật khẩu của mình được truyền đi mỗi khi chạy một bản sao lưu.

Đề xuất: