Linux 커널을 수정하는 것이 가능합니다. 검색을 시도했지만 소스 코드에서 이에 대한 내용을 찾을 수 없습니다.
이 줄을 수정하고 싶어요GNU/리눅스 다른 이름을 가진 커널이 있다는 것을 알았습니다/GNU/허드, GNU/킨도스, GNU/FreeBSD
커널 소스코드에서 변경이 가능한지 알고 싶습니다. GNU/커스텀오GNU/내 이름
답변1
커널 소스 GNU/CUSTOM o GNU/myNAME을 변경할 수 있는지 알고 싶습니다.
당신은 상황을 뒤섞었습니다.
리눅스 커널은 "리눅스(Linux)"라고 불린다. "GNU/리눅스"가 아닙니다. GNU coreutils 명령줄 도구만 uname
사용하거나 운영 체제 설명을 요청할 때 이 정보를 인쇄합니다.uname -o
-a
이는 GNU 프로그램이기 때문에 수행되며, gnulib 자체는 이것이 모든 Linux 호스트 운영 체제에서 인쇄하는 것이 올바른 것이라고 결정합니다.
그러니 교체하셔도 별 문제는 없습니다. 그냥 바꾸세요gnulib 구성 스크립트다른 값을 하드코딩합니다. 이로 인해 uname
프로그램이 시스템을 다르게 호출 하게 됩니다 . (다른 건 신경 쓰지 마세요.)
따라서 귀하의 커널은아니요"GNU/리눅스"라고 합니다. 이것이 "리눅스"이다.
필요할 때 Linux 커널 자체가 호출하는 것을 바꿀 수도 있습니다( uname
동일한 이름의 명령줄 도구와 달리 시스템 호출을 사용하여). uname
그러나 이는 비용이 많이 듭니다. 프로그램은 이름을 사용하여 Linux, FreeBSD, Windows 또는 MS-DOS 3.2에서 실행되는지 여부를 결정합니다. 이를 변경하면 많은 작업이 중지될 수 있고 구성 스크립트가 더 이상 의미가 없기 때문에 소프트웨어 구축이 실패할 수 있습니다.
추가적으로 GPL이기 때문에 바이너리 커널을 보내는 모든 사람이 커널의 전체 소스 코드를 사용할 수 있도록 해야 합니다. 따라서 수정된 Linux 커널의 이름을 "JonathannOS"로 지정하면 생활이 훨씬 더 어려워지고, 사용하기 불편하기 때문에 다른 사람들은 변경 사항을 되돌릴 것입니다.
그런데 모든 Linux 시스템을 "GNU/Linux" 시스템이라고 부르는 것은 거짓말입니다.
2022년에는 GNU 사용자 공간으로 Linux 커널을 실행하는 장치보다 GNU 소프트웨어 없이 Linux 커널을 실행하는 장치가 더 많아질 수 있습니다. 참조: 30억 개 이상의 Android 휴대폰, busybox/musl/newlib/bsdlib 기반 소비자 라우터, 수많은 TV, 스마트 카메라, 셀룰러 모뎀, 법적으로 GPL 소프트웨어를 사용할 수 없는 거의 모든 새 자동차 인포테인먼트 시스템... ...이 중 어느 것도 GNU 코드를 포함하지 않습니다. 컴파일러도 GNU일 필요는 없습니다. 어느 쪽이든, 명령은 "GNU/Linux" 시스템을 사용하고 있다고 주장합니다. 하지만 공평하게 말하자면, 해당 uname
명령을 사용한다면 아마도 그 중 하나가 아닐 것입니다.