Difference between revisions of "프리BSD"

Jump to navigation Jump to search
3,273 bytes added ,  04:32, 5 October 2018
no edit summary
Line 1: Line 1:
[include(틀:프로젝트 문서,프로젝트=나무위키 운영 체제 프로젝트)]
{{Template:바로 가기}}
[include(틀:운영 체제)]
 
||<table align=right> [[파일:external/assets.devx.com/26_freebsd.gif|width=100%]] ||
= 개요 =
[목차]
== 개요 ==
FreeBSD는 [[유닉스]] 계열 [[운영 체제]][* Unix-like OS]이며 [[리눅스]]처럼 서버용이든 데스크탑용이든 쓸 수 있는 범용적인 OS이다. ~~[[http://www.freebsd.org/copyright/daemon.html|붉은악마]]의 OS다.~~ 2017년 기준으로 [[BSD]] 계열 운영 체제 중 [[macOS]]를 제외하면 [[TrueOS]]에 이어 두번째로 많이 쓰이는 운영 체제이다. https://distrowatch.com/index.php?dataspan=2017
FreeBSD는 [[유닉스]] 계열 [[운영 체제]][* Unix-like OS]이며 [[리눅스]]처럼 서버용이든 데스크탑용이든 쓸 수 있는 범용적인 OS이다. ~~[[http://www.freebsd.org/copyright/daemon.html|붉은악마]]의 OS다.~~ 2017년 기준으로 [[BSD]] 계열 운영 체제 중 [[macOS]]를 제외하면 [[TrueOS]]에 이어 두번째로 많이 쓰이는 운영 체제이다. https://distrowatch.com/index.php?dataspan=2017


Line 18: Line 16:
참고로, "BSD가 조금만 더 일찍 나왔다면 나는 리눅스를 만들지 않았을 것이다."라는 [[리누스 토르발스]]의 이야기를 누설(?)한 사람이 바로 매큐직이다. 실제로, 과거엔 BSD가 리눅스에 비해 성능이나 안정성 측면에서 좋은 점수를 많이 받았지만, 아무래도 점유율이 리눅스가 높아 개발자들의 유입도 많고 해서 빠르게 발전한 결과, 현재는 오히려 리눅스가 BSD를 앞질렀다고 볼 수 있다.
참고로, "BSD가 조금만 더 일찍 나왔다면 나는 리눅스를 만들지 않았을 것이다."라는 [[리누스 토르발스]]의 이야기를 누설(?)한 사람이 바로 매큐직이다. 실제로, 과거엔 BSD가 리눅스에 비해 성능이나 안정성 측면에서 좋은 점수를 많이 받았지만, 아무래도 점유율이 리눅스가 높아 개발자들의 유입도 많고 해서 빠르게 발전한 결과, 현재는 오히려 리눅스가 BSD를 앞질렀다고 볼 수 있다.


== 특징 ==
= FreeBSD 설치 방법 =
[[유닠스 계열]] 문서와 [[트루OS]] 문서도 참조.
 
== 설치 USB 드라이브 제작 ==
https://www.freebsd.org/where.html 에 가서 최신 버전인 FreeBSD 11.2-RELEASE의 Installer Images의 64비트 버전인 amd64를 받는다. i386은 32비트 버전이다. 772 MB인 FreeBSD-11.2-RELEASE-amd64-memstick.img가 있고, 3.2 GB인 FreeBSD-11.2-RELEASE-amd64-dvd1.iso가 있는데 뭐를 다운로드 받아도 설치에는 문제없다. 그리고 어차피 둘 다 [[GUI]]는 안 뜬다. [[데스크탚 환경]]([[desktop environment]])을 직접 설치해줘야 GUI가 뜬다.
 
 
2017년에 나온 [[Intel]]의 [[Coffee Lake]]같은 최신 그래핔 칲셑(CPU 내장)을 사용하는 컴퓨터일 경우 FreeBSD 12.0-CURRENT에서 가장 최신 버전을 다운로드 받는다. 그럼 혹시 드라이버가 지원될 수도 있다. 972 MB인 FreeBSD-12.0-ALPHA8-amd64-20180928-r338991-memstick.img를 받으면 된다. 여기는 DVD용 iso 이미지는 아예 없다.
 
 
https://etcher.io/ 에 가서 Etcher의 portable 버전을 다운로드 받는다. img 파일이나 iso 파일을 [[USB 메모리]]에 구워준다.
 
 
iso 파일로 [[Etcher]]에서 구우려고 하면 It looks like this is not a bootable image. The image does not appear to contain a partition table, and might not be recognized or bootable by your device.라고 뜨는데 그냥 무시하고 Continue 눌러서 진행해도 프리BSD 설치에는 아무 문제 없다.
 
 
[[FreeBSD]] 웹싸이트에서 추천하는 [[Win32 Disk Imager]]로 구웠다가, USB 메모리의 파티션이 삭제가 안 되어 사용할 수 없게 됐을 경우에는 [[유닠스 계열]] 문서에 나온 방법을 참조하여 파티션을 삭제하면 된다.
 
== Secure Boot 끄기 ==
메인보드 설정에서 Secure Boot를 꺼야 부팅이 된다.
 
== 설치 과정 ==
부팅이 되면 Install 버튼을 누른다. Live CD 버튼을 눌러봤자 [[CLI]]의 [[터미널]]만 뜬다.
 
Keymap Selection에 Korean이 없으니까 그냥 엔터 눌러서 다음으로 넘긴다.
 
Distribution Select도 그냥 엔터 눌러서 넘긴다.
 
=== Partitioning ===
디스크 전체 암호화(full disk encryption)를 안 할 거면 Partitioning에서 Manual을 선택하고, 전체 암호화를 할거면 Shell에서 수동으로 만들어줘야 한다. Auto (UFS)나 Auto (ZFS)는 선택하지 않는다. [[SSD]]나 [[HDD]] 전체를 사용한다.
 
==== Manual 파티셔닝 ====
ada0과 da0이 보일텐데 ada0은 [[SSD]]나 [[HDD]]이고, da0은 설치용 USB 디스크이다.
 
 
키보드로 ada0의 파티션 중 하나에 커서를 갖다대고 Create를 선택한다. Type: efi에 Size 1MB로 하고, Options는 기본값인 FAT32 그대로 하면 된다. FAT16이나 FAT12로 바꿀 필요가 없다. 여기서는 좌우 화살표 키가 아니라 상하 화살표 키로 움직인다. Tab 키도 사용하여 움직여야 한다.
 
 
Type: freebsd-swap에 Size: 2GB 정도로 swap partition을 만들 수도 있지만, 작은 공간이 따로 떨어진 상태로 혼자만 많이 쓰여지기 때문에 [[SSD]]의 [[TRIM]]에 불리하고, 별도로 암호화를 안 하면 보안상 문제도 있으므로 swap partition은 만들지 않는다. 대신 나중에 필요하면 swap file을 만들 수 있다.
 
Type: freebsd-ufs에 Size: 15 GB에 Mountpoint: /로 주 파티션을 만든다. 15 GB 이상은 할당하는 게 좋다. Options에서 TRIM (Enable SSD TRIM support)를 선택해준다.
 
==== Shell 파티셔닝 ====
 
=== 네트워크 설정 ===
Intel Wireless-AC 9462같은 최신 [[무선 랜]]([[wireless LAN]]) 하드웨어는 [[비에스디]]([[BSD]])에 드라이버가 없어서 못 잡는다. 그냥 설치시에 [[랜 케이블]]을 연결해놓고, 유선으로 쓰자. 랜 케이블을 연결해놓은 상태라면 [[DHCP]]로 자동으로 [[인터넷 공유기]]로부터 [[IP 주소]] 등을 받아올 것이다. 못 받아오면 수동으로 설정해주면 된다.
 
 
=== root 및 사용자 추가 ===
root 비번을 설정하라고 나온다. Enter password:라고 나오면 root 비번을 적당히 정해서 넣어준다.
 
 
사용자를 추가하라고 한다. Username과 password를 적당히 정해서 넣어준다. [[보안]]을 위해 root와는 다른 비번을 사용한다. Enter password again:이라고 나오면 오타 방지를 위해 한 번 더 비번을 적어준다.
 
= 사용 방법 =
[[톨]]([[Tor]]), [[크로미엄]]([[Chromium]]), [[베라크맆트]]([[VeraCrypt]]) 설치 및 사용 방법은 [[트루OS]]([[TrueOS]]) 문서 참조.
 
 
== 파이어폭스 설치 ==
[[터미널]]에서 root 권한으로 pkg install firefox를 입력하면 된다.
 
= 특징 =
일반에 잘 알려지지 않은 BSD 계열이라 마이너하게 보이지만, 의외로 꽤 인기있는 OS이다. Distrowatch의 Page hit ranking에서도 리눅스 배포판들의 홍수속에 10위권을 오락가락하고 [[젠투 리눅스|젠투]]보다 높다.(...)[* [[http://distrowatch.com]]] 게다가, 소수지만 매우 활동적인 커뮤니티를 갖고있는지라, 질문에 대한 답변도 웬만한 인기 리눅스 배포판보다 훨씬 빠르게 답변이 달린다.
일반에 잘 알려지지 않은 BSD 계열이라 마이너하게 보이지만, 의외로 꽤 인기있는 OS이다. Distrowatch의 Page hit ranking에서도 리눅스 배포판들의 홍수속에 10위권을 오락가락하고 [[젠투 리눅스|젠투]]보다 높다.(...)[* [[http://distrowatch.com]]] 게다가, 소수지만 매우 활동적인 커뮤니티를 갖고있는지라, 질문에 대한 답변도 웬만한 인기 리눅스 배포판보다 훨씬 빠르게 답변이 달린다.


Line 41: Line 100:
더불어 리눅스 진영과의 마찰도 좀 있는 편인데, BSD 측이 니 맘대로 하세요 식의 완전한 자유를 추구하는 반면 [[GNU]] 측은 소스코드 공개 의무화 등의 공격적인 오픈소스 방식을 취하고 있기 때문에, GNU 소프트웨어를 가져다 쓰면서도 자신들에게 협조를 안 하는 BSD 진영이 밉보일 수밖에 없다. 그러나, BSD 진영에서는 이것을 리눅시즘(Linuxism)이라며 가볍게 무시한다.
더불어 리눅스 진영과의 마찰도 좀 있는 편인데, BSD 측이 니 맘대로 하세요 식의 완전한 자유를 추구하는 반면 [[GNU]] 측은 소스코드 공개 의무화 등의 공격적인 오픈소스 방식을 취하고 있기 때문에, GNU 소프트웨어를 가져다 쓰면서도 자신들에게 협조를 안 하는 BSD 진영이 밉보일 수밖에 없다. 그러나, BSD 진영에서는 이것을 리눅시즘(Linuxism)이라며 가볍게 무시한다.


=== 구형 [[GCC]] 문제 ===
== 구형 [[GCC]] 문제 ==
오픈소스 계의 표준 컴파일러라 볼 수 있는 [[GCC]]가 4.2.2 버전부터 [[BSD 라이선스]]와 호환되지 않는 [[GPL]]v3가 적용되었기 때문에, 기본 GCC 컴파일러가 상당히 오랜기간 4.2.1 버전이었다. (당시 대부분의 리눅스 배포판은 GCC 4.5+ 버전으로 컴파일된 바이너리를 제공하였다.) 물론 이것은 베이스 시스템 한정이고, 유저들이 자유롭게 GCC 최신 버전을 인스톨해서 사용하는 것은 가능했다.
오픈소스 계의 표준 컴파일러라 볼 수 있는 [[GCC]]가 4.2.2 버전부터 [[BSD 라이선스]]와 호환되지 않는 [[GPL]]v3가 적용되었기 때문에, 기본 GCC 컴파일러가 상당히 오랜기간 4.2.1 버전이었다. (당시 대부분의 리눅스 배포판은 GCC 4.5+ 버전으로 컴파일된 바이너리를 제공하였다.) 물론 이것은 베이스 시스템 한정이고, 유저들이 자유롭게 GCC 최신 버전을 인스톨해서 사용하는 것은 가능했다.


Line 48: Line 107:
애초에 BSD 커뮤니티에서는 GCC 컴파일러가 수십년간의 최적화로 런타임 속도에서는 강하지만, 기본적인 설계가 그리 깔끔하지 못하다는 점과 컴파일 속도가 매우 느리다는 점[* 일반적으로 이미 컴파일된 바이너리를 사용하는 리눅스 쪽에서는 별로 문제될 것이 없지만, *BSD처럼 프로그램을 설치할 때나 업데이트할 때마다 소스코드만 다운받아 사용자가 직접 컴파일하는 경우는 컴파일 속도도 매우 중요하다고 볼 수 있다.][* 2013년 이후 GCC의 코드 베이스는 C++로 교체되어 내부 설계 문제는 없어졌다.]을 문제삼아 비판하는 경우가 많았기 때문에, 사실 굳이 라이선스 문제가 없었어도 언젠가는 다른 컴파일러를 사용하려 했을 거라는 소리도 있긴 하다.
애초에 BSD 커뮤니티에서는 GCC 컴파일러가 수십년간의 최적화로 런타임 속도에서는 강하지만, 기본적인 설계가 그리 깔끔하지 못하다는 점과 컴파일 속도가 매우 느리다는 점[* 일반적으로 이미 컴파일된 바이너리를 사용하는 리눅스 쪽에서는 별로 문제될 것이 없지만, *BSD처럼 프로그램을 설치할 때나 업데이트할 때마다 소스코드만 다운받아 사용자가 직접 컴파일하는 경우는 컴파일 속도도 매우 중요하다고 볼 수 있다.][* 2013년 이후 GCC의 코드 베이스는 C++로 교체되어 내부 설계 문제는 없어졌다.]을 문제삼아 비판하는 경우가 많았기 때문에, 사실 굳이 라이선스 문제가 없었어도 언젠가는 다른 컴파일러를 사용하려 했을 거라는 소리도 있긴 하다.


=== [[ZFS]] ===
== [[ZFS]] ==
FreeBSD가 제공하는 것들은 여러 가지가 있겠지만, 개중에 눈여겨볼 만한 것은 [[ZFS]][* ZFS는 [[썬 마이크로시스템즈]]가 개발했으며, OpenSolaris와 FreeBSD로 공식적으로 포팅이 되어 있...었는데, [[오라클(기업)|오라클]]이 썬 마이크로시스템즈를 인수하면서 라이선스 정책을 바꿔 OpenSolaris가 사실상 죽어 버린 관계로(OpenIndiana 라는 포크가 새로 생기긴 했다.), FreeBSD는 현재 오픈소스계의 ZFS의 마지막 희망이라 할 수 있다.] 파일 시스템이다. ZFS는 현재 파일 시스템 중의 끝판왕이라고 봐도 될정도로 여러가지 기능을 간단한 커맨드라인 명령으로 다 지원하며, 데이터 안전성에 있어서도 모든 데이터를 Check-summing 하는 방식으로 기존 파일 시스템이 속수무책이던 Silent corruption을 방지해주기도 한다. NFS와 CIFS, iSCSI를 파일시스템 자체에서 지원하며[* FreeBSD에서는 NFS만 지원되고, CIFS, iSCSI 등은 파일시스템이 아닌 FreeBSD에서 수동으로 설정해야 한다.], 많은 메모리와 SSD를 캐시로 달아 주면 하드웨어 레이드 카드에 버금가는 속도를 보여주기도 한다.[* ZFS의 등장을 하드웨어 레이드 카드의 죽음으로 비유한 사람도 있었다.]
FreeBSD가 제공하는 것들은 여러 가지가 있겠지만, 개중에 눈여겨볼 만한 것은 [[ZFS]][* ZFS는 [[썬 마이크로시스템즈]]가 개발했으며, OpenSolaris와 FreeBSD로 공식적으로 포팅이 되어 있...었는데, [[오라클(기업)|오라클]]이 썬 마이크로시스템즈를 인수하면서 라이선스 정책을 바꿔 OpenSolaris가 사실상 죽어 버린 관계로(OpenIndiana 라는 포크가 새로 생기긴 했다.), FreeBSD는 현재 오픈소스계의 ZFS의 마지막 희망이라 할 수 있다.] 파일 시스템이다. ZFS는 현재 파일 시스템 중의 끝판왕이라고 봐도 될정도로 여러가지 기능을 간단한 커맨드라인 명령으로 다 지원하며, 데이터 안전성에 있어서도 모든 데이터를 Check-summing 하는 방식으로 기존 파일 시스템이 속수무책이던 Silent corruption을 방지해주기도 한다. NFS와 CIFS, iSCSI를 파일시스템 자체에서 지원하며[* FreeBSD에서는 NFS만 지원되고, CIFS, iSCSI 등은 파일시스템이 아닌 FreeBSD에서 수동으로 설정해야 한다.], 많은 메모리와 SSD를 캐시로 달아 주면 하드웨어 레이드 카드에 버금가는 속도를 보여주기도 한다.[* ZFS의 등장을 하드웨어 레이드 카드의 죽음으로 비유한 사람도 있었다.]


Line 55: Line 114:
리눅스 쪽에서는 라이선스 문제로 공식적으로 커널에 포함되지 못하고, 비공식적으로만 포팅되어 있다. FreeBSD에서는 리눅스와는 다르게 ZFS로 부팅도 되기 때문에 사실상, 모든 파일 시스템을 ZFS로 사용이 가능하다. 리눅스쪽에서는 ZFS의 대항마로 현재 개발중인 Btrfs를 밀고 있는데, 지금 꽤나 오랜기간 동안 베타 딱지를 달고 있어 모든 기능이 완성되는 버전까지는 시간이 꽤 걸릴듯 하며, 완성된다 해도 실사용시 안정성을 입증받기까지는 몇년이 더 소요될 것이다. 게다가, 완성된 이후를 가정했을 때의 기능면에서도 ZFS와 엇비슷한 정도이다.[* 그러나, 마이너에 속하는 솔라리스나 FreeBSD에서만 제대로 지원되는 ZFS에 비해 Btrfs는 리눅스 커널의 공식적인, 그리고 전폭적인 지원 버프를 받는다는 차이가 있다.] Btrfs 역시 [[오라클(기업)|오라클]]의 후원으로 개발되는 파일시스템이다.
리눅스 쪽에서는 라이선스 문제로 공식적으로 커널에 포함되지 못하고, 비공식적으로만 포팅되어 있다. FreeBSD에서는 리눅스와는 다르게 ZFS로 부팅도 되기 때문에 사실상, 모든 파일 시스템을 ZFS로 사용이 가능하다. 리눅스쪽에서는 ZFS의 대항마로 현재 개발중인 Btrfs를 밀고 있는데, 지금 꽤나 오랜기간 동안 베타 딱지를 달고 있어 모든 기능이 완성되는 버전까지는 시간이 꽤 걸릴듯 하며, 완성된다 해도 실사용시 안정성을 입증받기까지는 몇년이 더 소요될 것이다. 게다가, 완성된 이후를 가정했을 때의 기능면에서도 ZFS와 엇비슷한 정도이다.[* 그러나, 마이너에 속하는 솔라리스나 FreeBSD에서만 제대로 지원되는 ZFS에 비해 Btrfs는 리눅스 커널의 공식적인, 그리고 전폭적인 지원 버프를 받는다는 차이가 있다.] Btrfs 역시 [[오라클(기업)|오라클]]의 후원으로 개발되는 파일시스템이다.


=== 원시적 OS ===
== 원시적 OS ==
좋게 말하면 어떤 면에서는 웬만한 리눅스 배포판들보다 로우레벨 세팅을 모두 관리자의 손에 맡기는 투명한 운영체제이고, 나쁘게 말하면 편의성이나 자동완성이란 게 뭔지 모르는 원시적(?)인 운영체제인데, 아예 인스톨 시 현재 인스톨하는 것들의 모든 소스 코드를 같이 까는 게 가능하며 그 상태로 그 소스코드를 이리저리 변경해서[* 능력이 된다면 알고리즘을 바꾸거나 하는 식으로 거창하게 할 수도 있지만, 그냥 값만 변경하는 정도의 변경은 굳이 거창한 유닉스 운영체제 구조의 이해 따위 없어도 할 수 있는 간단한 것들이다.] 다시 OS 자체를 원하는 옵션 주면서 컴파일해서 사용하는 것도 가능하다. 당연히 커스텀 커널도 지원하는데, ~~지원 하드웨어가 적어서~~ 리눅스보다 훨씬 간단하고 빠르게 끝난다.
좋게 말하면 어떤 면에서는 웬만한 리눅스 배포판들보다 로우레벨 세팅을 모두 관리자의 손에 맡기는 투명한 운영체제이고, 나쁘게 말하면 편의성이나 자동완성이란 게 뭔지 모르는 원시적(?)인 운영체제인데, 아예 인스톨 시 현재 인스톨하는 것들의 모든 소스 코드를 같이 까는 게 가능하며 그 상태로 그 소스코드를 이리저리 변경해서[* 능력이 된다면 알고리즘을 바꾸거나 하는 식으로 거창하게 할 수도 있지만, 그냥 값만 변경하는 정도의 변경은 굳이 거창한 유닉스 운영체제 구조의 이해 따위 없어도 할 수 있는 간단한 것들이다.] 다시 OS 자체를 원하는 옵션 주면서 컴파일해서 사용하는 것도 가능하다. 당연히 커스텀 커널도 지원하는데, ~~지원 하드웨어가 적어서~~ 리눅스보다 훨씬 간단하고 빠르게 끝난다.


Line 62: Line 121:
거의 모든 게 사람 손을 거쳐야 하며, 그렇기에 초보자들에게 어려울 것 같지만, 문서화가 오픈소스 OS 중에 가장 잘 되어 있는 OS 중 하나이기 때문에 실제로 그렇게 어렵지는 않다. [[젠투 리눅스|젠투]]의 경우 초보자들이 잘 나가다가 USE flags의 벽에 가로막혀 좌절을 느끼는 경우가 많은 데 반해, FreeBSD의 Ports에는 그런 것 자체가 존재하지 않고 그냥 인스톨하다 보면 옵션 선택 창이 뜨며, 원하는 대로 선택하면 되기 때문에 처음 설치 시에 그런 데 골머리를 썩힐 일은 없다. 그리고, 옵션 선택 창에 이미 표준적으로 사용하는 디폴트 선택이 되어 있는 상태기 때문에 모르면 그냥 Next만 연타하는 윈도우처럼 인스톨해도 된다.
거의 모든 게 사람 손을 거쳐야 하며, 그렇기에 초보자들에게 어려울 것 같지만, 문서화가 오픈소스 OS 중에 가장 잘 되어 있는 OS 중 하나이기 때문에 실제로 그렇게 어렵지는 않다. [[젠투 리눅스|젠투]]의 경우 초보자들이 잘 나가다가 USE flags의 벽에 가로막혀 좌절을 느끼는 경우가 많은 데 반해, FreeBSD의 Ports에는 그런 것 자체가 존재하지 않고 그냥 인스톨하다 보면 옵션 선택 창이 뜨며, 원하는 대로 선택하면 되기 때문에 처음 설치 시에 그런 데 골머리를 썩힐 일은 없다. 그리고, 옵션 선택 창에 이미 표준적으로 사용하는 디폴트 선택이 되어 있는 상태기 때문에 모르면 그냥 Next만 연타하는 윈도우처럼 인스톨해도 된다.


=== 모듈형 디자인 ===
== 모듈형 디자인 ==
소프트웨어는 Ports라는 시스템을 이용하는데, ~~port라고 쓰고 귀차니즘 종결자라 읽는다~~ [[젠투 리눅스|젠투]]처럼 그냥 소스코드 다운받아 컴파일하는 방식이다. 특징이라면, 처음 인스톨하는 Base system과 새로 인스톨하는 Ports를 엄격하게 구분한다는 것이다. 덕분에 소프트웨어 인스톨/삭제로 개판을 만들어도 베이스 시스템에는 영향이 가지 않는다. 다만, 소프트웨어 인스톨 시 웬만한 리눅스 배포판들은 다 즉시 사용이 가능하게끔 자동으로 세팅을 끝내 주는 반면, FreeBSD는 전혀 안 건드린다. 완전히 수동이다. ~~이제 원시적이란 말을 이해하겠는가?~~ 그리고, 깔 때는 의존성을 찾아서 다 깔아 주지만, 지울 때는 수동이다.(...) 각각의 의존성을 모두 수동으로 찾아서 언인스톨하든가, 그냥 냅두든가 해야 한다. ~~들어올 땐 마음대로였어도 나갈 땐 아니란다~~ 10.0부터는 pkgng라는 바이너리 패키지 관리툴이 새로 들어가서, 굳이 컴파일 설치를 하지 않아도 되고, 기존에 불가능했거나 아주 어려웠던 여러가지 관리 기능이 추가될 것으로 생각된다.
소프트웨어는 Ports라는 시스템을 이용하는데, ~~port라고 쓰고 귀차니즘 종결자라 읽는다~~ [[젠투 리눅스|젠투]]처럼 그냥 소스코드 다운받아 컴파일하는 방식이다. 특징이라면, 처음 인스톨하는 Base system과 새로 인스톨하는 Ports를 엄격하게 구분한다는 것이다. 덕분에 소프트웨어 인스톨/삭제로 개판을 만들어도 베이스 시스템에는 영향이 가지 않는다. 다만, 소프트웨어 인스톨 시 웬만한 리눅스 배포판들은 다 즉시 사용이 가능하게끔 자동으로 세팅을 끝내 주는 반면, FreeBSD는 전혀 안 건드린다. 완전히 수동이다. ~~이제 원시적이란 말을 이해하겠는가?~~ 그리고, 깔 때는 의존성을 찾아서 다 깔아 주지만, 지울 때는 수동이다.(...) 각각의 의존성을 모두 수동으로 찾아서 언인스톨하든가, 그냥 냅두든가 해야 한다. ~~들어올 땐 마음대로였어도 나갈 땐 아니란다~~ 10.0부터는 pkgng라는 바이너리 패키지 관리툴이 새로 들어가서, 굳이 컴파일 설치를 하지 않아도 되고, 기존에 불가능했거나 아주 어려웠던 여러가지 관리 기능이 추가될 것으로 생각된다.


Line 73: Line 132:
위와 같은 엄격한 모듈형 디자인은 부트 매니저에도 적용되는데, FreeBSD의 부트 매니저인 Booteasy는 MBR 512Byte를 엄격하게 지키는 몇 안 되는 부트 매니저이다. 물론, 512Byte로는 죽도 밥도 안 되기 때문에 스테이지를 나눠서 차근차근 부팅 과정을 진행시킨다. 이런 덕분에, 기능 면에서는 [[grub]] 등에 비해 떨어질지 몰라도, 안정성 측면에서 FreeBSD 파티션이 개판 돼도 Booteasy를 이용한 다른 파티션으로의 부팅은 문제없이 가능한 장점이 있다.
위와 같은 엄격한 모듈형 디자인은 부트 매니저에도 적용되는데, FreeBSD의 부트 매니저인 Booteasy는 MBR 512Byte를 엄격하게 지키는 몇 안 되는 부트 매니저이다. 물론, 512Byte로는 죽도 밥도 안 되기 때문에 스테이지를 나눠서 차근차근 부팅 과정을 진행시킨다. 이런 덕분에, 기능 면에서는 [[grub]] 등에 비해 떨어질지 몰라도, 안정성 측면에서 FreeBSD 파티션이 개판 돼도 Booteasy를 이용한 다른 파티션으로의 부팅은 문제없이 가능한 장점이 있다.


== 다른 사용처 ==
= 다른 사용처 =
=== [[macOS]] ===
== [[macOS]] ==
[[애플(기업)|애플]]과의 관계도 눈여겨볼 만한데, FreeBSD는 위에서 말했듯이 완전히 자유로운 라이선스로 배포되는지라, 애플(정확히는 [[NeXT]]사)도 소스코드를 가져다가 [[OS X]]을 만드는 데 사용하였다. 애플은 소스코드를 가져다 사용하기만 한 것이 아니라, 도로 돌아와 FreeBSD 개발팀에 Mac OS X 소스를 완전히(그러니까 오픈소스 부분만 완전히...) 공개하며 신기술을 알려주기까지 하여 친구를 먹었다.[* 그런데, FreeBSD 원년멤버이자 Ports 시스템 창시자인 코어개발자 한 명을 빼갔다. MacPorts도 이 사람이 애플로 가서 만든 작품이다. ] 이 이후부터 FreeBSD 커뮤니티는 애플 쪽과 밀월관계를 구축하였고, 애플도 이를 기점으로 CUPS라든가 KHTML을 포크한 [[WebKit]] 프로젝트 등 다양한 오픈소스 프로젝트를 [[BSD 라이선스]]로 공개 진행하며 오픈소스 커뮤니티와 진한 관계를 맺어갔다. 그리고, FreeBSD의 버전업 속도도 애플과의 밀월관계 이후로 상당히 가속을 받게 되었다. ~~그러나 안정성 역시 애플 따라 망해가는 느낌이...~~[* 이번 10.1-RELEASE 버전만 해도 프비의 '''공식''' 시스템 업데이트 도구인 freebsd-update의 오류로 인해 업데이트 도중에 /(루트 디렉토리)를 날려버리려 시도하는, 그야말로 초대형 사고를 일으킬 뻔했다. 다행히 rm 명령 자체가 아무 옵션이 없으면 디렉토리 삭제를 거부하기에 망정이지, 만약 지웠다면 그야말로 [[하트블리드]]를 뛰어넘는 참사를 일으킬 뻔한 것이다. ~~괜찮아, 쓰는 곳 별로 없으니까. 아 눈에서 땀이...~~ 윈도우로 치면 시스템 업데이트를 돌렸더니 C: 드라이브가 포맷될 뻔한 것과 같다.]
[[애플(기업)|애플]]과의 관계도 눈여겨볼 만한데, FreeBSD는 위에서 말했듯이 완전히 자유로운 라이선스로 배포되는지라, 애플(정확히는 [[NeXT]]사)도 소스코드를 가져다가 [[OS X]]을 만드는 데 사용하였다. 애플은 소스코드를 가져다 사용하기만 한 것이 아니라, 도로 돌아와 FreeBSD 개발팀에 Mac OS X 소스를 완전히(그러니까 오픈소스 부분만 완전히...) 공개하며 신기술을 알려주기까지 하여 친구를 먹었다.[* 그런데, FreeBSD 원년멤버이자 Ports 시스템 창시자인 코어개발자 한 명을 빼갔다. MacPorts도 이 사람이 애플로 가서 만든 작품이다. ] 이 이후부터 FreeBSD 커뮤니티는 애플 쪽과 밀월관계를 구축하였고, 애플도 이를 기점으로 CUPS라든가 KHTML을 포크한 [[WebKit]] 프로젝트 등 다양한 오픈소스 프로젝트를 [[BSD 라이선스]]로 공개 진행하며 오픈소스 커뮤니티와 진한 관계를 맺어갔다. 그리고, FreeBSD의 버전업 속도도 애플과의 밀월관계 이후로 상당히 가속을 받게 되었다. ~~그러나 안정성 역시 애플 따라 망해가는 느낌이...~~[* 이번 10.1-RELEASE 버전만 해도 프비의 '''공식''' 시스템 업데이트 도구인 freebsd-update의 오류로 인해 업데이트 도중에 /(루트 디렉토리)를 날려버리려 시도하는, 그야말로 초대형 사고를 일으킬 뻔했다. 다행히 rm 명령 자체가 아무 옵션이 없으면 디렉토리 삭제를 거부하기에 망정이지, 만약 지웠다면 그야말로 [[하트블리드]]를 뛰어넘는 참사를 일으킬 뻔한 것이다. ~~괜찮아, 쓰는 곳 별로 없으니까. 아 눈에서 땀이...~~ 윈도우로 치면 시스템 업데이트를 돌렸더니 C: 드라이브가 포맷될 뻔한 것과 같다.]


=== [[TrueOS]] (구 PC-BSD) ===
[[https://www.trueos.org/|TrueOS]]. 2006년 4월 iX시스템즈에서 개발된 FreeBSD 기반의 [[오픈소스]] [[OS]]로, 기존의 상용 OS인 [[Windows]] 또는 [[Mac OS X]]의 사용성과 FreeBSD의 안정성 및 보안성이라는 장점을 절충한 덕분에, 일반 가정용 뿐만 아니라 기업용 및 서버용으로도 사용 가능한 범용성을 가지고 있다.
=== Debian GNU/kFreeBSD ===
[[https://www.debian.org/ports/kfreebsd-gnu/|Debian GNU/kFreeBSD]]. FreeBSD 커널에 유저랜드는 데비안을 사용하는 프로젝트. 데비안 쓰는 감각으로 대부분을 사용 가능하다고 하니 관심 있는 사람은 도전해보자.
=== ubuntuBSD ===
[[https://sourceforge.net/projects/ubuntubsd/|ubuntuBSD(소스포지)]]. FreeBSD 커널에 [[우분투]] 유저랜드를 사용하는 것으로[* 다만 기본 데스크톱 환경은 우분투의 XFCE 공식 변형판인 Xubuntu 환경을 쓴다.] 소스포지 게시일 기준 [[2016년]] [[3월 20일]] 베타2까지 공개되었다.


2018년 2월 기준 공식 사이트 및 패키지 저장소 서버가 닫혀있어 설치는 가능하나 보안 업데이트 등은 받을 수 없다.


=== [[플레이스테이션 시리즈]] ===
== [[플레이스테이션 시리즈]] ==
[[플레이스테이션 3]] 및 [[PS Vita]]도 FreeBSD를 사용하였고, [[플레이스테이션 4]]의 Orbis OS 역시 FreeBSD의 커스터마이징 버전이다.
[[플레이스테이션 3]] 및 [[PS Vita]]도 FreeBSD를 사용하였고, [[플레이스테이션 4]]의 Orbis OS 역시 FreeBSD의 커스터마이징 버전이다.


=== [[TmaxOS]] ===
== [[TmaxOS]] ==
[[파일:tmaxbsd.jpg |width=450]]
[[파일:tmaxbsd.jpg |width=450]]


티맥스에서 개발한 국산 OS. [[리눅스]] 커널 기반일 줄 알았는데, FreeBSD 기반이었다.(...) 소스 코드를 가져와도 FreeBSD의 방침상 아무 문제가 없기 때문. ~~안정성이 뛰어난 FreeBSD의 장점을 다 말아먹는 것도 [[반어법|참 대단한 능력]]이긴 하다.~~ ~~FreeBSD의 흑역사~~
티맥스에서 개발한 국산 OS. [[리눅스]] 커널 기반일 줄 알았는데, FreeBSD 기반이었다.(...) 소스 코드를 가져와도 FreeBSD의 방침상 아무 문제가 없기 때문. ~~안정성이 뛰어난 FreeBSD의 장점을 다 말아먹는 것도 [[반어법|참 대단한 능력]]이긴 하다.~~ ~~FreeBSD의 흑역사~~


=== Junos OS ===
== Junos OS ==
컴퓨터 네트워크 관련 기기 제조회사인 주니퍼 네트웍스에서 만들어진 자사의 라우터, 스위치 전용 네트워크 운영체제로서 [[시스코]]에서 만든 라우터와 스위치에 들어가는 운영체제인 시스코 IOS랑은 다르게 FreeBSD를 기반으로 커스터마이징되어 있다.
컴퓨터 네트워크 관련 기기 제조회사인 주니퍼 네트웍스에서 만들어진 자사의 라우터, 스위치 전용 네트워크 운영체제로서 [[시스코]]에서 만든 라우터와 스위치에 들어가는 운영체제인 시스코 IOS랑은 다르게 FreeBSD를 기반으로 커스터마이징되어 있다.


=== [[닌텐도 스위치]] ===
== [[닌텐도 스위치]] ==
FreeBSD 기반의 운영체제를 사용한다는 것이 레딧의 유저에 의해 [[https://www.reddit.com/r/NintendoSwitch/comments/5xbe5a/the_switch_runs_freebsd_making_it_nintendos_first/|확인되었다]].
FreeBSD 기반의 운영체제를 사용한다는 것이 레딧의 유저에 의해 [[https://www.reddit.com/r/NintendoSwitch/comments/5xbe5a/the_switch_runs_freebsd_making_it_nintendos_first/|확인되었다]].


[[Category:비에스디]]
[[Category:비에스디]]
[[Category:프리BSD]]
[[Category:프리BSD]]
131

edits

Navigation menu