Debian GNU/Linux FAQ --------------------------------------------------------------------- 버전 12.1 --------------------------------------------------------------------- 저작권 © 1996-2024 Software in the Public Interest     저작권 고지와 이 허가 고지가 모든 사본에 보존되면 이 문서 그대로 사본을 만들고 배포할 수 있는 권한이 부여됩니다. 본 문서의 수정된 버전을 본 문서와 동일한 허가 고지 조건에 따라 배     포하면, 본 문서의 파생 저작물을 본 문서와 동일한 허가 고지 조건에 따라 복사 및 배포할 수 있습니다. 이 허가 고지가 영어 원문 아닌 자유 소프트웨어 재단이 승인한 번역     본에 포함될 수 있다는 점을 제외하면, 수정 버전에 대한 위 조건에 따라 이 문서의 번역본을 다른 언어로 복사하여 배포할 수 있는 권한 이 부여됩니다. 2024년 10월 초록 이 문서는 Debian GNU/Linux 관련 자주 묻는 질문에 답합니다. --------------------------------------------------------------------- 차례 1. 정의 및 개관 1.1. 이 FAQ는 무엇인가요? 1.2. Debian GNU/Linux는 무엇인가요? 1.3. 좋아요. 이제 데비안이 무엇인지 알겠어요... 리눅스는 무엇인가 요?! 1.4. 데비안은 GNU/리눅스만 하나요? 1.5. Debian GNU/Linux와 다른 리눅스 배포판의 차이점은 무엇인가요? 다른 배포판 중에 왜 데비안을 선택해야 하나요? 1.6. 데비안 프로젝트는 자유 소프트웨어 재단의 GNU 프로젝트에 어떻 게 들어맞거나 비교되나요? 1.7. Debian은 어떻게 발음하며 이 단어 뜻은 무엇인가요? 2. Debian GNU/Linux 얻기 및 설치 2.1. 데비안 최근 버전은 무엇인가요? 2.2. 패키지 업그레이드가 "stable" 안에 있나요? 2.3. 데비안 설치 이미지를 어디서 어떻게 얻나요? 2.4. 데비안을 CD-ROM에서 어떻게 설치하나요? 2.5. 공식 안정 릴리스된 CD-ROM에 왜 "frozen" 및 "unstable"의 symlink가 들어있나요? 난 이 CD에는 "stable"만 들어있다고 생각했어 요! 2.6. 원격 인터넷 사이트로부터 직접 데비안을 얻고 설치할 수 있나 요? 2.7. 시스템 설치 프로그램을 부팅하기 위한 다른 전략이 있나요? 3. 데비안 배포판 선택 3.1. 어느 데비안 배포판(stable/testing/unstable)이 나에게 좋은가 요? 3.1.1. 요청은 stable 설치 하라고 하지만, stable에서 하드웨어 가 감지/동작하지 않습니다. 어떻게 하나요? 3.1.2. 다른 배포판에 다른 버전 패키지가 있나요? 3.1.3. stable 배포판에는 실제로 오래된 패키지가 들어 있습니 다. Kde, Gnome, Xorg 또는 커널을 살펴보십시오. 아주 오래되었 습니다. 왜 그런가요? 3.1.4. 다른 배포판으로 바꾸기로 결정했다면, 내가 할 수 있나 요? 3.1.5. 나에게 stable, testing 또는 unstable 중에 무엇을 설치 할 지 말해주시겠어요? 3.1.6. testing이 깨지는 것에 대해 말합니다. 저건 무슨 뜻이죠? 3.1.7. 왜 testing이 몇 달 동안 깨질 수 있나요? unstable 흐름 에 도입된 수정 사항이 testing에 직접 적용되지 않나요? 3.1.8. 관리자 관점에서 더 주의가 필요한 배포는 무엇인가요? 3.1.9. 새 릴리스를 만들면 어떻게 되나요? 3.1.10. 데비안을 설치한 동작하는 데스크톱/클러스터가 있습니 다. 실행 중인 배포판을 어떻게 아나요? 3.1.11. 현재 stable을 사용 중입니다. testing 또는 unstable로 바꿀 수 있나요? 그렇다면 어떻게? 3.1.12. 현재 testing (forky)을 추적하고 있습니다. 릴리스되면 어떻게 됩니까? testing을 계속 추적할 예정인가요, 아니면 내 컴 퓨터에서 새로운 stable 배포판을 실행하나요? 3.1.13. 아직 헷갈립니다. 무엇을 설치해야 한다고 했나요? 3.2. 그러나 Kali, Knoppix, 리눅스 민트, 우분투 등은 무엇인가요? 3.2.1. Kali/Knoppix/Linux Mint/Ubuntu/... 등이 데비안 기반이 라는 것을 알고 있습니다. 하드디스크에 설치한 후, 거기에서 'apt' 패키지 도구를 사용할 수 있나요? 3.2.2. Kali/Knoppix/Linux Mint/Ubuntu/... 등을 하드디스크에 설치했습니다. 그런데 문제가 발생했습니다. 어떻게 해야 하나요? 3.2.3. 나는 Kali/Knoppix/Linux Mint/Ubuntu/... 등을 쓰고 있고 지금 데비안 쓰고 싶어요. 어떻게 옮기죠? 4. 호환성 이슈 4.1. 무슨 하드웨어 아키텍처/시스템에서 Debian GNU/Linux 가 돌아가 나요? 4.2. 무슨 커널이 Debian GNU/Linux에서 돌아가나요? 4.3. 데비안은 리눅스 다른 배포판과 어떻게 호환가능한가요? 4.4. 데비안과 다른 유닉스 시스템은 어떻게 소스 코드 호환이 되나 요? 4.5. 레드햇/슬랙웨어/... 리눅스 시스템에서 데비안 패키지(.deb" 파 일)를 사용할 수 있나요? 내 Debian GNU/Linux 시스템에서 레드햇 패 키지(.".rpm" 파일)를 사용할 수 있나요? 4.6. 데비안 아닌 프로그램을 어떻게 설치하나요? 5. 데비안 시스템에서 가능한 소프트웨어 5.1. 무슨 형식 응용프로그램과 개발 소프트웨어가 Debian GNU/Linux 에서 가능한가요? 5.2. 누가 저 모든 소프트웨어를 만들었나요? 5.3. 데비안용으로 패키징된 프로그램 현재 목록을 어떻게 얻나요? 5.4. 개발자 환경을 패키지 빌드에 어떻게 설치하나요? 5.5. Debian GNU/Linux에서 빠진 것은 무엇인가요? 5.6. 프로그램을 컴파일 할 때 "ld: cannot find -lfoo"가 왜 나오나 요? 왜 libfoo.so 파일이 데비안 라이브러리 패키지 안에 없나요? 5.7. (어떻게) 데비안이 Java를 지원하나요? 5.8. 어떻게 내가 사용하는 시스템이 데비안인지, 몇 버전인지 아나 요? 5.9. 데비안은 영어 아닌 언어를 어떻게 지원하나요? 5.10. non-free firmware 필요한 장치를 갖고 있어요. 내가 무엇을 해 야죠? 5.11. 무선 네트워크 카드 있는데 리눅스에서 안 되네요. 무엇을 하나 요? 6. 데비안 아카이브 6.1. 데비안 배포판은 얼마나 많나요? 6.2. Etch, Lenny 같은 이름은 무엇인가요? 6.2.1. 과거에는 어떤 코드명을 썼나요? 6.2.2. 코드명은 어디서 왔나요? 6.3. "sid"는 무엇인가요? 6.4. 무엇이 stable 디렉터리에 들어가나요? 6.5. 무엇이 testing 배포판에 들어가나요? 6.5.1. 무엇이 "testing"인가요? 어떻게 "frozen" 되나요? 6.6. 무엇이 unstable 배포판에 들어가나요? 6.7. 데비안 아카이브에 있는 그 모든 디렉터리는 무엇인가요? 6.8. dists/stable/main 안의 디렉터리는 모두 무엇인가요? 6.9. 소스 코드는 어디 있나요? 6.10. pool 디렉터리 안에는 무엇이 있나요? 6.11. "incoming"은 무엇인가요? 6.12. 어디서 이전 릴리스의 옛 패키지를 찾을 수 있나요? 6.13. 내 적절한 저장소를 어떻게 설정하나요? 7. 데비안 패키지 관리 시스템 기초 7.1. 데비안 패키지는 무엇인가요? 7.2. 데비안 바이너리 패키지 형식은 무엇인가요? 7.3. 데비안 패키지 파일 이름은 왜 그리 긴가요? 7.4. 데비안 control 파일은 무엇인가요? 7.5. 데비안 conffile은 무엇인가요? 7.6. 데비안 preinst, postinst, prerm, 그리고 postrm script 는 무 엇인가요? 7.7. Essential, Required, Important, Standard, Optional, Extra 패 키지는 무엇인가요? 7.8. 가상 패키지는 무엇인가요? 7.9. 패키지 Depend, Recommend, Suggest, Conflict, Replace, Break 또는 Provide 뜻은 무엇인가요? 7.10. Pre-Depend는 무슨 뜻인가요? 7.11. 패키지 상태에서 unknown, install, remove, purge 및 hold는 무슨 뜻인가요? 7.12. 패키지를 보류(hold)하려면 어떻게 하나요? 7.13. 어떻게 소스 패키지를 설치하나요? 7.14. 어떻게 바이너리 패키지를 소스 패키지에서 만드나요? 7.15. 데비안 패키지를 내 스스로 만들려면 어떻게 하나요? 8. 데비안 패키지 관리 도구 8.1. 데비안은 패키지를 다루는 무슨 프로그램을 제공하나요? 8.1.1. dpkg 8.1.2. APT 8.1.3. aptitude 8.1.4. synaptic 8.1.5. tasksel 8.1.6. 다른 패키지 관리 도구 8.2. 데비안은 실행 중인 프로그램을 업데이트할 수 있다고 주장합니 다. 이것이 어떻게 이루어지나요? 8.3. 데비안 시스템에 이미 설치된 패키지가 무엇인지 어떻게 아나요? 8.4. 설치된 패키지의 파일 목록을 표시하려면 어떻게 하나요? 8.5. 특정 파일이 무슨 패키지에 의해 생성되었는지 확인하려면 어떻 게 하나요? 8.6. 나는 "foo"를 설치 제거했는데 왜 "foo-data"는 안 없어지나요? 안 쓰는 오래된 라이브러리 패키지를 purge 하려면 어떻게 하나요? 9. 데비안 시스템 최신으로 유지하기 9.1. 어떻게 내 데비안 시스템을 현재로 유지하나요? 9.1.1. aptitude 9.1.2. apt-get 및 apt-cdrom 9.2. 패키지를 업그레이드하려면 꼭 단일 사용자 모드로 가야 하나요? 9.3. 디스크에 .deb 보관 파일을 모두 보관해야 하나요? 9.4. 시스템에 추가한 패키지의 로그를 보관하려면 어떻게 해야 하나 요? 업그레이드 및 제거가 언제 발생했는지, 어떤 패키지에 발생했는 지 알고 싶습니다! 9.5. 자동으로 시스템을 업데이트 할 수 있나요? 9.6. 컴퓨터 여러 대 있습니다. 한 번에 업데이트를 다운로드하려면 어떻게 하나요? 10. 데비안 및 커널 10.1. 데비안에 특정한 조정 없이 커널을 설치하고 컴파일할 수 있나 요? 10.2. 커스텀 커널을 빌드하려고 데비안이 제공하는 도구는 무엇인가 요? 10.3. 모듈을 다루려고 제공하는 특별한 규정은 무엇인가요? 10.4. 오래된 커널 패키지를 안전하게 제거할 수 있는지, 그렇다면 어 떻게 합니까? 10.5. 데비안 용 리눅스 패키지에 대한 더 많은 정보를 어디서 얻을 수 있나요? 11. Debian GNU/Linux 시스템 커스터마이징 11.1. 모든 프로그램이 같은 종이 크기를 쓰는지 어떻게 보장하나요? 11.2. 보안을 깨지 않고 하드웨어 주변 장치에 대한 액세스를 제공하 려면 어떻게 하나요? 11.3. 데비안 시작할 때 콘솔 글꼴을 어떻게 로드하나요? 11.4. X11 프로그램의 응용프로그램 기본값은 어떻게 설정하나요? 11.5. 데비안 시스템은 어떻게 부팅하나요? 11.6. 데비안과 전통적 system V init는 어떤가요? 11.7. 데비안 시스템을 부팅하는 또 다른 방법이 있나요? 11.8. 패키지 관리 시스템은 다른 패키지에 대한 구성 파일이 들어간 패키지를 어떻게 처리하나요? 11.9. 패키지가 설치한 파일을 대신하여 다른 버전을 사용하려면 어떻 게 하나요? 11.10. 로컬 빌드 패키지를 패키지 관리 시스템이 알고 있는 사용 가 능한 패키지 목록에 넣으려면 어떻게 하나요? 11.11. 어떤 사용자는 mawk를 좋아하고, 다른 사람은 gawk를 좋아합니 다. 어떤 사람은 vim을 다른 사람은 elvis를 좋아합니다. 어떤 사람은 trn을 다른 사람은 tin을 좋아합니다. 데비안은 다양성을 어떻게 지원 하나요? 12. Debian GNU/Linux에서 지원 받기 12.1. 데비안 시스템에 다른 어떤 문서가 있나요? 12.2. 데비안 토론할 온라인 자료가 있나요? 12.2.1. 메일링 리스트 12.2.2. 웹 포럼 12.2.3. 위키 12.2.4. 메인테이너 12.2.5. 유즈넷 뉴스그룹 12.3. Debian GNU/Linux에 대한 정보를 빠르게 검색할 수 있는 방법이 있나요? 12.4. 알려진 버그 로그가 있나요? 12.5. 데비안에서 버그를 어떻게 보고하나요? 13. 데비안 프로젝트에 기여하기 13.1. 어떻게 데비안 멤버 및 데비안 개발자가 될 수 있나요? 13.2. 어떻게 데비안 프로젝트 자원에 기여하나요? 13.3. 데비안 프로젝트에 재정적으로 어떻게 기여하나요? 13.3.1. Software in the Public Interest 13.3.2. 다른 기관 14. Debian GNU/Linux 재배포 상업 제품 14.1. 데비안 CD를 만들고 팔 수 있나요? 14.2. 데비안은 독점 소프트웨어와 패키지 될 수 있나요? 14.3. 나는 "vertical market"을 위한 특별한 리눅스 배포판을 만들고 있습니다. 리눅스 시스템에 Debian GNU/Linux를 사용하고 그 위에 나 만의 프로그램을 더할 수 있나요? 14.4. 데비안 "패키지"에 내 상용 프로그램을 넣어서 데비안 시스템에 쉽게 설치할 수 있나요? 15. 데비안 다음 메인 릴리스에서 기대하는 변화 15.1. 시스템 강화하기 15.2. 영어 안 쓰는 사용자 지원 확장 15.3. 데비안 설치프로그램 개선 15.4. 더 많은 아키텍처 15.5. 더 많은 커널 16. FAQ 일반 정보 16.1. 저자 16.2. 피드백 16.3. 가용성 16.4. 문서 형식 1장. 정의 및 개관 1.1. 이 FAQ는 무엇인가요? 이 문서는 데비안 배포판(Debian GNU/Linux 등) 및 데비안 프로젝트에 대해 자주 묻는 질문(그리고 답!)을 드립니다. 적용가능하면 다른 설     명서에 대한 포인터를 드립니다: 이 설명서에서는 외부 설명서의 많은 부분을 인용하지 않습니다. 일부 답변은 유닉스 계열 운영 체제에 대 해 어느 정도 안다고 가정합니다. 우리는 가능한 한 사전 지식이 적다 고 가정합니다: 일반 초보자의 질문에 대한 대답은 간단합니다. 이 FAQ에서 원하는 내용을 찾을 수 없다면 12.1절. “데비안 시스템에     다른 어떤 문서가 있나요?”을 확인하십시오. 이마저도 도움이 안 되면 16.2절. “피드백”을 참조하십시오. 1.2. Debian GNU/Linux는 무엇인가요?     Debian GNU/Linux는 리눅스 운영 체제의 특별한 배포판이며 이 배포판 에서 실행되는 수많은 패키지입니다.     Debian GNU/Linux는: * 전체 특징: 데비안에는 현재 64961개 넘는 소프트웨어 패키지가 있습니다. 사용자는 설치할 패키지를 선택할 수 있습니다. 데비안 은 이러한 목적으로 도구를 제공합니다. 데비안에서 현재 사용 가 능한 패키지 목록과 설명은 데비안 미러 사이트 (https:// www.debian.org/mirror/list) 에서 찾을 수 있습니다. * 자유롭게 사용 및 재배포: 유통과 개발에 참여하는데 필요한 컨소 시엄 회원 자격이나 지불은 없습니다. 공식적으로 Debian GNU/     Linux의 일부인 모든 패키지는 일반적으로 GNU 일반 공중 사용 허 가서에 지정된 조건에 따라 재배포 할 수 있습니다. 데비안 아카이브에는 약 1082개 소프트웨어 패키지(non-free 및 contrib)가 있으며, 각 패키지에 포함된 특정 조건에 따라 배포할 수 있습니다. * 역동적: 약 1400 명 자원봉사자가 지속적으로 새롭고 개선된 코드 를 기여하면서, 데비안은 빠르게 진화하고 있습니다. 아카이브를 하루에 두 번 업데이트 합니다. 대부분 리눅스 사용자는 Debian GNU/Linux와 같은 특정 리눅스 배포판 을 실행합니다. 그러나, 원칙적으로 사용자는 인터넷이나 다른 곳에서 리눅스 커널을 얻어 컴파일할 수 있습니다. 그 다음 같은 방법으로 많 은 응용 프로그램의 소스 코드를 얻어 프로그램을 컴파일하고 시스템 에 설치할 수 있습니다. 복잡한 프로그램에서 이 프로세스는 시간이     많이 걸릴 뿐만 아니라 오류가 발생하기 쉽습니다. 이를 막으려고 사 용자는 리눅스 배포자 중 하나에서 운영 체제와 응용 프로그램 패키지 를 얻도록 선택하는 경우가 많습니다. 다양한 리눅스 배포자를 구별하 는 것은 설치 및 유지 관리 도구, 문서 및 기타 서비스와 사용자 시스 템에서 프로그램 패키지를 패키징, 설치 및 추적하려고 사용하는 소프 트웨어, 프로토콜 및 관행입니다. Debian GNU/Linux는 무료의 고품질의 유닉스 호환 운영 체제를 만들기 위한 자발적인 노력의 결과이며, 프로그램 제품군으로 완성됩니다. 무     료 유닉스 계열 시스템의 아이디어는 GNU 프로젝트에서 비롯되었으며, Debian GNU/Linux을 유용하게 만드는 많은 프로그램은 GNU 프로젝트에 서 개발했습니다. 데비안에게 free는 GNU 비슷한 뜻을 가집니다 (데비안 자유 소프트웨 어 지침 (https://www.debian.org/social_contract#guidelines) 참조) . 우리가 Free 소프트웨어에 대해 말할 때, 우리는 가격이 아니라 자     유를 뜻합니다. 자유 소프트웨어는 자유 소프트웨어 사본을 배포하고, 소스 코드를 받거나, 원한다면 가져올 수 있으며, 소프트웨어를 바꾸 거나, 새로운 무료 프로그램에서 사용할 수 있으며, 이러한 작업을 할 수 있습니다. 데비안 프로젝트는 1993년 이안 머독이, 처음에 자유 소프트웨어 재단     의 GNU 프로젝트의 후원 하에 만들었습니다. 오늘날, 데비안의 개발자 는 그것을 GNU 프로젝트의 직계 후손이라고 생각합니다. Debian GNU/Linux 자체는 자유 소프트웨어이지만, 부가 가치 리눅스 배포판을 구축할 수 있는 기반입니다. 신뢰할 수 있고 완전한 기능을 갖춘 기본 시스템을 제공함으로써, 데비안은 리눅스 사용자들에게 향     상된 호환성을 제공하고, 리눅스 배포 제작자가 중복되는 노력을 없애 고 배포를 특별하게 만드는 것에 집중할 수 있도록 합니다. 자세한 내 용은 14.3절. “나는 "vertical market"을 위한 특별한 리눅스 배포판 을 만들고 있습니다. 리눅스 시스템에 Debian GNU/Linux를 사용하고 그 위에 나만의 프로그램을 더할 수 있나요?” 참조하십시오. 1.3. 좋아요. 이제 데비안이 무엇인지 알겠어요... 리눅스는 무엇인가요?! 간단히 말해서 리눅스는 유닉스 계열 운영 체제의 커널입니다. 이 제     품은 원래 386(이상) PC용으로 설계했습니다. 오늘날 리눅스는 수십 개의 다른 시스템에서도 돌아갑니다. 리눅스는 리누스 토발즈와 전세 계 많은 컴퓨터 과학자가 만들었습니다.     커널 외에 "리눅스" 시스템이 대개 갖고 있 는 것: * 리눅스 파일 시스템 계층 구조 표준 https://www.pathname.com/ fhs (https://www.pathname.com/fhs) 을 따르는 파일 시스템.     * 많은 유닉스 유틸리티, GNU 프로젝트와 자유 소프트웨어 재단이 개발. 리눅스 커널, 파일 시스템, GNU 및 FSF 유틸리티 및 기타 유틸리티의     조합을 POSIX (IEEE 1003.1) 표준을 준수하도록 설계했습니다. 4.4절. “데비안과 다른 유닉스 시스템은 어떻게 소스 코드 호환이 되나요?” 참조. 리눅스에 대한 자세한 내용은 리눅스 온라인 (https://www.linux.org     /) 에서 리눅스는 무엇인가 (https://www.linux.org/info/) 를 참조하 십시오. 1.4. 데비안은 GNU/리눅스만 하나요? Currently, Debian is only available for Linux, but with Debian     GNU/Hurd we are offering a non-Linux-based OS as a development, server and desktop platform, too. However, this non-linux port is not officially released yet.     Hurd는 GNU Mach 마이크로커널 위에서 실행되는 서버의 집합입니다. 그들과 함께 GNU 운영체제의 기반을 구축합니다. 일반적으로 GNU/Hurd에 대한 자세한 내용은https://www.gnu.org/     software/hurd (https://www.gnu.org/software/hurd) 를 읽고, 데비안 GNU/Hurd에 대한 자세한 내용은 https://www.debian.org/ports/hurd/ (https://www.debian.org/ports/hurd/) 를 참조하십시오. See https://www.debian.org/ports/#portlist-other (https://     www.debian.org/ports/#portlist-other) for more information about hurd-amd64 and previous non-linux ports. 1.5. Debian GNU/Linux와 다른 리눅스 배포판의 차이점은 무엇인가요? 다 른 배포판 중에 왜 데비안을 선택해야 하나요?     다음과 같은 주요 기능이 데비안을 다른 리눅스 배포판과 구 별합니다: 자유: Debian Social Contract (https://www.debian.org/ social_contract) 에 기술된 바와 같이, 데비안은 100% 자유로 남 아있습니다. 데비안은 진정한 자유 소프트웨어를 배송하는 것에 대해 매우 엄격합니다. 작업이 "자유"인지 여부를 결정하는 데 사 용되는 지침은 DFSG(Debian Free Software Guidelines) (https:// www.debian.org/social_contract#guidelines) 에 있습니다. 데비안 패키지 관리 시스템: 전체 시스템 또는 시스템의 개별 구성 요소를 다시 포맷하거나 사 용자 지정 구성 파일을 잃어버리거나(대부분의 경우) 시스템을 재 부팅하지 않고도 업그레이드할 수 있습니다. 현재 사용 가능한 대 부분의 리눅스 배포판에는 일종의 패키지 관리 시스템이 있습니 다. 데비안 패키지 관리 시스템은 독특하고 특히 강력합니다 (7 장. 데비안 패키지 관리 시스템 기초 참조). 공개 개발: 많은 다른 리눅스 배포판을 개인, 소규모, 폐쇄적인 그룹 또는 상 업적인 벤더가 개발하는 반면, 데비안은 리눅스와 다른 자유 소프 트웨어와 같은 정신으로 자유 운영 체제를 만들기 위한 공동의 명 분을 만든 개인의 모임이 개발하고 있는 주요 리눅스 배포판입니 다. More than 1000 volunteer package maintainers are working on over 64961 packages and improving Debian GNU/Linux. The Debian developers contribute to the project not by writing new applications (in most cases), but by packaging existing software according to the standards of the project, by     communicating bug reports to upstream developers, and by providing user support. Additionally, more than 400 volunteer in the project doing other tasks. Examples of these tasks include: creating documentation, contributing to the website and translating. See also the additional information on how to become a contributor in 13장. 데비안 프로젝트에 기여하기. 범용 운영 체제: 데비안은 64961개 이상의 패키지 (https://packages.debian.org/ stable/) 로 제공되며 7개 아키텍처 (https://www.debian.org/ ports/) 에서 돌아갑니다. 이것은 다른 GNU/리눅스 배포판보다 훨 씬 더 많습니다. 제공된 소프트웨어에 대한 개요는 5.1절. “무슨 형식 응용프로그램과 개발 소프트웨어가 Debian GNU/Linux에서 가 능한가요?”를 보고, 지원되는 하드웨어에 대한 설명은 4.1절. “무 슨 하드웨어 아키텍처/시스템에서 Debian GNU/Linux 가 돌아가나 요?”를 참조하십시오. 버그 추적 시스템: 데비안 개발자의 지리적 분산으로 시스템 개발을 가속화하려면 정 교한 도구와 버그와 버그 수정의 빠른 의사소통이 필요했습니다. 사용자는 WWW 아카이브나 전자메일을 통해 빠르게 접근할 수 있는 정식 스타일로 버그를 보낼 것을 권장합니다. 버그 로그 관리에 대한 이 FAQ의 추가 정보는 12.4절. “알려진 버그 로그가 있나요? ” 참조하십시오. 데비안 정책: 데비안은 우리의 품질 기준인 데비안 정책에 대한 광범위한 사양 을 가지고 있습니다. 이 문서는 우리가 데비안 패키지에 가진 품 질과 표준을 정의합니다.     이에 대한 추가 정보는, 웹 페이지에서 데비안을 선택하려는 까닭 (https://www.debian.org/intro/why_debian) 에 대해 보십시오. 1.6. 데비안 프로젝트는 자유 소프트웨어 재단의 GNU 프로젝트에 어떻게 들어맞거나 비교되나요? 데비안 시스템은 자유 소프트웨어 재단 (https://www.gnu.org/) , 특     히 리처드 스톨만 (https://www.stallman.org/) 이 옹호하는 자유 소 프트웨어의 이상을 기반으로 합니다. FSF의 강력한 시스템 개발 도구, 유틸리티 및 프로그램도 데비안 시스템의 핵심 부분입니다. 데비안 프로젝트는 FSF와는 별개의 독립체이지만, 우리는 정기적으로     소통하고 다양한 프로젝트에 대해 협력합니다. FSF는 우리가 시스템을 "Debian GNU/Linux"이라고 부를 것을 명시적으로 요청했고, 우리는 기 꺼이 그 요청에 응합니다. 1.7. Debian은 어떻게 발음하며 이 단어 뜻은 무엇인가요? 프로젝트 이름은 Deb'-ee-en으로 발음하며, Deb의 짧은 e 발음과 함께     첫 음절을 강조합니다. 이 단어는 프로젝트를 설립한 Debra와 Ian Murdock의 이름을 줄ᅟ인 것입니다. (사전에는 Ian(!)의 발음이 모호 한 것 같지만 Ian은 ee'-en을 더 좋아합니다.) 2장. Debian GNU/Linux 얻기 및 설치 설치 지침을 주는 공식 문서 데비안 GNU/리눅스 설치 안내 (https://     www.debian.org/releases/stable/installmanual) . Debian GNU/Linux 를 얻고 설치하기에 대한 추가 정보를 여기서 제공합니다. 2.1. 데비안 최근 버전은 무엇인가요?     현재 3개 버전 Debian GNU/ Linux: 릴리스 13, 일명 "stable" 배포판 또는 trixie 이것은 안정적이고 잘 테스트한 소프트웨어이며, 주요 보안 또는 사용성 수정 사항이 통합되면 바꿉니다. "testing" 배포판, 현재 forky 이것은 다음 "stable"로 릴리스될 패키지가 놓이는 곳입니다. 불 안정한 상태에서 몇 가지 테스트를 거쳤지만 아직 릴리스에 완전     히 적합하지 않을 수 있습니다. 이 배포판은 "stable"보다 더 자 주 업데이트되지만 "unstable"보다 자주는 아닙니다. "unstable" 배포판 이것은 현재 개발 중인 버전입니다. 지속적으로 업데이트됩니다. 당신은 패키지를 어느 미러 사이트에서든 "unstable" 아카이브에 서 검색할 수 있고 언제든지 시스템을 업그레이드하는 데 사용할 수 있지만, 이전처럼 시스템이 사용 가능 또는 안정적일 것으로 기대하지 않을 수 있습니다 - "unstable"이라 불리는 까닭!     더 많은 정보는 6.1절. “데비안 배포판은 얼마나 많나요?” 보십 시오. 2.2. 패키지 업그레이드가 "stable" 안에 있나요? 대개, 새 기능은 안정 릴리스에는 안 들어갑니다. 데비안 버전이 릴리 스되고 "stable" 태그가 붙으면 보안 업데이트만 받습니다. 즉, 릴리     스 이후 보안 취약점이 발견된 패키지만 업그레이드 합니다. 모든 보 안 업데이트를 security.debian.org (https://security.debian.org) 통해 제공합니다.     그러나, stable 버전에서도 패키지가 업데이트되는 몇 가지 경우가 있 습니다. 예를 들어: * 소프트웨어가 계속 정상적으로 동작하도록 보장하기 위해 긴급한 업데이트가 필요할 때. * 해당 패키지가 데이터 패키지이며, 그 데이터가 적시에 업데이트 되어야 하는 경우.     * 패키지가 사용자에게 유용하기 위해 반드시 최신 상태를 유지해야 하는 경우 (예, 안티 멀웨어 제품 같은 일부 보안 소프트웨어). * 해당 소프트웨어가 리프 패키지(leaf package)이며, 배포판 외부 의 변화로 인해 정상적으로 동작하지 않는 경우. 안정(stable) 버전에서 최신 버전의 소프트웨어를 실행하려는 사용자 들은 "백포트(backports)"를 사용할 수 있는 옵션이 있습니다. 백포트 는 주로 testing 버전(드물게는 보안 업데이트와 같은 unstable 버전) 의 패키지를 재컴파일한 것이므로, 데비안 안정 배포판에서 (가능한 경우) 새로운 라이브러리 없이도 실행될 수 있습니다. 사용자는 백포     트 저장소를 사용하도록 시스템을 설정하고 특정 소프트웨어를 다운로 드할 수 있습니다. 그러나, 사용 가능한 모든 백포트를 사용하는 것보 다, 구체적인 필요에 맞는 개별 백포트만 골라 사용하는 것을 권합니 다. 더 자세한 정보는 데비안 사용자가 사용할 수 있는 소프트웨어를 설명하는 위키 항목 (https://wiki.debian.org/DebianSoftware) 및 백 포트 관련 위키 항목 (https://wiki.debian.org/Backports) 읽어보십 시오. 보안 업데이트의 목적은 보안 취약점에 대한 수정 사항을 제공하는 것 입니다. 정상적인 포인트 릴리스 절차 없이 안정 릴리스에 추가로 바     뀐 사항을 몰래 넣는 방법이 아닙니다. 따라서 보안 문제가 있는 패키 지에 대한 수정 사항은 소프트웨어를 업그레이드하지 않습니다. 대신, 데비안 보안 팀은 배포된 소프트웨어 버전에 필요한 수정 사항을 "stable"에 백포트 할 겁니다. 보안 지원 관련된 자세한 내용은 보안 FAQ (https://www.debian.org/     security/faq) 또는 데비안 보안 매뉴얼 (https://www.debian.org/doc /manuals/securing-debian-howto/) 보십시오. 2.3. 데비안 설치 이미지를 어디서 어떻게 얻나요? Very likely, clicking the "Download" link on the main page of the Debian website (https://www.debian.org/) will get you what you     need. However, for more options, get the various installation images from the Download Debian (https://www.debian.org/distrib/) page.     CD (및 DVD) 이미지에 대한 더 많은 정보는 데비안 USB, CD, DVD 설치 미디어 (https://www.debian.org/CD) 참조. 2.4. 데비안을 CD-ROM에서 어떻게 설치하나요? CD에서 데비안을 설치하는 것은 간단합니다: CD를 부팅하도록 시스템 을 구성하고, CD를 넣고, 재부팅하십시오. 이제 시스템에서 데비안 설     치프로그램을 실행합니다. 자세한 내용은 데비안 GNU/리눅스 설치 안 내 (https://www.debian.org/releases/stable/installmanual) 를 참조 하십시오. 2.5. 공식 안정 릴리스된 CD-ROM에 왜 "frozen" 및 "unstable"의 symlink 가 들어있나요? 난 이 CD에는 "stable"만 들어있다고 생각했어요!     공식 데비안 CD 이미지에는 사실 다음과 같은 symlink가 들어갑니 니다: /dists/frozen -> trixie/     /dists/stable -> trixie/ /dists/testing -> trixie/ /dists/unstable -> trixie/     그래서 sources.list가 아래와 같은 항목을 가질 때 동작 합니다     deb cdrom:[]/ unstable main [...]     . 사실 symlink 뜻은 이미지가 "unstable" 또는 "testing" 또는 아무 것     도 아닙니다. /.disk/info 안의 CD 라벨을 읽고 데비안 버전을 찾으십 시오. 이 정보는 CD /README.txt에도 있습니다.     https://www.debian.org/releases (https://www.debian.org/releases) 읽고 무엇이 현재 "stable" 및 "testing" 릴리스인지 찾으십시오. 2.6. 원격 인터넷 사이트로부터 직접 데비안을 얻고 설치할 수 있나요?     예. 데비안 설치 시스템을 아카이브 사이트와 미러에서 다운로드할 수 있는 파일 세트에서 부팅할 수 있습니다. 작은 CD 이미지 파일을 다운로드하고, CD에서 부팅 가능한 CD를 만들     고, CD에서 기본 시스템을 설치하고 나머지는 네트워크를 통해 설치할 수 있습니다. 자세한 내용은 https://www.debian.org/CD/netinst/ (https://www.debian.org/CD/netinst/) 보십시오. 2.7. 시스템 설치 프로그램을 부팅하기 위한 다른 전략이 있나요? 예. CD 또는 DVD와 별도로 USB 메모리 스틱이나 하드 디스크로 직접 부팅하거나 TFTP 넷 부팅을 사용하여 Debian GNU/Linux를 설치할 수 있습니다. 여러 컴퓨터에 설치하려면 완전 자동 설치를 수행할 수 있     습니다. NB: 모든 방법이 모든 컴퓨터 아키텍처에서 지원하는 것은 아 닙니다. 설치 프로그램이 부팅되면 네트워크의 나머지 시스템을 다운 로드 하거나 로컬 미디어에서 설치할 수 있습니다. 자세한 내용은 데 비안 GNU/리눅스 설치 안내 (https://www.debian.org/releases/stable /installmanual) 읽으십시오. 3장. 데비안 배포판 선택 여러 다른 데비안 배포판이 있습니다. 적절한 데비안 배포판 선택은     중요한 결정입니다. 이 절은 시스템에 가장 적절한 선택을 하는데 필 요한 정보를 주고, 절차 중 생길 수 있는 질문에 답합니다. "데비안을 선택하는 까닭" 아니라 "데비안의 어느 배포판"을 다룹니다.     가능한 배포판에 대한 자세한 내용 6.1절. “데비안 배포판은 얼마나 많나요?”. 3.1. 어느 데비안 배포판(stable/testing/unstable)이 나에게 좋은가요? 대답은 약간 복잡합니다. 그것은 사실 당신이 하려는 것에 따라 다릅     니다. 한 가지 해결책은 데비안을 사용하는 친구에게 물어보는 것입니 다. 그러나, 그렇다고 해서 독립적인 결정을 내릴 수 없는 것은 아닙 니다. 사실, 이 장을 다 읽으면 결정할 수 있을 겁니다. * 보안이나 안정성이 중요하다면: stable 설치하십시오. 끝. 이것이 가장 권장하는 방법입니다. * 데스크톱 컴퓨터에 설치하는 신규 사용자인 경우 stable로 시작하 십시오. 일부 소프트웨어는 꽤 오래되었지만 작업하기에 버그가 가장 적은 환경입니다. 조금 더 자신감이 생기면 최신 unstable (또는 testing)으로 쉽게 전환할 수 있습니다.     * 운영 체제에 대한 많은 경험이 있는 데스크톱 사용자이고 때때로 이상한 버그가 발생하거나 전체 시스템이 손상되는 것을 걱정하지 않는다면 unstable 사용하십시오. 모든 최신 소프트웨어가 있으며 버그는 대개 빨리 고칩니다. * 서버, 특히 강력한 안정성 요구 사항이 있거나 인터넷에 노출된 서버를 실행 중인 경우 stable 설치하십시오. 이것이 지금까지 가 장 강력하고 안전한 선택입니다. 다음 질문은 이러한 선택에 대한 자세한 정보를 제공합니다. 이 전체     FAQ를 읽은 후에도 여전히 결정을 내릴 수 없다면 stable 배포판을 고 르시오. 3.1.1. 요청은 stable 설치 하라고 하지만, stable에서 하드웨어가 감지/ 동작하지 않습니다. 어떻게 하나요? 검색 엔진을 사용하여 웹을 검색하고 다른 사람이 안정적으로 동작하 도록 할 수 있는지 확인하십시오. 대부분의 하드웨어는 안정적으로 잘     동작해야 합니다. 그러나 최첨단 하드웨어가 있으면 stable에서 동작 하지 않을 수 있습니다. 이 경우 testing 또는 unstable로 설치/업그 레이드할 수 있습니다. 랩톱에서 https://www.linux-on-laptops.com/ (https:// www.linux-on-laptops.com/) 은 다른 사람이 리눅스에서 동작하게 할     수 있는지 확인할 수 있는 매우 좋은 웹사이트입니다. 이 웹사이트는 데비안에만 국한된 것은 아니지만, 엄청난 재료입니다. 나는 데스크톱 용 웹사이트는 모릅니다. 다른 옵션은 debian-user@lists.debian.org로 전자메일 보내서 debian-user 메일링 리스트에 요청하는 것입니다. 메시지를 구독하지 않아도 목록에 게시할 수 있습니다. 아카이브는 https:// lists.debian.org/debian-user/ (https://lists.debian.org/     debian-user/) 통해 읽을 수 있습니다 . 목록 구독에 대한 정보는 아 카이브 위치에서 찾을 수 있습니다. 질문을 irc (https:// www.debian.org/support) 아니고 메일링 리스트에 게시하는 것을 강력 추천합니다 . 메일링 리스트 메시지는 보관되므로 문제에 대한 해법이 같은 문제를 가진 다른 사람을 도울 수 있습니다. 3.1.2. 다른 배포판에 다른 버전 패키지가 있나요?     예. unstable에는 가장 최신(최근) 버전이 있습니다. 그러나 unstable 에 있는 패키지는 잘 테스트되지 않았으며 버그가 있을 수 있습니다.     반면, stable 패키지에는 이전 버전의 패키지가 들어 있습니다. 그러 나 이 패키지는 잘 테스트 되었으며 버그가 있을 가능성이 적습니다.     패키지 중 testing에 있는 것은 이 두 극단 사이에 있습니다. 3.1.3. stable 배포판에는 실제로 오래된 패키지가 들어 있습니다. Kde, Gnome, Xorg 또는 커널을 살펴보십시오. 아주 오래되었습니다. 왜 그런가 요? 글쎄, 당신이 맞을 수도 있습니다. stable 패키지의 수명은 마지막 릴 리스가 만들어진 시기에 따라 다릅니다. 릴리스 사이에는 대개 1년 이 상 있으므로 stable 패키지에 이전 버전의 패키지가 들어 있음을 알     수 있습니다. 그러나 그것은 안팎으로 테스트되었습니다. 패키지에는 알려진 심각한 버그, 보안 허점 등이 없다고 자신 있게 말할 수 있습 니다. stable 패키지는 다른 stable 패키지와 원활하게 통합됩니다. 이러한 특성은 하루 24시간, 주 7일 동작해야 하는 프로덕션 서버에 매우 중요합니다. 한편, testing 또는 unstable 패키지에 숨겨진 버그, 보안 구멍 등이     있을 수 있습니다. 게다가 testing 및 unstalbe은 기대한 대로 동작하 지 않을 수 있습니다. 보는 바와 같이, 안정성과 새로움은 스펙트럼의 양 끝입니다. 안정성     이 필요하면: stable 배포판을 설치하십시오. 최신 패키지로 작업하려 면 unstable 설치하십시오. 3.1.4. 다른 배포판으로 바꾸기로 결정했다면, 내가 할 수 있나요? 예, 하지만 단방향 프로세스입니다. stable --> testing --> unstable     가능합니다. 그러나 반대 방향은 "가능"하지 않습니다. 따라서 unstable 설치/업그레이드할 계획인지 확인하는 것이 좋습니다. 사실, 당신이 전문가이고 시간을 할애할 의향이 있고 정말로 조심하고     무엇을 하고 있는지 안다면 unstable에서 testing으로, 그리고 stable 로 갈 수 있습니다. 설치프로그램 스크립트는 그렇게 하도록 설계되지 않았습니다. 따라서 이 과정에서 구성 파일을 잃을 수 있으며... 3.1.5. 나에게 stable, testing 또는 unstable 중에 무엇을 설치할 지 말 해주시겠어요? 아뇨. 그건 주관적 이슈입니다. 소프트웨어 요구 사항, 파손 가능성에     대한 대처 의지, 시스템 관리 경험에 따라 달라지므로 완벽한 답은 없 습니다. 다음은 몇 가지 팁: * stable은 견고합니다. 깨지지 않고 완벽한 보안 지원을 제공합니 다. 그러나 최신 하드웨어를 지원하지 않을 수 있습니다. * testing에는 stable 보다 최신 소프트웨어가 있으며 unstable보다 덜 깨집니다. 하지만, 그것이 깨지면 문제를 해결하는 데 오랜 시 간이 걸릴 수 있습니다. 때로는 이것이 며칠이 될 수도 있고 때로     는 몇 달이 될 수도 있습니다. 영구적인 보안 지원을 제공하지도 않습니다. * Unstable은 최신 소프트웨어를 갖고 있으며 많이 바뀝니다. 결과 적으로, 어디서나 깨질 수 있습니다. 그러나, 고친 것은 며칠 안 에 여러 번 수정되며 항상 데비안용으로 패키지된 최신 소프트웨 어 릴리스가 있습니다. testing 및 unstable 사이에서 결정할 때 testing을 추적하는 것이 unstable 보다 좋을 때가 있을 수 있다는 점을 주의하십시오. 이 문서 의 작성자 중 한 명이 gcc3에서 gcc4로의 gcc 전환으로 인해 이러한     상황을 경험했습니다. 그는 unstable을 추적하는 컴퓨터에 labplot를 설치하려 했습니다. unstable에 설치할 수 없었는데, 왜냐면 종속성 중 일부가 gcc4 전환을 거쳤고 일부는 그렇지 않았기 때문. 그러나 testing에 있는 패키지는 testing 컴퓨터에 설치가능했는데, 왜냐면 gcc4로 전환된 패키지가 테스트로 "trickled down" 안 되었기 때문. 3.1.6. testing이 깨지는 것에 대해 말합니다. 저건 무슨 뜻이죠? 때때로, 패키지 관리 도구를 통해 패키지를 설치하지 못할 수 있습니     다. 때로는, 패키지를 전혀 사용할 수 없거나, 버그 또는 충족되지 않 은 종속성으로 인해 (일시적으로) 제거되었을 수 있습니다. 때로는, 패키지가 설치되지만 제대로 동작하지 않습니다.     이러한 일이 생기면 배포판이 깨졌다고 합니다(적어도 이 패 키지는). 3.1.7. 왜 testing이 몇 달 동안 깨질 수 있나요? unstable 흐름에 도입된 수정 사항이 testing에 직접 적용되지 않나요? unstable 배포판에 도입된 버그 수정 및 개선 사항은 일정 기간이 지 나면 테스트 단계까지 이어집니다. 이 임계값이 5일이라고 가정해 보 겠습니다. 불안정한불안정한 배포판에 도입된 버그 수정 및 개선 사항     은 일정 기간이 지나면 테스트 단계까지 이어집니다. 이 임계값이 5일 이라고 가정해 보겠습니다. unstable 패키지는 RC 버그가 보고되지 않 은 경우에만 테스트에 들어갑니다. 불안정한 패키지에 대해 RC-버그가 있으면 5일 후에 테스트에 들어가지 않습니다. 아이디어는 그렇습니다. 만약 패키지가 문제 있으면 unstable 쓰는 사 람이 발견할 거고 testing에 들어가기 전에 고칠 거다. 이것이     testing을 쓸 수 있는 상태로 대부분 시간 동안 유지한다. 전반적으로 좋은 개념, 만약 나에게 물어본다면. 그러나, 모든 게 늘 간단하지는 않습니다. 고려할 상황: * 패키지 XYZ에 관심있다고 합시다. * 6월 10일에 testing 버전이 XYZ-3.6이고 unstable 버전이 XYZ-3.7 이라고 가정해 보겠습니다. * 5일 후, XYZ-3.7이 unstable 마이그레이션이 testing으로 들어갑 니다. * 그래서, 6월 15일에 testing 및 unstable 모두 저장소에 XYZ-3.7 이 있습니다. * 예를들어, testing 배포 사용자가 새 XYZ 패키지를 사용할 수 있 음을 확인하고 XYZ-3.6을 XYZ-3.7로 업데이트한다고 가정합니다. * 이제 6월 25일에 testing 또는 unstable 사용자가 XYZ-3.7에서 RC 버그를 발견하고 BTS에 신고합니다. * XYZ의 메인테이너가 이 버그를 수정하여 6월 30일에 unstable에 업로드했다고 합시다. 여기서는 메인테이너가 버그를 수정하고 새 버전을 업로드하는 데 5일이 걸린다고 가정합니다. 숫자 5를 문자     그대로 받아들이면 안 됩니다. 당면한 RC 버그의 심각도에 따라 적거나 많을 수 있습니다. * unstable에 있는 이 새 버전 XYZ-3.8은 7월 5일에 testing에 들어 갈 예정입니다. * 그러나 7월 3일 다른 사람이 XYZ-3.8에서 또 다른 RC 버그를 발견 합니다. * XYZ의 관리자가 이 새로운 RC 버그를 수정하고 5일 후에 새 버전 의 XYZ를 업로드한다고 가정해 보겠습니다. * 따라서 7월 8일에 testing에는 XYZ-3.7이 있고 unstable에는 XYZ-3.9가 있습니다. * 이 새 버전 XYZ-3.9는 이제 7월 13일에 testing에 들어가도록 일 정이 변경되었습니다. * 이제 testing을 실행 중이고, XYZ-3.7에 버그가 있으므로, 7월 13 일 이후에만 XYZ를 사용할 수 있습니다. 그것은 당신이 본질적으 로 약 한 달 동안 깨진 XYZ로 끝났다는 것입니다. 상황이 훨씬 더 복잡해질 수 있습니다. 예를 들어 XYZ는 4개의 다른     패키지에 의존합니다. 이로 인해 몇 달 동안 사용할 수 없는 testing 배포가 발생할 수 있습니다. 위의 시나리오는 상상이지만, 비슷한 일 이 현실에서 드물더라도 일어날 수 있습니다. 3.1.8. 관리자 관점에서 더 주의가 필요한 배포는 무엇인가요? 많은 사람이 다른 리눅스 배포판보다 데비안을 선택하는 주된 이유 중 하나는 관리가 거의 필요하지 않기 때문입니다. 제대로 동작하는 시스 템을 원합니다. 일반적으로 stable은 유지 관리가 거의 필요하지 않지     만 testing 및 unstable은 관리자가 지속적인 유지 관리해야 합니다. stable을 실행 중이라면 보안 업데이트를 추적하기만 하면 됩니다. testing 또는 unstable을 쓰면 설치된 패키지에서 발견된 새로운 버 그, 새로운 버그 수정/기능 도입 등을 알고 있는 것이 좋습니다. 3.1.9. 새 릴리스를 만들면 어떻게 되나요?     이 질문은 데비안 배포판을 선택하는 데 도움이 되지 않습니다. 그러 나 조만간 이 질문에 직면하게 될 것입니다. stable 배포판은 현재 trixie. 다음 stable 배포판은 forky. forky가     새 stable 버전으로 릴리스되었을 때 어떤 일이 일어나는지 특별한 경 우를 생각해 봅시다. * oldstable = bookworm; stable = trixie; testing = forky; unstable = sid * Unstable은 릴리스 여부에 관계없이 항상 sid라고 합니다. * 패키지는 지속적으로 sid에서 testing(즉 forky)로 마이그레이트 됩니다. 그러나 stable 안의 패키지(trixie)는 보안 업데이트를 제외하고는 동일하게 유지됩니다. * 얼마 후 testing은 동결됩니다. 그러나 여전히 testing 이라고 할 것입니다. 이 시점에서 RC(release-critical) 버그 수정이 없으면 unstable에 있는 새 패키지는 testing으로 마이그레이트 안 됩니 다. * testing이 동결되면, 릴리스 팀 구성원이 새로 도입된 모든 버그     수정을 수동으로 확인해야 합니다. 동결된 testing에서 알려지지 않은 심각한 문제가 없도록 하려고 이렇게 합니다. * '동결된 testing'의 RC 버그는 0으로 줄거나 0보다 크면, 버그가 릴리스에 대해 무시된 것으로 표시되거나 포인트 릴리스에 대해 연기됩니다. * rc-bug 없는 '프로즌 testing'은 새 stable 버전으로 릴리스 될 것입니다. 이 예에서 이 새로운 안정적인 릴리스는 forky. * 이 단계에서 oldstable = trixie, stable = forky. 이 시점에서 stable 및 '동결된 testing' 내용은 같습니다. * 새 testing은 old testing 기반입니다. * 패키지가 sid에서 testing으로 내려오기 시작하고 데비안 커뮤니 티는 다음 stable 릴리스를 만들려고 일합니다. 3.1.10. 데비안을 설치한 동작하는 데스크톱/클러스터가 있습니다. 실행 중인 배포판을 어떻게 아나요?     대부분의 상황에서 이것을 알아내는 것은 매우 쉽습니다. /etc/apt/ sources.list 파일을 살펴보십시오. 다음과 유사한 항목이 있습니다:     deb http://deb.debian.org/debian/ unstable main contrib     세 번째 필드(위의 예에서 'unstable')는 시스템이 현재 추적 중인 데 비안 배포판을 나타냅니다.     lsb_release를 사용할 수도 있습니다 (lsb-release 패키지에서 가능). 이 프로그램을 unstable 시스템에서 실행하면 얻는 것: $ lsb_release -a LSB Version: core-2.0-noarch:core-3.0-noarch:core-3.1-noarch:core-2.0-ia32:core-3.0-ia32:core-3.1-ia32     Distributor ID: Debian Description: Debian GNU/Linux unstable (sid) Release: unstable Codename: sid 그러나 이것이 항상 쉬운 것은 아닙니다. 일부 시스템에는 sources.list 파일에 다른 배포판에 해당하는 여러 항목이 있을 수 있     습니다 . 이것은 관리자가 다른 데비안 배포판에서 다른 패키지를 추 적할 때 생길 수 있습니다. 이것을 흔히 apt-pinning이라고 합니다. 이러한 시스템은 배포판 혼합을 실행할 수 있습니다. 3.1.11. 현재 stable을 사용 중입니다. testing 또는 unstable로 바꿀 수 있나요? 그렇다면 어떻게? 우선, 안정 버전은 서버와 데스크톱 환경 모두에 권장되는 릴리스임을     명심하십시오. 안정 버전을 운영한다면 정기적인 보안 업데이트가 제 공될 뿐 아니라, 시스템이나 사용자 설정에 오류를 일으킬 가능성이 있는 변경이 적습니다. 현재 stable 버전을 사용 중이라면, /etc/apt/sources.list 파일의 세 번째 필드는 'trixie' 또는 'stable'로 표시되어 있을 겁니다. 만약     다른 버전으로 바꾸고 싶다면, 이 부분을 사용하고자 하는 배포판 명 칭으로 바꾸어야 합니다. testing 버전을 사용하려면 /etc/apt/ sources.list의 세 번째 필드를 'testing'으로, unstable 버전을 사용 하려면 'unstable'로 바꾸십시오. 현재 testing은 forky. /etc/apt/sources.list 파일의 3번째 필드를     'forky'로 바꾸면, testing을 실행합니다. 그러나 forky 이 stable로 될 때에도 forky을 추적합니다.     불안정은 항상 Sid라고 합니다. 따라서 /etc/apt/sources.list 파일의 세 번째 필드를 'sid'로 바꾸면 unstable을 추적합니다. 현재 데비안은 testing, unstable 대해 별도의 보안 업데이트를 제공 하지 않습니다. 데비안 보안 팀 (https://security-team.debian.org/) 은 주로 stable과 old-stable을 관리하는 데 집중하고 있습니다. 그러 나, 다른 일반적인 수정 사항들과 마찬가지로, unstable의 보안 수정 사항은 메인 아카이브에 직접 반영되며 적절한 절차를 거쳐 testing으 로 전달됩니다. 따라서 만약 여러분이 unstable 버전을 사용 중이라 면, /etc/apt/sources.list 파일에서 보안 업데이트와 관련된 라인을     반드시 지워야 합니다. 현재 이 버전들(testing 및 unstable)에 어떤 보안 버그가 있는지 알고 싶다면, 아래 링크를 통해 취약한 소스 패키 지 목록을 확인할 수 있습니다. 이러한 버전의 배포판에 존재하는 알 려진 보안 버그가 무엇인지 알고 싶으면, testing 안의 취약한 소스 패키지 목록 (https://security-tracker.debian.org/tracker/status/ release/testing) , 및 unstable (https:// security-tracker.debian.org/tracker/status/release/unstable) 에서 이 정보를 보십시오. 업그레이드하려는 배포판의 릴리스 노트(Release Notes) 문서가 (아직 정식 출시 전이라 하더라도) 존재한다면, 이를 미리 검토해 보는 것이 현명합니다. 해당 문서에는 업그레이드 방법과 관련된 중요한 정보가 포함되어 있을 수 있기 때문입니다. 데비안 웹사이트에서는 언제든지     testing 링리스 노트 (https://www.debian.org/releases/testing/ releasenotes) 를 확인할 수 있습니다. 다만, testing 버전이 실제 정 식 출시일에 얼마나 가까운지에 따라, 해당 문서가 발생 가능한 모든 변경 사항이나 잠재적인 위험 요소(pitfalls)를 충분히 다루지 못할 수도 있다는 점을 유의해야 합니다. 그럼에도, 위와 같이 바꾸면, aptitude update 실행하고 그러면 원하     는 패키지를 설치할 수 있습니다. 다른 배포판에서 패키지를 설치하면 시스템의 절반이 자동으로 업그레이드될 수 있습니다. 개별 패키지를 설치하면 혼합 배포판을 실행하는 시스템이 됩니다. 어떤 상황에서는 apt full-upgrade, aptitude safe-upgrade or     aptitude full-upgrade를 실행하여 새 배포판으로 완전히 업그레이드 하는 것이 가장 좋습니다 . 자세한 내용은 apt 및 aptitude의 매뉴얼 페이지 참조하십시오. 데비안 레퍼런스 매뉴얼의 Life with eternal upgrades (https://     www.debian.org/doc/manuals/debian-reference/ch02.en.html# _life_with_eternal_upgrades) 섹션에서 testing 및 unstable 버전에 관한 더 상세한 정보를 볼 수 있습니다. 3.1.12. 현재 testing (forky)을 추적하고 있습니다. 릴리스되면 어떻게 됩니까? testing을 계속 추적할 예정인가요, 아니면 내 컴퓨터에서 새로운 stable 배포판을 실행하나요?     그건 /etc/apt/sources.list 파일 항목에 달려있습니다. 현재 testing 을 추적 중이라면, 이런 항목은 다음 중 하나와 비슷합니다:     deb http://deb.debian.org/debian/ testing main     또는     deb http://deb.debian.org/debian/ forky main 만약 /etc/apt/sources.list 파일의 3번째 필드가 'testing'이면 릴리 스 만든 후에도 testing을 추척합니다. 그래서 forky이 릴리스 되면,     새 데비안 배포판을 실행하는데 다른 코드명을 가질 겁니다.바뀐 사항 은 처음에는 명확하지 않을 수 있지만 unstable 패키지의 새 패키지가 testing 배포판으로 넘어가는 즉시 분명해질 겁니다.     그러나, 3째 필드에 'forky'가 들어있으면 stable을 추적합니다.(왜냐 면 forky가 새 stable 배포판이 되므로) 3.1.13. 아직 헷갈립니다. 무엇을 설치해야 한다고 했나요?     불확실하다면, stable 배포판이 좋습니 다. 3.2. 그러나 Kali, Knoppix, 리눅스 민트, 우분투 등은 무엇인가요?     그건 데비안이 아닙니다. 데비안 기반입니다. 비슷한 점 및 공통점이 있지만 결정적 차이도 있습니다. 지난 여러 해 동안, 데비안 패키지를 재사용하거나 재빌드하고 자체적 인 커스텀 패키지를 추가하는 방식으로 수많은 배포판이 개발되어 왔 습니다. 이러한 배포판의 대부분은 특정한 사용자층이나 목적을 위해     만들어졌습니다. Distrowatch에 따르면, 데비안은 420 파생 배포판 (https://distrowatch.com/search.php?basedon=Debian&status=All# distrosearch) 을 탄생시켰으며, 이 글을 쓰는 시점을 기준으로 그중 120개 이상이 활발히 유지 관리되고 있습니다. 이 모든 배포판은 저마다의 장점을 가지고 있으며 특정 사용자층에 최 적화되어 있습니다. 더 자세한 내용은 데비안 웹사이트에서 제공하는 Debian derivatives (https://www.debian.org/misc/children-distros)     참고하시기 바랍니다. 또한, 현재 개발이 중단된 프로젝트를 포함하여 데비안 파생 배포판의 전체 목록은 데비안 위키의 데비안 파생판 인구 조사 (https://wiki.debian.org/Derivatives/Census) 에서 확인하실 수 있습니다. 3.2.1. Kali/Knoppix/Linux Mint/Ubuntu/... 등이 데비안 기반이라는 것을 알고 있습니다. 하드디스크에 설치한 후, 거기에서 'apt' 패키지 도구를 사용할 수 있나요? 이 배포판은 데비안 기반이기는 하지만, 데비안은 아닙니다. /etc/apt /sources.list 파일이 해당 배포판의 저장소를 가리키도록 설정함으로     써 여전히 apt 패키지 도구를 사용할 수 있습니다. 어떤 경우에는 일 부 배포판이 apt 대신 사용하는 추가적인 패키지 관리자를 별도로 가 지고 있을 수도 있습니다. 대부분의 상황에서 하나의 배포판을 고수하는 경우 다른 배포판의 패 키지를 섞지 말고 이를 사용해야 합니다. 배포판을 실행하는 사람들과     다른 배포판의 데비안 패키지를 설치하려고 할 때 발생하는 많은 일반 적인 손상이 있습니다. 동일한 형식과 이름(.deb)을 사용한다고 해서 즉시 호환되는 것은 아닙니다. 예를 들어, Knopix는 라이브 CD로 부팅되도록 설계된 리눅스 배포판인 반면, 데비안은 하드 디스크에 설치되도록 설계되었습니다. 특정 하드     웨어가 동작하는지 알고 싶거나 GNU/리눅스 시스템이 어떤 '느낌'인지 등을 경험하고 싶다면 Knopix가 좋습니다. 데비안은 24시간 연중무휴 로 실행되도록 설계된 반면, 사용 가능한 패키지 수와 데비안이 지원 하는 아키텍처 수는 Knopix보다 훨씬 많습니다. 데비안을 원한다면 처음부터 데비안을 설치하는 것이 가장 좋습니다. Knoppix와 같은 다른 배포판을 통해 데비안을 설치하는 것도 가능하지     만, 절차에는 전문 지식이 필요합니다. 이 FAQ를 읽고 계신다면 데비 안과 크노픽스를 모두 처음 접하는 분이라고 생각합니다. 그런 상황이 라면, 나중에 겪게 될 수많은 번거로움을 피하기 위해서라도 처음부터 데비안을 설치하는 것이 좋습니다. 3.2.2. Kali/Knoppix/Linux Mint/Ubuntu/... 등을 하드디스크에 설치했습 니다. 그런데 문제가 발생했습니다. 어떻게 해야 하나요? 데비안 파생 배포판에 대한 도움을 얻기 위해 데비안 포럼(메일링 리 스트나 IRC 등)을 이용하지 마십시오. 그곳의 사용자들은 귀하가 순정     데비안 시스템을 사용 중이라는 가정하에 해결책을 제시할 수 있기 때 문입니다. 이러한 "해결책"은 여러분이 사용 중인 시스템에 적합하지 않을 수 있으며, 심지어 문제를 더 악화시킬 수도 있습니다. 먼저 여러분이 사용 중인 특정 배포판의 포럼을 이용하십시오. 만약 그곳에서 도움을 받지 못했거나, 받은 도움으로도 문제가 해결되지 않     는다면 데비안 포럼에 질문을 올려볼 수도 있습니다. 하지만 이 경우 앞서 언급한 주의 사항(시스템이 순정 데비안과 다를 수 있다는 점)을 반드시 염두에 두십시오. 3.2.3. 나는 Kali/Knoppix/Linux Mint/Ubuntu/... 등을 쓰고 있고 지금 데 비안 쓰고 싶어요. 어떻게 옮기죠? 데비안 기반 배포판에서 순수 데비안으로 바꾸는 것은 마치 한 운영체 제에서 다른 운영체제로 바꾸는 것과 같습니다. 모든 데이터를 백업하     고 운영체제를 처음부터 다시 설치해야 합니다. 패키지 관리 도구를 사용하여 데비안으로 "업그레이드"를 시도해서는 안 됩니다. 못쓰는 시스템이 될 수 있습니다. 사용자 데이터(즉, /home )가 별도의 파티션에 있다면, 데비안으로 마 이그레이션하는 것은 사실 매우 간단합니다. 다시 설치할 때 설치 시     스템에 해당 파티션을 마운트(포맷은 하지 않음)하도록 지시하기만 하 면 됩니다. 물론, 데이터 백업은 물론 이전 시스템의 구성 파일(예: / etc/ 및 경우에 따라 `/var/) 백업은 여전히 권장됩니다. 4장. 호환성 이슈 4.1. 무슨 하드웨어 아키텍처/시스템에서 Debian GNU/Linux 가 돌아가나 요? Debian GNU/Linux에는 모든 프로그램에 완전한 소스코드가 들어가므     로, 리눅스 커널이 지원하는 모든 시스템에서 동작해야 합니다. Linux FAQ (http://en.tldp.org/FAQ/Linux-FAQ/intro.html# DOES-LINUX-RUN-ON-MY-COMPUTER) 참조.     현재 Debian GNU/Linux 릴리스, 13, 완전한 바이너리 배포판이 들어있 는 아키텍처: * amd64: AMD64 확장이 들어간 AMD 64비트 CPU 및 EM64T 확장이 들 어간 모든 인텔 CPU 기반 시스템과 공통 64비트 사용자 공간 (userspace)을 다룹니다. * arm64: 최신 64비트 ARM 프로세서 기반 장치를 지원합니다. * armel: 리틀 엔디안 ARM 머신. * armhf: 하드웨어 부동소수점(hard-float) 연산을 지원하는 ARMv7 기기용 armel의 대안. * i386: 인텔 386, 486, 펜티엄, 펜티엄 프로, 펜티엄 II(Klamath 및 Celeron 모두 포함), 펜티엄 III를 포함한 인텔 및 호환 프로 세서 기반 시스템과 AMD, Cyrix 등에서 제조한 대부분의 호환 프     로세서를 다룹니다. * ia64: 인텔 IA-64 ("Itanium") 컴퓨터. * mips: SGI 빅 엔디안 MIPS 시스템, Indy 및 Indigo2; mipsel: 리 틀 엔디안 MIPS 머신, 디지털 덱스테이션. * powerpc: Apple Macintosh PowerMac 모델과 CHRP 및 PReP 개방형 아키텍처 머신을 포함한 일부 IBM/Motorola PowerPC 머신을 다룹 니다. * ppc64el: 64비트 리틀 엔디안 PowerPC 포트, 다양한 최근 PowerPC /POWER 프로세서 지원. * s390x: 64비트 포트 IBM System z 머신용, s390을 대체. hurd-i386(i386 32비트 PC용 GNU Hurd 커널), mipsel64(리틀 엔디안 방식 64비트 MIPS), powerpcspe("Signal Processing Engine" 하드웨어     용 포트), sparc64(64비트 SPARC 프로세서), sh(Hitachi SuperH 프로 세서), 그리고 x32(32비트 포인터를 사용하는 amd64/x86_64 CPU)용데 비안 바이너리 배포판 개발이 현재 진행 중입니다. m68k 아키텍처에 대한 지원은 데비안 릴리스 관리자가 설정한 기준을 충족하지 못하여 Etch(데비안 4.0) 릴리스에서 중단되었습니다. 이 아     키텍처는 MMU를 갖춘 Motorola 680x0(x는 2 이상) 프로세서를 탑재한 Amiga 및 ATARI 기기들을 다룹니다. 하지만 이 포트는 현재 공식 stable 버전의 일부는 아닐지라도 여전히 활성화되어 있으며 설치가 가능하므로, 향후 릴리스에서 다시 활성화될 수도 있습니다. hppa(Hewlett-Packard의 PA-RISC 머신)와 alpha(Compaq/Digital의     Alpha 시스템)에 대한 지원 또한 비슷한 이유로 Squeeze(데비안 6.0) 릴리스에서 중단되었습니다. arm 역시 이 릴리스에서 제외되었는데, 이는 armel 아키텍처로 대체되었기 때문입니다. 32비트 s390 포트(s390)에 대한 지원은 중단되고, Jessie(데비안 8)에     서 s390x로 대체되었습니다. 또한, 불충분한 개발자 지원으로 인해 IA-64 및 Sparc용 포트도 이번 릴리스에서 제거되었습니다.     포트에 대한 더 자세한 내용은 웹사이트 포트 페이지 (https:// www.debian.org/ports/) 보십시오. 부팅, 드라이브 파티션 설정, PCMCIA(PC 카드) 장치 활성화 및 이와 비슷한 문제에 관한 더 자세한 정보는 설치 매뉴얼에 있는 지침을 따     르십시오. 해당 매뉴얼은 웹사이트 https://www.debian.org/releases/ stable/installmanual (https://www.debian.org/releases/stable/ installmanual) 에 있습니다. 4.2. 무슨 커널이 Debian GNU/Linux에서 돌아가나요?     리눅스 외에 데비안은 다음 운영 체제 커널용 완전한 바이너리 배포판 을 제공합니다: * FreeBSD: 각각 64비트 PC와 32비트 PC를 위한 kfreebsd-amd64 및 kfreebsd-i386 포트를 통해 제공되었습니다. 이 포트들은 데비안     6.0 Squeeze에서 기술 미리보기(technology preview) 형태로 처음 릴리스되었습니다. 그러나 데비안 8 Jessie 릴리스부터는 포함되 지 않았습니다.     이와 더불어, 현재 다음과 같은 adaptation 작업이 진행 중입 니다. * avr32, Atmel의 32비트 RISC 아키텍처용 포트,     * hurd-i386, 32비트 PC용 포트입니다. 이 포트는 GNU 그룹이 개발 중인 새로운 운영체제인 GNU Hurd를 사용합니다. * sh, Hitachi SuperH 프로세서용 포트. NetBSD 커널로 배포판을 이식하여 32비트 PC용 netbsd-i386 및 Alpha     머신용 netbsd-alpha를 제공하려는 시도가 있었으나, 이 포트들은 정 식으로 릴리스되지 않았으며 현재는 중단되었습니다.     포트에 대한 더 자세한 내용은 웹사이트 포트 페이지 (https:// www.debian.org/ports/) 보십시오. 4.3. 데비안은 리눅스 다른 배포판과 어떻게 호환가능한가요? 데비안 개발자는 리눅스 배포판에서 바이너리 호환성을 유지하려고 다     른 리눅스 배포판 작성자와 소통합니다. ^[1] 대부분의 상용 리눅스 제품은 빌드된 시스템에서와 마찬가지로 데비안에서도 잘 돌아갑니다. Debian GNU/Linux 는 리눅스 파일시스템 계층 표준(FHS, Filesystem Hierarchy Standard) (https://www.pathname.com/fhs) 을 준수합니다.     하지만 이 표준 내의 일부 규칙에는 해석의 여지가 있기 때문에, 데비 안 시스템과 다른 리눅스 시스템 사이에는 약간의 차이가 있을 수 있 습니다. 4.4. 데비안과 다른 유닉스 시스템은 어떻게 소스 코드 호환이 되나요? 대부분의 응용 프로그램에서 리눅스 소스 코드는 다른 유닉스 시스템 과 호환됩니다. 이 제품은 System V Unix 시스템과 무료 및 상용 BSD 에서 파생된 시스템에서 사용할 수 있는 거의 모든 것을 지원합니다. 그러나 유닉스 비즈니스에서는 이러한 주장을 입증할 방법이 없기 때     문에 거의 아무런 가치가 없습니다. 소프트웨어 개발 영역에서는 "대 부분"의 경우 호환성 대신 완전한 호환성이 필요합니다. 수년 전에 표 준의 필요성이 대두되었으며, 오늘날 POSIX.1(IEEE 표준 1003.1-1990) 은 유닉스 계열 운영체제의 소스 코드 호환성을 위한 주요 표준 중 하 나입니다. 리눅스는 POSIX.1을 준수하도록 고안되었지만, POSIX 표준은 실제 비 용이 많이 들고 POSIX.1(및 FIPS 151-2) 인증은 비용이 꽤 많이 듭니 다. 이로 인해 리눅스 개발자들이 완전한 POSIX 준수를 위해 작업하기     가 더 어려워졌습니다. 인증 비용 때문에 데비안이 검증 제품군을 완 전히 통과하더라도 공식적인 적합성 인증을 받을 가능성은 거의 없습 니다. 이제 검증 제품군을 무료로 사용할 수 있으므로 POSIX.1 문제에 대해 더 많은 사람이 작업할 것으로 예상됩니다. Unifix GmbH(독일 Braunschweig)는 FIPS 151-2(POSIX.1의 상위 집합)     표준 준수 인증을 받은 리눅스 시스템을 개발했습니다. 이 기술은 Unifix의 자체 배포판인 Unifix Linux 2.0과 Lasermoon의 Linux-FT에 서 사용할 수 있었습니다. 4.5. 레드햇/슬랙웨어/... 리눅스 시스템에서 데비안 패키지(.deb" 파일) 를 사용할 수 있나요? 내 Debian GNU/Linux 시스템에서 레드햇 패키지 (.".rpm" 파일)를 사용할 수 있나요?     다른 리눅스 배포판은 다른 패키지 형식과 다른 패키지 관리 프로그램 을 씁니다. 할 수 있는 것: "외부(foreign)" 배포판을 기반으로 구축된 리눅스 호스트상에서 Debian GNU/Linux 패키지의 압축을 푸는 프로그램은 이미 존재하 며, 파일의 압축을 푸는 관점에서는 일반적으로 잘 동작합니다. 그 반대의 경우도 마찬가지입니다. 즉, 데비안 기반의 호스트에서 레드햇이나 슬랙웨어 패키지의 압축을 푸는 프로그램 또한 패키지 압축을 해제하고 대부분의 파일을 의도된 디렉터리에 배치하는 데 아마 성공할 것입니다. 이는 주로 Linux Filesystem Hierarchy Standard가 존재하고, 이를 폭넓게 준수하고 있기 때문에 가능한 결과입니다. Alien (https://packages.debian.org/alien) 패키지 가 서로 다른 패키지 형식을 변환하는데 사용됩니다. 이런 것을 바라지 않을 겁니다: 대부분의 패키지 관리자는 아카이브의 압축을 풀 때 관리용 파일     을 기록합니다. 이러한 관리용 파일들은 일반적으로 표준화되어 있지 않습니다. 따라서 "외부(foreign)" 호스트에서 데비안 패키 지의 압축을 푸는 행위는 해당 시스템의 패키지 관리자에 예측할 수 없는(확실히 유용하지는 않은) 영향을 미치게 됩니다. 마찬가 지로, 다른 배포판의 유틸리티를 사용하여 데비안 시스템에서 아 카이브 압축을 푸는 데 성공할 수는 있겠지만, 이는 추후 패키지 를 업그레이드하거나 삭제할 때, 혹은 단순히 시스템에 어떤 패키 지들이 있는지 정확히 보고해야 할 때 데비안 패키지 관리 시스템 의 오류를 야기할 가능성이 큽니다. 더 좋은 방법: 리눅스 파일 시스템 표준(따라서 Debian GNU/Linux 역시)은 /usr/ local/ 아래 서브디렉터리는 사용자 재량에 따라야 함을 요구합니 다. 따라서 사용자는 "foreign" 패키지를 이 디렉터리에 풀고, 그 리고 개별적으로 설정을 관리, 업그레이드 및 제거할 수 있습니 다. 4.6. 데비안 아닌 프로그램을 어떻게 설치하나요? /usr/local/ 디렉터리는 데비안 패키지 관리 시스템 제어 아래 있지 않습니다. 따라서, 당신의 프로그램 소스 코드를 /usr/local/src/ 안     에 두는 게 좋습니다. 예를 들어, 패키지 이름 "foo.tar"용 파일을 / usr/local/src/foo 디렉터리 안에 추출할 수 있습니다. 컴파일 후 / usr/local/bin/에 바이너리를, /usr/local/lib/에 라이브러리를, 그리 고 /usr/local/etc/에 설정파일을 놓으십시오. 프로그램 및 파일을 실제로 다른 디렉터리에 배치해야 하는 경우 여전     히 /usr/local/에 저장할 수 있으며, 필요한 위치에서 해당 위치로 적 절한 심볼릭 링크를 /usr/local/에 빌드 할 수 있습니다. 예를 들어 링크를 만들 수 있습니다     ln -s /usr/local/bin/foo /usr/bin/foo 어쨌든, 저작권이 재배포를 허용하는 패키지를 구했다면, 그 패키지의 데비안 패키지를 만들어 데비안 시스템용으로 업로드하는 것을 고려해     야 합니다. 패키지 개발자가 되기 위한 지침은 데비안 정책 매뉴얼( 12.1절. “데비안 시스템에 다른 어떤 문서가 있나요?” 참조)에 있습니 다. --------------------------------------------------------------------- ^[1] Linux Standard Base (https://wiki.linuxfoundation.org/lsb/ start/) 는 여러 배포판에 사용되는 동일한 바이너리 패키지를 허용하 기위한 규격입니다.Jessie (데비안 8) 이후 나왔습니다, 데비안은 LSB     호환 추구를 포기했습니다 (https://sources.debian.org/src/lsb/ 9.20170808/debian/README.Debian/) . July 3, 2015 message from Didier Raboud (https://lists.debian.org/ 4526217.myWFlvm1rM@gyllingar) 그리고 배경 정보로 아래 토론을 참조 하십시오. 5장. 데비안 시스템에서 가능한 소프트웨어 5.1. 무슨 형식 응용프로그램과 개발 소프트웨어가 Debian GNU/Linux에서 가능한가요?     대부분의 배포판처럼, Debian GNU/Linux가 제공하는 것: * 소프트웨어 개발, 파일 조작 및 텍스트 처리를 위한 주요 GNU 프 로그램, gcc, g++, make, texinfo, Emacs, bash shell 및 수많은 업그레이드된 유닉스 유틸리티, * Perl, Python, Tcl/Tk 및 다양한 관련 프로그램, 모듈 및 라이브 러리, * TeX (LaTeX) 및 Lyx, dvips, Ghostscript,     * 리눅스용 네트워크 그래픽 사용자 인터페이스를 제공하는 Xorg 윈 도우 시스템 및 GNOME, KDE 및 Xfce 데스크톱 환경이 들어있는 수 많은 X 응용프로그램, * 전체 네트워크 프로그램 제품군. HTTP(WWW), FTP, NNTP(뉴스), SMTP 및 POP(메일), DNS(네임 서버)와 같은 인터넷 프로토콜용 서 버가 들어있다, PostgreSQL, MySQL와 같은 관계형 데이터베이스, 또한 다양한 Mozilla 제품이 들어있는 웹 브라우저, * 전체 오피스 프로그램 세트, LibreOffice 생산성 제품군, Gnumeric 및 기타 스프레드시트, WYSIWYG 편집기, 캘린더. 뉴스 서버 및 리더에서 사운드 지원, 팩스 프로그램, 데이터베이스 및 스프레드시트 프로그램, 이미지 처리 프로그램, 통신, 넷 및 메일 유     틸리티, 웹 서버, 심지어 햄 라디오 프로그램에 이르기까지 63879 개 이상의 패키지가 배포판에 있습니다. 다른 1082 개 소프트웨어 제품군 은 데비안 패키지로 사용할 수 있지만, 라이선스 제한으로 인해 데비 안의 정식 부분은 아닙니다. 5.2. 누가 저 모든 소프트웨어를 만들었나요?     각 패키지마다 프로그램 저자가 /usr/share/doc/PACKAGE/copyright 파 일에 인정됩니다.여기서 PACKAGE는 패키지 이름. 소프트웨어를 Debian GNU/Linux 시스템용으로 패키지하는메인테이너 목록은 각 패키지에 함께 제공하는 데비안 control 파일(7.4절. “데비     안 control 파일은 무엇인가요?” 참조)에 있습니다. 데비안 changelog /usr/share/doc/PACKAGE/changelog.Debian.gz에는 데비안 패키징 작업 을 한 사람도 언급합니다. 5.3. 데비안용으로 패키징된 프로그램 현재 목록을 어떻게 얻나요? 데미안 미러 (https://www.debian.org/mirror/list) 완전한 목록이     indices/Maintainers에 있습니다. 이 파일에는 패키지 이름 및 각 메 인터이너 이름 및 전자메일이 있습니다. 데비안 패키지 WWW 인터페이스 (https://packages.debian.org/) 는 데     비안 아카이브의 약 30개 "섹션" 각각에 있는 패키지를 편리하게 요약 합니다. 5.4. 개발자 환경을 패키지 빌드에 어떻게 설치하나요? 데비안 시스템에서 패키지를 빌드하려면 C/C++ 컴파일러와 기타 필수 패키지가 들어있는 기본 개발 환경이 필요합니다. 이 환경을 설치하려     면 build-essential을 설치하기만 하면 됩니다. 이것은 데비안 패키지 를 빌드 하는 데 필요한 표준 개발 도구에 의존하는 메타 패키지 또는 자리 표시자 패키지입니다. 그러나, 일부 소프트웨어는 라이브러리 헤더 또는 autoconf 또는     gettext 같은 추가 도구가 들어있어서 재구축할 추가 소프트웨어가 필 요할 수 있습니다 . 데비안은 다른 소프트웨어를 데비안 패키지로 구 축하는 데 필요한 많은 도구를 제공합니다. 그러나 데비안 패키지를 재구축할 계획이 아니라면 정확히 어떤 소프 트웨어가 필요한지 찾는 것이 까다로울 수 있습니다. 이 마지막 작업     은 공식 패키지에 추가 소프트웨어 목록이 (build-essential 옆에) 들 어가야 하므로 수행하기가 다소 쉽습니다. 이는 Build-Dependencies로 알려져있습니다. 주어진 소스 패키지를 빌드하는 데 필요한 모든 패키 지를 설치한 다음 해당 소스 패키지를 빌드하려면 실행할 명령:     # apt-get build-dep foo # apt-get source --build foo 데비안에서 배포하는 리눅스 커널을 빌드하려면 kernel-package도 설     치해야 합니다. 더 많은 정보는 10.2절. “커스텀 커널을 빌드하려고 데비안이 제공하는 도구는 무엇인가요?” 참조. 5.5. Debian GNU/Linux에서 빠진 것은 무엇인가요? 데비안용으로 패키징해야 하는 패키지 목록 Work-Needing and     Prospective Packages list (https://www.debian.org/devel/wnpp/) 이 있습니다.     더 자세한 정보는 13장. 데비안 프로젝트에 기여하기 참조. 5.6. 프로그램을 컴파일 할 때 "ld: cannot find -lfoo"가 왜 나오나요? 왜 libfoo.so 파일이 데비안 라이브러리 패키지 안에 없나요? 데비안 정책은 그러한 심볼릭 링크(libfoo.so.xyz 또는 이와 유사한     링크)를 별도의 개발 패키지에 배치할 것을 요구합니다. 이러한 패키 지의 이름은 일반적으로 libfoo-dev 또는 libfooX-dev입니다(라이브러 리 패키지의 이름은 libfooX이고 X는 정수라고 가정). 5.7. (어떻게) 데비안이 Java를 지원하나요? Java 개발 키트와 런타임 환경을 모두 제공하는 Java 기술의 여러 가     지 자유 구현을 데비안 패키지로 제공합니다. 데비안을 사용하여 Java 프로그램을 만들고, 디버깅 및 실행할 수 있습니다. Java 애플릿을 실행하려면 이를 인식하고 실행할 수 있는 기능이 있는     웹 브라우저가 필요합니다. Mozilla 또는 Konqueror와 같이 데비안에 서 사용할 수 있는 여러 웹 브라우저는 내부에서 Java 애플릿을 실행 할 수 있는 Java 플러그인을 지원합니다.     더 많은 정보 데비안 Java FAQ (https://www.debian.org/doc/manuals/ debian-java-faq/) 참조. 5.8. 어떻게 내가 사용하는 시스템이 데비안인지, 몇 버전인지 아나요?     시스템이 실제 데비안 기본 디스크에서 설치되었는지 확인 하려면     lsb_release -a     명령. 배포판 이름(배포자 ID 필드)과 시스템 버전(릴리스 및 코드 이 름 필드)이 표시됩니다. 다음은 데비안 시스템에서 실행한 예입니다: $ lsb_release -a No LSB modules are available.     Distributor ID: Debian Description: Debian GNU/Linux 7.4 (wheezy) Release: 7.4 Codename: wheezy /etc/debian_version 파일의 존재로 확인할 수도 있는데, 여기에     base-files 패키지에서 정의된 단순한 한 줄 항목이 릴리스 번호를 제 공합니다. 그러나, 사용자는 데비안 시스템이 많은 부분으로 구성되어 있으며 각 부분은 (거의) 독립적으로 업데이트될 수 있음을 알아야 합니다. 각     데비안 "릴리스"에는 잘 정의되고 변경되지 않는 내용이 들어 있습니 다. 업데이트는 별도로 가능합니다. foo 패키지의 설치 상태를 한 줄 로 설명하려면 dpkg --list foo 명령을 사용하십시오. 더 자세한 설명 을 보려면:     dpkg --status foo     설치된 모든 패키지를 보려면 실행 할 것:     dpkg -l dpkg 프로그램이 있으면 시스템에 데비안 패키지를 설치할 수 있어야     합니다. 그러나, 프로그램이 많은 다른 운영 체제와 아키텍처로 포팅 되었기 때문에, 이것은 시스템이 Debian GNU/Linux인지 여부를 결정하 는 신뢰할 수 있는 방법은 아닙니다. 5.9. 데비안은 영어 아닌 언어를 어떻게 지원하나요? * Debian GNU/Linux는 거의 24개의 키보드용 키맵을 갖고, 테이블을 설치, 보기 및 수정하는 유틸리티( kbd 패키지 안에)를 배포합니 다. 설치 과정에서 사용자에게 사용할 키보드를 지정하라는 메시지가 나옵니다. * 데비안의 거의 모든 소프트웨어는 UTF-8을 문자 집합으로 지원합 니다. ISO-8859-1 또는 ISO-8859-2와 같은 레거시 문자 집합은 더 이상 사용되지 않는 것으로 간주해야 합니다.     * 현재 독일어, 스페인어, 프랑스어, 헝가리어, 이탈리아어, 일본 어, 한국어, 네덜란드어, 폴란드어, 포르투갈어, 러시아어, 튀르 키예어 및 중국어 매뉴얼 페이지가 manpages-LANG 패키지(여기서 LANG은 ISO 2글자 나라 코드)를 통해 제공됩니다. NLS 매뉴얼 페 이지에 액세스하려면 셸 LC_MESAGES 변수를 적절한 문자열로 설정 해야 합니다. 예를 들어 이탈리아어 설명서 페이지는 LC_MESAGES를 'italian'으 로 설정해야 합니다. 그 다음 man 프로그램은 /usr/share/man/it/ 에서 이탈리아어 매뉴얼 페이지를 검색할 겁니다. 5.10. non-free firmware 필요한 장치를 갖고 있어요. 내가 무엇을 해야 죠? 펌웨어는 전자 장치를 제어하는 내장 소프트웨어를 뜻합니다. 동작하 기 위해 펌웨어를 필요로 하는 장치가 많습니다. 과거에는 펌웨어가     장치의 ROM 또는 플래시 메모리에 내장되었습니다. 그러나, 장치 초기 화 과정에서 장치 드라이버가 펌웨어 이미지를 장치 RAM으로 로드해야 하는 경우가 점점 늘고 있습니다.     어떤 장치는 제대로 동작하기 위해 non-free 펌웨어가 필요할 수 있습 니다. 또한, 향후 펌웨어 업데이트가 있을 수도 있습니다. 데비안 릴리스 11(bullseye) 및 이전 버전에서는 공식 이미지와 라이 브 설치에 non-free 펌웨어가 들어가지 않았습니다. 데비안 12부터는 데비안이 배포할 수 있는 모든 패키징된 비자유 펌웨어 바이너리가 데     비안 아카이브의 non-free-firmware 라 불리는 새 구성 요소로 옮겨졌 습니다. 이전 데비안 릴리스에서 업그레이드하며 이 펌웨어 바이너리 가 필요하다면, sources.list에 이 새로운 구성 요소가 사용되는지 확 인해야 합니다:     http://deb.debian.org/debian trixie main non-free-firmware contrib non-free     더 많은 정보는 데비안 위키의 펌웨어 정보 (https://wiki.debian.org /Firmware) 를 참고하십시오. 5.11. 무선 네트워크 카드 있는데 리눅스에서 안 되네요. 무엇을 하나요?     되는 거 하나 사세요 :) 대안으로, ndiswrapper를 써서 윈도용 드라이브(가지고 있다면)를 리     눅스 시스템에서 쓰십시오. 더 자세한 정보는 Debian Wiki ndiswrapper page (https://wiki.debian.org/NdisWrapper) 를 보십시 오. 6장. 데비안 아카이브 6.1. 데비안 배포판은 얼마나 많나요? 주 배포판 3개: "stable" 배포판, "testing" 배포판, 그리고 "unstable" 배포판. "testing" 배포판은 때때로 `동결' (6.5.1절. “무     엇이 "testing"인가요? 어떻게 "frozen" 되나요?” 참조). 그 다음으 로, "oldstable" 배포판 ("stable" 이전), 그리고 "experimental" 배 포판. Experimental은 아직 개발 중인 패키지에 사용되며 시스템이 깨질 위     험이 높습니다. 최첨단 소프트웨어를 연구하고 테스트하려는 개발자가 사용합니다. 가장 경험이 많은 사람에게도 위험하고 해로울 수 있으므 로 사용자는 거기에서 온 패키지를 사용하면 안 됩니다.     데비안 배포판을 선택할 때 도움이 필요하면 3장. 데비안 배포판 선 택 참조. 6.2. Etch, Lenny 같은 이름은 무엇인가요? 그건 단지 "코드네임"입니다. 데비안 배포판은 개발 단계에 있을 때 버전 번호가 없고 코드명만 있습니다. 이 코드명의 목적은 데비안 배     포판의 미러링을 더 쉽게 만드는 것입니다(만약 unstable 같은 디렉터 리를 갑자기 이름을 stable로 바꾸면, 많은 항목을 불필요하게 다시 다운로드해야 함). 현재, stable은 심볼릭 링크이며 trixie (i.e. Debian GNU/Linux 13)     를 가리키고, testing은 심볼릭 링크이며 forky를 가리킵니다. 이 뜻 은 trixie은 현재 stable 배포판이며 forky은 현재 testing 배포판.     unstable 영원한 심볼릭 링크이며 sid를 가리키는데, 왜냐면 sid는 늘 unstable 배포판이므로 ( 6.3절. “"sid"는 무엇인가요?” 참조). 6.2.1. 과거에는 어떤 코드명을 썼나요? trixie 및 forky 외에, 이미 사용한 것: buzz 릴리스 1.1, rex 릴리스 1.2, bo 릴리스 1.3.x, hamm 릴리스 2.0, slink 릴리스 2.1, potato     릴리스 2.2, woody 릴리스 3.0, sarge 릴리스 3.1, etch 릴리스 4.0, lenny 릴리스 5.0, squeeze 릴리스 6.0, wheezy 릴리스 7, jessie 릴 리스 8, stretch 릴리스 9, buster 릴리스 10, bullseye 릴리스 11, bookworm 릴리스 12. 6.2.2. 코드명은 어디서 왔나요?     지금까지 그것은 픽사의 "토이 스토리" 영화에서 가져온 캐릭터였습 니다. * buzz (데비안 1.1)은 Buzz Lightyear, * rex (데비안 1.2)는 tyrannosaurus, * bo (데비안 1.3) Bo Peep, 양을 돌보는 소녀, * hamm (데비안.2.0) 저금통, * slink (데비안 2.1) Slinky Dog, 장난감 개, * potato (데비안 2.2)은 Mr. Potato, * woody (데비안 3.0) 카우보이, * sarge (데비안 3.1) 초록 플라스틱 군인의 상사, * etch (데비안 4.0) 장난감 화이트 보드 (Etch-a-Sketch),     * lenny (데비안 5.0) 장난감 쌍안경, * squeeze (데비안 6) 세 눈 외계인의 이름, * wheezy (데비안 7) 빨간 나비 넥타이 고무 장난감 펭귄, * jessie (데비안 8) 요들링 카우걸, * stretch (데비안 9) 8개 긴 팔에 빨판 달린 고무 장난감 문어. * buster (데비안 10) Andy의 애완견. * bullseye (Debian 11) Woody의 나무 장난감 말. * bookworm (데비안 12) 손전등이 내장된 초록 장난감 벌레이며 책 읽기를 좋아함. * trixie (데비안 13) 파란 플라스틱 triceratops. * sid 모든 장난감을 부순 옆집 사악한 이웃 아이. 토이 스토리 이름을 쓸 결정 (https://lists.debian.org/debian-devel     /1996/06/msg00515.html) 은 Bruce Perens가 만들었고 (https:// lists.debian.org/debian-user/1997/04/msg00011.html) 그 때,데비안 프로젝트 리더이며 영화 만드는 회사 Pixar에서 일했습니다. 6.3. "sid"는 무엇인가요? sid 또는 unstable은 패키지가 초기 업로드 되는 곳입니다.절대 직접     릴리스 되지 않는데, 왜냐하면 릴리스 될 패키지는 testing에 들어가 서 stable 에 나중에 들어갑니다. sid에는 릴리스 된 그리고 릴리스 안 된 패키지 모두 들어갑니다.     그 이름 "sid" 또한 "토이 스토리" 애니메이션 영화에서 온 것. sid는 장난감을 망가뜨린 옆집 소년 :-)     ^[2] 6.4. 무엇이 stable 디렉터리에 들어가나요? * stable/main/: 이 디렉터리에는 공식적으로 Debian GNU/Linux의 최근 릴리스를 구성하는 패키지가 들어있습니다. 이 패키지는 모두 데비안 자유 소프트웨어 지침 (https:// www.debian.org/social_contract#guidelines) 을 준수하며 모두 자유롭게 사용하고 배포할 수 있습니다. * stable/non-free/: 이 디렉터리에는 배포자가 조심스럽게 고려해 야 하는 배포가 제한된 배포판이 들어있습니다.     예를 들어, 어떤 패키지에는 상업적 배포를 금지하는 라이선스가 있습니다. 다른 것은 재배포될 수 있지만 실제로는 셰어웨어이며 자유 소프트웨어가 아닙니다. 이러한 패키지 각각의 라이센스는 패키지가 재배포(예: CD-ROM)에 들어가기 전에 연구되어야 하고 가능한 협상해야 합니다. * stable/contrib/: 이 디렉터리에는 DFSG-자유이며 그 자체로 자유 배포가능한 패키지가 들어갑니다. 그러나 but somehow depend on a package that is not freely distributable and thus available only in the non-free section. 6.5. 무엇이 testing 배포판에 들어가나요?     패키지는 unstable에서 어느 정도 테스트를 거친 후 "testing" 디렉터 리에 설치됩니다. 빌드된 모든 아키텍처에서 동기화되어야 하며 제거할 수 없게 만드는     종속성이 없어야 합니다. 또한 현재 불안정한 버전보다 릴리스에 중요 한 버그가 적어야 합니다. 이런 식으로 "testing"이 항상 릴리스 후보 에 가깝기를 바랍니다. 일반적인 "testing"의 상태와 개별 패키지에 대한 더 많은 정보     https://www.debian.org/devel/testing (https://www.debian.org/ devel/testing) . 6.5.1. 무엇이 "testing"인가요? 어떻게 "frozen" 되나요? "testing" 배포가 충분히 성숙하면 릴리스 관리자가 배포를     "freezing" 하기 시작합니다. 가능한 한 적은 수의 새로운 버그가 "unstable"에서 "testing" 들어갈 수 있도록 정상적인 전파 지연이 증 가합니다. 잠시 후 "테스트" 배포는 진정으로 "frozen" 됩니다. 이는 릴리스에     중요한 버그 수정이 들어가지 않는 한 "testing"으로 전파되는 모든 새 패키지가 보류됨을 의미합니다. "테스트" 배포는 릴리스가 임박한 소위 "test cycles" 동안에도 계속 freeze 될 수 있습니다. "testing" 릴리스가 "frozen" 되면 "unstable" 릴리스도 부분적으로 freeze 경향이 있습니다. 이는 개발자가 testing에서 freeze 된 소프     트웨어에 사소한 업데이트가 필요한 경우와 testing이 "unstable" 되 지 못하게 하는 릴리스 중요 버그를 수정하는 경우, 근본적으로 새로 운 소프트웨어를 unstable에 업로드하는 것을 꺼리기 때문입니다. 우리는 "testing" 배포판에서 패키지 릴리스를 보류할 수 있는 버그,     또는 전체 출시를 보류할 수 있는 버그에 대한 기록을 보관합니다. 자 세한 내용은 현재 testing 릴리스 정보 (https://www.debian.org/ releases/testing/) 를 참조하십시오.     버그 수가 허용 가능한 최대값으로 낮아지면 동결된 "testing" 배포판 이 "stable"로 선언되고 버전 번호를 갖고 릴리스됩니다. 가장 중요한 버그 수는 "릴리스 크리티컬" 버그 수이며 릴리스에 중요 한 버그 상태 페이지 (https://bugs.debian.org/release-critical/) 에서 따를 수 있습니다 . 일반적인 릴리스 목표는 NoRCBugs (https://     wiki.debian.org/ReleaseGoals/NoRCBugs) 이며, 이는 배포판에 심각하 거나 심각하거나 심각한 버그 가 없어야 함을 뜻합니다. 중요하다고 간주되는 문제의 전체 목록은 RC policy document (https:// release.debian.org/testing/rc_policy.txt) 에서 찾을 수 있습니다. 새로운 릴리스가 나올 때마다 이전의 "stable" 배포판은 더 이상 사용     되지 않고 아카이브로 이동합니다. 자세한 내용은 데비안 아카이브 (https://www.debian.org/distrib/archive) 참조. 6.6. 무엇이 unstable 배포판에 들어가나요? "unstable" 디렉터리에는 현재 개발 시스템의 스냅샷이 들어 있습니 다. 사용자는 이러한 패키지를 사용하고 테스트할 수 있지만, 준비 상     태에 대해 경고를 받습니다. unstable 배포판을 사용하는 것의 장점은 당신이 항상 GNU/리눅스 소프트웨어 산업의 최신 정보를 가지고 있다 는 것이다. 하지만 만약 그것이 깨진다면: 당신은 두 부분 모두를 유 지할 수 있습니다 :-)     언제나 main, contrib and non-free 서브디렉터리가 "unstable" 안에 있으며, "stable" 에서와 같은 기준으로 구분합니다. 6.7. 데비안 아카이브에 있는 그 모든 디렉터리는 무엇인가요?     Debian GNU/Linux용으로 패키지된 소프트웨어는 각 데비안 미러 사이 트에 있는 여러 디렉터리 트리 중 하나에서 사용할 수 있습니다.     dists는 "distributions"의 줄임말이며, 현재 사용 가능한 데비안 릴 리스(및 사전 릴리스)에 액세스하는 표준 방법입니다.     pool 디렉터리에는 실제 패키지가 들어 있습니다, 6.10절. “pool 디렉 터리 안에는 무엇이 있나요?” 참조.     보충 디렉터리: /tools/: 부팅 디스크 생성, 디스크 드라이브 파티션 분할, 파일 압축/압축 해제 및 리눅스 부팅을 위한 DOS 유틸리티. /doc/:     기본 데비안 문서, 이 FAQ 처럼, 버그 보고 시스템 지침 등. /indices/: 사이트의 다양한 인덱스(메인테이너 파일 및 다시 정의한 파일). /project/: 대부분 개발자 전용 자료와 일부 기타 파일. 6.8. dists/stable/main 안의 디렉터리는 모두 무엇인가요?     주 디렉터리^[3]안에, 인덱스 파일이 들어있는 3개 서브디렉터리 세트 가 있습니다. binary-무엇 서브디렉터리 세트에는 인덱스 파일이 있는데 각 컴퓨터     아키텍처의 바이너리 패키지가 들어있습니다. 예를 들어 binary-i386 은 인텔 x86에서 실행되는 패키지 또는 binary-sparc는 Sun SPARCStations에서 실행되는 패키지용. 각 릴리스 에서 가능한 완전한 목록은 릴리스 웹 페이지 (https://     www.debian.org/releases) . 현재 릴리스에 대해서는 4.1절. “무슨 하 드웨어 아키텍처/시스템에서 Debian GNU/Linux 가 돌아가나요?” 참조. binary-* 안에 있는 인덱스 파일은 Packages(.gz, .bz2)라고 하며 해     당 배포에 포함된 각 바이너리 패키지의 요약이 들어갑니다. 실제 바 이너리 패키지는 최상위 pool directory 에 있습니다. 또한, source/라는 서브디렉터리가 있으며 배포판에 들어간 소스 패키     지에 대한 인덱스 파일이 들어갑니다. 인덱스 파일은 Source(.gz, .bz2)입니다.     마지막으로, 설치 시스템 인덱스 파일용 서브디렉터리 집합이 있으며, debian-installer/binary-아키텍처에 있습니다. 6.9. 소스 코드는 어디 있나요? 데비안 시스템의 모든 것에 소스 코드가 들어 있습니다. 또한 시스템     에서 대부분의 프로그램의 라이선스 조건은 프로그램과 함께 소스 코 드가 배포되거나 소스 코드를 제공하겠다는 제안이 프로그램과 함께 제공되어야 한다. 소스 코드는 모든 아키텍처별 pool 디렉터리( 6.10절. “pool 디렉터리     안에는 무엇이 있나요?” 참조)에 배포됩니다. 아카이브의 구조에 익숙 할 필요 없이 소스 코드를 검색하려면 apt-get source mypackagename 같은 명령을 사용해 보십시오. 라이선스 제한으로 인해 소스 코드는 공식적으로 데비안 시스템의 일 부가 아닌 "contrib" 및 "non-free" 영역의 패키지에 사용할 수 있거 나 그렇지지 않을 수 있습니다. 어떤 경우에는 소스 없는 "이진 blob"     만 배포할 수 있다(firmware-misc-nonfree 참조). 다른 경우 라이선스 는 사전 구축된 바이너리 배포를 금지하지만, 사용자가 로컬에서 컴파 일할 수 있는 소스 코드 패키지를 허용합니다(broadcom-sta-dkms 참 조). 6.10. pool 디렉터리 안에는 무엇이 있나요? 패키지는 소스 패키지의 이름에 따라 구성된 큰 "pool"에 보관됩니다. 이를 관리하려면 풀은 섹션("main", "contrib" and "non-free")과 소     스 패키지 이름의 첫 글자로 세분화됩니다. 이 디렉터리에는 여러 파 일이 있습니다: 각 아키텍처에 대한 이진 패키지와 이진 패키지가 생 성된 원본 패키지의 여러 파일. 어디에 각 패키지가 있는지 찾으려면 apt-cache showsrc     mypackagename 같은 명령을 실행하고 "Directory:" 행을 보십시오. 예 를 들어 apache 패키지는 pool/main/a/apache/ 에 저장됩니다. 게다가, 또한 lib* 패키지 가 너무 많기 때문에 특별히 취급됩니다:     예를 들어, libpaper 패키지는 pool/main/libp/libpaper/에 저장됩니 다.     ^[4] 6.11. "incoming"은 무엇인가요?     개발자가 패키지를 업로드한 후 패키지는 "incoming" 디렉터리에 잠시 머물다가 정품인지, 아카이브에 허용되는지 확인됩니다. 대개, 아무도 이 장소에서 물건을 설치하면 안 됩니다. 그러나 드문 경우이지만 incoming 디렉터리는 https://incoming.debian.org/     (https://incoming.debian.org/) 에서 사용할 수 있습니다 . 패키지를 수동으로 가져와서 GPG 서명과 MD5sum을 .changes 및 .dsc 파일에서 확인한 다음 설치할 수 있습니다. 6.12. 어디서 이전 릴리스의 옛 패키지를 찾을 수 있나요? 오래된 릴리스는 메인 아카이브 및 미러에서 제거되는데, 이들은 "oldstable"(현재 릴리스 이전의 안정화 버전)까지만 내용을 보관합니     다. 만약 더 오래된 버전의 패키지를 구하는 데 관심이 있다면, https://snapshot.debian.org/ (https://snapshot.debian.org/) 로 가 십시오. 스냅샷 아카이브는 날짜 및 버전 번호를 기준으로 과거 패키지에 접근 할 수 있게 해주는 wayback machine입니다. 여기에는 데비안 아카이브 가 제공하는 모든 과거 및 현재 패키지가 들어 있습니다. 이는     regression이 언제 도입되었는지 추적하거나, 특정 애플리케이션 실행 에 필요한 특정 환경을 구축하는 데 유용한 자원입니다. 스냅샷 아카 이브는 일반적인 apt 저장소와 같은 방식으로 접근할 수 있어 누구나 쉽게 사용할 수 있습니다. 6.13. 내 적절한 저장소를 어떻게 설정하나요? 표준 데비안 패키지 관리 도구를 사용하여 설치하려는 개인 데비안 패 키지를 구축했다면, 적절한 패키지 아카이브를 설정할 수 있습니다.     이는 데비안 프로젝트에서 배포하지 않는 데비안 패키지를 공유하려는 경우에도 유용합니다. 이 작업을 수행하는 방법에 대한 지침은 Debian Wiki (https://wiki.debian.org/HowToSetupADebianRepository) 에 있 습니다. --------------------------------------------------------------------- ^[2] 현재 sid는 없으며, FTP 사이트 구조는 큰 흠을 갖고 있었습니 다: 아키텍처는 현재 unstable에 된다는 것, 배포판이 새 stable이 되     면 릴리스 됩니다. 많은 아키텍처에서 그렇지 않습니다 결과적으로 그 디렉터리는 릴리스 때 옮겨집니다. 이것은 실용적이지 않은데 왜냐면 그 움직임이 많은 대역폭을 씹어먹기 때문입니다. 아카이브 관리자는 "sid"라는 특별한 디렉터리에 릴리스되지 않은 아 키텍처에 대한 바이너리를 배치하여 이 문제를 해결하려고 몇 년 동안     작업했습니다. 아직 릴리스되지 않은 아키텍처는 처음 릴리스될 때 현 재 stable에서 sid로의 링크가 있었고 그 이후부터는 unstable 트리 내부에서 정상적으로 만들어졌습니다. 이 레이아웃은 사용자에게 다소 혼란스러웠습니다. 패키지 풀의 출현으로( 6.10절. “pool 디렉터리 안에는 무엇이 있나 요?” 참조) 바이너리 패키지는 배포에 관계없이 풀의 정식 위치에 저     장되기 시작했습니다. 그래서 배포판을 릴리스 하는 것은 더이상 큰 대역폭을 미러에 차지하는 원인이 아닙니다.(그러나 개발 프로세스 전 반에 걸쳐 많은 점진적인 대역폭 소비가 있음).     ^[3] dists/stable/main, dists/stable/contrib, dists/stable/ non-free 및 dists/unstable/main/, 등. ^[4] 역사적으로 패키지는 어느 배포판에 그것이 들어가느냐에 따라     dists의 서브디렉터리에 유지되었습니다. 이것은 주요한 사항이 바뀔 때 미러의 큰 대역폭 소비 같은 다양한 문제를 야기하는 것으로 드러 났습니다. 이 문제는 패키지 풀 도입으로 해결되었습니다.     apt 같은 프로그램에서 사용하는 인덱스 파일에는 여전히 dists를 사 용합니다. 7장. 데비안 패키지 관리 시스템 기초 이 장은 저수준 내부 데비안 패키지 관리를 다룹니다. 도구 사용법에     주로 관심이 있다면 8장. 데비안 패키지 관리 도구 및 9장. 데비안 시 스템 최신으로 유지하기로 건너뛰십시오. 7.1. 데비안 패키지는 무엇인가요?     패키지에는 일반적으로 일련의 관련 명령 또는 기능을 구현하는 데 필 요한 모든 파일이 들어갑니다. 데비안 패키지에 있는 두 가지 유형: * 바이너리 패키지는 실행 파일, 설정 파일, man/info 페이지, 저작 권 정보 및 기타 문서를 포함합니다. 이 패키지들은 데비안 고유 의 아카이브 형식( 7.2절. “데비안 바이너리 패키지 형식은 무엇 인가요?” 참조)으로 배포되며, 보통 '.deb' 확장자를 가지는 것이 특징입니다. 바이너리 패키지는 데비안 도구인 dpkg(또는 apt와 같은 프런트엔드를 통해)를 사용하여 압축을 풀 수 있으며, 자세 한 내용은 해당 매뉴얼 페이지에 있습니다.     * 소스 패키지는 소스 패키지를 설명하는 .dsc 파일(이후 언급될 파 일 이름 포함), gzip으로 압축된 tar 형식의 수정되지 않은 원본 소스를 포함하는 .orig.tar.gz 파일, 그리고 대개 원본 소스에 대 한 데비안 고유의 변경 사항이 담긴 .debian.tar.xz 파일로 구성 됩니다. dpkg-source 도구는 이러한 데비안 소스 아카이브를 묶거 나 푸는 역할을 하며, 자세한 내용은 해당 매뉴얼 페이지에서 제 공됩니다. (apt-get 프로그램을 dpkg-source의 프런트엔드로 사용 할 수 있습니다.) 패키지 시스템을 이용한 소프트웨어 설치는 패키지 관리자가 세심하게 설계한 "의존성"을 사용합니다. 이러한 의존성은 각 패키지와 관련된 control 파일에 문서화되어 있습니다. 예를 들어, GNU C 컴파일러 패 키지 (gcc)는 링커와 어셈블러를 포함하는 binutils 패키지에 "의존"     합니다. 만약 사용자가 binutils를 먼저 설치하지 않고 gcc 설치를 시 도하면, 패키지 관리 시스템(dpkg)은 binutils가 필요하다는 오류 메 시지를 보내고 gcc 설치를 중단합니다. (단, 사용자의 의지에 따라 이 기능을 무시할 수 있습니다. dpkg(8)를 참조하십시오.) 자세한 내용은 아래의 7.9절. “패키지 Depend, Recommend, Suggest, Conflict, Replace, Break 또는 Provide 뜻은 무엇인가요?”를 보십시오.     데비안 패키지 도구 사 용: * 패키지 또는 패키지 일부를 다루고 관리하며, * 패키지 안의 파일 지역 무시 관리,     * 패키지 아카이브 구축에서 개발자 돕기, 그리고 * 원격 아카이브 사이트에 있는 패키지를 설치하는 사용 자 돕기. 7.2. 데비안 바이너리 패키지 형식은 무엇인가요? 데비안 "패키지" 또는 데비안 아카이브 파일은 특정 프로그램 또는 관     련 프로그램과 관련된 실행 파일, 라이브러리 및 문서를 포함합니다. 보통, 데비안 아카이브 파일의 파일 이름은 .deb 로 끝납니다. 데비안 바이너리 패키지 형식 내부는 deb(5) 설명서 페이지에 설명합     니다. 내부 형식은 변경될 수 있으며 (Debian GNU/Linux 메이저 릴리 스 사이), 그러므로 .deb 파일을 저수준으로 다루려면 언제나 dpkg-deb(1) 을 쓰십시오. 7.3. 데비안 패키지 파일 이름은 왜 그리 긴가요? 데비안 바이너리 패키지의 파일 이름은 다음과 같은 명명 규칙을 따릅     니다: <데비안패키지명>_<버전번호>-<데비안리비전번호>_<데비안아키 텍처>.deb     특정 데비안 아카이브 파일(.deb 파일)과 연관된 패키지 이름을 확인 하는 방법은 다음 중 하나로 할 수 있습니다: * 데비안 아카이브 사이트의 패키지가 저장된 디렉토리 내에 있는 "Packages" 파일을 검사하십시오. 이 파일에 각 패키지를 설명하 는 절이 포함되어 있으며, 각 절의 첫 번째 필드가 바로 공식 패 키지 이름입니다.     * dpkg --info PPP_VVV-RRR_AAA.deb 명령어를 사용하십시오 (여기서 PPP, VVV, RRR, AAA는 각각 해당 패키지의 이름, 버전, 개정 번 호, 아키텍처). 이 명령어를 실행하면 아카이브 파일의 압축을 풀 었을 때 나타날 실제 패키지 이름을 포함하여 여러 정보를 보여줍 니다. VVV 구성요소는 업스트림 개발자가 지정한 버전 번호입니다. 이 부분     에는 정해진 표준이 없기 때문에, 버전 번호의 형식은 "19990513" 및 "1.3.8pre1" 등 매우 다양할 수 있습니다. RRR 구성요소는 데비안 개정 번호로, 데비안 개발자(또는 패키지를 로 컬에서 직접 다시 빌드하려는 사용자)가 지정합니다. 이 번호는 데비     안 패키지의 개정 수준을 나타내며, 따라서 새로운 개정 번호는 보통 데비안 Makefile(debian/rules), 데비안 control 파일(debian/ control), 설치 또는 제거 스크립트(debian/p*), 또는 패키지에 사용 되는 설정 파일들에 변경 사항이 생겼음을 나타냅니다. AAA 구성요소는 해당 패키지가 빌드된 프로세서 아키텍처를 식별합니 다. 일반적으로 AMD64, Intel 64 또는 VIA Nano 칩을 뜻하는 amd64가     주로 쓰입니다. 그 외의 다른 가능성에 대해서는 6.7절. “데비안 아카 이브에 있는 그 모든 디렉터리는 무엇인가요?”에 설명된 데비안 아카 이브 디렉터리 구조를 검토하십시오. 자세한 내용은 매뉴얼 페이지 dpkg-architecture(1)의 "Debian architecture" 설명을 보십시오. 7.4. 데비안 control 파일은 무엇인가요? 데비안 control 파일 내용에 관한 자세한 사항은 데비안 정책 매뉴얼     (Debian Policy Manual) 5장에 있습니다. 12.1절. “데비안 시스템에 다른 어떤 문서가 있나요?”를 보십시오.     데비안 패키지 hello 간단한 control 파일이 아래 에: Package: hello Version: 2.9-2+deb8u1 Architecture: amd64 Maintainer: Santiago Vila Installed-Size: 145 Depends: libc6 (>= 2.14) Conflicts: hello-traditional Breaks: hello-debhelper (<< 2.9) Replaces: hello-debhelper (<< 2.9), hello-traditional     Section: devel Priority: optional Homepage: https://www.gnu.org/software/hello/ Description: example package based on GNU hello The GNU hello program produces a familiar, friendly greeting. It allows non-programmers to use a classic computer science tool which would otherwise be unavailable to them. . Seriously, though: this is an example of how to do a Debian package. It is the Debian version of the GNU Project's "hello world" program (which is itself an example for the GNU Project). Package 필드는 패키지 이름을 나타냅니다. 이것은 패키지 도구들이     패키지를 조작할 때 사용하는 이름이며, 보통 데비안 아카이브 파일 이름의 첫 번째 구성 요소 문자열과 비슷하지만 반드시 같아야 하는 것은 아닙니다. Version 필드는 7.3절. “데비안 패키지 파일 이름은 왜 그리 긴가요?”     에서 설명한 바와 같이 업스트림 개발자의 버전 번호와 (마지막 구성 요소에서) 이 프로그램의 데비안 패키지 리비전 레벨을 모두 나타냅니 다.     Architecture 필드는 이 특정 바이너리가 컴파일된 칩을 명시 합니다.     Depends 필드는 이 패키지를 성공적으로 설치하기 위해 반드시 설치되 어야 하는 패키지 목록을 나타냅니다. Installed-Size는 설치된 패키지가 얼마나 많은 디스크 공간을 소비하     는지를 나타냅니다. 이는 프로그램 설치에 사용할 수 있는 디스크 공 간이 충분한지 보여주기 위해 설치 프런트엔드에서 사용하도록 고안되 었습니다.     Section 줄은 이 데비안 패키지가 데비안 아카이브 사이트의 어느 "섹 션"에 저장되어 있는지를 나타냅니다. Priority는 설치 시 이 패키지가 얼마나 중요한지를 나타내며, apt 또 는 aptitude 같은 반지능형(semi-intelligent) 소프트웨어가 패키지를     예를 들어 선택적으로 설치된 패키지와 같은 카테고리로 분류할 수 있 게 해줍니다. 7.7절. “Essential, Required, Important, Standard, Optional, Extra 패키지는 무엇인가요?”를 참조하십시오.     Maintainer 필드는 현재 이 패키지의 유지를 책임지고 있는 사람의 이 메일 주소를 나타냅니다.     Description 필드는 패키지 기능에 대한 짧은 요약을 나타 냅니다. 패키지가 가질 수 있는 모든 가능한 필드에 대한 더 자세한 정보는 데     비안 정책 매뉴얼(Debian Policy Manual)의 5절, "Control files and their fields" 12.1절. “데비안 시스템에 다른 어떤 문서가 있나요?” 보십시오. 7.5. 데비안 conffile은 무엇인가요? Conffile은 패키지 관리 시스템이 패키지를 업그레이드할 때 덮어쓰지 않는 설정 파일(대개 /etc 디렉터리에 위치)의 목록입니다. 이는 해당     파일 내용에 설정된 로컬 값(사용자 설정)을 그대로 보존하도록 보장 하며, 가동 중인 시스템에서 패키지를 즉시 업그레이드할 수 있게 해 주는 핵심적인 기능입니다.     업그레이드 중에 정확히 어떤 파일들이 보존되는지 확인하려면 실행할 명령어:     dpkg --status package     그리고 "Conffiles:" 아래 보십시 오. 7.6. 데비안 preinst, postinst, prerm, 그리고 postrm script 는 무엇인 가요? 이 파일은 패키지가 설치되거나 제거되기 전 또는 후에 자동으로 실행     되는 실행 가능한 스크립트입니다. control이라는 이름의 파일과 더불 어, 이 모든 파일은 데비안 아카이브 파일의 "control" 섹션에 들어갑 니다.     각 파일은: preinst 이 스크립트는 해당 스크립트가 들어간 패키지가 데비안 아카이브 (".deb") 파일에서 압축이 풀리기 전에 실행됩니다. 많은 'preinst' 스크립트는 업그레이드 중인 패키지 서비스를 정지시키 며, 이 서비스는 설치 또는 업그레이드가 완료될 때까지(즉, 'postinst' 스크립트가 성공적으로 실행) 정지 상태를 유지합니 다. postinst 이 스크립트는 일반적으로 패키지 foo가 데비안 아카이브(".deb") 파일로부터 압축이 풀린 후, foo 패키지에 필요한 모든 설정을 완     료합니다. 많은 postinst 스크립트는 새 패키지의 설치 또는 업그 레이드가 완료된 후, 서비스를 시작 또는 재시작하는 데 필요한 명령을 실행합니다. prerm 이 스크립트는 대개 패키지와 관련된 모든 데몬을 정지시킵니다. 이 스크립트는 패키지와 관련된 파일들이 제거되기 전에 실행됩니 다. postrm 이 스크립트는 대개 foo와 관련된 링크나 다른 파일들을 수정하거 나, 패키지가 생성했던 파일을 제거합니다. (7.8절. “가상 패키지 는 무엇인가요?” 보시오.)" 현재 모든 제어 파일은 /var/lib/dpkg/info 디렉터리에서 찾을 수 있 습니다. 패키지 foo와 관련된 파일들은 이름이 "foo" 로 시작하며, 용     도에 따라"preinst", "postinst" 등의 확장자를 가집니다. 해당 디렉 터리에 있는 foo.list 파일은 패키지 foo와 함께 설치된 모든 파일의 목록을 담고 있습니다. (단, 이 파일 위치는 dpkg의 내부적인 사항이 므로, 이에 의존하여 작업을 수행하면 안 됩니다.) 7.7. Essential, Required, Important, Standard, Optional, Extra 패키지 는 무엇인가요?     각 데비안 패키지는 배포판 관리자가 우선순위(priority)를 할당하여, 패키지 관리 시스템을 돕습니다. 그 우선순위: * Required: 시스템 정상 동작을 위해 반드시 필요한 패키지. 여기에는 시스템 결함을 수리하는 데 필요한 모든 도구가 들어갑 니다. 이 패키지를 삭제하면 안 되며, 삭제하면 시스템이 완전히 망가져 상황을 되돌리기 위해 dpkg조차 사용할 수 없게 될 수도 있습니다. Required 패키지만 설치된 시스템은 아마 정상 사용이 불가능하겠지만, 시스템 관리자가 부팅을 하고 추가 소프트웨어를 설치할 수 있을 만큼의 기능은 갖추고 있습니다. * Important 패키지는 모든 유닉스 비슷한 시스템에서 공통적으로 찾을 수 있는 패키지. 시스템이 제대로 동작하지 않거나 사용하기 어려운 상황을 막으려 고 그 밖의 패키지들이 여기에 들어갑니다. 여기에는 Emacs, X, TeX 또는 기타 대규모 애플리케이션은 안 들어갑니다. 이 패키지 는 오직 최소한의 인프라만 구성합니다. * Standard 패키지는 모든 리눅스 시스템의 표준이 되는 패키지들 로, 상당히 작지만 너무 제약적이지는 않은 문자 모드 (character-mode) 시스템이 들어있습니다. 여기에는 (mutt 사용)     이메일을 보내거나 아카이브 서버에서 파일을 다운로드할 수 있는 도구들이 들어갑니다. 사용자가 다른 항목을 선택하지 않으면 기본적으로 설치되는 패키 지입니다. 많은 커다란 애플리케이션을 포함하지는 않지만, Python 인터프리터와 (원격 관리를 위한) OpenSSH, 및 (메일 전송 을 위한, 단 로컬 전송 전용으로도 설정 가능한) Exim과 같은 일 부 서버 소프트웨어가 들어갑니다. 또한 대부분의 사용자에게 도 움이 될 만한 일반적인 공통 문서도 들어갑니다. * Optional 패키지는 해당 패키지가 무엇인지 잘 모르더라도 설치하 는 것이 합리적인 모든 패키지, 또는 특별한 요구 사항이 없는 패 키지를 포함합니다. 여기에는 X, 전체 TeX 배포판, 그리고 수많은 애플리케이션이 들 어갑니다. * Extra: 우선순위가 더 높은 다른 패키지와 충돌하거나, 해당 패키 지가 무엇인지 이미 알고 있는 경우에만 유용할 가능성이 높은 패 키지, 또는 "Optional"로 분류하기에 부적절한 특수한 요구 사항 이 있는 패키지. 기본값 데비안을 설치하면 우선순위가 Standard 이상인 패키지가 모두     시스템에 설치됩니다. 만약 미리 정의된 task를 선택하면 이보다 우선 순위가 낮은 패키지도 함께 설치될 겁니다. 또한, 일부 패키지는 시스템의 적절한 동작에 절대적으로 필요하기 때     문에 Essential로 표시됩니다. 패키지 관리 도구는 이러한 패키지를 지우는 것을 거부합니다. 7.8. 가상 패키지는 무엇인가요? 가상 패키지란 비슷한 기본 기능을 제공하는 패키지 그룹 전체에 적용 되는 일반적인 명칭입니다. 예를 들어, konqueror 및 firefox-esr 프     로그램은 모두 웹 브라우저이므로, 시스템에서 제대로 동작하거나 유 용하게 쓰이기 위해 웹 브라우저를 필요로 하는 프로그램의 의존성을 충족시킬 수 있어야 합니다. 따라서 이 두 프로그램은 모두 www-browser라고 불리는 "가상 패키지"를 제공한다고 말합니다. 마찬가지로, exim4와 sendmail 둘 다 메일 전송 에이전트(MTA) 기능을 제공합니다. 따라서 이들은 "mail-transport-agent"라는 가상 패키지     를 제공한다고 말합니다. 둘 중 하나만 설치되어 있어도, mail-transport-agent 설치에 의존하는 모든 프로그램은 이 가상 패키 지의 존재를 통해 의존성이 충족됩니다. 데비안은 동일한 가상 패키지를 제공하는 패키지가 시스템에 여러 개 설치되어 있을 경우, 시스템 관리자가 그중 하나를 선호하는 패키지로 설정할 수 있는 메커니즘을 제공합니다. 관련 명령어는     update-alternatives, 이에 대한 자세한 설명은 11.11절. “어떤 사용 자는 mawk를 좋아하고, 다른 사람은 gawk를 좋아합니다. 어떤 사람은 vim을 다른 사람은 elvis를 좋아합니다. 어떤 사람은 trn을 다른 사람 은 tin을 좋아합니다. 데비안은 다양성을 어떻게 지원하나요?”에 있습 니다. 7.9. 패키지 Depend, Recommend, Suggest, Conflict, Replace, Break 또는 Provide 뜻은 무엇인가요? 데비안 패키지 시스템은 특정 시스템에서 프로그램 A가 프로그램 B의     존재 여부와 상관없이 독립적으로 동작할 수 있는 수준을 (단일 플래 그로) 나타내기 위해 설계된 일련의 패키지 "의존성(dependencies)" 영역을 갖고 있습니다: * 패키지 A가 패키지 B에 의존(depend) 한다는 것은, A를 실행하기 위해 B가 반드시 설치되어 있어야 함을 뜻합니다. 어떤 경우에는 A가 단순히 B에 의존하는 것을 넘어, B의 특정 버전에 의존하기도 합니다. 이 경우 버전 의존성은 대개 하한선으로 작용하며, 이는 A가 지정된 특정 버전보다 최신 상태인 B의 모든 버전에 의존한다 는 뜻입니다. * 패키지 관리자가 판단하기에 대부분의 사용자가 패키지 B가 제공 하는 기능 없이는 패키지 A를 사용하려 하지 않을 것이라고 본다 면, 패키지 A는 패키지 B를 추천(recommend) 합니다. * 패키지 A가 패키지 B를 제안(suggest)한다는 것은, B가 A의 기능 과 관련이 있거나 (보통 A의 기능을) 강화하는 파일들을 포함하고 있음을 뜻합니다. * 패키지 A가 패키지 B와 충돌(conflict)한다는 것은, 시스템에 B가     설치되어 있으면 A가 동작하지 않음을 뜻합니다. 대부분의 경우, A가 B에 있는 파일보다 개선된 버전의 파일을 포함하고 있을 때 충돌이 생깁니다. "충돌(Conflicts)"은 종종 "대체(replaces)"와 조합됩니다. * 패키지 A가 패키지 B를 대체(replace)한다는 것은, B가 설치한 파 일이 제거되고 (어떤 경우에는) A에 들어간 파일들로 덮어써지는 것을 뜻합니다. * 패키지 A가 패키지 B를 깨뜨린다(break)는 것은, 두 패키지가 한 시스템에서 동시에 설정(configured)될 수 없음을 뜻합니다. 패키 지 관리 시스템은 둘 중 하나가 이미 시스템에 설치되어 설정까지 완료된 상태라면, 나머지 하나를 설치하는 것을 거부합니다. * 패키지 A가 패키지 B를 제공(provide)한다는 것은, B의 모든 파일 과 기능이 A에 통합되어 있음을 뜻합니다. 이 메커니즘은 디스크 공간이 제한적인 사용자들이 패키지 A 중에서 실제로 필요한 부분 (B의 기능)만을 취할 수 있는 방법을 제공합니다. 이러한 각 용어의 사용에 관한 더 자세한 정보는 데비안 정책 매뉴얼     7.2절 "바이너리 의존성"에서 찾을 수 있습니다(12.1절. “데비안 시스 템에 다른 어떤 문서가 있나요?” 참조). 7.10. Pre-Depend는 무슨 뜻인가요? "Pre-Depend"는 특별한 형태의 의존성입니다. 대부분의 패키지 경우, dpkg는 시스템에 해당 패키지가 의존하는 파일들이 존재하는지 여부와 상관없이 패키지 아카이브 파일(즉, .deb 파일)의 압축을 풉니다 (unpack). 쉽게 설명하자면, 압축 풀기(unpacking)란 dpkg가 아카이브     파일 내에서 사용자 파일 시스템에 설치될 파일들을 추출하여 제자리 에 배치하는 것을 의미합니다. 만약 해당 패키지들이 시스템 내 다른 패키지의 존재에 의존한다면, dpkg는 그 다른 패키지들이 설치될 때까 지 (설정(configure) 작업을 실행하지 않음으로써) 설치 완료를 거부 합니다. 그러나, 특정 패키지의 경우, dpkg는 특정 의존성이 해결될 때까지 압 축을 푸는 것(unpack)조차 거부하기도 합니다. 이러한 패키지들은 다 른 패키지의 존재에 "선-의존(Pre-depend)"한다고 말합니다. 데비안     프로젝트는 패키지의 압축 해제 순서가 매우 치명적이었던 a.out 형식 에서 ELF 형식으로의 안전한 시스템 업그레이드를 지원하기 위해 이 메커니즘을 도입했습니다. 이 방법은 필수(required) 우선순위를 가진 패키지들과 그들의 LibC 의존성 관계처럼, 대규모 업그레이드가 필요 한 다른 상황에서도 유용합니다.     전처럼, 이에 대한 자세한 내용은 정책 매뉴얼에 있 습니다. 7.11. 패키지 상태에서 unknown, install, remove, purge 및 hold는 무슨 뜻인가요? 이 "want" 플래그는 사용자가 패키지에 대해 무엇을 하려고 했는지를     나타냅니다(사용자가 dpkg/apt/ aptitude 등을 직접 실행하여 지시한 내용에 따라).     그 뜻: * unknown - 사용자가 패키지를 원하는지 여부를 지정하지 않았습니 다. * install - 패키지가 설치되거나. 업그레이드 되기를 사용자가 바 람.     * remove - 사용자가 바라는 것은 패키지 제거, 그러나 설정파일을 제거하는 것을 바라지는 않음. * purge - 사용자가 바라는 것은 패키지를 완전히 제거하는 것, 설 정 파일도 포함. * hold - 사용자는 이 패키지가 처리되지 않기를 바랍니다. 즉, 현 재 상태를 유지하려는 경우입니다. 7.12. 패키지를 보류(hold)하려면 어떻게 하나요?     패키지를 보류하는 3가지 방법. dpkg, apt 또는 aptitude.     명령 dpkg를 사용할 경우, 다음과 같이 패키지 선택 목록을 export:     dpkg --get-selections \* > selections.txt     그다음 생성된 파일 selections.txt 편집하여, hold 하려는 패키지 (예: libc6)가 들어간 줄을 다음과 같은 내용에서 바꾸십시오:     libc6 install     이렇게 :     libc6 hold     파일을 저장하고, 아래 명령어로 dpkg 데이터베이스에 reload:     dpkg --set-selections < selections.txt     명령 apt로, 패키지를 hold     apt-mark hold 패키지명     그리고 hold를 제거하려 면     apt-mark unhold 패키지명     명령 aptitude로, 패키지를 hold 할 수 있습니 다     aptitude hold 패키지명     그리고 hold를 제거하려 면     aptitude unhold 패키지명 7.13. 어떻게 소스 패키지를 설치하나요?     데비안 소스 패키지는 사실 "설치"될 수 없으며, 바이너리 패키지를 만들고자 하는 디렉터리에 패키지가 풀릴 뿐입니다. 소스 패키지는 바이너리 패키지를 구할 수 있는 대부분의 똑같은 미러     사이트에서 배포됩니다. 만약 APT의 sources.list(5) 파일에 적절한 "deb-src" 줄이 들어가도록 설정했다면, 어떤 소스 패키지든 쉽게 다 운로드할 수 있게 다음 명령을 실행     apt-get source foo 소스 패키지를 실제로 빌드하는 데 도움을 주기 위해, 데비안 소스 패 키지는 build-dependencies 메커니즘을 제공합니다. 이는 소스 패키지     관리자가 해당 패키지를 빌드하는 데 필요한 다른 패키지들의 목록을 관리한다는 것을 의미합니다. 이것이 얼마나 유용한지 확인해 보려면, 다음 명령을 실행     apt-get build-dep foo     소스를 빌드 하기 전 에. 7.14. 어떻게 바이너리 패키지를 소스 패키지에서 만드나요? 선호하는 방법은 다양한 래퍼 도구를 사용하는 것입니다. 우리는 그것     이 어떻게 이루어졌는지 devscripts 도구를 써서 보여줄 겁니다. 아직 설치하지 않았다면 이 패키지를 설치하십시오.     이제, 먼저 소스 패키지를 얻습니 다:     apt-get source foo     그리고 소스 트리로 바꿉니 다:     cd foo-*     필요한 빌드종속 설치(있다 면):     sudo apt-get build-dep foo     그런 다음, 여러분만의 전용 빌드 버전을 생성하십시오 (나중에 데비 안에서 새로운 버전을 릴리스했을 때 혼동되지 않도록 하기 위함):     dch -l local 'Blah blah blah'     마지막으로 패키지 빌 드:     debuild -us -uc     모든 과정이 정상적으로 진행되었다면, 이제 다음 명령어를 실행하여 패키지를 설치할 수 있습니다     sudo dpkg -i ../*.deb     만약 수동으로 작업을 처리하는 것을 선호하고, devscripts를 사용하 고 싶지 않다면 다음 절차를 따르십시오: 소스 코드를 컴파일하려면 foo_*.dsc, foo_*.tar.gz, 그리고     foo_*.debian.tar.xz 파일이 모두 필요합니다 (참고: 데비안 네이티브 패키지 중 일부는 .debian.tar.xz 파일이 없음).     파일을 갖고 있고(7.13절. “어떻게 소스 패키지를 설치하나요?” 참조) dpkg-dev 패키지가 설치되어 있다면, 다음 명령어:     dpkg-source -x foo_version-revision.dsc     foo-version 이름의 디렉터리에 패키지 압축을 해제합 니다.     패키지를 컴파일하기만 하려는 경우, foo-version 디렉터리로 들어가 서(cd) 다음 명령을 실행하면 됩니다.     dpkg-buildpackage -rfakeroot -b     패키지를 빌드하려면 (이것은 fakeroot 패키지 필요함을 주의), 그 리고     dpkg -i ../foo_version-revision_arch.deb     새로 빌드한 패키지를 설 치. 7.15. 데비안 패키지를 내 스스로 만들려면 어떻게 하나요? 이에 대한 자세한 설명을 보려면 New Maintainers' Guide maint-guide 패키지 또는 https://www.debian.org/doc/devel-manuals#maint-guide     (https://www.debian.org/doc/devel-manuals#maint-guide) , 또는 Guide for Debian Maintainers, debmake-doc 패키지 https:// www.debian.org/doc/devel-manuals#debmake-doc (https:// www.debian.org/doc/devel-manuals#debmake-doc) 읽으십시오. 8장. 데비안 패키지 관리 도구 8.1. 데비안은 패키지를 다루는 무슨 프로그램을 제공하나요? 그래픽 또는 텍스트 기반 인터페이스부터 패키지 설치에 사용되는 저     수준 도구에 이르기까지 데비안 패키지를 관리하는데 사용되는 여러 도구가 있습니다. 사용 가능한 모든 도구는 더 낮은 수준 도구에 의존 하여 올바르게 동작하며, 여기에 복잡도를 낮추어 표시합니다. aptitude 또는 synaptic 같은 높은 수준 패키지 관리 도구는 그 자체     가 시스템에서 패키지를 관리하려면 dpkg에 의존한다는 것을 이해하는 것이 중요합니다. 데비안 패키지 관리 유틸리티에 대한 자세한 내용을 보려면 데비안 참 조 (https://www.debian.org/doc/manuals/debian-reference/) 의 제2 장. 데비안 패키지 관리 (https://www.debian.org/doc/manuals/     debian-reference/ch02.en.html) 를 참조하십시오. 이 문서는 다양한 언어와 형식으로 제공됩니다. DDP 사용자 매뉴얼 안의 데비안 참조 (https://www.debian.org/doc/user-manuals#quick-reference) 를 보십 시오. 8.1.1. dpkg     이것은 주요 패키지 관리 프로그램입니다. dpkg를 여러 옵션으로 호출 할 수 있습니다. 공통 용도: * 모든 옵션 찾기: dpkg --help. * 지정된 패키지에 대한 제어 파일(및 기타 정보)을 출력: dpkg --info foo_VVV-RRR.deb. * 하드 디스크 파일 시스템에 패키지(패키지 풀기 및 구성 포함)를 설치: dpkg --install foo_VVV-RRR.deb. * 하드 디스크의 파일 시스템에 데비안 아카이브의 압축을 풉니다 (configure 안 함): dpkg --unpack foo_VVV-RRR.deb. 이 명령이 반드시 패키지를 사용 가능한 상태로 남겨두는 것은 아닙니다: 일 부 파일은 제대로 실행하려면 추가 사용자 지정이 필요할 수 있습 니다. 이 명령은 프로그램의 이미 설치된 모든 버전을 제거하고 패키지와 관련된 preinst( 7.6절. “데비안 preinst, postinst, prerm, 그리고 postrm script 는 무엇인가요?” 참조) 스크립트를 실행합니다.     * 이미 푼 패키지를 구성: dpkg --configure foo. 무엇보다 이 액션 은 패키지 관련된 postinst (7.6절. “데비안 preinst, postinst, prerm, 그리고 postrm script 는 무엇인가요?” 참조)를 실행합니 다. 이 패키지를 위해 conffiles 에 나열된 파일을 업데이트합니 다. 주의하십시오. 'configure' 연산은 그 패키지 이름 (예시, foo)을 받습니다, 데비안 아카이브 파일 이름(예시, foo_VVV-RRR.deb) 아님. * 데비안 아카이브에서 단일 파일 "blurf"(또는 "blurf*" 파일 그 룹)을 추출: dpkg --fsys-tarfile foo_VVV-RRR.deb | tar -xf - 'blurf*'. * 패키지 제거 (설정 파일은 아님): dpkg --remove foo. * 패키지 제거 (설정 파일 포함): dpkg --purge foo. * 문자열(또는 정규식) "foo*"가 들어간 패키지의 설치 상태를 나 열: dpkg --list 'foo*'. 8.1.2. APT APT는 Advanced Package Tool, apt-get 프로그램을 제공하는 데비안 패키지 시스템에 대한 개선된 인터페이스입니다. 패키지 검색 및 관     리, 패키지에 대한 정보 쿼리, libapt-pkg 라이브러리의 모든 기능에 대한 저수준 액세스를 위한 명령줄 도구를 제공합니다. 자세한 내용은 /usr/share/doc/apt-doc/guide.html/index.html 에 있는 사용자 가이 드를 보십시오.(apt-doc 패키지를 설치해야 될 겁니다) 데비안 Jessie를 시작으로 자주 사용되는 일부 apt-get 및 apt-cache 명령은 새로운 apt 바이너리를 통해 동등한 명령을 제공합니다. 즉, apt-get update, apt-get install, apt-get remove, apt-cache search     , 또는 apt-cache show 같은 일부 인기 있는 명령도 apt, 즉 apt update, apt install, apt remove, apt search, 또는 apt show를 통해 간단히 호출할 수 있습니다. 다음은 이전 명령과 새 명령에 대한 개요 입니다: apt-get update -> apt update apt-get upgrade -> apt upgrade apt-get dist-upgrade -> apt full-upgrade apt-get install package -> apt install package     apt-get remove package -> apt remove package apt-get autoremove -> apt autoremove apt-cache search string -> apt search string apt-cache policy package -> apt list -a package apt-cache show package -> apt show package apt-cache showpkg package -> apt show -a package apt 도구는 apt-get 및 apt-cache의 기능을 병합하며 기본적으로 더     화려한 색상의 출력 형식을 가지고 있어 더 쾌적합니다. 스크립트 또 는 고급 사용 사례에서는 apt-get이 여전히 바람직하거나 필요합니다. apt-get은 여러 소스에서 명령줄을 사용하여 패키지를 검색하고 설치 하는 단순한 방법을 제공합니다. dpkg와는 달리, apt-get은 .deb 파일     을 모르며, 패키지 이름과 함께 동작하며 /etc/apt/sources.list 에서 온 .deb 아카이브만 설치 가능합니다. apt-get은 .deb 아카이브^[5]를 configure 된 소스에서 다운로드 후 dpkg를 부릅니다.     apt-get 사용하는 일반적 방법 몇 가지: * 시스템에 알려진 패키지 목록을 업데이트하려면, 실행하기: apt update (패키지 목록을 업데이트하려면 이 작업을 정기적으로 실행해야 함) * foo 패키지와 그 종속을 설치하려면, 실행하기: apt install foo * 시스템에서 온 foo 패키지를 제거하려면, 실행하기: apt remove foo * 패키지 foo와 시스템에서 온 그 설정 파일을 제거하려면, 실행하 기: apt purge foo     * 새 버전이 가능한 패키지 나열하고 실행하기: apt list --upgradable * 시스템에 있는 모든 패키지 업그레이드(추가 패키지 설치 또는 패 키지 제거 없이)하려면, 실행하기: apt upgrade * 시스템에 있는 모든 패키지 업그레이드, 패키지 업데이트 필요하 면, 추가 패키지 설치 또는 패키지 제거 하려면 실행하기: apt full-upgrade (upgrade 명령은 업그레이드 시 새로운 의존성을 충족하기 위해 추가 패키지 설치가 필요한 경우, 해당 패키지를 업그레이드하지 않고 이미 설치된 구버전 상태로 유지합니다. 반면 full-upgrade 명령어는 이보다 덜 보수적으로 동작하여 필요한 패키지를 적극적 으로 설치합니다.)     패키지를 변경하는 명령을 실행하려면 반드시 root 로 로그인하십 시오. apt-get은 이제 추천 패키지도 기본적으로 설치하며, 프로그램의 견고     함 덕분에 콘솔 환경에서 시스템 설치 및 주요 시스템 업그레이드를 수행할 때 가장 선호되는 패키지 관리 프로그램입니다. apt 도구 모음에는 패키지 목록을 조회하기 위한 apt-cache 도구도 들 어 있습니다. 이 도구를 이용하면 단순 텍스트나 정규 표현식 질의를     통해 특정 기능을 제공하는 패키지를 찾을 수 있으며, 패키지 관리 시 스템의 의존성 관계를 조회할 수도 있습니다. apt-cache를 사용하는 몇 가지 일반적인 방법: * 설명에 단어가 포함된 패키지를 찾기: apt search 단어 * 패키지의 자세한 정보 출력: apt show 패키지     * 주어진 패키지가 의존하는 패키지 출력: apt-cache depends 패키지 * 패키지의 가용한 버전 정보와 해당 패키지에 역의존성 (reverse-depends)이 있는 패키지들에 대한 상세 정보를 출력: apt-cache showpkg 패키지 더 자세한 정보는 apt 패키지를 설치하고 apt(8), apt-get(8),     sources.list(5) 매뉴얼 페이지를 읽어보십시오. 또한 apt-doc 패키지 를 설치한 후 /usr/share/doc/apt-doc/guide.html/index.html 파일을 읽으십시오. 8.1.3. aptitude aptitude는 apt 패키지 관리 인프라의 프런트엔드를 제공하는 데비안     시스템용 패키지 관리자입니다. aptitude는 curses 라이브러리를 사용 하는 텍스트 기반 인터페이스입니다. 작업은 시각적 인터페이스나 명 령줄(커맨드 라인)에서 수행할 수 있습니다. aptitude를 사용하면 관리 작업을 빠르고 쉽게 수행할 수 있습니다.     사용자는 패키지 목록을 보고 패키지 설치, 업그레이드, 제거 같은 패 키지 관리 작업을 수행할 수 있습니다.     aptitude는 apt-get의 기능 뿐 아니라, 다음과 같은 많은 추가 기능들 을 제공합니다: * aptitude 는 패키지의 모든 버전에 쉬운 접근을 제공합니다. * aptitude는 더 이상 사용되지 않는 소프트웨어를 "Obsolete and Locally Created Packages" 항목 아래에 나열하여 이를 쉽게 추적 할 수 있게 해줍니다. * aptitude는 특정 패키지를 검색하고 패키지 표시 범위를 제한할 수 있는 상당히 강력한 시스템을 포함하고 있습니다. mutt의 표현     식 구문에서 영감을 얻었기 때문에, mutt에 익숙한 사용자라면 이 시스템을 빠르게 익힐 수 있습니다. * aptitude를 사용하여 미리 정의된 task를 설치할 수 있습니다. 자 세한 내용은 8.1.5절. “tasksel” 참조. * aptitude 전체 화면 모드는 su 기능이 내장되어 있어 일반 사용자 계정으로도 실행할 수 있습니다. 관리자 권한이 실제로 필요한 작 업이 발생하면 su를 호출하며 (root 암호가 설정되어 있다면) root 암호를 물어봅니다. aptitude는 시각적 인터페이스(단순히 aptitude 실행)를 통해 사용하     거나 명령줄에서 직접 사용할 수 있습니다. 사용되는 명령줄 구문은 apt-get에서 사용하는 것과 매우 비슷합니다. 예를 들어, foo 패키지 를 설치하려면 aptitude install foo를 실행할 수 있습니다.     aptitude는 콘솔에서 일상적인 패키지 관리를 수행할 때 권장되는 프 로그램입니다.     더 자세한 정보는 매뉴얼 페이지 aptitude(8)을 읽고 aptitude-doc 패 키지를 설치하십시오. 8.1.4. synaptic synaptic은 그래픽 패키지 관리자입니다. 사용자에게 친숙한 방식으로 소프트웨어 패키지를 설치, 업그레이드 및 제거할 수 있습니다. 적성     에 의해 제공되는 대부분의 기능과 함께 사용된 리포지터리 목록을 편 집할 수 있는 기능도 있으며 패키지와 관련된 사용 가능한 모든 문서 를 탐색할 수 있습니다. 자세한 내용은 Synaptic 웹사이트 (https:// www.nongnu.org/synaptic/) 를 참조하십시오. 8.1.5. tasksel 특정 작업을 수행하려고 할 때 요구 사항을 충족하는 적절한 패키지 제품군을 찾는 것이 어려울 수 있습니다. 데비안 개발자는 task를 정     의했는데, task는 특정 활동과 관련된 여러 개별 데비안 패키지의 모 음입니다. task는 tasksel 프로그램 또는 aptitude 를 통해 설치할 수 있습니다. 일반적으로 데비안 설치 프로그램은 표준 시스템 및 데스크톱 환경과 관련된 작업을 자동으로 설치합니다. 설치된 특정 데스크톱 환경은 사 용되는 CD/DVD 미디어에 따라 달라지며, 가장 일반적으로 GNOME 데스     크톱(gnome-desktop 태스크)입니다. 또한 설치 프로세스 전체에서 선 택한 항목에 따라 시스템에 작업이 자동으로 설치될 수 있습니다. 예 를 들어, 영어 이외의 언어를 선택한 경우 연결된 태스크도 자동으로 설치됩니다. 8.1.6. 다른 패키지 관리 도구 8.1.6.1. dpkg-deb     이 프로그램은 데비안 아카이브(.deb) 파일을 다룹니다. 몇 가지 일반 적인 용도: * 모든 옵션 찾기: dpkg-deb --help. * 데비안 아카이브 파일에 어떤 파일이 들어있는지 확인: dpkg-deb --contents foo_VVV-RRR.deb * 지정된 데비안 아카이브에 들어있는 파일들을 사용자가 지정한 디     렉터리에 추출합니다: dpkg-deb --extract foo_VVV-RRR.deb tmp는 foo_VVV-RRR.deb에 들어있는 각 파일들을 tmp/ 디렉터리에 추출합 니다. 이는 패키지를 루트 파일 시스템에 설치하지 않고, 국소적 인 디렉터리 내에서 패키지의 내용을 조사할 때 편리합니다. * 패키지에서 제어 정보 파일들을 추출: dpkg-deb --control foo_VVV-RRR.deb tmp. dpkg-deb --extract를 써서 단순히 풀기만 한 패키지들은 올바르게 설     치되지 않는다는 점에 유의하십시오. 대신 dpkg --install을 사용하십 시오.     더 자세한 정보는 매뉴얼 페이지 dpkg-deb(1)에 있습 니다. 8.2. 데비안은 실행 중인 프로그램을 업데이트할 수 있다고 주장합니다. 이것이 어떻게 이루어지나요?     Debian GNU/Linux 시스템의 커널(파일 시스템)은 파일이 사용 중인 동 안에도 파일을 바꾸는 기능을 지원합니다. 우리는 또한 부팅 시 데몬을 시작하거나, 런레벨이 변경될 때(예: 다 중 사용자 모드에서 단일 사용자 모드로 전환되거나 시스템이 정지될     때) 데몬을 중지하는 데 쓰이는 start-stop-daemon 프로그램을 제공합 니다. 데몬을 포함한 새 패키지가 설치될 때 설치 스크립트에서도 이 와 같은 프로그램을 사용하여, 실행 중인 데몬을 중지하고 필요에 따 라 다시 시작합니다. 8.3. 데비안 시스템에 이미 설치된 패키지가 무엇인지 어떻게 아나요?     데비안 시스템에 설치된 모든 패키지의 상태를 확인하려면, 실행할 명령어     dpkg --list 이 명령은 각 패키지에 대해 한 줄 요약을 출력하며, 여기에는 (헤더     에 설명된) 두 글자 상태 기호, 패키지 이름, 설치된 버전, 그리고 짧 은 설명이 포함됩니다.     이름이 "foo"로 시작하는 패턴과 일치하는 패키지들의 상태를 확인하 려면, 실행할 명령어:     dpkg --list 'foo*'     특정 패키지에 대한 더 상세한 보고서를 확인하려면, 실행할 명령어:     dpkg --status packagename 8.4. 설치된 패키지의 파일 목록을 표시하려면 어떻게 하나요?     설치된 패키지 foo에서 제공하는 모든 파일의 목록을 나열하려면 실행 할 명령어.     dpkg --listfiles foo     설치 스크립트에 의해 생성된 파일들은 표시되지 않는다는 점 유의 하십시오. 8.5. 특정 파일이 무슨 패키지에 의해 생성되었는지 확인하려면 어떻게 하 나요?     이름이 foo인 파일을 생성한 패키지를 식별하려면, 다음 중 하나 를 실행: * dpkg --search foo 이것은 설치된 패키지 중에서 foo를 검색합니다. (이 방식은 (현 재) /var/lib/dpkg/info/ 디렉터리에 있는 확장자가 .list인 모든 파일을 검색하여, 해당 파일을 포함하고 있는 모든 패키지의 이름 과 diversion을 출력하도록 결과를 조정하는 것과 같습니다.) 이에 대한 더 빠른 대안은 dlocate 도구. dlocate -S foo * zgrep foo Contents-ARCH.gz 이것은 전체 경로 이름에 foo 부분문자열이 포함된 파일들을 검색 합니다. Contents-ARCH.gz 파일(여기서 ARCH는 원하는 아키텍처를 나타냄)은 데비안 아카이브 사이트의 주요 패키지 디렉터리(main,     non-free, contrib) 내(/debian/dists/trixie 아래)에 있습니다. Contents 파일은 해당 파일이 위치한 하위 디렉터리 트리에 속한 패키지들만 참조합니다. 따라서 사용자는 파일 foo가 포함된 패키 지를 찾기 위해 하나 이상의 Contents 파일을 검색해야 할 수도 있습니다. 이 방법은 현재 시스템에 설치되어 있지 않은 패키지에 포함된 파 일들도 찾아낼 수 있다는 점에서 dpkg --search보다 유리합니다. * apt-file search foo 만약 apt-file 패키지를 설치하면, 위에서 언급한 것과 비슷하게 전체 경로 이름에 부분 문자열이나 정규 표현식 foo가 포함된 파 일들을 검색합니다. 위 사례와 비교했을 때의 장점은 Contents-ARCH.gz 파일들을 직접 가져올 필요가 없다는 것입니다. (root 권한으로) apt-file update를 실행하면 /etc/apt/ sources.list에 정의된 모든 소스에 대해 이 작업을 자동으로 수 행하기 때문입니다. 8.6. 나는 "foo"를 설치 제거했는데 왜 "foo-data"는 안 없어지나요? 안 쓰는 오래된 라이브러리 패키지를 purge 하려면 어떻게 하나요? 일부 패키지는 프로그램("foo")과 데이터("foo-data") (또는 "foo" 및 "foo-doc")로 나뉩니다. 이는 데비안의 많은 게임, 멀티미디어 애플리     케이션, 사전 프로그램에 적용되는 방식입니다. 이렇게 분리한 이유는 일부 사용자가 프로그램을 설치하지 않고도 원본 데이터에만 접근하고 싶어 할 수 있고, 데이터 없이 프로그램만 실행할 수도 있어 "foo-data"를 선택 사항으로 만들기 위해서입니다. 라이브러리를 다룰 때도 비슷한 상황이 생깁니다: 일반적으로 응용 프 로그램이 포함된 패키지가 라이브러리에 의존하기 때문에 라이브러리     가 함께 설치됩니다. 응용 프로그램 패키지를 purge 하더라도 해당 라 이브러리 패키지는 시스템에 그대로 남을 수 있습니다. 또 다른 사례 로, 응용 프로그램 패키지가 업그레이드 되면서 더 이상 libdb4.2에 의존하지 않고 libdb4.3에 의존하는 경우. 이 경우 "foo-data"는 "foo"에 의존하지 않으므로, "foo" 패키지를 제 거해도 대부분의 패키지 관리 도구에서 "foo-data"가 자동으로 제거되 지 않습니다. 이는 라이브러리 패키지의 경우도 마찬가지입니다. 이렇 게 처리하는 이유는 순환 의존성(circular dependencies) 문제를 방지     하기 위해서입니다. 그러나, 패키지 관리 도구로 apt-get( 8.1.2절. “APT” 참조) 또는 aptitude (8.1.3절. “aptitude” 참조)를 사용한다 면, 이 도구들이 자동으로 설치된 패키지들을 추적하여 시스템에 이를 사용하는 패키지가 더 이상 남아 있지 않을 때 제거할 수 있는 기능을 제공할 것입니다. --------------------------------------------------------------------- ^[5] 레드햇 패키지 매니저 같은 다른 패키지 관리 시스템에서 이 도     구를 사용할 수 있도록 하는 포트도 있으며, 이는 rpm으로도 알려져 있습니다 9장. 데비안 시스템 최신으로 유지하기 데비안 목표 중 하나는 일관된 업그레이드 경로와 안전한 업그레이드 프로세스를 제공하는 것입니다. 우리는 항상 새로운 버전으로 업그레     이드하려고 최선을 다합니다. 업그레이드 프로세스에 추가해야 할 중 요한 참고 사항이 있으면 패키지는 사용자에게 경고를 보내며, 발생 가능한 문제에 대한 해결책을 종종 제공합니다. 특정 업그레이드에 대한 자세한 내용을 설명하는 릴리스 노트 문서도 읽어야 합니다. 이것은 데비안 웹사이트 https://www.debian.org/     releases/stable/releasenotes (https://www.debian.org/releases/ stable/releasenotes) 에서 구할 수 있으며, 데비안 CD, DVD 및 블루 레이 디스크로도 제공됩니다. 9.1. 어떻게 내 데비안 시스템을 현재로 유지하나요? 데비안 아카이브를 방문한 다음 원하는 파일을 찾을 때까지 디렉터리 를 읽고 가져온 다음 dpkg 을 사용하여 설치할 수 있습니다. 실행 중     인 시스템에도 dpkg 업그레이드 파일이 설치됩니다. 때때로 수정된 패 키지는 다른 패키지의 새로 수정된 버전을 설치해야 하며, 이 경우 다 른 패키지가 설치되기 전까지는 설치가 실패합니다. 데비안이 매우 빠르게 진화하기 때문에 이 접근 방식이 시간이 너무 많이 걸린다고 많은 사람이 생각합니다. 보통 매주 12개 이상의 새로     운 패키지를 업로드합니다. 이 수는 새 주요 릴리스 직전에 더 큽니 다. 이 눈사태에 대처하려고 많은 사람은 더 자동화된 방법을 사용하 는 것을 좋아합니다. 이 목적으로 여러 가지 다른 패키지를 사용할 수 있습니다: 9.1.1. aptitude     aptitude 는 추천하는 Debian GNU/Linux 시스템 용 패키지 매니저이 고, 설명은 8.1.3절. “aptitude” 에 있습니다. aptitude를 사용하여 업그레이드를 만들기 전에 /etc/apt/     sources.list 파일을 편집해야 합니다. 데비안의 최신 안정 버전으로 업그레이드하려면 다음과 같은 소스를 사용하는 것이 좋습니다:     http://deb.debian.org/debian stable main contrib 미러 https://deb.debian.org/ (https://deb.debian.org/) 는 콘텐츠 전송 네트워크(CDN)의 지원을 받으며, 이 미러로의 요청은 사용자에게     가장 가까운 인스턴스로 연결됩니다. 만약 사용자 근처에 더 빠른 데 비안 미러가 있다면, deb.debian.org를 해당 미러로 대체할 수 있습니 다. 더 자세한 내용은 https://www.debian.org/mirror/list (https:// www.debian.org/mirror/list) 미러 목록에서 확인하실 수 있습니다. 또는 데비안 미러를 선택하는 문제를 해결하는 것을 목표로 하는 리디 렉터 서비스 httpredir.debian.org를 사용할 수도 있습니다. 사용자의     지리적 위치와 기타 정보를 사용하여 파일을 처리할 수 있는 가장 좋 은 미러를 선택합니다. 이를 활용하려면 다음과 같은 소스를 사용하십 시오:     http://httpredir.debian.org/debian stable main contrib     더 자세한 것은 sources.list(5) 매뉴얼 페이지에 있습 니다.     명령행에서 시스템을 업데이트 하려면 실행하 기를     aptitude update     그 다음에     aptitude full-upgrade     나오는 질문에 답하면 시스템이 업그레이드 될 겁니다. 주의: aptitude는 Debian GNU/Linux 릴리스에서 다른 것으로 업그레이 드 하는 권장 도구는 아닙니다. apt-get 을 대신 쓰십시오. 릴리스 간     업데이트를 하려면 Release Notes (https://www.debian.org/releases/ stable/releasenotes) 를 읽으십시오. 이 문서에서는 이전 릴리스에서 업그레이드에 권장되는 단계와 업그레이드 전에 고려해야 하는 알려진 문제에 대해 자세히 설명합니다.     자세한 것은 매뉴얼 페이지 aptitude(8), 그리고 파일 /usr/share/ aptitude/README 읽어보십시오. 9.1.2. apt-get 및 apt-cdrom     aptitude 대안은 apt-get 이며 이는 APT-기반 명령행 도구 (이미 8.1.2절. “APT”에 설명)입니다.     apt-get, APT-기반 명령행 도구는 패키지를 쉽고 안전하게 설치하고 업그레이드할 수 있는 방법을 제공합니다.     apt-get를 쓰려면, /etc/apt/sources.list 파일을 편집해서 설정하십 시오. 9.1.1절. “aptitude”와 마찬가지입니다.     그다음 실행하기를     apt-get update     그 다음에     apt-get dist-upgrade     나올 수 있는 질문에 답하면 시스템이 업그레이드됩니다. apt-get(8) 매뉴얼 페이지와 8.1.2절. “APT” 보십시오. CD/DVD/BD를 사용하여 패키지를 설치하려면 apt-cdrom 하십시오. 자세     한 내용은 Release Note의 "Adding APT sources from optical media" 참조하십시오. 패키지를 가져와 설치할 때 패키지는 /var 디렉터리 계층에 보관됩니     다. 파티션이 오버플로우되지 않도록 하려면 apt-get clean 및 apt-get autoclean을 사용하여 추가 파일을 삭제하거나 다른 곳으로 이동해야 합니다.(힌트: apt-move 사용) 9.2. 패키지를 업그레이드하려면 꼭 단일 사용자 모드로 가야 하나요? 아뇨. 실행 중인 시스템에서도 패키지를 업그레이드할 수 있습니다.     데비안에는 패키지 업그레이드 중에 필요한 경우 실행 프로세스를 다 시 시작하는 start-stop-daemon 프로그램이 있습니다. 9.3. 디스크에 .deb 보관 파일을 모두 보관해야 하나요?     아뇨. 패키지를 설치한 후 디스크에 파일을 다운로드했으면, aptitude clean 을 실행하여 해당 파일을 시스템에서 제거할 수 있습니다. 9.4. 시스템에 추가한 패키지의 로그를 보관하려면 어떻게 해야 하나요? 업그레이드 및 제거가 언제 발생했는지, 어떤 패키지에 발생했는지 알고 싶습니다!     --log-옵션을 dpkg에 전달하면 dpkg 로그 상태 변경 업데이트 및 조치 가 이루어집니다. dpkg-invokation을 모두 기록합니다.(예를 들어     2005-12-30 18:10:33 install hello 1.3.18 2.1.1-4     ) 그리고 결과 (e.g.     2005-12-30 18:10:35 status installed hello 2.1.1-4     ) 모든 dpkg 호출을 기록하고 싶다면 (aptitude 같은 프런트엔드 사용 한 것 포함), 더하기를     log /var/log/dpkg.log 를 /etc/dpkg/dpkg.cfg에. 만들어진 로그 파일은 주기적으로 돌아갑니     다. logrotate 사용하면, /etc/logrotate.d/dpkg 파일을 아래 행에 더 하여 이것이 수행됩니다 /var/log/dpkg {     missingok notifempty }     dpkg 로깅에 대한 자세한 내용은 dpkg(1) 매뉴얼 페이지에서 확인할 수 있습니다. aptitude는 실행하려는 패키지 설치, 제거 및 업그레이드를 /var/log/     aptitude에 기록한다. 이러한 동작의 결과는 이 파일에 기록되지 않습 니다!     작업을 기록하는 또다른 방법은 패키지 관리 세션을 script(1) 프로그 램 안에서 실행하는 것입니다. 9.5. 자동으로 시스템을 업데이트 할 수 있나요? 예. cron-apt 쓸 수 있습니다. 이 도구는 cron 작업을 사용하여 정기     적으로 시스템을 업데이트합니다. 기본적으로 패키지 목록을 업데이트 하고 새 패키지를 다운로드하기만 하지만 설치는 안 합니다. 주의: 패키지 자동 업그레이드는 testing 또는 unstable 시스템에서는     예상치 못한 행동을 초래하고 예고 없이 패키지를 제거할 수 있으므로 권장하지 않습니다. 9.6. 컴퓨터 여러 대 있습니다. 한 번에 업데이트를 다운로드하려면 어떻 게 하나요?     네트워크에 둘 이상의 데비안 시스템이 있으면, apt-cacher 를 써서 모든 데비안 시스템을 최신 상태로 유지하는 것이 쓸만합니다. apt-cacher 는 백엔드에서 패키지, 릴리스 및 소스 파일 업데이트 빈 도를 제한하고 프록시의 실제 요청과는 별개로 모든 파일에 대해 단일     가져오기만 수행하여 데비안 미러의 대역폭 요구사항을 줄입니다. apt-cacher는 프록시를 통과하는 요청을 기반으로 데비안 HTTP 미러를 자동으로 구축합니다.     물론, 표준 캐싱 프록시를 이미 사용하고 있고, 모든 시스템이 이 프 록시를 사용하도록 구성되었다면 똑같은 이점을 얻을 수 있습니다. 10장. 데비안 및 커널 10.1. 데비안에 특정한 조정 없이 커널을 설치하고 컴파일할 수 있나요?     예. 공통적인 문제가 하나 있습니다. 데비안 C 라이브러리는 커널 헤더의 최근 안정 헤더 릴리스로 빌드됩니다. 안정적인 분기의 커널 헤더보다 최신 커널 헤더가 있는 프로그램을 컴파일해야 하면 헤더     (linux-libc-dev)가 들어있는 패키지를 업그레이드하거나, 최신 커널 의 압축을 푼 트리에서 새 헤더를 사용해야 합니다. 즉, 커널 소스가 /usr/src/linux 에 있다면 컴파일할 때 명령행에 -I/usr/src/linux/ include/ 을 추가해야 합니다. 10.2. 커스텀 커널을 빌드하려고 데비안이 제공하는 도구는 무엇인가요? 사용자 지정 커널을 빌드하거나 빌드해야 하는 사용자는 최신 버전의     커널 빌드 시스템에 포함된 데비안 패키지 대상을 사용하는 것이 좋습 니다. 커널을 구성한 후 다음 실행할 명령:     make deb-pkg     새 커널 패키지는 커널 소스 트리 한 단계 위에 dpkg -i 을 써서 설 치될 겁니다. 사용자는 따로 커널(또는 선택한 커널) 소스 코드를 다운로드해야 하     며, 그러지 않으면 linux-source-버전 패키지가 가능합니다 (여기서 버전 은 커널 버전). 10.3. 모듈을 다루려고 제공하는 특별한 규정은 무엇인가요? 부팅 시 수동으로 로드해야 하는 모듈이 들어있는 구성 파일은 /etc/     modules 에 보관됩니다. 그러나, 이 파일을 편집할 필요는 거의 없습 니다. 다른 모듈 설정은 /etc/modprobe.d/ 디렉터리에 있습니다. 이 파일의     형식에 대한 더 많은 정보는 modprobe.conf(5) 매뉴얼 페이지에 있습 니다. 10.4. 오래된 커널 패키지를 안전하게 제거할 수 있는지, 그렇다면 어떻게 합니까? 예. linux-image-NNN.prerm 스크립트는 현재 실행 중인 커널이 제거하     려는 커널과 같은지 확인합니다. 따라서 다음 명령을 사용하여 원치 않는 커널 이미지 패키지를 제거할 수 있습니다:     dpkg --purge linux-image-NNN     (물론, NNN 을 당신의 커널 버전과 리비전 넘버로 바꿈) 10.5. 데비안 용 리눅스 패키지에 대한 더 많은 정보를 어디서 얻을 수 있 나요?     더 많은 정보는 Debian Linux Kernel Handbook (https:// kernel-team.pages.debian.net/kernel-handbook/) 에서 유지됩니다. 11장. Debian GNU/Linux 시스템 커스터마이징 11.1. 모든 프로그램이 같은 종이 크기를 쓰는지 어떻게 보장하나요?     libpaper1 패키지를 설치하면, 시스템 전체기본 종이 크기를 물어볼 겁니다. 이 설정은 /etc/papersize 파일에 저장됩니다.     사용자는 종이 크기 설정을 PAPERSIZE 환경변수를 써서 무시할 수 있 습니다. 자세한 것은 매뉴얼 페이지 papersize(5) 참조. 11.2. 보안을 깨지 않고 하드웨어 주변 장치에 대한 액세스를 제공하려면 어떻게 하나요?     /dev 디렉터리에 있는 많은 장치 파일은 미리 정의된 그룹에 들어 있 습니다. 예로, /dev/sr0는 cdrom 그룹. 특정 사용자가 이러한 장치 중 하나에 액세스할 수 있도록 하려면 장     치가 속한 그룹에 사용자를 추가하기만 하면 됩니다. 즉. 아래와 같이 하십시오:     adduser user group     이렇게 하면 장치에 대한 파일 권한을 바꿀 필요가 없습니다. 사용자의 셸이나 GUI 환경에서 이 작업을 하면 로그아웃한 후 다시 로     그인해야 해당 그룹의 유효한 구성원이 됩니다. 자신이 속한 그룹이 어떤 그룹인지 확인하려면 groups 실행하십시오. 하드웨어 주변 장치의 사용 권한을 바꾸면 udev가 도입되었으므로 시     스템을 시작할 때 일부 장치에 대해 해당 장치가 조정될 수 있습니다. 관심 있는 하드웨어 주변 장치는 /etc/udev에서 규칙을 조정해야 합니 다. 11.3. 데비안 시작할 때 콘솔 글꼴을 어떻게 로드하나요?     kbd 패키지가 이것을 지원하니, /etc/kbd/config 파일을 편집하십시 오. 11.4. X11 프로그램의 응용프로그램 기본값은 어떻게 설정하나요? 데비안의 X 프로그램은 /etc/X11/app-defaults/ 디렉터리에 응용프로     그램 리소스 데이터를 설치합니다. X 응용프로그램을 전역적으로 사용 자 정의하려면 해당 파일에 사용자 정의를 넣으십시오. 구성 파일로 표시되므로 업그레이드 중에 내용이 보존됩니다. 11.5. 데비안 시스템은 어떻게 부팅하나요? 모든 유닉스와 마찬가지로 데비안은 init 프로그램 을 실행하여 부팅     합니다. 대부분의 리눅스 배포판과 마찬가지로 기본 데비안 시스템은 systemd를 init의 구현으로 사용 합니다. 기존 System-V 스타일 init 및 기타 방법도 지원됩니다. ^[6] 서비스 시작 순서를 제어하려면, 고전 System-V 형식 유닉스 시스템은     runlevel을 씁니다. 이것은 systemd 아래에 target으로 바뀝니다. systemd가 시스템에 가져올 기본 대상을 표시하려면 실행할 명령     systemctl get-default 부팅하는 동안 systemd는 기본 대상 /lib/systemd/system/ default.target 파일에 나열된 서비스 또는 기타 대상을 시작합니다.     이러한 서비스 및 대상에 대한 파일이 설치되고 데비안 패키지 설치 중에 서비스가 활성화 됩니다. 부팅하는 동안 서비스를 시작하지 않으 려면 해당 패키지를 제거하는 대신 실행할 수 있는 명령     systemctl disable service.service     /lib/systemd/system에 설치된 서비스 파일 이름 사용 (일반적으로 패 키지 이름 기반) 서비스 파일 /lib/systemd/system/rc-local.service은 부팅 후 커스터 마이즈 된 스크립트를 /etc/rc.local 파일에서 실행하는 쉬운 방법을     제공하며, 데비안 시스템이 제공하는 것은 시스템-V 스타일 init와 비 슷합니다. 주의: 이 스크립트는 콘솔과 상호작용(사용자 암호를 묻거 나 화면을 지우려고 하는 것 등) 하려고 시도하면 실패합니다.     서비스 상태를 체크하려면 실행할 명 령은     service 패키지 status     입니다. 서비스를 시작하거나 멈추려면, 실행하기 를     service 패키지 start     그리고     service 패키지 stop . service 명령어는 systemd 뿐만 아니라 데비안 시스템에서 지원되는     모든 init 시스템과 함께 동작합니다. 그러나 systemd 지원 리눅스 시 스템에서 동일한 명령을 사용하여 상태 실행을 확인하려면 실행하기를     systemctl status 패키지.service     로 같은 정보를 얻습니 다.     데비안에서 systemd 관련 더 많은 정보는 https://wiki.debian.org/ systemd (https://wiki.debian.org/systemd) 참조. 11.6. 데비안과 전통적 system V init는 어떤가요? 데비안은 sysvinit-core 패키지를 통해 전통적인 System V init를 사 용한 부팅을 지원합니다. System V init의 구성 파일 init(즉)은 /etc /inittab 실행할 첫 번째 스크립트가 /etc/init.d/rcS. 이 스크립트는     /etc/init.d/rcS 파일 시스템을 확인하고 마운트하고, 모듈을 로드하 고, 네트워크 서비스를 시작하고, 시계를 설정하고, 기타 초기화를 수 행하는 것과 같은 초기화를 수행하는 하위 프로세스를 분기하여 모든 스크립트를 실행합니다 . 부팅 프로세스 완료 후, init는 기본 런레벨에서 지정한 디렉터리 안     의 모든 시작 스크립트를 실행합니다 (이 런레벨은 /etc/inittab 안의 id 항목에서 주어집니다). 대부분의 System V 호환 유닉스처럼, 리눅 스는 7개 런레벨이 있습니다: * 0 (시스템 종료), * 1 (단일 사용자 모드),     * 2부터 5까지 (다양한 멀티유저 모드), 및 * 6 (시스템 리부트) 데비안 시스템은 id=2를 갖고 오며, 이는 멀티 유저 상태가 되면 기본     런레벨이 '2'가 될 것을 나타내며, /etc/rc2.d/ 안의 스크립트가 실행 될 겁니다. 데비안은 insserv를 통해 종속성 기반 부팅 순서를 사용하고, /etc/     init.d/ 아래에 있는 각 스크립트 안에서 LSB 헤더를 사용하고, startpar를 사용하여 병렬 동시 부팅을 사용 하여 부팅 프로세스의 속 도를 높입니다. /etc/rcN.d/ 디렉터리에 있는 모든 스크립트는 실제로는 /etc/init.d/ 에 있는 스크립트를 가리키는 심볼릭 링크입니다. 그러나, /etc/rcN.d /각 디렉터리에 있는 파일들의 이름은 /etc/rcN.d/에 있는 스크립트가 실행되는 방식을 나타내도록 지정됩니다. 구체적으로 살펴보면, 특정     런레벨(Runlevel)에 진입하기 전, 'K' 로 시작하는 모든 스크립트가 먼저 실행되어 서비스를 죽입니다. 그 다음으로 'S'로 시작하는 모든 스크립트가 실행되어 서비스를 시작합니다. 'K' 또는 'S' 다음에 오는 두 자리 숫자는 스크립트의 실행 순서를 뜻합니다. 낮은 숫자 스크립 트가 먼저 실행됩니다. 이 접근 방식은 동작하는데, 왜냐면 /etc/init.d/ 안의 스크립트 모두 "start", "stop", "reload", "restart" or "force-reload" 중 하나일     수 있는 인수를 사용하고 인수를 갖고 지시된 작업을 수행하기 때문입 니다. 이러한 스크립트는 시스템이 부팅된 후에도 다양한 프로세스를 제어하는 데 사용할 수 있습니다.     예를 들어, "reload" 인수 가진 명 령어     /etc/init.d/sendmail reload     는 sendmail 데몬에게 설정파일을 다시 읽으라는 신호를 보냅 니다.     주의. invoke-rc.d는 /etc/init.d/ 스크립트를 부를 때 쓸 수 없으며, 그 대신 service를 사용할 수 있습니다. 11.7. 데비안 시스템을 부팅하는 또 다른 방법이 있나요? System V init는 좋아하지만 /etc/rc?.d/* 링크가 마음에 들지 않으면     file-rc를 설치할 수 있습니다. 그러면, 링크가 대신 하나의 단일 구 성 파일 /etc/runlevel.conf로 변환됩니다.     System V도 systemd도 안 좋아한다면, openrc 또는 runit 또는 daemontools. 11.8. 패키지 관리 시스템은 다른 패키지에 대한 구성 파일이 들어간 패키 지를 어떻게 처리하나요? 일부 사용자는 예를 들어 데비안 패키지 그룹과 구성 파일로 구성된 로컬에서 만든 패키지를 설치하여 새 서버를 만들고 싶어합니다. 이것     은 일반적으로 좋은 생각이 아닙니다. dpkg는 구성 파일이 다른 패키 지에 있으면 해당 파일에 대해 알지 못하고 패키지의 초기 "그룹" 중 하나가 업그레이드될 때 충돌하는 구성을 작성할 수 있기 때문 입니 다. 대신, 관심 있는 데비안 패키지 "그룹"의 구성 파일을 수정하는 로컬     패키지를 만드십시오. 그러면 dpkg 및 나머지 패키지 관리 시스템은 파일이 로컬 "sysadmin"이 수정했음을 확인하고, 해당 패키지가 업그 레이드될 때 덮어쓰지 않습니다. 11.9. 패키지가 설치한 파일을 대신하여 다른 버전을 사용하려면 어떻게 하나요? 시스템 관리자 또는 지역 사용자가 "login-local" 프로그램을 데비안     login 패키지가 제공하는 "login" 프로그램 대신 쓰길 바란다고 가정 합시다.     아래와 같이 하면 안 됩 니다:     * 기존 /bin/login에 login-local로 겹쳐쓰 기. 패키지 관리 시스템은 이렇게 바뀐 것을 모르고, login(또는 login을     제공하는 모든 패키지)이 설치되거나 업데이트 될 때마다 사용자 정의 /bin/login를 덮어씁니다.     대신 할 것 은 * 실행하기: dpkg-divert --divert /bin/login.debian /bin/login 그러면, 데비안 미래 설치에서 login 패키지가 /bin/login 파일을     /bin/login.debian 로 씁니다. * 다음 실행하기: cp login-local /bin/login 그러면, 로컬에서 만든 프로그램을 제자리로 옮길 수 있습니다.     현재 시스템에서 어떤 전환이 활성화되어 있는지 확인하려면, dpkg-divert --list 실행하십시오.     자세한 것은 매뉴얼 페이지 dpkg-divert(8)에 있습 니다. 11.10. 로컬 빌드 패키지를 패키지 관리 시스템이 알고 있는 사용 가능한 패키지 목록에 넣으려면 어떻게 하나요?     실행할 명령:     dpkg-scanpackages BIN_DIR OVERRIDE_FILE [PATHPREFIX] > my_Packages     여기서: * BIN-DIR은 데비안 아카이브 파일(보통 ".deb"의 확장자를 가짐)이 저장되는 디렉터리. * OVERRIDE_FILE은 배포 관리자가 편집하는 파일이며 일반적으로 "     메인" 배포판 안의 데비안 패키지용 indices/override.main.gz에 있는 데비안 아카이브에 저장됩니다. 로컬 패키지에서는 이를 무 시할 수 있습니다. * PATHPREFIX는 생성 되는 my_Packages파일 앞에 추가할 수 있는 옵 션 문자열.     한번 my_Packages 파일을 만든 다음, 패키지 관리 시스템에 알립니다. 다음 명령 사용:     dpkg --merge-avail my_Packages     만약 APT를 쓴다면, 지역 저장소를 여러분의 sources.list(5) 파일에 도 더하십시오. 11.11. 어떤 사용자는 mawk를 좋아하고, 다른 사람은 gawk를 좋아합니다. 어떤 사람은 vim을 다른 사람은 elvis를 좋아합니다. 어떤 사람은 trn을 다른 사람은 tin을 좋아합니다. 데비안은 다양성을 어떻게 지원하나요? 두 패키지가 동일한 핵심 기능을 제공하는 두 가지 버전의 프로그램을 제공하는 경우가 있습니다. 사용자는 습관적으로 또는 한 패키지의 사     용자 인터페이스가 다른 패키지 인터페이스보다 다소 더 만족스럽기 때문에 둘 중 하나를 선호할 수 있습니다. 같은 시스템에서 다른 사용 자가 다른 선택을 할 수 있습니다. 데비안은 "가상" 패키지 시스템을 사용하여, 동일한 기본 기능을 제공     하지만 특정 패키지를 지정하지 않고 패키지 종속성 요구 사항을 충족 하는 두 개 이상의 도구가 있으면 시스템 관리자가 선호하는 도구를 선택(하거나 사용자가 선택)할 수 있도록 합니다. 예를 들어, 한 시스템에 두 가지 서로 다른 버전의 뉴스리더가 존재할 수 있습니다. 뉴스 서버 패키지는 시스템에 어떤 뉴스리더가 존재하기 를 '권장'할 수 있지만, tin 또는 trn 중 무엇을 사용할지는 개별 사     용자의 선택에 맡깁니다. 이러한 요구 사항은 tin과 trn 패키지 모두 가 news-reader라는 가상 패키지를 제공함으로써 충족됩니다. 어떤 프 로그램이 호출될지는 가상 패키지 이름 /etc/alternatives/ news-reader 파일에서 실제 선택된 파일(예: /usr/bin/trn)로 연결된 링크에 의해 결정됩니다. 하나의 링크만으로는 대체 프로그램의 전체 사용을 지원하기에 불충분     합니다. 일반적으로 매뉴얼 페이지 및 기타 지원 파일도 선택해야 합 니다. Perl 스크립트 update-alternatives는 지정된 패키지와 관련된 모든 파일이 시스템 기본값으로 선택되게 하는 방법을 제공합니다.     예를 들어, 무슨 실행파일이 "x-window-manager"를 제공하는지 보려 면, 실행할 것:     update-alternatives --display x-window-manager     그것을 바꾸려면, 실행하 기:     update-alternatives --config x-window-manager     그리고 화면의 지시를 따르십시오(기본적으로 더 나은 항목 옆에 있는 숫자를 누르십시오). 패키지가 어떤 이유로 창 관리자로 등록되지 않으면(오류가 있으면 버     그 신고하세요) 또는 /usr/local 디렉터리에서 창 관리자를 사용하는 경우 화면의 선택 항목에 원하는 항목이 들어있지 않습니다. 명령줄 옵션을 통해 링크를 업데이트할 수 있습니다. 다음과 같이:     update-alternatives --install /usr/bin/x-window-manager \ x-window-manager /usr/local/bin/wmaker-cvs 50 "--install" 옵션에 대한 첫 번째 인수는 /etc/alternatives/NAME을 가리키는 심볼릭 링크이며, 여기서 NAME은 두 번째 인수입니다. 세 번     째 인수는 /etc/alternatives/NAME이 가리킬 프로그램이고, 네 번째 인수는 우선순위입니다(값이 클수록 대안이 자동으로 선택될 가능성이 더 높음).     당신이 더한 대안을 지우려면, 단순히 실행 하기:     update-alternatives --remove x-window-manager /usr/local/bin/wmaker-cvs --------------------------------------------------------------------- ^[6] 2014년에 데비안은 기본 초기화 시스템을 System V init에서 systemd로 바꾸었습니다. 2015년 4월 데비안 8 "jessie"는 기본 초기 화로 systemd를 제공하는 첫 번째 릴리스였습니다. 데비안 기술 위원 회의 4가지 결정 (https://www.debian.org/devel/tech-ctte#status) 이 관련되었습니다: Bug #727708 (https://lists.debian.org/ 20140211193904.GX24404@rzlab.ucr.edu) 2014-02-11: "위원회는 jessie의 리눅스 아키텍처에 대한 기본 초기화 시스템이 시스템화 되 어야 한다고 결정" Bug #746715 (https://lists.debian.org/ 20140801023630.GF12356@teltox.donarmstrong.com) 2014-08-01: "위원     회는 jessie의 Linux 아키텍처에 대한 기본 초기화 시스템이 시스템화 되어야 한다고 결정", 그리고 합당한 기여를 병합. Bug #746578 (https://lists.debian.org/ 20141116001628.GO32192@teltox.donarmstrong.com) 2014-11-15: "위원 회는 systemd-shim이 systemd-sysv 대신 libpam-systemd의 첫 번째 대 체 종속성을 나열해야 한다고 결정". 이 결정으로 비시스템 데비안 시 스템을 계속 실행하는 것이 더 쉬워졌습니다. Bug #762194 (https:// lists.debian.org/ 21592.61064.527547.410074@chiark.greenend.org.uk) 2017-11-04: "업 그레이드 시 자동 초기화 시스템 전환" 12장. Debian GNU/Linux에서 지원 받기 12.1. 데비안 시스템에 다른 어떤 문서가 있나요? * 현재 릴리스 설치 명령: https://www.debian.org/releases/stable /installmanual (https://www.debian.org/releases/stable/ installmanual) 참조. * Debian GNU/Linux 참조에서는 셸 명령 예제를 통해 시스템 관리의 여러 측면을 다룹니다. 시스템 관리에서 프로그래밍에 이르기까지 다양한 주제에 대한 기본 자습서, 팁 및 기타 정보를 제공합니다. debian-reference 패키지 또는 https://www.debian.org/doc/ user-manuals#quick-reference (https://www.debian.org/doc/ user-manuals#quick-reference) 에서 얻으십시오. * 데비안 정책 매뉴얼은 배포에 대한 정책 요구 사항, 즉 데비안 아 카이브의 구조와 내용, 운영 체제의 몇 가지 설계 문제 등을 문서 화합니다. 또한 배포판에 들어가려면 각 패키지가 충족해야 하는 기술적 요건이 들어있고, 데비안 바이너리 및 소스 패키지의 기본 적인 기술적 측면을 문서화합니다. debian-policy 패키지 또는 https://www.debian.org/doc/ devel-manuals#policy (https://www.debian.org/doc/ devel-manuals#policy) 에서 얻으십시오. * 데비안 문서화 프로젝트에서 개발한 문서. https:// www.debian.org/doc (https://www.debian.org/doc) 에서 사용할 수 있으며 Debian GNU/Linux 운영 체제에 대한 사용자 가이드, 관 리 가이드 및 보안 가이드가 들어있습니다. * 설치한 데비안 패키지에 대한 설명서: 대부분의 패키지에는 /usr/ share/doc/PACKAGE로 압축 해제된 파일이 있습니다.     * 리눅스 프로젝트에 대한 문서: 데비안 패키지 doc-linux는 최신 버전의 HOWTO와 미니 HOWTO를 Linux Documentation Project (http://www.tldp.org/) 에서 모두 설치합니다. * 유닉스 형식 'man' 페이지: 대부분의 명령어는 원본 유닉스 'man' 파일 스타일로 작성된 매뉴얼 페이지를 가지고 있습니다. 예를 들 어 명령 'ls'의 매뉴얼 페이지를 보려면 man ls를 실행하십시오. 매뉴얼 페이지를 찾아 보는 방법에 대한 자세한 내용을 보려면 man man을 실행하십시오. 새로운 데비안 사용자는 다음과 같은 패키지를 설치해야 많은 일 반 시스템 명령의 'man' 페이지를 사용할 수 있다는 점을 유의하 십시오: + man 프로그램 자체가 들어있는 man-db 그리고 매뉴얼 페이지 를 다루기 위한 다른 프로그램. + manpages, 시스템 매뉴ᅟ얼 페이지가 있습니다. (5.9절. “데 비안은 영어 아닌 언어를 어떻게 지원하나요?” 참조). * GNU 스타일 "info" 페이지: 많은 명령, 특히 GNU 도구에 대한 사 용자 문서는, "man" 페이지가 아니라, "info" 파일 안에 GNU 도구 info로, M-x info를 GNU Emacs에서 실행하거나 다른 Info 뷰어로 읽을 수 있습니다. 그것이 원래 "man" 페이지보다 좋은 점은 하이퍼텍스트 시스템이 라는 것입니다. WWW는 필요하지 않습니다. info는 단순 텍스트 콘 솔에서도 돌아갑니다. 그것은 Richard Stallman이 설계했으며 WWW 보다 앞서 있습니다. 웹 브라우저를 사용하여 시스템의 다양한 문서를 확인할 수 있다는 점     에 유의하십시오. 해당 문서는 각각의 패키지에 포함된 dwww, dhelp 또는 doccentral 명령을 사용하거나, yelp 명령을 통해 접근할 수 있 습니다. 12.2. 데비안 토론할 온라인 자료가 있나요? 예. 사실, 데비안이 사용자에게 제공하는 주요 지원 방법은 전자메일     을 통한 것입니다. 이에 대한 세부 정보를 제공하고 다른 유용한 자료 를 언급하겠습니다. 더 많은 자료가 데비안 지원 웹페이지 (https:// www.debian.org/support) 에 나열되어 있습니다. 12.2.1. 메일링 리스트     여러 데비안 관련 메일링 리스트 (https://www.debian.org/ MailingLists/) .     doc-debian 패키지를 설치한 시스템에서 메일링 리스트의 전체 목록 / usr/share/doc/debian/mailing-lists.txt. 데비안 메일링 리스트의 이름은 debian-리스트주제. 예는 debian-announce, debian-user, debian-news입니다. debian-리스트주 제 debian- 목록을 구독하려면 제목: 헤더에 "subscribe"라는 단어가     들어간 debian-리스트주제-request@lists.debian.org로 메일을 보내십 시오 이 방법을 써서 구독 또는 구독 취소할 때 전자 메일 주소에 -request 를 추가하는 것을 잊지 마십시오 . 그러지 않으면 전자 메일 이 목록 자체로 가서 관점에 따라 당혹스럽거나 성가실 수 있습니다. 메일링리스트를 구독하려면 구독 웹 폼 (https://www.debian.org/     MailingLists/subscribe) 을 쓸 수 있습니다. 메일링리스트 구독을 취 소하려면 구독 취소 웹 폼 (https://www.debian.org/MailingLists/ unsubscribe) 을 쓸 수 있습니다.     당신이 어떤 문제를 갖고 있다면, 리스트 매니저의 전자메일 주소는 < listmaster@lists.debian.org>. 메일 목록은 공개 포럼입니다. 목록에 전송된 모든 전자 메일도 모든 사용자(구독자가 아닌 사용자도)가 찾아보거나 검색할 수 있도록 공용 아카이브에 복사됩니다. 기밀 또는 무면허 자료를 목록에 보내지 마십     시오. 여기에는 전자 메일 주소와 같은 것도 포함됩니다. 특히 주목할 것은 스팸 발송자가 우리 메일 목록에 게시된 전자메일 주소를 남용하 는 것으로 알려져 있다는 사실입니다. 자세한 내용은 Mailing Lists Privacy policy (https://www.debian.org/MailingLists/#disclaimer) 참조하십시오. 데비안 메일링 리스트 아카이브는 WWW를 통해 https://     lists.debian.org/ (https://lists.debian.org/) 에서 확인할 수 있으 며, Debian Mailing Lists Archives search (https:// lists.debian.org/search.html) 에서 검색할 수 있습니다. 12.2.1.1. 메일링 리스트 행동강령은 무엇인가요?     데비안 메일링 리스트를 사용할 때 지켜야 할 규칙: * 스팸 보내지 마십시오. 데비안 메일링 리스트 광고 정책 (https:/ /www.debian.org/MailingLists/#ads) 참조. * 플레임 하지 마십시오. 그것은 예의에 어긋납니다. 데비안을 개발 하는 사람은 모두 데비안 프로젝트를 하나로 모으려고 시간, 에너 지, 돈을 기부하는 자원 봉사자입니다.     * 저속한 언어를 사용하지 마십시오. 게다가 어떤 사람은 욕설이 불 법인 패킷 라디오를 통해 목록을 받습니다. * 적절한 리스트를 사용하는지 확인하십시오. 메일링 리스트 자체에 구독 (취소) 요청을 게시하지 마십시오.^[7] * 버그 보고에 대한 노트 12.5절. “데비안에서 버그를 어떻게 보고 하나요?”. 12.2.2. 웹 포럼 Debian User Forums (http://forums.debian.net/) 은 데비안에 대한     질문을 제출하고 다른 사용자가 답변을 들을 수 있는 웹 포럼입니다. (공식적으로 데비안 프로젝트의 일부는 아닙니다.) 12.2.3. 위키 일반적인 문제에 대한 솔루션, 하우투, 가이드, 팁 및 기타 문서가 끊     임없이 변화하는 데비안 위키 (https://wiki.debian.org/) 에 있습니 다. 12.2.4. 메인테이너 사용자는 전자 메일을 사용하여 개별 패키지 관리자에게 질문에 답할     수 있습니다. xyz라는 패키지의 관리자에게 연락하려면 xyz@packages.debian.org 로 메일을 보내십시오. 12.2.5. 유즈넷 뉴스그룹 사용자는 comp.os.linux.* 또는 linux.*라는 리눅스 USENET 그룹 중 하나에 데비안 관련 질문을 게시해야 합니다. WWW에는 Linux Online     (https://www.linux.org/docs/usenet.html) 및 LinuxJournal (http:// www.linuxjournal.com/helpdesk.php) 사이트 와 같은 리눅스 유즈넷 뉴스 그룹 및 기타 관련 리소스 목록이 여러 개 있습니다. 12.3. Debian GNU/Linux에 대한 정보를 빠르게 검색할 수 있는 방법이 있 나요?     데비안과 관련된 문서를 제공하는 다양한 검색 엔진이 있 습니다: * 데비안 WWW 검색 사이트 (https://search.debian.org/) . * Debian Mailing Lists Archives search (https:// lists.debian.org/search.html) . 예를 들어, 데비안에서 NVIDIA 그래픽 카드의 드라이버를 찾는 문 제에 대해 사람들이 어떤 경험을 했는지 알아보려면, NVIDIA Debian driver라는 문구를 검색해 보십시오. 이렇게 하면 해당 문     자열을 포함하는 모든 게시물, 즉 사람들이 이 주제들을 논의했던 글들을 볼 수 있습니다. * 올바른 검색어를 한다면 DuckDuckGo (https://duckduckgo.com/) 또는 구글 (https://www.google.com/) 같은 일반적인 웹 스파이더 링 엔진. 예를 들어, 문자열 "evince"를 검색하면 제어 파일의 간략한 설명 필드보다 이 패키지에 대한 더 자세한 설명을 얻을 수 있습니다. 12.4. 알려진 버그 로그가 있나요? 미해결(그리고 종결된) 이슈에 대한 보고서를 공개적으로 볼 수 있습     니다: 데비안은 Debian Social Contract (https://www.debian.org/ social_contract) 에서 "We will not hide problems"라고 말함으로써 그렇게 하겠다고 약속했습니다. Debian GNU/Linux 배포판에는 사용자와 개발자가 보고한 버그의 세부     정보를 기록하는 버그 추적 시스템(BTS)이 있습니다. 각 버그에는 번 호가 붙고 파일에 보관됩니다. 일단 처리되면 그렇게 표시됩니다.     이 정보 사본 https://www.debian.org/Bugs/ (https://www.debian.org /Bugs/) . 메일 서버는 전자메일을 통해 버그 추적 시스템 데이터베이스에 대한     액세스를 제공합니다. 지침을 받으려면 본문에 "help"를 넣어 request@bugs.debian.org로 전자 메일을 보내십시오. 12.5. 데비안에서 버그를 어떻게 보고하나요? 만약 당신이 데비안에서 버그를 발견했다면, 데비안에서 버그를 보고     하기 위한 설명서를 읽으십시오. 이러한 지침은 다음과 같은 방법 중 하나로 얻을 수 있습니다: * WWW에서. 지침 사본 https://www.debian.org/Bugs/Reporting (https://www.debian.org/Bugs/Reporting) .     * doc-debian 패키지를 설치한 모든 데비안 시스템에서. 지침은 파 일 /usr/share/doc/debian/bug-reporting.txt에 있습니다. 보고 프로세스를 안내하는 reportbug 패키지를 사용하여 해당 주소로 메시지를 전송하고 시스템에 대한 일부 세부 정보를 자동으로 추가할     수 있습니다. 또한, 버그가 이전에 보고되었다면, 보고 대상 패키지에 이미 보고된 버그 목록을 표시하므로, 기존 버그 보고서에 추가 정보 를 더할 수 있습니다. 버그 보고서를 자동으로 확인합니다. 또한 버그 추적 번호가 자동으로     부여되어 버그 로그에 입력되고 debian-bugs-dist 메일링 리스트로 전 달됩니다. ---------------------------------------------------------------------     ^[7] 사용할 주소 debian-리스트주제 -REQUEST@lists.debian.org. 13장. 데비안 프로젝트에 기여하기 시간(새 패키지 개발, 기존 패키지 유지 또는 사용자 지원 제공), 기 부 (https://www.debian.org/donations) , 자원 (패키지 및 WWW 아카     이브 미러), 그리고 돈 (새 테스트베드에 지불, 아카이브용 하드웨어 포함) 프로젝트를 도울 수 있습니다. 어떻게 데비안을 도울 수 있나 요? (https://www.debian.org/intro/help) 도 읽어보십시오. 13.1. 어떻게 데비안 멤버 및 데비안 개발자가 될 수 있나요? 데비안 개발은 누구에게나 열려 있으며, 이전 관리자가 "orphaned"된     기존 패키지를 유지하고, 새로운 패키지 개발, 문서 작성, 번역 작업, 사용자 지원을 제공하려면 올바른 기술 및 학습 의지를 가진 새로운 사용자가 필요합니다. 자원봉사자들은 데비안 기여자, 데비안 메인테이너, 또는 데비안 개발     자(업로드 권한 유무와 관계없이)로서 프로젝트에 참여할 수 있습니 다: * 데비안 기여자는 문서 작성, 웹사이트 관리, 번역, 사용자 지원, 버그 리포트 검토 또는 다양한 팀 활동 참여와 같은 수많은 과업 을 수행합니다. 이는 비공식적인 역할이지만, 보통 많은 이들이 데비안 프로젝트에 첫발을 내디디며 시작하는 지점이기도 합니다. * 데비안 메인테이너는 하나 이상의 특정 패키지를 관리하며, 다른 데비안 개발자(또는 메인테이너)의 승인(스폰서) 없이도 해당 패     키지를 아카이브에 직접 업로드할 수 있는 권한을 가집니다. * 데비안 개발자(Debian Developer)는 데비안 프로젝트의 정식 구성 원(Full Membership) 역할을 의미합니다. 개발자는 데비안 내의 각종 투표에 참여할 수 있고, 데비안이 관리하는 대부분의 시스템 에 접속할 수 있으며, 아카이브의 모든 패키지를 직접 업로드할 수 있는 권한을 가집니다. 이 역할은 매우 엄격하고 철저한 검증 과정을 거친 후에 부여됩니다. 해당 웹사이트는 프로젝트 참여 방법 (https://www.debian.org/devel/     join/) 에 대한 추가 정보를 제공합니다. 데비안 메인테이너가 되는 것에 대한 설명은 데비안 웹사이트의 새 멤버 코너 (https:// www.debian.org/devel/join/newmaint) 에서 찾을 수 있습니다. 데비안은 GitLab 인스턴스 Salsa(salsa.debian.org (https://     salsa.debian.org/) )를 사용합니다. 여기에 누구나 가입하여 병합 요 청(Merge Requests)을 보내서 공동 개발을 위하여. 13.2. 어떻게 데비안 프로젝트 자원에 기여하나요? 이 프로젝트는 전 세계에서 빠르고 쉽게 접근할 수 있는 실질적인 소 프트웨어를 만드는 것을 목표로 하기 때문에, 미러가 필요합니다. 모     든 아카이브 파일을 미러링하는 것이 바람직하지만 반드시 필요한 것 은 아닙니다. 데비안 미러 크기 (https://www.debian.org/mirror/ size) 를 방문하여 디스크 공간 요구 사항에 대한 정보를 확인할 수 있습니다. 대부분의 미러링은 상호작용 없이 스크립트를 써서 완전 자동으로 수     행됩니다. 그러나 가끔 작은 문제 또는 시스템이 바뀜으로 사람의 개 입이 필요합니다. 고속 인터넷에 연결되어 있고 배포의 전부 또는 일부를 미러링할 수     있는 자원을 갖고 있으며 시스템의 정기적인 유지를 제공할 수 있는 시간을 내거나 누군가를 찾으려면, 에 연락하십시오. 13.3. 데비안 프로젝트에 재정적으로 어떻게 기여하나요? 후원자의 기부를 통해 데비안은 기계 뿐만 아니라 다른 하드웨어, 조     직 회의, 개발 스프린트도 할 수 있습니다. 자세한 내용은 Debian Donations (https://www.debian.org/donations) 를 참조하십시오. 이 페이지는 기부하는 데 사용할 수 있는 다양한 방법도 나열합니다. 데비안 개발에 중요한 기관에 개별 기부할 수 있습니다. 주요 기관은     미국에 통합된 Software in the Public Interest이지만 다른 곳도 있 습니다. 13.3.1. Software in the Public Interest Software in the Public Interest (SPI)는 IRS 501(c)(3) 미국 기반     비영리 기관입니다. 이 이관의 목적은 자유 소프트웨어를 개발하고 배 포하는 것입니다. 그것은 프로그래머가 GNU 일반 공중 사용 허가서 또는 소프트웨어의     무료 재배포와 사용을 허용하는 다른 라이선스를 사용하도록 장려하 고, 하드웨어 개발자는 제품에 대해 장치 드라이버가 작성될 수 있도 록 문서를 배포하도록 장려합니다. SPI는 많은 자유 및 오픈 소스 프로젝트의 재정 후원자 역할을 합니     다. 데비안 프로젝트는 그 기구가 설립된 이래로 협력 프로젝트입니 다.     SPI: https://www.spi-inc.org/ (https://www.spi-inc.org/) . 13.3.2. 다른 기관 여러 기관을 서로 다른 나라에서 데비안을 위해 자산을 신탁하여 만들 었습니다. 기부 페이지 (https://www.debian.org/donations) 는 개인 이 기부할 수 있는 신뢰할 수 있는 조직을 나열합니다. 이 글 작성 시 2개: Verein zur Förderung Freier Informationen & Software (http:/     /www.ffis.de/) (독일), Debian France Association (https:// france.debian.net/) (프랑스), debian.ch (https://debian.ch/) (스 위스 및 Principality of Liechtenstein). 다른 나라 추가 제휴 기관 목록은 데비안 위키 Organizations (https://wiki.debian.org/Teams/ Auditor/Organizations) 페이지에 나열되어 있습니다. 14장. Debian GNU/Linux 재배포 상업 제품 14.1. 데비안 CD를 만들고 팔 수 있나요? 계속하십시오. 우리가 릴리스 한 것을 배포하는 데는 허가가 필요하지 않으므로, 베타 테스트가 끝나자마자 CD를 마스터할 수 있습니다. 우     리에게 아무것도 지불하지 않아도 됩니다. 물론, 모든 CD 제조사는 데 비안의 프로그램의 라이선스를 존중해야 합니다. 예를 들어 대부분의 프로그램은 GPL에 따라 라이선스가 부여되므로 소스 코드를 배포해야 합니다. 또한, 우리는 데비안 프로젝트에 돈, 소프트웨어, 시간을 기부하는 CD     제조사 목록을 발행할 것이고, 사용자가 기부하는 제조사로부터 구매 하도록 권장할 것이며, 그래서 기부를 하는 것은 좋은 광고입니다. 14.2. 데비안은 독점 소프트웨어와 패키지 될 수 있나요?     예. 데비안의 주 컴포넌트가 자유 소프트웨어지만, 자유롭게 재배포될 수 없는 프로그램을 위해 non-free 디렉터리를 제공합니다. CD 제조업체는 해당 소프트웨어 패키지의 작성자와의 라이선스 조건 또는 개인 계약에 따라 해당 디렉터리에 배치한 프로그램을 배포할 수 있습니다. 또한 CD 제조업체는 다른 소스에서 가져온 독점 소프트웨어     를 동일한 CD에 배포할 수 있습니다. 이것은 새로운 것이 아닙니다: 자유 및 상업용 소프트웨어는 현재 많은 제조업체가 동일한 CD로 배포 하고 있습니다. 물론 우리는 여전히 소프트웨어 작성자가 자유 소프트 웨어로 쓰는 프로그램을 릴리스 할 것을 권합니다. 14.3. 나는 "vertical market"을 위한 특별한 리눅스 배포판을 만들고 있 습니다. 리눅스 시스템에 Debian GNU/Linux를 사용하고 그 위에 나만의 프 로그램을 더할 수 있나요? 네. 데비안 프로젝트 자체와 외부 당사자가 긴밀한 협력 하에 데비안 파생 배포판을 만들고 있습니다. Debian Pure Blinds (https://     www.debian.org/blends/) 프레임워크를 써서 데비안과 협력할 수 있습 니다. DebianEdu/Skolelinux (https://wiki.debian.org/DebianEdu/) 가 그러한 프로젝트 중 하나입니다. 여러 다른 배포판 예를 들어 grml, LMDE(Linux Mint Debian Edition),     Knoppix 및 Ubuntu와 같은 데비안에서 파생된 다른 배포판이 이미 시 장에 나와 있지만, 원본 Debian GNU/Linux 와는 다른 종류의 청중을 대상으로 하고 있지만, 대부분의 구성 요소를 제품에 사용합니다. 데비안은 선택한 파일의 지역 버전을 개발자와 시스템 관리자가 설치 할 수 있는 메커니즘을 제공합니다. 그래서 다른 패키지를 업그레이드     할 때 덮어써지지 않을 겁니다. 이것을 11.9절. “패키지가 설치한 파 일을 대신하여 다른 버전을 사용하려면 어떻게 하나요?”에 대한 질문 에서 자세히 논의합니다. 14.4. 데비안 "패키지"에 내 상용 프로그램을 넣어서 데비안 시스템에 쉽 게 설치할 수 있나요?     그렇게 하십시오. 패키지 도구는 자유 소프트웨어입니다. 패키지는 자 유 소프트웨어일 수도 아닐 수도 있으며, 모두 설치할 수 있습니다. 15장. 데비안 다음 메인 릴리스에서 기대하는 변화 새로운 릴리스 마다 데비안 프로젝트는 일련의 주제에 초점을 맞추려 고 노력합니다. 이러한 목표를 "릴리스 목표"라고 하며, 모두 https:/     /wiki.debian.org/ReleaseGoals/ (https://wiki.debian.org/ ReleaseGoals/) 에 설명되어 있습니다. 다음 섹션은 완전히 최신은 아 닐 수 있습니다. 이러한 목표에 대한 자세한 내용과 최신 상태는 Wiki 를 참조하십시오. 15.1. 시스템 강화하기     데비안 프로젝트의 목표는 설치된 모든 시스템이 공격으로부터 강화되 고 안전하게 보호되도록 하는 것입니다. 이를 위한 몇 가지 방법: * 보안 강화 빌드 플래그 (https://wiki.debian.org/ReleaseGoals/ SecurityHardeningBuildFlags) 로 프로그램 보안 강화하여, 알려 진 보안 문제에 대한 다양한 보호를 활성화,     * 로컬 또는 원격 모두 공격에 덜 취약하도록 기본 시스템 구성을 개선합니다, * 새 버전 커널에서 제공하는 보안 기능을 사용하도록 설정합니다. 이 모든 것은 지속적으로 이루어집니다. 첫 번째 항목에는 스택 스매 싱, 메모리 내 예측 가능한 값 위치 등과 같은 알려진 공격을 방지하 려는 일련의 보안 강화 빌드 플래그를 사용합니다. 목표는 2006년 이 후 보안 권고사항을 통해 업데이트해야 했던 패키지뿐만 아니라 기본     설치에 포함된 패키지 적어도 모든 패키지를 대상으로 합니다. 이 글 쓰기가 처음 시작된 이후 약 400개의 패키지를 수정했습니다. 모든 이 슈를 BTS에서 추적 (https://bugs.debian.org/cgi-bin/pkgreport.cgi? tag=goal-hardening;users= hardening-discuss@lists.alioth.debian.org) 합니다. 15.2. 영어 안 쓰는 사용자 지원 확장     데비안은 이미 비영어 사용자를 매우 잘 지원하고 있습니다. 5.9절. “ 데비안은 영어 아닌 언어를 어떻게 지원하나요?”. 우리는 훨씬 더 많은 언어에 대한 지원을 제공할 사람을 찾고 프로그 램과 문서를 번역하기를 바랍니다. 많은 프로그램과 데비안 관련 문서     가 이미 국제화를 지원하고 있기 때문에 우리는 메시지 카탈로그 번역 자가 필요합니다. 그러나, 여전히 일부 프로그램은 적절하게 국제화되 어야 합니다. GNU 번역 프로젝트 ftp://ftp.gnu.org/pub/gnu/ABOUT-NLS (ftp:// ftp.gnu.org/pub/gnu/ABOUT-NLS) 는 GNU 프로그램과 데스크톱 환경 GNOME 또는 KDE와 같은 다른 프로젝트를 국제화하는 작업을 수행합니     다. 데비안의 목표는 이러한 프로젝트가 수행하는 작업을 바꾸거나 반 복하는 것이 아니며, 실제로 데비안은 이러한 프로젝트에서 번역자가 수행한 작업으로부터 이익을 얻습니다. 그러나, 여전히 그러한 프로젝 트의 범위에 포함되지 않고 데비안 내에서 번역된 많은 프로그램이 있 습니다.     이전 데비안 릴리스는 다음과 같은 주제에 초점을 맞췄 습니다: * 모든 debconf 사용 패키지에서 I18n 지원: 데비안 구성 관리를 사 용하는 패키지는 패키지 구성 중에 사용자에게 표시되는 모든 메 시지를 번역할 수 있어야 합니다. * L18n 패키지 설명 지원: 패키지 번역 설명을 사용하도록 패키지 관리 프런트엔드를 업데이트 하십시오.     * UTF-8 debian/changelog 및 debian/control. 이런 식으로, 예를 들어, 아시아 국가에서 온 사람의 이름은 changelog에서 올바른 방식으로 타자 할 수 있습니다. * I18n은 그래픽 인터페이스를 사용하는 일부 언어에 대한 전체 지 원이 있고 데비안 설치프로그램에서 지원합니다. 15.3. 데비안 설치프로그램 개선     데비안 설치프로그램에 대한 많은 작업이 수행되어 큰 개선이 이루어 졌습니다. 여기서 그 중 두 가지만 언급합니다. 마이크로소프트 윈도에서 설치프로그램 시작: 이제 BIOS 설정을 바꿀 필요 없이 마이크로소프트 윈도에서 직접 설치프로그램을 시작할 수     있습니다. CD-ROM, DVD-ROM 또는 USB 스틱을 삽입하면 자동실행 프로 그램이 시작되고 데비안 설치프로그램을 시작하는 단계별 프로세스를 제공합니다. 15.4. 더 많은 아키텍처 다른 아키텍처에 대한 데비안 시스템을 완료합니다. 일부 아키텍처가     특정 릴리스용으로 빠져도 최신 sid 를 사용하여 설치하고 업그레이드 할 수 있는 방법이 여전히 있을 수 있음을 주목하십시오. 15.5. 더 많은 커널 데비안 GNU/Hurd 외에도 데비안은 BSD 커널, 즉 FreeBSD (https://     www.debian.org/ports/kfreebsd-gnu/) 로 포팅되고 있습니다. 이 포트 는 AMD64("kfreebsd-amd64")와 기존 Intel("kfreebsd-i386")에서 모두 돌아갑니다. 16장. FAQ 일반 정보 16.1. 저자 이 FAQ의 초판은 J.H.M. Dassen (Ray)과 Chuck Stickelman이 만들고 유지했습니다. 다시 쓴 Debian GNU/Linux FAQ의 저자는 Susan G.     Kleinmann과 Sven Rudolph. 그들 이후, FAQ는 Santiago Vila 그리고 나중에 Josip Rodin이 유지했습니다. 현재 메인테이너는 Javier Fernandez-Sanguino.     이 정보가 온 곳: * 데비안-1.1 릴리스 알림, Bruce Perens (https://perens.com/) 씀, * 리눅스 FAQ, Ian Jackson (https://www.chiark.greenend.org.uk/ ~ijackson/) 씀, * 데비안 메일링 리스트 아카이브 (https://lists.debian.org/) , * dpkg 개발자 매뉴얼 및 데비안 정책 매뉴얼 (12.1절. “데비안 시     스템에 다른 어떤 문서가 있나요?” 참조), * 많은 개발자, 봉사자 및 베타 리더, * 저자의 희미한 기억 :-) * 그리고 Choosing a Debian distribution FAQ (http:// KamarajuKusumanchi.github.io/choosing_debian_distribution/ choosing_debian_distribution.html) 를 Kamaraju Kusumanchi가 GPL 아래 친절하게 공개했고, 그래서 새 장(3장. 데비안 배포판 선택)에 포함되었습니다.     저자는 이 문서를 가능하게 하는 데 도움을 준 모든 분에게 감사합니다.     모든 보증은 거부됩니다. 모든 상표는 해당 상표 소유자의 재산 입니다. 16.2. 피드백 이 문서에 대한 의견 및 추가는 언제나 환영합니다. <     doc-debian@packages.debian.org> 에 메일 보내거나, wishlist 버그 보고를 debian-faq (https://bugs.debian.org/debian-faq) 에 제출하 십시오. 16.3. 가용성     이 문서 최신 버전은 https://www.debian.org/doc/FAQ/ (https:// www.debian.org/doc/FAQ/) . 단순 텍스트, HTML 및 PDF 형식 다운로드 https://www.debian.org/doc     /user-manuals#faq (https://www.debian.org/doc/user-manuals#faq) . 또한, 여러 번역이 있습니다.     이 문서는 debian-faq 패키지에서 가능합니다. 번역은 debian-faq-de, debian-faq-fr 및 다른 패키지에 있습니다. 이 문서를 만드는 데 사용된 원본 XML 파일은 debian-faq 소스 패키지 나, 데비안의 공동 개발을 위한 GitLab 인스턴스 Salsa     (salsa.debian.org)의 다음 위치에서도 확인할 수 있습니다: https:// salsa.debian.org/ddp-team/debian-faq.git. 또한, https:// salsa.debian.org/ddp-team/debian-faq (https://salsa.debian.org/ ddp-team/debian-faq) 에서 해당 저장소를 탐색할 수 있습니다. 16.4. 문서 형식 이 문서는 DocBook XML DTD를 사용하여 작성했습니다. 이 시스템을 사     용하면 한 소스에서 다양한 형식의 파일을 만들 수 있습니다. 예를 들 어, 이 문서는 HTML, 일반 텍스트, TeX DVI, PostScript, PDF 또는 GNU info로 볼 수 있습니다.