GoboLinux

GoboLinux
GoboLinux
GoboLinux 016 desktop
GoboLinux 데스크톱
OS 패밀리Linux (Unix라이크)
동작 상태액티브[1]
소스 모델오픈 소스
초기 릴리즈2003년; 19년 전(2003년)
최신 릴리즈017 / 2020년 5월 24일, 2년 전(2020-05-24)
이용가능기간:독일어, 영어, 헝가리어, 포르투갈어, 스페인어
플랫폼x86-64
커널 타입모노리식(Linux)
체납
사용자 인터페이스
신난다
면허증.GNU 일반 공중 라이선스
공식 웹사이트gobolinux.org

GoboLinux는 오픈 소스 운영체제로, 가장 큰 특징은 기존의 Linux 파일 시스템을 재구성한 것입니다.대부분의 Unix와 유사한 시스템처럼 파일 시스템 계층 표준을 따르는 대신, GoboLinux 시스템의 각 프로그램은 모든 파일(그 프로그램 고유의 설정 포함)을 찾을 수 있는 자체 하위 디렉토리 트리를 가집니다.따라서 프로그램 "Foo"는 모든 특정 파일과 라이브러리를 가지고 있습니다./Programs/Foo를 참조하십시오.예를 들어 일반적으로 알려진 GCC 컴파일러 스위트 버전 8.1.0은 디렉토리 아래에 있습니다./Programs/GCC/8.1.0.

GoboLinux 개발자들에 따르면 이는 보다 깨끗한 시스템을 [2]만들어낸다.

개요

GoboLinux 계층은 특정 유형의 파일이 공통 표준 하위 디렉터리에 함께 저장되는 대부분의 UNIX 유사 운영 체제에서 전통적으로 사용되는 파일 시스템에서 근본적으로 벗어난 것입니다./bin실행 파일 및/etc패키지 매니저를 사용하여 어떤 파일이 어떤 프로그램에 속하는지 추적할 수 있습니다.GoboLinux에서 각 프로그램의 파일은 각 프로그램의 전용 하위 디렉토리에 배치됩니다.GoboLinux의 제조사는 "파일 시스템은 패키지 매니저"라고 말했고, GoboLinux 패키지 시스템은 파일 시스템 자체를 [3]패키지 데이터베이스로 사용합니다.이것에 의해, 보다 간단하고, 덜 번잡한 디렉토리 트리가 작성된다고 알려져 있습니다.GoboLinux는 심볼링크GoboHide라는 옵션 커널 모듈을 사용하여 기존의 Linux 파일 시스템 계층과 완전한 호환성을 유지하면서 이 모든 것을 실현합니다.

GoboLinux의 제작자들은 그들의 디자인이 유사한 전통적인 디렉토리들 간의 차이점을 없애는 것과 같은 다른 "현대식"을 가지고 있다고 말했다./bin,/usr/bin,그리고./usr/local/bin GoboLinux 설계자는 다른 Linux 디스트리뷰션보다 셸 스크립트의 파손 빈도가 낮다고 주장했습니다.2003년에 GoboLinux에 의해 도입된 이 변경은 훨씬 후에야 다른 배포판에 채택되었습니다.Fedora는 2012년에 [4]/bin과 /usr/bin을 병합했습니다.[5]Debian은 2016년에 기본적으로 /usr 병합을 활성화했습니다.

또한 GoboLinux는 사용자가 동일한 프로그램의 다른 버전을 동시에 설치할 수 있도록 합니다(또한 동시에 실행할 수도 있습니다).또한 존재하지 않는 파일에 대한 참조가 끊어진 링크가 되어 비활성화되기 때문에 패키지 관리 인덱스가 파일 시스템과 동기화되지 않을 수 있다는 주장이 제기되었습니다.GoboLinux의 파일 시스템 변경은 시스템 V 또는 BSD 스타일의 init 시스템을 사용하지 않는 완전히 새로운 부팅 시스템 등 다른 혁신도 가능하게 합니다.

파일 계층

파일 계층의 스크린샷

GoboLinux의 설계는 NextSTEP, AtherOS, BeOS와 같은 초기 시스템의 영향을 받았으며, 이 모든 시스템은 여전히 유닉스와의 상당한 호환성을 유지하면서 원래의 파일 시스템 구조를 채택했다.GoboLinux 트리의 루트에는 프로그램, 사용자, 시스템, 파일 및 마운트의 6개의 디렉토리가 있습니다.각각의 내용은 다음과 같습니다.

  • /Programs/ - 이 디렉토리에는 시스템에 설치된 각 프로그램에 대해 하나의 디렉토리가 포함되어 있습니다.각 프로그램의 디렉토리에는 1개 이상의 버전 디렉토리가 포함되어 있습니다.또한 옵션으로 [설정]및 [변수]서브 디렉토리가 포함됩니다.프로그램 아래 경로의 예는 다음과 같습니다./Programs/Bash/3.0/bin/bash그리고./Programs/Xorg-Server/Settings/X11/xorg.conf.
  • /Users/ - 이 디렉토리에는 각 사용자의 홈디렉토리가 포함됩니다.사용자 "할리"는/Users/harley홈 디렉토리로 사용합니다.
  • /System/ - 중요한 시스템 파일입니다.대부분은 시스템 애플리케이션(예:/System/Settings/passwd및 GoboLinux 스크립트(예:/System/Index).
    • /Index/ - 파일 시스템인덱스: 파일로의 심볼릭링크가 있는 디렉토리가 포함되어 있습니다./Programs다음과 같은 항목:
      • bin/ - 각 프로그램의 파일에 대한 링크가 포함되어 있습니다.bin디렉토리로 이동합니다.
      • include/ - 이 디렉토리에는 각 프로그램의 파일에 대한 링크가 포함되어 있습니다.include디렉토리로 이동합니다.
      • lib/ - 각 프로그램의 파일에 대한 링크lib디렉토리로 이동합니다.
      • 공유/ - 각 프로그램의 파일에 대한 링크share디렉토리로 이동합니다.
    • Environment / - 환경 파일에 링크합니다.이것들은 캐시 파일로 컴파일 되어 셸에 의해 로드되어 각 프로그램이 독자적인 환경변수를 등록할 수 있습니다.
    • 태스크 / - 에서 각 프로그램의 부트 태스크에 대한 링크Resources/Tasks디렉토리로 이동합니다.
    • 설정/ - 각 프로그램의 구성 파일 및 파일에 대한 링크Settings디렉토리로 이동합니다.
      • BootScripts/ - 시스템 부팅 시 사용되는 스크립트.이것은 디렉토리에 대한 심볼 링크입니다.Settings/BootScripts아래/Programs/BootScripts.
    • Variable / - 다목적 로그, 임시, 임시 및 스풀 파일.
      • tmp/ - 임시 파일.
    • 커널/ - 커널 관련 디렉토리.
      • Boot/ - 운영체제 부트스트랩 중에 사용되는 프로그램 및 구성 파일.여기에는 커널 이미지와 부트로더 컨피규레이션파일이 격납되어 있습니다.
      • 디바이스/ - 디바이스 파일(Udev에 의해 관리됨)
      • Modules/ - 커널 릴리스별로 구성된 다양한 커널 모듈을 포함합니다.
      • Objects/ - 커널 2.6 시리즈의 sysfs 파일 시스템에 도입된 커널의 디바이스 트리의 뷰를 제공합니다.
      • 상태/ - 커널 상태 파일(에 의해 관리됨)proc파일 시스템)
  • /Files/ - 파일에는 프로그램에서 사용되지만 프로그램 자체의 일부가 아닌 구조화된 데이터가 저장됩니다.이러한 파일은 보통 글꼴, 코덱 및 플러그인 등의 독립 실행형 엔티티입니다(따라서 패키지 관리가 필요하지 않습니다).또한 각 프로그램은 사이트 고유의 데이터를 저장하기 위해 자체 서브디렉토리를 정의할 수 있습니다.예를 들어 컴파일(GoboLinux 패키지 컴파일 프론트 엔드 툴)은 이를 수행합니다.
  • /Mount/ - 추가 로컬 또는 원격 파일 시스템의 마운트 지점.일반적인 서브 디렉토리는 다음과 같습니다.CD-ROM그리고.Phone.

컴파일 프로그램

컴파일은 소스 코드 tarball을 다운로드, 언팩, 컴파일 및 결과 실행 가능 코드를 모두 하나의 명령어로 설치하는 프로그램입니다.Compile foo)는 "displicate"[6]로 알려진 단순한 컴파일 스크립트를 사용합니다.

컴파일 시스템은 FreeBSD Ports 컬렉션을 기반으로 하는 Gentoo의 Portage [7]시스템과 다소 유사합니다.그러나 Portage는 Filesystem Hierarchy Standard와 호환되는 기존 파일 시스템 계층을 위해 만들어진 반면 Compile은 GoboLinux의 고유한 파일 시스템 계층의 기능을 패키지 관리 영역으로 확장합니다.따라서 GoboLinux에서는 파일 시스템 자체가 일종의 패키지 매니저 [8]데이터베이스로서 자연스럽게 기능합니다.

컴파일 프로그램은 GoboLinux 버전 011에서 도입되었습니다.그 이전에는 Gentoo의 Portage 시스템을 GoboLinux로 이식하고 GoboPortage라는 [9][10]이름으로 SourceForge.net 프로젝트로 개발하는 것에 대한 논의가 있었습니다.

컴파일의 기타 기능은 다음과 같습니다.

각 프로그램 고유의 다운로드 사이트 사용
배포 저장소(또는 해당 미러 중 하나)는 레시피 다운로드에만 사용됩니다.레시피는 즉시 또는 일괄 다운로드 할 수 있습니다.
최소적이고 선언적인 컴파일 스크립트
일반적인 「구성, 제조, 인스톨」소프트웨어는, 2 행으로 스크립트가 작성되기 때문에, 유지보수가 큰폭으로 용이하게 됩니다.
GoboLinux 스타일의 의존관계 지원
유저가 「수작업」으로 컴파일 한 소프트웨어는, 검출 메카니즘에 의해서 고려된다.
패스 아그노스틱스
또한 루트리스 GoboLinux 설치(즉,[11] 다른 배포판의 홈 디렉터리 내부)에서도 작동합니다.

기존 분포와의 차이점

파일 계층

GoboLinux 계층에서 파일은 다음 위치에 있는 심볼릭 링크를 사용하여 인덱스와 같은 구조에서 기능 카테고리로 그룹화됩니다./System/Index: 모든 실행 파일에 액세스할 수 있습니다./System/Index/bin, 모든 라이브러리에 액세스 할 수 있습니다./System/Index/lib기타 등등.이것에 의해, 파일 시스템 계층 표준의 많은 종래의 구별이 없어집니다.예를 들어, 파일 시스템 계층 규격에 격납되어 있는 비필수 파일의 구별 등입니다./usr루트 디렉토리의 서브디렉토리에 직접 보존되어 있는 긴급용 파일.GoboLinux 개발자들은 이러한 차이점들이 한때 매우 유용했지만 GoboLinux의 스키마에서는 더 이상 필요하지 않다고 주장해왔다.

심볼링크

GoboLinux 트리에 대한 대부분의 일반적인 Unix 디렉토리와 관련된 심볼 링크가 있습니다.따라서 다음과 같은 디렉토리를 찾을 수 있습니다./etc,/var/log,그리고./usr/bin기대했던 장소에서이러한 심볼릭 링크는 의 기능적 등가물을 나타냅니다./System/Index따라서 전통적으로 중요한 경로 이름(예:/bin/sh그리고./etc/passwd)는 올바르게 해결되었습니다.이러한 호환성 디렉토리는 GoboHide라고 하는 커스텀 커널 수정에 의해 표시되지 않게 됩니다.이 수정은 Linux에서 숨겨진 파일에 대한 지원을 실장하기 위한 것입니다.따라서 미관상의 이유로만 사용되므로 옵션 기능입니다.

부트 시스템

BSD 또는 System V 프로시저를 사용하는 대부분의 Linux 디스트리뷰션과는 달리 GoboLinux는 자체 초기화 프로시저를 사용합니다./System/Settings/BootScripts는 부트 순서 전체를 명령하는 몇 가지 파일입니다.BootUp그리고.Shutdown시스템 부팅 시 및 셧다운 시 각각 실행됩니다.또, 「런 레벨」스크립트를 정의해, 시스템을 초기화하는 다양한 방법을 지정할 수도 있습니다(예를 들면, 다음과 같습니다).Single싱글 유저의 경우,Multi멀티 유저의 경우,Graphical그래픽 모드로 기동하는 등), 부트 로더 메뉴에서 제어할 수 있습니다./System/Settings/BootOptionsfile은 사이트 고유의 설정을 나머지 스크립트에서 분리합니다.응용 프로그램별 태스크는 다음 사이트에서 확인할 수 있습니다./System/Tasks부트 스크립트로 호출할 수 있습니다.

릴리스

릴리즈에는 옥탈베이스 시스템을 사용하여 번호가 매겨져 있습니다.저자에 따르면, 이 스킴이 선택된 이유는 많은 자유 소프트웨어 버전 번호에 존재하는 전형적인 선행 0을 유지하기 때문입니다(선행 0은 번호가 8진수임을 나타내는 경우가 많기 때문입니다).또한 1999년경 Linux 디스트리뷰션 간에 발생한 "버전 번호 경쟁"에 대한 놀이이기도 합니다.10 진수로 읽혀질 경우, 8 진수를 사용하면, 8 개의 릴리스 마다 결정론적 「버전 범프」가 발생합니다.버전 013까지 GoboLinux는 일부 릴리스가 다른 릴리스보다 안정적이라는 의미를 피하기 위해 "포인트 릴리스"를 만들지 않았습니다.이 전통은 버그 수정에 초점을 맞춘 014 업데이트 버전 014.01에서 깨졌습니다.

  • 017 - 2020년 5월 24일
  • 016 - 2016년 12월 15일: 컨테이너가 필요 없는 파일 시스템 가상화를 위한 새로운 도구인 Runner를 소개합니다.Linux 커널 버전 4.8.2, Awesome WM 데스크톱.
  • 015 - 2014년 5월 7일 : /System/Index 계층을 도입합니다.Linux 커널 버전 3.14.2, Illlustment 18 데스크톱.
  • 015-beta - 2014년 3월 4일
  • 015-alpha - 2014년 1월 21일
  • 014.01[12] - 2008년 3월 30일 : 014 업데이트.버그 수정과 패키지 업데이트가 포함되어 있습니다.
  • 014 - 2007년 12월 31일: 패키지 업데이트, 버그 수정 및 GoboLinux 관리 도구의 새로운 버전을 제공합니다.
  • 013 - 2006년 11월 2일 :파일 시스템이벤트를 리슨하여 자동으로 실행할 액션을 할당하기 위한 도구인 Listener를 소개합니다.
  • 012 - 2005년 6월 6일 :그래픽 시스템 관리 도구인 Manager를 소개합니다.
  • 011 - 2004년 6월 7일 : GoboLinux 패키지 컴파일 툴인 컴파일 소개.
  • 010 - 2004년1월 7일: 라이브 CD 데스크톱 환경을 통해 액세스할 수 있는 그래픽 설치 프로그램을 추가합니다.
  • 007 - 2003년 10월 22일 :패키지 단위의 메타데이터 디렉토리를 추가합니다.Resources.
  • 006 - 2003년 5월 9일 : GoboHide를 도입하여 샌드박스화된 프로그램 설치를 채택합니다.
  • 005 - 2002년 10월 11일 : GoboLinux를 전 세계에 소개.
  • 버전 005 이전의 릴리스는 초기 개발자 그룹에서만 사용되었습니다.

포트

GoboLinux는 현재 x86-64용으로 개발되어 있습니다.공식적으로는 릴리스 015까지 i686용으로 제작되었지만, 한때 i386에 대한 불완전한 포트가 제작되었습니다.포트는 ARM이나 SuperH 의 임베디드 아키텍처에도 사용되고 있습니다.이러한 작업은 포트 작성을 자동화하기 위해 특별히 개발된 툴인 부트스트랩을 사용하여 [13]달성되었습니다.

접수처

LWN.net는 2004년[14]GoboLinux 010을 리뷰했습니다.

GoboLinux 프로젝트에서는, 디렉토리와 파일을 새로운 구조로 재편성하는 것으로 나타났습니다.이 모든 것은 개발자들 중 한 명이 슈퍼 유저 권한은 없지만 프로그램을 컴파일해야 하는 시스템에서 작업하면서 시작되었습니다.업그레이드 시 문제를 피하기 위해 개별 프로그램을 자체 디렉토리에 배치하고 관련 프로그램 이름(예: ~/Programs/AfterStep)에 따라 이름을 지정했습니다.프로그램의 다른 부분은 ~/Libraries, ~/Headers 등 유사하게 식별된 디렉토리에 있습니다.이러한 프로그램의 자동 컴파일 및 개별 컴포넌트의 올바른 배치를 위한 커스텀 스크립트도 개발되었습니다.

Linux.com는 GoboLinux [15]013에 대한 리뷰를 작성했습니다.

말할 필요도 없이 이러한 계층은 패키지 관리에 도움이 됩니다.사용자는 동일한 프로그램 또는 시스템 라이브러리의 여러 버전을 설치하여 사용할 수 있습니다.실제로 GCC(GoboLinux)가 GNU 컴파일러 컬렉션(GCC) 버전 3으로 전환되었을 때 파일 시스템이 여러 라이브러리를 안전하게 함께 사용할 수 있도록 허용했기 때문에 이전 프로그램들은 여전히 실행 상태로 유지되었습니다.또, 언인스톨은 프로그램디렉토리를 삭제하는 것만으로 끝납니다.

DistroWatch Weekly의 Jesse Smith는 GoboLinux [16]015를 리뷰했습니다.

GoboLinux 미디어에서 부팅하면 텍스트 기반 메뉴가 있는 화면이 나타납니다.이러한 메뉴를 사용하여 목록에서 원하는 언어를 선택하고 키보드의 레이아웃을 선택합니다.그런 다음 텍스트 콘솔이 나타나며 여기서 사용자 "gobo"로 로그인합니다.화면의 지시에 따라 그래픽 사용자 인터페이스를 시작하는 방법과 시스템 설치 프로그램을 시작하는 방법이 나와 있습니다.그래픽 환경은 Illlustment 창 관리자임이 판명되었습니다.바탕 화면에는 GParted 파티션 관리자와 시스템 설치 관리자를 실행하기 위한 아이콘이 있습니다.화면 하단에는 응용 프로그램 메뉴, 작업 전환기 및 시스템 트레이가 있습니다.

Smith는 GoboLinux 016도 [17]검토했다.

Gobo는 가상의 인물이다.그를 본 사람들은 그에 대한 정보를 전하기 위해 살아남지 못했기 때문에 그에 대해 알려진 것은 많지 않다.그에게는 또한 피보라는 가상의 충성스런 하인이 있다.GoboLinux의 마스코트 Que는 피보의 [18]을 입고 있는 펭귄이다.

레퍼런스

  1. ^ Distrowatch (2020-03-27). "Project status listed as Active as of Friday 27 March 2020 02:30 UTC". Retrieved 2020-03-27.
  2. ^ Hisham Muhammad (May 9, 2003). "The Unix tree rethought: an introduction to GoboLinux". Retrieved 2008-03-17.
  3. ^ Marc Weinem (2008-03-13). "Simplified package management on GoboLinux - an interview with Lucas Villa Real". Retrieved 2008-03-31.
  4. ^ Fedora Project (2012-03-29). "/Usr Move". Retrieved 2016-12-30.
  5. ^ Debian (2016-10-21). "debootstrap 1.0.85 changelog". Retrieved 2016-12-30.
  6. ^ Mayank Sharma (2007-02-14). "GoboLinux's recipe for delicious package management". Linux.com. Archived from the original on 2008-09-17. Retrieved 2009-07-19.
  7. ^ "GoboLinux Compile -- A Scalable Portage ?". Slashdot. 2004-06-05. Retrieved 2009-07-19.
  8. ^ "The Ideas Behind Compile". GoboLinux. Archived from the original on 2010-06-13. Retrieved 2009-07-19.
  9. ^ Gentoo 포럼 : 토픽 표시 - GoboGentoo
  10. ^ SourceForge.net: Gobo Portage
  11. ^ Mayank Sharma (2007-08-21). "GoboLinux: An Interview with Lucas Villa Real". Retrieved 2008-03-31.
  12. ^ Thom Holwerda (April 4, 2008). "GoboLinux 014.01 Released". Retrieved 2008-04-04.
  13. ^ GoboLinux 임베디드
  14. ^ GoboLinux - 파일 시스템 계층의 재미 [LWN.net]
  15. ^ GoboLinux의 맛있는 패키지 관리 레시피 Linux.com Linux 정보의 출처
  16. ^ DistroWatch Weekly, 562호, 2014년 6월 9일
  17. ^ DistroWatch Weekly, 제696호, 2017년 1월 23일
  18. ^ "The GoboLinux FAQ". the official GoboLinux website. Retrieved 20 June 2021. Apart from Fibo, his loyal servant, no one who saw him survived to tell the story. Beyond that, we never risked digging any deeper into the subject." No, the mascot is called Que. He's a penguin wearing Fibo's clothes.

외부 링크