Back to FreeBSD: Part 1

14 hours ago 4

Hacker News 의견들
  • 기술적 우월성만으로는 에코시스템 전쟁에서 이길 수 없었음
    90년대 중반 리눅스는 빠른 의사결정, GPL 라이선스의 확산성, Red Hat과 IBM의 기업 지원 덕분에 성장했음
    나는 1994년에 리눅스를 설치했는데, FreeBSD 커뮤니티에서는 내 $3,500짜리 PC가 “별로”라며 무시당했음
    IDE 인터페이스에 버그가 있었지만 리눅스는 며칠 만에 우회책을 냈고, BSD 쪽은 SCSI 장비를 사라고만 했음
    당시 대학생이던 나는 돈이 없었고, 결국 리눅스가 현실적인 선택이었음
    나중에 FreeBSD를 다시 써봤지만, 이미 리눅스가 내가 필요한 건 다 해주고 있었음
    관련 버그는 CMD640 위키 문서에 정리되어 있음

    • 나도 FreeBSD 팬이지만, 리눅스와 기능적 수렴이 많이 이루어졌다고 느낌
      그래도 FreeBSD는 시스템의 일관성이 더 높고, 사운드나 이벤트 API 같은 핵심 구성요소가 안정적으로 유지된다는 점이 마음에 듦
      최신 하드웨어 드라이버 지원은 여전히 리눅스가 낫지만, FreeBSD가 너무 “리눅스화”되지 않기를 바람
    • 요즘 BSD를 쓰는 사람들은 대부분 익숙해서 쓰거나, 그냥 반골 기질로 쓰는 경우가 많음
      사실 현대의 *nix라면 어느 쪽이든 거의 다 할 수 있음. 이제는 성능보다 성향과 익숙함의 문제임
    • 리눅스는 초기에 상업적 관심을 받으면서 하드웨어 지원이 폭발적으로 좋아졌음
      반면 BSD는 AT&T와의 소송 때문에 기업들이 꺼렸고, 그 사이 리눅스가 시장을 장악했음
      지금도 FreeBSD를 옹호하는 글이 나오지만, 90년대에 굳어진 흐름을 깨긴 어려움
    • BSD 진영이 내 PC를 비웃었다는 얘기에 웃음이 나옴
      그래도 하드웨어 지원은 지금도 개선될 여지가 많다고 생각함
    • 1992~1994년 사이 BSD는 소송 위협을 받는 동안 리눅스가 성장했음
  • 글이 흥미로웠음
    리눅스의 namespaces, cgroups, seccomp 같은 커널 프리미티브가 결국 복잡한 추상화 생태계를 만들었다는 평에는 동의하지 않음
    리눅스가 성공했기 때문에 복잡해진 것이지, 실패한 설계 때문은 아님
    만약 BSD가 주류였다면 똑같이 “과공학적” 생태계가 생겼을 것임

    • FreeBSD는 해커 문화보다 엔지니어링 중심 사고방식이 강함
      컨테이너는 결국 가벼운 VM에 불과하므로, 차라리 진짜 VM을 쓰는 게 낫다고 생각함
    • BSD 유틸리티와 GNU 유틸리티를 비교하면 스타일 차이가 확실함
      Docker가 인기 있는 이유는 재사용성과 생태계이지, 보안 격리 때문은 아니었음
  • FreeBSD의 jail은 단순하고 우아하지만, 리눅스의 OCI 컨테이너는 훨씬 사용하기 쉬움
    컨테이너는 커널의 독립된 기능이 아니라 여러 네임스페이스와 마운트, 프로세스 격리를 조합한 환상임
    리눅스의 설계는 의도된 것이며, cgroups와 seccomp는 컨테이너 외에도 systemd나 flatpak 등에서 폭넓게 쓰임

    • FreeBSD는 여전히 네트워킹 장비나 스토리지 컨트롤러 같은 분야에서 강점이 있음
      “가축 vs 애완동물” 철학을 VM과 오케스트레이션 레벨에서 적용할 수 있음
    • 리눅스 컨테이너는 생성과 실행 속도가 FreeBSD jail보다 훨씬 빠름
      jails가 더 낫다는 말은 현실적으로 와닿지 않음
  • Docker가 승리한 이유는 기술적 격리가 아니라 생태계였음
    Dockerfile, public registry, compose 같은 도구 덕분에 30초 만에 실행 가능한 환경을 만들 수 있었음
    FreeBSD jail은 기술적으로 훌륭했지만, 진입 장벽이 높았음
    최근에는 컨테이너 스택의 복잡성 때문에 단순한 jail이나 VM으로 돌아가려는 움직임도 보임

    • FreeBSD는 시장 점유율이 0.1% 수준이라 “이길” 수 없었음
      하지만 경쟁이 아니라 각자 역할이 다를 뿐임
    • Docker의 클라이언트/서버 구조 덕분에 Docker Desktop 같은 통합 환경이 가능했음
      FreeBSD에는 이런 개념이 없고, 이미지 시스템도 부족함
    • 나는 Docker Compose나 Swarm만 써도 충분히 단순하다고 느낌
      FreeBSD가 Docker처럼 UX와 생태계에 투자했다면 사용자층이 몇 배는 늘었을 것임
    • 원문에서도 “에코시스템”이라는 단어를 여러 번 강조하고 있음
  • 2005년쯤 회사 전체를 FreeBSD 위에 올려 운영했었음
    하지만 시간이 지나면서 리눅스가 개인과 업무 모두를 장악했음
    이제는 Docker도 충분히 괜찮고, 다시 돌아갈 논리적 이유가 없음

    • 2000년대 초 FreeBSD 4는 네트워크와 스토리지 성능이 탁월했음
      그러나 멀티코어 CPU 시대에 대응이 늦어 리눅스와 윈도우에 밀렸음
      지금은 성능이 회복됐지만, 드라이버 부족과 개발자 수의 한계로 여전히 불리함
      나는 GPU나 CUDA가 필요한 곳엔 리눅스를, 안정적인 서버엔 FreeBSD를 씀
    • 나도 비슷한 입장임. 리눅스의 투자 규모가 워낙 커서 단점이 묻힘
      FreeBSD의 UX가 더 일관적이지만, 현실적으로 리눅스가 “행복한 경로”가 되어버림
    • 사토시가 왜 윈도우를 썼는지는 여전히 의문임
  • FreeBSD를 소개하는 글은 언제나 반가움

  • FreeBSD가 2000년에 jail을 도입했지만, 리눅스에는 이미 OpenVZ와 VServer 같은 유사 기술이 있었음

    • Virtuozzo는 비공개라 확산이 늦었고, Linux-VServer는 웹호스팅에만 초점을 맞춰 주류가 되지 못했음
      결국 2000년대 후반 LXC가 등장하면서 “FreeBSD가 앞서 있었다”는 인식이 생김
  • 컨테이너와 VM의 격리 구현 방식을 기술적으로 설명한 글이 있는지 궁금함
    단순히 “같은 커널이라 약하다”는 수준이 아니라, 실제 구현 세부를 알고 싶음

  • 최근 systemd-oomd 같은 기능 때문에 FreeBSD로 돌아가고 싶다는 생각이 듦
    예전에는 터미널에서 여러 프로세스를 띄워두고 로그를 남기며 개발했는데,
    이제는 systemd가 cgroup 단위로 프로세스를 통째로 죽이는 바람에 작업이 사라짐
    이런 비호환적 시스템 변경은 개발 흐름을 깨뜨리고, 프로세스 격리를 위해 매번 systemd-run이나 Docker를 써야 하는 상황이 답답함

  • 리눅스 성공의 핵심은 GPL의 전염성네트워크 효과였음
    사용자들이 리눅스를 표준으로 인식하면서, 하드웨어 제조사들도 자연스럽게 리눅스용 드라이버를 내놓게 되었음
    커널의 유연함 덕분에 오픈소스 드라이버 생태계가 폭발적으로 성장했음

Read Entire Article