
cal
, su
, sudo
, , 등과 같이 Linux에서 사용되거나 사용 가능한 일반적인 시스템 명령에 대한 소스 코드를 찾고 있습니다. ls
소스 코드를 사용하여 Linux 시스템 관리에 대해 자세히 알아보고 싶습니다.dir
pwd
이러한 시스템 바이너리(Linux 커널 외부에 있지만 대부분의 GNU/Linux 변형과 함께 배포되는 코드)의 소스 코드는 어디에 있습니까?
이러한 명령의 소스 코드를 학습하고 보는 데 가장 적합한 Linux 배포판은 무엇입니까?
실제로 어떻게 작동하는지 알아보기 위해 코드를 변경할 수 있습니까?
답변1
"Linux"는 단지 커널만을 지칭한다는 점을 명심하는 것이 좋습니다. 기본 명령은 다음에서 나옵니다.GNU Coreutils패키지뿐만 아니라 다른 많은 유사한 패키지에서도 마찬가지입니다.
하지만 이런 것을 찾을 때 저는 보통 다음 사이트로 갑니다.FreeBSD SVN 저장소, 여러 GNU 패키지보다 탐색하기가 더 쉽습니다. 예를 들어, 소스는 ls
다음에서 찾을 수 있습니다.
답변2
모든 소스 Linux 배포판을 찾고 있다면 설치를 고려해야 합니다.젠투.
그렇지 않으면 좀 더 "수동" 경로로 가서 치아를 갈 수 있습니다.처음부터 리눅스, 당신이 찾고있는 것 같습니다. 사용 가능한 Linux 시스템을 처음부터 구축하기 위한 단계별 가이드입니다. 여기에는 모든 패키지가 무엇인지, 그리고 패키지를 구축하는 방법에 대한 자세한 설명이 포함되어 있습니다. 조금 어려운 일이므로 반드시 따라야 합니다.처음부터 Linux를 넘어, 이는기능의리눅스 시스템.
일반적인 애플리케이션을 살펴보는 것이 전부라면 다음을 다운로드하면 됩니다.코어틸스패키지.
답변3
일반적으로 각 유틸리티의 소스는 Google에서 검색할 수 있습니다. 데비안 기반 배포판에서는 apt-get
소스를 다운로드(데비안화)하는 데 사용할 수 있습니다. 예를 들어 apt-get source sudo
sudo용 소스를 다운로드하고 압축을 풉니다. 어떤 패키지 유틸리티가 속하는지 확인하려면 또는 설치되지 않은 패키지에서 파일을 검색하는 데 dpkg -S /usr/bin/sudo
사용할 수 있는 경우를 사용할 수 있습니다.apt-file
답변4
소스 패키지를 설치하거나 패키지 웹사이트에서 소스를 다운로드하여 패키지의 소스 코드를 얻을 수 있습니다. 관심 있는 패키지는 입니다 coreutils
. 소스 패키지를 설치하는 방법은 사용 중인 Linux 배포판에 따라 다릅니다. 하지만 패키지 웹사이트에서 소스를 다운로드하려면 다음을 방문하세요.coreutils 다운로드 FTP 사이트.
각 배포판에서는 옵션을 개선하거나 기본값을 변경하기 위해 기본 패키지를 변경했을 수 있습니다. 그러나 기본 코드는 GNU 웹사이트에서 볼 수 있는 것과 거의 동일합니다.