Яка структура сховища Ubuntu?


29

Як організовані файли в сховищі Ubuntu? Які важливі файли у сховищі? Що відбувається, коли сховище стає непослідовним, зламаним або синхронізовано?

Відповіді:


19

Відповідно до рядка deb у вашому джерелі apt, apt отримає:

Він перевіряє, чи Release.gpg є дійсною підписом для файлу Release і якщо вміст Packages.gz відповідає контрольній сумі цілісності, що присутня у файлі Release. Якщо є невідповідність, повідомляється про помилку цілісності підпису репозиторію.

Ім'я файлу пакета для запитуваного пакета визначається із раніше отриманого вмісту Packages.gz. Він завантажується, і його контрольна сума має відповідати вмісту контрольної суми Packages.gz або повідомляється про помилку цілісності.

Ваше останнє запитання не стосується структури дзеркала як такого, а про синхронізації дзеркала, що залежить від дзеркального процесу. Можна синхронізувати за допомогою тимчасового місця без порушення цілісності архіву під час синхронізації. Я не впевнений, чи роблять це всі дзеркала Ubuntu.


на жаль, посилання порушені
синюватий

Вони не порушені, вони просто шаблони, вам потрібно буде замінити "реліз" "КОМПОНЕНТ", двійкові- "та ін., Які є динамічними полями.
Жоао Пінто,

18

Жоао відповів на другу половину мого запитання, тому я дослідив першу половину самостійно. На кореневому рівні є чотири каталоги та один файл.

root
| -- dists
| -- pool
| -- indices
| -- project
| -- ls-lr.gz

(Також у моєму репортажі про коледж були лише перші два записи. Отже, останні 3 здаються несуттєвими для функціонування репо.)

Файл ls-lr.gzмістить висновок ls -lrкоманди під час запуску в кореневому каталозі репозиторію.

Схоже, що distsкаталог містить більшість метаданих, включаючи всі файли пакунків.gz (що містить список пакунків) та Release.gpg / Release, який підписує пакет. (Дякую Жоао за інформацію)

poolКаталог містить фактичні .deb файли. Організація є /pool/[section]/[letter]/[group]/packagename.deb. Таким чином, фактичне розташування пакету пітон-субверсія є /pool/main/s/subversion/python-subversion_1.3.2-3ubuntu2%7edapper1_amd64.deb, тому що субверсія є групою пакету пітон-субверсії, а s - перша літера субверсії.

projectsКаталог здається, містить кілька файлів , що деталізують , як дзеркало синхронізуються з первісної репо.

У indicesкаталозі багато файлів, більшість з яких порожні. Непорожні файли здаються додатковими метаданими для пакетів.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.