14P by GN⁺ 7일전 | ★ favorite | 댓글 2개
  • 20~30년 전의 오픈소스는 자유기술적 독립성의 의미였음
  • 당시에는 Windows와 상용 Unix가 지배했으나, Linux와 BSD는 자유를 위한 선택이었음
  • 현재 오픈소스는 주류가 되었지만, 모노컬처(단일 문화) 문제가 발생 중
    • 도구 중심의 개발 → 혁신이 아닌 도구에 집착
    • 보안보다 새로운 기술이 우선시됨

현재의 문제점

  • 안정성이 사라지고 있음
    • "다음 버전에서 고칠 것이다"
    • "충돌하면 자동 재시작하면 된다"
    • 시스템 크래시보다 성능이 우선시됨
  • Rust의 메모리 안전성도 안전하지 않은 함수 사용 시 의미가 없어짐

BSD가 제공하는 해결책

  • BSD는 일관성과 안정성 제공
  • BSD 시스템의 철학
    • 커널과 사용자 도구가 같은 팀에서 개발됨 → 일관성 보장
    • 훌륭한 문서화 (특히 OpenBSD)
    • 코드의 단순화 → 보안 강화
    • 점진적 발전 (Evolution), 급진적 변화 아님

주요 BSD 종류와 특징

FreeBSD

  • 일반 목적 시스템 – 성능과 안정성 중시
  • 보안 강화 버전인 HardenedBSD 존재
  • ZFS, 부트 환경, OS와 패키지 분리
  • Jail 컨테이너 (2000년에 도입됨) – 리눅스 cgroups보다 10년 앞섬
  • Netflix, PlayStation, MacOS 등에서 사용됨

OpenBSD

  • 보안과 코드 정확성 중시
  • pledge(), unveil() 등 보안 메커니즘 제공
  • OpenSSH 및 다양한 보안 툴의 출발점
  • 팀 우선 개발 – 사용자 요구에 휘둘리지 않음

NetBSD

  • "Of course it runs NetBSD!" – 다양한 플랫폼에서 실행 가능
  • 50개 이상의 아키텍처 지원
  • 코드 품질과 호환성 중시
  • 임베디드 장치 등 오래된 하드웨어에서 안정적 실행

BSD 사용의 실제 장점

  • 더 나은 안정성과 보안성 – BSD 시스템은 안정적이며 보안이 뛰어남
  • 간편한 시스템 관리 – 업그레이드 후에도 시스템이 망가지지 않음
  • 일반적인 보안 취약점에 덜 노출됨 – "OpenBSD에서는 이미 20년 전에 수정된 문제입니다"
  • 일관된 네트워크 인터페이스 이름 유지ix0enx3e3300c9e14e 또는 enp10s0f0np0 같은 이름으로 바뀌지 않음
  • FreeBSD의 낮은 시스템 부하 – 동일 하드웨어에서 Linux보다 낮은 부하 유지
  • FreeBSD의 우수한 I/O 처리 성능 – 동일 하드웨어에서 70%의 시간 단축 경험
  • FreeBSD의 개선된 사용자 경험 – 더 빠르고 일관된 반응 속도 제공
  • NetBSD의 장기적인 지원 보장 – "걱정 마세요 – 플랫폼이 오랫동안 지원될 것입니다"

2025년에 BSD를 선택해야 하는 이유

  • 보안 – 점점 더 위협이 커지는 환경에서 강력한 보안 제공
  • 안정성 – 새로운 기술에 집착하는 세상에서 꾸준한 안정성 유지
  • 성능 – 불필요한 복잡성 없이 효율적인 성능 제공
  • 자유 – 주류 도구와 기술에서 벗어난 독립성 보장
  • 일관된 철학 – 명확하고 일관된 시스템 설계 유지

결론

  • BSD는 자유, 안정성, 보안을 제공하는 대안임
  • 새로운 기술에 휩쓸리지 말고 BSD의 철학을 경험해 보길 권장함

발표 소개

  • OSDay 2025 에서 발표한 것의 요약임. 25분간 발표에서 상세보다는 일반적인 내용을 다룸
  • 발표자 Stefano Marinelli는 BSD Cafe의 설립자이자 Barista이며, 1996년부터 Linux 사용자였음
  • 2002년부터 BSD 시스템 탐구 시작 – FreeBSD 핸드북이 계기였음
  • 발표 슬라이드
  • 발표 영상

그래도 생태계로썬 리눅스가 우위일텐데..

Lobste.rs의 댓글들
  • draga79 (작성자)
    • 발표 시간이 25분밖에 없어서 일반적인 오픈소스 컨퍼런스 환경에 맞게 내용을 간략하게 구성함
    • 기술적인 세부 사항보다 철학적 관점에서 BSD에 대한 관심을 끌기 위한 것이 목표였음
  • jmmv
    • "모두가 사용하니까"라는 이유로 Linux, Docker, Kubernetes를 사용하는 경향에 공감
    • Docker가 항상 최적의 솔루션은 아님에도 불구하고 표준이 되어버린 현실이 문제라고 지적
    • 복잡한 배포 및 운영 문제를 해결하려고 해도 다른 접근 방식을 설명하면 이해받기 어려움
  • dijit
    • "AWS와 ECS만 사용해야 한다"는 사고방식에 반대
    • 특정 환경에 맞추는 것은 Amazon에 유리할 뿐이며, 사용자의 자유를 제한함
  • radmind
    • Docker는 시스템 구성 저장에 편리하지만 완벽한 해결책은 아님
    • 가상 머신도 훌륭한 대안이며 BSD를 리얼타임 OS로 사용하려는 경우 어떤 BSD가 좋은지 궁금함
  • sjamaan
    • 컨테이너 사용이 너무 당연시되고 있으며, 복잡성이 증가함
    • GitLab이나 Sentry 같은 도구는 컨테이너 없이 실행하기 어렵고, 이는 비BSD 환경에서 문제를 일으킴
  • jbauer
    • OpenBSD를 서버 및 노트북에서 5년 동안 사용 – 매우 안정적이고 직관적임
    • 내장 소프트웨어가 훌륭해 타사 패키지를 거의 설치할 필요가 없음
    • Unix 계열 중 최고의 품질이라고 평가
  • reezer
    • BSD에 대해 일반화하는 것은 부적절함
    • FreeBSD는 일반적인 용도로, OpenBSD는 보안, NetBSD는 호환성이라는 고정 관념이 틀림
    • 다양한 환경에서 BSD가 실제로 잘 작동하고 있음
  • ploum
    • FreeBSD는 성능과 안정성 제공
    • OpenBSD는 코드 이해도와 보안을 제공
    • Linux는 사용하기 쉬운 데스크탑 환경 제공
  • elobdog
    • OpenBSD는 방화벽 및 네트워크 서비스에서 매우 효과적임
    • 코드가 간결하고 읽기 쉬우며 버그가 적음
    • 오픈소스 커뮤니티에서 자주 경험하는 "숙제를 하라"는 태도가 프로페셔널 환경에서 유익하게 작용함
  • cryptix
    • FreeBSD의 문서화와 소프트웨어 품질이 뛰어나서 계속 사용 중
    • 복잡한 설정 관리는 피하고 싶음
  • jitl
    • 예전에는 FreeBSD, OpenBSD, Linux를 조합해서 사용했지만 지금은 Docker와 Linux가 더 효율적
    • 특정 네트워크 장비나 어플라이언스에는 BSD가 더 적합할 수 있음
  • david_chisnall
    • OpenBSD와 FreeBSD 모두 컨테이너 지원
    • FreeBSD는 runj, ocirun 같은 도구로 컨테이너 격리 제공
    • CNI 플러그인을 통해 네트워크 관리 가능 – Podman 및 containerd와 호환 가능
  • asynts
    • DragonflyBSD에서 개발 경험이 매우 나빴음 – 빌드 시스템이 불안정하고 느림
    • 다시 BSD 시스템을 사용할 생각이 없음
  • johnklos
    • NetBSD의 빌드 시스템은 매우 간단하고 사용하기 쉬움
    • 한 줄 명령어로 커널 빌드 가능
  • posix_cowboy
    • pf(패킷 필터)가 BSD를 선택해야 하는 이유 중 하나
    • 텍스트 파일에서 허용/차단 목록을 쉽게 로드 가능
  • meerm
    • DragonflyBSD에서 좋은 경험을 했음 – 사용해 볼 기회가 있다면 추천