Câu trả lời:
Nó có thể an toàn, hoặc chính xác hơn, mức độ rủi ro có thể nằm trong phạm vi thoải mái của bạn. Mức độ rủi ro chấp nhận được sẽ phụ thuộc vào một số yếu tố.
Bạn có một hệ thống sao lưu tốt sẽ cho phép bạn nhanh chóng hoàn nguyên nếu có sự cố?
Bạn đang chuyển tiếp máy chủ đăng xuất vào một hệ thống từ xa để nếu hộp đi lên, bạn vẫn sẽ biết chuyện gì đã xảy ra?
Bạn có sẵn sàng chấp nhận khả năng một cái gì đó có thể bị hỏng và bạn có thể phải thực hiện khôi phục / hoàn nguyên nhanh trên hệ thống nếu xảy ra sự cố không?
Bạn đã tự mình biên dịch bất cứ thứ gì, hoặc hoàn toàn mọi thứ được cài đặt trên hệ thống của bạn đến từ kho chính thức? Nếu bạn đã cài đặt một cái gì đó cục bộ, có khả năng một sự thay đổi ngược dòng có thể phá vỡ phần mềm được bảo trì / cài đặt cục bộ của bạn.
Vai trò của hệ thống này là gì? Đây có phải là thứ mà hầu như không thể bỏ qua nếu nó chết (ví dụ: máy chủ DNS thứ cấp) hoặc là phần cốt lõi của cơ sở hạ tầng của bạn (ví dụ: máy chủ LDAP hoặc máy chủ tệp chính).
Bạn có muốn thiết lập điều này bởi vì không ai chịu trách nhiệm cho máy chủ có thời gian để duy trì các bản vá bảo mật? Nguy cơ tiềm ẩn của việc bị xâm phạm bởi một lỗ hổng chưa được vá có thể cao hơn tiềm năng cho một bản cập nhật xấu.
Nếu bạn thực sự nghĩ rằng bạn muốn làm điều này, tôi khuyên bạn nên sử dụng một trong những công cụ đã có sẵn cho mục đích này như thế nào cron-apt
. Họ có một số logic để an toàn hơn sau đó chỉ là một người mù apt-get -y update
.
apt-get upgrade
, phải không apt-get update
?
apt-get update
, thật khó để phá vỡ bất cứ điều gì.
Nó thường an toàn, nhưng tôi không khuyên dùng vì một lý do đơn giản:
Trong môi trường sản xuất, bạn cần biết chính xác những gì trên đó, hoặc những gì được cho là trên đó và có thể tái tạo trạng thái đó một cách dễ dàng.
Bất kỳ thay đổi nào cũng cần được thực hiện thông qua quy trình Quản lý thay đổi, trong đó công ty hoàn toàn nhận thức được những gì họ đang gặp phải, để sau đó họ có thể phân tích những gì đã sai và cứ thế.
Cập nhật hàng đêm làm cho loại phân tích này không thể, hoặc khó thực hiện hơn.
Tôi có thể làm điều đó trên ổn định, hoặc trên Ubuntu, nhưng không phải trên một nhánh không ổn định, hoặc thậm chí là nhánh thử nghiệm.
Mặc dù, khi tôi đội chiếc mũ sysadmin của mình, tôi tin rằng tôi nên áp dụng thủ công tất cả các bản cập nhật, để tôi có thể duy trì tính nhất quán giữa các máy chủ - và cũng vì vậy, nếu một ngày nào đó dịch vụ bị hỏng, tôi biết khi nào tôi cập nhật lần cuối dịch vụ. Đó là điều mà tôi có thể không kiểm tra nếu các bản cập nhật đang được tiến hành tự động.
Chúng tôi sử dụng ổn định và lên lịch nâng cấp apt-get cho tối thứ ba trên hầu hết các hệ thống Debian của chúng tôi (trùng với các bản cập nhật "vá thứ ba" của Microsoft). Nó hoạt động tốt. Chúng tôi cũng có tất cả các sự kiện nâng cấp được đăng nhập vào Nagios, vì vậy chúng tôi có thể thấy lịch sử khi các lần nâng cấp được thực hiện lần cuối trên bất kỳ máy chủ nào.
Khi bạn chỉ định đây là máy chủ "sản xuất", điều đó có nghĩa là cũng có máy chủ phát triển và thử nghiệm không? Nếu vậy, các bản vá phải được kiểm tra trên các hệ thống đó trước khi được cài đặt trên hộp sản xuất.
Tôi sẽ không làm điều đó. Các bản vá lỗi xấu xảy ra và tôi sẽ không muốn một hệ thống bị lỗi vào giữa đêm hoặc trong khi tôi không có sẵn. Chúng nên được đẩy trong cửa sổ bảo trì khi có quản trị viên để theo dõi cập nhật.
Tôi nhớ làm điều đó trong một công việc trước đây; Tôi đã kết thúc với các vấn đề trên máy chủ sản xuất vì một bản cập nhật tự động viết lại một tập tin cấu hình.
Do đó, tôi sẽ khuyên bạn nên giám sát cập nhật.
Nếu giải pháp thay thế áp dụng các bản cập nhật bất thường, bạn không chủ động theo dõi các bản cập nhật bảo mật và bạn đang chạy Lenny ổn định vanilla, thì việc cập nhật tự động có thể làm tăng tính bảo mật của máy, vì bạn sẽ cập nhật các lỗ hổng bảo mật đã biết nhanh hơn.
Ubuntu Server có một gói sẽ cho phép nó tự động cập nhật các cập nhật bảo mật. Nó cho phép bạn vào danh sách đen các ứng dụng nhất định là tốt. Nó cũng nói về apticron sẽ gửi email cho bạn khi có bản cập nhật cho máy chủ của bạn.
Bạn có thể tìm hiểu thêm về nó tại các trang sau tùy thuộc vào phiên bản Ubuntu Server nào bạn đang chạy.
EDIT: Giả sử bạn đang chạy Ubuntu. Mặc dù tôi sẽ đặt cược các gói và giải pháp tương tự có sẵn trên Debian.
Điều này phụ thuộc vào cơ sở hạ tầng của bạn. Nếu tôi có một máy duy nhất, thì tôi thường xem lại các bản cập nhật và xem những gì tôi cần hoặc những gì tôi có thể tránh. Nếu tôi đang sử dụng một cụm, đôi khi tôi sẽ thực hiện các thay đổi trên một máy và xem cách chúng hoạt động, sau đó cuộn nó sang các máy khác nếu mọi thứ có vẻ ổn.
Nâng cấp cơ sở dữ liệu Tôi luôn theo dõi sát sao.
Nếu bạn có một hệ thống tệp hỗ trợ chụp nhanh, có thể thực sự hữu ích để chụp nhanh hệ thống, áp dụng các bản cập nhật và sau đó có tùy chọn khôi phục các thay đổi nếu có sự cố khủng khiếp.
Hãy thử tìm hiểu tại sao một gói đang được nâng cấp? nó có sửa lỗi không? sửa lỗi bảo mật? nó là một lệnh cục bộ hay một dịch vụ mạng từ xa?. Phần mềm đã được thử nghiệm với các bản cập nhật mới chưa?
Cập nhật hạt nhân nên được tiếp cận thận trọng hơn. Hãy thử và tìm hiểu tại sao kernel đang được nâng cấp? Bạn có thực sự cần những thay đổi đó? nó sẽ ảnh hưởng đến ứng dụng của bạn Tôi có cần phải áp dụng điều này cho bảo mật?
9 trong số 10 lần cập nhật phần mềm sẽ diễn ra suôn sẻ, nhưng đó là những lần hiếm hoi nó khiến máy của bạn trở thành một đống rác, có kế hoạch khôi phục hệ thống hoặc khôi phục hệ thống.
apt-get upgrade -y
hơn làupdate
? Có-y
cờupdate
nào không?