자유 소프트웨어(free software)는 사용자가 해당 소프트웨어를 실행, 복제, 배포, 연구, 수정, 재배포할 자유를 보장받는 소프트웨어를 의미한다. 이러한 자유는 원 프로그램의 원시 코드에 대한 접근성을 전제로 하며, 일반적으로 다음 네 가지 기본 자유로 정리된다.
-
자유 0 – 실행의 자유
어떤 목적이든 소프트웨어를 실행할 수 있는 권리. -
자유 1 – 복제와 배포의 자유
원본을 복제하고, 필요에 따라 다른 사람에게 자유롭게 배포할 수 있는 권리. -
자유 2 – 연구와 수정의 자유
프로그램이 어떻게 작동하는지 연구하고, 자신의 필요에 맞게 수정할 수 있는 권리. 이를 위해서는 원시 코드를 입수할 수 있어야 한다. -
자유 3 – 개선판의 재배포 자유
수정한 버전을 포함해 개선된 소프트웨어를 다시 배포할 수 있는 권리.
이러한 자유는 Free Software Foundation(FSF) 이 정의한 “자유 소프트웨어 정의”(Free Software Definition)에 근거한다. FSF는 자유 소프트웨어를 “사용자에게 위 네 가지 자유를 제공하는 소프트웨어”라고 명시하고 있다. 또한, 오픈 소스(Open Source) 운동은 비슷한 원칙을 바탕으로 “오픈 소스 정의”(Open Source Definition)를 제시하지만, 강조점이 약간 다르다(예: 개발자와 기업의 실용적 이점 강조).
어원
‘자유 소프트웨어’라는 용어는 영문 “free software”를 직역한 것으로, 여기서 ‘free’는 “가격이 무료”가 아니라 “자유가 보장된” 의미를 갖는다. 한국어에서는 ‘자유 소프트웨어’와 ‘프리 소프트웨어’가 혼용되며, 양쪽 모두 동일한 개념을 지칭한다.
주요 사용 맥락
- 운영 체제(예: 리눅스), 사무용 프로그램(예: LibreOffice), 개발 도구(예: GCC) 등 다양한 분야에서 자유 소프트웨어가 활용된다.
- 교육·연구 기관에서 비용 부담을 낮추고 소스 코드 접근성을 확보하기 위해 채택한다.
- 기업에서는 커뮤니티 기반 개발과 투명성을 통해 보안·품질을 향상시키는 목적으로 사용한다.
법적·기술적 전제
자유 소프트웨어는 일반적으로 GPL, MIT, Apache 등과 같은 자유·오픈 소스 라이선스에 따라 배포된다. 라이선스는 각 자유를 보장하면서도 저작권자의 권리를 명시적으로 유지한다. 따라서 사용자는 라이선스 조건을 준수해야 하며, 조건 위반 시 법적 책임이 발생할 수 있다.