Điều gì tốt về BSD?


35

Tôi đã sử dụng Ubuntu và tắt kể từ Warty Warthog. Tôi đã suy nghĩ về việc cài đặt Jaunty sớm; nhưng tôi nhận thấy rằng cuối tuần qua NetBSD 5.0 , Dragonfly BSD 2.2.1 , OpenBSD 4.5FreeBSD 7.2 đều đã được phát hành, vì vậy tôi đã tò mò:

Điều gì tốt về BSD? Tại sao tôi không nên hoặc không nên cài đặt một trong số chúng thay vì Ubuntu? Điểm bán hàng chính của họ là gì? Hiệu suất? Ổn định? Tương thích phần cứng? Dễ sử dụng? Bảo vệ? Họ có chạy tốt trên phần cứng cũ không? Nó là gì?

Chỉnh sửa: Đây là từ quan điểm của một nhà phát triển máy tính để bàn (chủ yếu là Java), nhưng tôi cũng muốn biết những ưu và nhược điểm đối với những người khác. Họ có nhắm mục tiêu nhiều hơn cho các máy chủ? Đối với người dùng doanh nghiệp? Hay cái gì?


1
Là những điểm tốt của BSDs chủ quan? Nếu vậy, điều đó giải thích tại sao cá nhân tôi không biết bất cứ ai đã thử. : D
mmyer

17
Điều gì tốt về BSD? Để đè bẹp kẻ thù của bạn, hãy xem họ lái xe trước bạn và nghe lời than thở của người phụ nữ của họ.
hỗn loạn

1
@mmyer - Có ai trong số bạn bè của bạn đã từng sử dụng Hotmail hoặc Yahoo chưa?
Mối quan tâmOfTunbridgeWells

Ừm, một vài. Tại sao?
mmyer

1
@mmeyers - vì cả Hotmail và Yahoo đều sử dụng FreeBSD làm máy chủ chính O / S cho các ứng dụng web của họ. (Hoặc ít nhất Hotmail đã từng sử dụng nó và họ không thể chuyển nó khỏi FreeBSD sang Windows trong nhiều năm - tôi không chắc liệu họ có còn làm không).
Mối quan tâmOfTunbridgeWells

Câu trả lời:


65

Ưu điểm của BSD

Nhóm hệ thống * BSD có (IMHO) một vài lợi thế chính so với Linux, đặc biệt đối với máy chủ O / S.

  • Đơn giản và Kiểm soát: Không có bản phân phối * BSD nào bắt buộc phải thêm các tính năng mà nhà phân phối Linux thể hiện. Do đó, cài đặt mặc định của hầu hết các hệ thống dẫn xuất BSD tương đối đơn giản.

  • Tính ổn định: Một phần được thúc đẩy bởi sự đơn giản, BSD có xu hướng nằm trong số các nền tảng O / S ổn định nhất xung quanh. FreeBSD (một trong những BSD cũ 'hiện đại' có sức mạnh cho nhiều tên miền nổi tiếng như Yahoo và (tại một thời điểm) hotmail. Trên thực tế, đã có lúc Microsoft phải chịu đựng khá nhiều sự bối rối về việc họ không thể chuyển Hotmail khỏi FreeBSD sang Windows.

  • Bảo mật: OpenBSD nói riêng có một hồ sơ theo dõi rất mạnh về bảo mật và phần lớn công việc của họ đã ảnh hưởng đến cộng đồng * BSD nói chung.

  • Tính di động: Đặc biệt NetBSD có các cổng tới hàng chục nền tảng và đáng chú ý là rất dễ chuyển.

Một số điểm yếu

  • Ít hỗ trợ hơn cho các cấu hình SMP lớn hơn Linux. Điều này sẽ trở thành một vấn đề khi các hộp có số lượng lớn lõi được phổ biến rộng rãi. Tuy nhiên, hầu hết các ứng dụng dịch vụ mạng thực sự là sân nhà của BSD không phải là CPU đói (1).

    Hiệu suất SMP trên hạt nhân BSD đã được cải thiện đáng kể trong thập kỷ qua. Cải thiện hiệu suất SMP là một trong những mục tiêu chính của Dragonfly BSDdự án FreeBSD SMPNg đã cải thiện đáng kể hiệu suất SMP trên nền tảng đó, vượt trội so với Linux trên nền tảng 8 lõi. Điều này có nghĩa là người ta có thể mong đợi có được hiệu năng tốt trên các máy chủ ổ cắm 2 và 4 chính thống.

    Một số tranh luậnvà công việc ban đầu là cung cấp hỗ trợ NUMA trên FreeBSD vì hệ thống hiện không hỗ trợ API để phân bổ bộ nhớ, quản lý mối quan hệ hoặc các phương tiện khác để hỗ trợ NUMA rõ ràng. Một mồi tốt về hỗ trợ NUMA có thể được tìm thấy ở đây .

  • Phạm vi hỗ trợ phần cứng nhỏ hơn Linux: Trong thực tế, điều này thực sự chỉ có nghĩa là bạn cần kiểm tra các thành phần trong danh sách tương thích phần cứng. Đối với một máy chủ, đây không phải là vấn đề trong hầu hết các trường hợp, nhưng cài đặt trên máy tính để bàn ngẫu nhiên thì điều này khó hơn một chút. Bạn vẫn phải thực hiện kiểm tra từng thành phần nếu bạn muốn máy cài đặt BSD, điều này ít xảy ra với Linux.

  • Ít chú trọng đến máy tính để bàn: Các bản phân phối máy tính để bàn của Linux (như Ubuntu) có xu hướng hỗ trợ máy tính để bàn phong phú hơn cho các ứng dụng đa phương tiện, mô phỏng và đóng gói. Mặc dù nhiều ứng dụng như vậy có cổng trên các nền tảng BSD khác nhau, hỗ trợ ngoài luồng từ bản phân phối Linux trên máy tính để bàn thường sẽ khá hơn.

  • Một số lỗ hổng trong phần mềm: Khá nhiều phần mềm Linux thương mại không có cổng BSD. Ví dụ, không có nhà cung cấp JVM chính nào duy trì một cổng gốc của thời gian chạy java của họ cho bất kỳ nền tảng BSD nào. Trong một số trường hợp, các bên thứ ba duy trì các cổng nhưng không có hỗ trợ chính thức cho (ví dụ) Oracle trên bất kỳ BSD nào. Loại khoảng cách này xuất hiện ở một số nơi trên BSD; BSD có thể không phải là nền tảng cho bạn nếu bạn làm việc trong một không gian tồn tại loại khoảng cách này.

Một số điểm nổi bật

  • Một trong những cuộc chiến tôn giáo vĩ đại của thập niên 90 là GPL so với BSD. BSD được cấp phép theo giấy phép BSD, đi kèm với một bộ quyền khác với GPL. Về cơ bản, giấy phép BSD không yêu cầu bạn phân phối lại mã nguồn của các phiên bản sửa đổi của phần mềm được cấp phép BSD.

  • Các nhà cung cấp thương mại như Oracle không hỗ trợ BSD cho bất cứ điều gì như mức độ mà họ hỗ trợ Linux. Do đó, nếu bạn muốn làm việc với một sản phẩm như vậy, có lẽ tốt hơn với Linux. Tuy nhiên, hầu hết đều cung cấp khả năng tương thích nhị phân trên Linux, System V, Solaris, v.v., vì vậy bạn có thể thường xuyên chạy nhị phân cho một O / S khác.

  • Các cộng đồng BSD có xu hướng chạy khác với Linux và thường nhỏ hơn (mặc dù trong nhiều trường hợp không còn dịu dàng hơn - Theo De Raadttiếng là một cái bô ).

  • Một số biến thể BSD là các mục thị trường thích hợp, được tối ưu hóa cho các mục tiêu cụ thể. Ví dụ, OpenBSD được tối ưu hóa đặc biệt để cung cấp cơ sở hạ tầng mạng an toàn trên các máy tính có internet, với một nỗ lực rất lớn để kiểm tra các lỗ hổng bảo mật như lỗ hổng bộ đệm. Nhiều tổ chức có ý thức bảo mật sử dụng nó cho chính xác lý do này. NetBSD được thiết kế cho tính di động với các cổng tới hàng chục nền tảng và được sử dụng khá rộng rãi trong các hệ thống nhúng. Đối với các ứng dụng ở vị trí ngọt ngào của một trong những hệ thống này, đó có thể là sự lựa chọn tốt nhất về nền tảng.

Sân nhà của * BSD là trong các dịch vụ mạng - email và máy chủ web, cơ sở hạ tầng và những thứ tương tự. Bạn có thể thiết lập một máy tính để bàn hoàn toàn tốt với bất kỳ BSD nào, và trên lý thuyết có thể tạo ra thứ gì đó ấm áp và mịn như Ubuntu. Tuy nhiên, đây không phải là trọng tâm cốt lõi của hầu hết các sản phẩm BSD, mặc dù một số sản phẩm như PC-BSD nhằm mục đích cung cấp các hệ thống máy tính để bàn.

Nếu bạn muốn tạo một BSD máy tính để bàn truyền thống, BSD sẽ làm điều này giống như bất kỳ hệ thống unix-oid nào khác.

  1. Ví dụ, trở lại thời kỳ VAX / 4.2BSD của những năm 1980, một cỗ máy như VAX-11/750 có thể cung cấp dịch vụ email cho toàn bộ khoa hoặc trường đại học, và có lẽ cũng sẽ làm việc khác (mặc dù người ta cần lưu ý rằng hầu hết các email chỉ là văn bản và các tệp đính kèm không phổ biến như ngày nay - các ổ đĩa được sử dụng trên máy này thường có dung lượng từ 120-450 MB). Một máy chủ hiện đại có sức mạnh và bộ nhớ CPU lớn hơn 3-4 bậc và hệ thống con đĩa với thông lượng lớn hơn 2 bậc và không gian lớn hơn 3-4 bậc.

9
Đặc biệt ghép nối tốt: OpenBSD và BIND. Nếu tôi đang chạy Máy chủ DNS công cộng thì đó sẽ là BIND trên OpenBSD. Máy chủ DNS bị tấn công rất nhiều và OpenBSD có lẽ là unix mục đích chung an toàn nhất.
Richard Gadsden

2
Câu trả lời tuyệt vời. Hai khía cạnh tôi sẽ thêm: BSD nhỏ hơn Linux (vì vậy có thể chạy trong môi trường nhỏ hơn) và được ghi lại tốt hơn (mọi lệnh trong FreeBSD đều có trang nam - mỗi trang !)
Mei

3
Tôi đã nghe nói rằng BSD là những gì bạn nhận được nếu bạn yêu cầu một lập trình viên Unix viết HĐH PC, trong khi Linux là những gì bạn nhận được nếu bạn yêu cầu một lập trình viên Windows viết một HĐH Unix.
gbjbaanb

1
Câu trả lời chính xác! Khi tôi đã thử các hệ điều hành khác nhau, đó là linux như đầm lầy mangrova (tài liệu chưa hoàn chỉnh, nhiều triết lý không nhất quán khác nhau) và khi tôi dùng thử FreeBSD, nó giống như đi vào một thư viện, triết lý nhất quán duy nhất, mọi thứ đều được ghi lại ( cập nhật!). Có thể ít thú vị hơn, nhưng chắc chắn dễ đi vào.
slovon

3
Tôi không nghĩ rằng việc nói Theo là một cái bô là đúng. Anh ta có ý kiến ​​mạnh mẽ và anh ta không ngoại giao về họ, nhưng anh ta không thề. Điều khó chịu nhất về Theo De Raadt là anh ta có điểm tốt hoặc anh ta đúng :-P
DutchUncle

15

Tôi không coi BSD khá trưởng thành như Linux trên Máy tính để bàn nhưng đối với các máy chủ thì nó rất ổn.

Việc bạn có muốn cài đặt BSD hay không hoàn toàn phụ thuộc vào việc bạn sử dụng máy của mình để làm gì. Trong khi nhiều thứ tương tự như Linux, nhiều thứ cũng khác nhau.

Tuy nhiên, đây là sự kết thúc của các BSD khác nhau

  • OpenBSD: Một nếu mục tiêu thư của nó là hệ điều hành an toàn nhất (và có lẽ là vậy)

  • NetBSD: Phương châm của nó là "Tất nhiên là nó sẽ chạy NetBSD". Đây phải là một trong những hệ điều hành di động nhất xung quanh. Nhiều người chạy nó trên máy tính để bàn quá.

  • FreeBSD: Rất phổ biến cho các máy chủ mặc dù một lần nữa nhiều người cũng chạy nó trên máy tính để bàn. Có lẽ là phổ biến nhất trong tất cả các BSD

  • DragonFly BSD: Một người mới đến tương đối (2003), đó là một nhánh của FreeBSD 4.8. Tôi đã không sử dụng nó cho mình nhưng rõ ràng là ổn định.


5
Các BSD là một trong những kiến ​​trúc trưởng thành nhất hiện có - các phần của cơ sở mã 4.xBSD cũ hơn nhiều áp phích Serverfault. Bạn có thể dễ dàng tạo một máy tính để bàn unix truyền thống dựa trên BSD. Tuy nhiên, hầu hết không cố gắng sản xuất máy tính để bàn cho người tiêu dùng hoặc doanh nghiệp theo cách mà Canonical có với Ubuntu. Blah blah những người bán hàng trẻ tuổi ...; -}
Quan tâmOfTunbridgeWells

11

Trong thế giới Linux, các bản phân phối có xu hướng thiếu ... cảm giác gắn kết đó. Chúng thường được xây dựng theo cách phi tập trung, có xu hướng dẫn đến điều này.

Các BSD thường được quản lý bởi một người, vì vậy bạn có cảm giác rằng mỗi biến thể là một sản phẩm thực tế có rất nhiều kế hoạch đằng sau nó. Mọi thứ phối hợp với nhau rất tốt, và tất cả các thành phần đều được ghi chép lại rất tốt. Bạn hiếm khi tìm thấy bùn.

Điều này tạo ra một nền tảng rất vững chắc, làm cho BSD trở thành một nền tảng dễ bảo trì, do đó có khả năng dẫn đến một môi trường an toàn và dễ quản lý hơn.

Tôi đã là một người dùng Linux được 13 năm và trong khi tôi vẫn coi đó là một nền tảng khả thi, tôi đã chuyển tất cả các máy chủ sản xuất và cá nhân của mình sang BSD vì những lý do nêu trên.

Tuy nhiên, Linux vẫn có thể là lựa chọn tốt hơn cho máy tính để bàn do hỗ trợ trình điều khiển cạnh chảy máu.


1
Trên thực tế nếu bạn muốn hỗ trợ máy tính để bàn xuất sắc, tùy chọn tốt nhất là chạy BSD hoặc Linux trong VirtualBox trên Windows ;-)
vartec

@OP, đây là lý do hấp dẫn nhất để chuyển từ [distro linux] sang * bsd
theman_on_osx

1
Hoặc đi đến một distro one-man-on-the-top như Slackware;)
voyager

9

BSD thường được coi là an toàn theo mặc định, bằng cách vô hiệu hóa tất cả trừ các dịch vụ cốt lõi. Nó cũng rất ổn định, bạn có thể nói điều này bằng cách xem một trong nhiều dịch vụ giám sát thời gian hoạt động.

Tuy nhiên, được cảnh báo rằng Linux không giống như BSD ... có một đường cong học tập, vì vậy đừng mong đợi nhảy thẳng vào nó. Ví dụ: bạn sẽ tìm thấy tất cả các lệnh cốt lõi, chẳng hạn như lscó các cờ khác nhau có thể gây nhầm lẫn lúc đầu và có thể mất một thời gian để phá vỡ thói quen sử dụng cờ Linux cũ.


8

* BSD là một hệ điều hành hoàn chỉnh , có nghĩa là hạt nhân và vùng người dùng được phát triển từ cùng một cây nguồn, trong khi các bản phân phối Linux được ghép với nhau từ nhiều nguồn khác nhau. Đây là lý do tại sao các hệ thống BSD cảm thấy gắn kết và vững chắc hơn nhiều. Cũng tốt hơn tài liệu.


8

Chỉ là một vài vấn đề:

BSD chuyên nghiệp (miễn phí):

  • Quản lý khối / hệ thống tập tin ZFS
  • Dtrace để theo dõi / phân tích
  • Tài liệu tuyệt vời và dễ tìm (Cẩm nang FreeBSD, Câu hỏi thường gặp về OpenBSD, Các trang hướng dẫn thực sự tốt và thực sự có các ví dụ hữu ích)
  • Làm sạch và khuấy động quá trình nâng cấp hệ điều hành rắn
  • Tách hệ điều hành lõi khỏi phần mềm khác ("Bộ sưu tập cổng")
  • Giấy phép BSD (không có thập tự quân cấp phép ở đây)
  • Bộ lọc gói / tường lửa tuyệt vời: PF (Linux iptables làm cho đầu tôi nổ tung)

Contra BSD:

  • Các sản phẩm ảo hóa (máy chủ VM) không được hỗ trợ (VMware, KVM, Xen, VirtualBox)

3
Một bản cập nhật về ảo hóa. Có vẻ như FreeBSD đã quyết định chọn VirtualBox. Bây giờ là trong cây cổng. Thêm thông tin tại đây: miwi.bsdcrew.de/2009/06/virtualbox-is-now-av Available-in-ports wiki.freebsd.org/VirtualBox virtualbox.de/wiki/FreeBSD%20build%20inemony
Paidhi

8

Tôi thực sự thích /usr/ports. Điều này không có nghĩa là tôi cũng không thực sự thích apt-get, nhưng cảm giác rất vui khi biết rằng các bản cài đặt của bạn đang được xây dựng và cho máy cụ thể của bạn, với bất kỳ tối ưu hóa nào bạn cảm thấy như bị ném vào mặc định của makefile.

Bao nhiêu lợi ích nhận thức của điều đó là mê tín, tôi đã không thực hiện nghiên cứu để tìm hiểu, nhưng tôi thích nó. :)


1
Vì vậy, nó giống như Gentoo? Nghe có vẻ như nó có thể trở nên tẻ nhạt sau một thời gian (đó là một lý do tôi chưa bao giờ thử Gentoo).
mmyer

6
"Portage" của Gentoo đến từ BSD, cũng như những thứ khác. Tuy nhiên, hầu hết các BSD cũng có sẵn các gói nhị phân. OpenBSD, ví dụ, có cả cổng và gói. Trên thực tế, chúng thực sự giống nhau.
dwc

7

Là một nhà phát triển Java, gotcha lớn không có JVM chính cho * BSD. Trước khi mọi người loại bỏ tôi khỏi sự tồn tại, ý tôi là, không có JDK vận chuyển hiện tại từ Sun hay bất kỳ nhà cung cấp lớn nào khác (IBM, BEA / Oracle), vì vậy bạn sẽ luôn chơi trò thứ hai cho người dùng linux và window.


Điều đó hữu ích để biết. Có ai đang chuyển OpenJDK hay cái gì đó không?
mmyer

Có, hãy xem openjdk.java.net/projects/bsd-port . Tuy nhiên, cổng này không được thực hiện và không có khả năng được hỗ trợ thương mại. Làm việc cho một công ty phần mềm dựa trên Java, chúng tôi hỗ trợ Sun JVM và Bea và JRocket bất đắc dĩ. Không có cách nào chúng tôi có thể mở rộng tài nguyên hỗ trợ để giúp ai đó muốn chạy phần mềm của chúng tôi trên IceTea, hoặc Blackdown, hoặc GCJ, v.v.
Dave Cheney

Vâng, tôi hiểu ý của bạn. (Nhân tiện, bạn đã bỏ chữ "không" trong câu đầu tiên của mình. :)
mmyer

Chỉ cần xem bài đăng "Tiến trình cổng BSD OpenJDK" này: robilad.livejournal.com/49303.html .
mmyer

5

Cấp phép

Sự khác biệt chính giữa BSD và Linux là cấp phép.

Bạn có thể lấy cơ sở mã BSD, thực hiện bất kỳ thay đổi nào bạn muốn và phân phối nhị phân kết quả, bán nó, v.v., mà không cần mở các thay đổi mã nguồn bạn đã thực hiện.

Điều này rất hấp dẫn đối với các công ty, chẳng hạn như Apple, nơi nghĩa vụ pháp lý đối với các cổ đông của họ có thể yêu cầu họ giữ IP độc quyền 'an toàn'. Apple dựa trên một số hạt nhân của nó trên FreeBSD, ví dụ.

Tivo sẽ không gặp phải vấn đề cấp phép (nhỏ) mà nó phải chịu từ nhiều năm trước nếu chúng được xây dựng dựa trên BSD chứ không phải Linux.

Một số khác biệt thực tế

  • Các BSD không phổ biến như Linux, và do đó, không có trình điều khiển cho phần cứng cạnh chảy máu.
  • Có ít BSD hơn các bản phân phối Linux và chúng được xác định rất rõ để bạn biết, nói chung, khi bạn nên sử dụng cái này hơn cái khác.
  • Tất cả đều tập trung nhiều vào sự ổn định hơn nhiều yếu tố khác, và do đó thường được sử dụng trong các tình huống có độ tin cậy cao.

-Adam


1
+1. Sự thật điểm chuẩn là bsds không hoạt động tốt và vẫn thiếu nhiều tính năng kernel mà linux và solaris đã có. Giấy phép bsd là phần tốt nhất (hoặc tồi tệ nhất) về bsd.
Tim Matthews

Điều tuyệt vời về điểm chuẩn là có rất nhiều lựa chọn. Đối với các tác vụ kết nối / lọc mạng, tôi đã sử dụng BSD với kết quả tốt hơn Linux --- để tạo mô hình số, tôi đã sử dụng Linux hoặc Solaris với bộ trình biên dịch Sun Studio .... tất cả chỉ là vấn đề tìm ra cái gì là tốt nhất công cụ cho công việc.
Bill B

4
Thật tuyệt khi thấy một số bằng chứng của tuyên bố này: "Sự thật điểm chuẩn là bsds không phải là người biểu diễn tốt ..."
Josh Brower


1

Bên cạnh tất cả mọi thứ đã được đề cập, tôi muốn thêm rằng tài liệu này rất tốt. Người đàn ông (1) trang là tuyệt vời!


0

BSD (Phân phối phần mềm Berkeley) được biết đến bởi tính ổn định của chúng: FreeBSD,
bảo mật: OpenBSD
và hỗ trợ vô số nền tảng: NetBSD

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.