LINUX.ORG.RU

как в арче не кэшировать локальное зеркало

 ,


0

1

когда в арче указываешь локальное зеркало file:///path, он всё равно копирует файлы в CacheDir. Как делать так, чтобы не копировать? Делать рамдиск - отнимать память, которая потом может и переполниться при крупном обновлении. Выносить с ssd на hdd - только медленнее и бессмысленее, если бы он хотя бы хардлинки делал, а не копировал, тогда имело бы смысл

★★★★★

Как делать так, чтобы не копировать?

Укажи этот же путь в CacheDir (их может быть несколько).

При этом возникает вторичная проблема, pacman -Sc может повредить тебе каталог с репозиторием. Чтобы обойти это, сделай от своего репозитория mount -o bind,ro в отдельный каталог и используй его.

intelfx ★★★★★
()
Ответ на: комментарий от intelfx

Т. е. как-то так:

$ cat /etc/pacman.conf
<...>

CacheDir = /var/cache/pacman/pkg
CacheDir = /var/cache/pacman/custom

<...>

[custom]
SigLevel = Optional
Server = file:///srv/packages
$ cat /etc/fstab
<...>
/srv/packages  /var/cache/pacman/custom  none  bind,ro  0  0
<...>
intelfx ★★★★★
()
Последнее исправление: intelfx (всего исправлений: 1)

в том же дебиане есть две схемы - file:///, когда файлы не копируются, и copy:///, когда файлы копируются

buratino ★★★★★
() автор топика
Ответ на: комментарий от intelfx

как-то всё это неэлегантно :( проще копирование на hdd приделать :)

buratino ★★★★★
() автор топика

ещё бы со звуком разобраться. как автоматом стартовать pulseaudio? и почему в unigine-heaven всё равно нет звука?

buratino ★★★★★
() автор топика
Ответ на: комментарий от buratino

он всё равно копирует файлы в CacheDir

Ну, пусть копирует — потом очистите.

Для запуска после входа под вашим пользователем:

systemctl --user enable pulseaudio

int13h ★★★★★
()
Ответ на: комментарий от int13h

я вообще не нашёл модуля systemd для pulseaudio

походу от рута оно вообще не стартует само :) от юзера стартануло само :)

buratino ★★★★★
() автор топика
Ответ на: комментарий от buratino
int13h@laptop:~ » systemctl --user status pulseaudio
● pulseaudio.service - Sound Service
     Loaded: loaded (/usr/lib/systemd/user/pulseaudio.service; disabled; vendor preset: enabled)
     Active: active (running) since Thu 2020-02-13 10:47:08 +03; 1h 20min ago
TriggeredBy: ● pulseaudio.socket
   Main PID: 1086 (pulseaudio)
     CGroup: /user.slice/user-1000.slice/user@1000.service/pulseaudio.service
             ├─1086 /usr/bin/pulseaudio --daemonize=no
             └─1092 /usr/lib/pulse/gsettings-helper

фев 13 10:47:07 laptop systemd[603]: Starting Sound Service...
фев 13 10:47:08 laptop systemd[603]: Started Sound Service.
int13h ★★★★★
()

во, зашибись, при установке base-devel зачем-то сломал пакмана, и теперь пакмана нет и установить не получается :(

(14/25) переустановка gettext                      [######################] 100%
(15/25) переустановка grep                         [######################] 100%
(16/25) переустановка groff                        [######################] 100%
(17/25) переустановка gzip                         [######################] 100%
(18/25) переустановка libtool                      [######################] 100%
(19/25) переустановка texinfo                      [######################] 100%
(20/25) переустановка make                         [######################] 100%
ошибка: не удалось открыть файл /var/cache/pacman/pkg/pacman-5.2.1-4-x86_64.pkg.tar.zst: Нет такого файла или каталога
ошибка: не удалось завершить транзакцию
ошибка: не удалось завершить транзакцию (транзакция прервана)
Обнаружены ошибки, пакеты не обновлены.
[root@myarch ~]# pacman -Syu
-bash: /usr/bin/pacman: Нет такого файла или каталога
buratino ★★★★★
() автор топика
Ответ на: комментарий от buratino

[code]pacman -R pacman error: could not open file /var/lib/pacman/local/pacman-5.2.1-4/desc: Нет такого файла или каталога warning: could not fully load metadata for package pacman-5.2.1-4 checking dependencies… error: failed to prepare transaction (could not satisfy dependencies) :: removing pacman breaks dependency ‘pacman’ required by base [/code]

вообще зашибись

buratino ★★★★★
() автор топика
Ответ на: комментарий от buratino

долбаный маркдаун. не собираюсь ничего исправлять, пусть исправляет тот, кто маркдаун сюда вкорячил

buratino ★★★★★
() автор топика
Ответ на: комментарий от greenman
[2020-02-13T19:13:37+1000] [PACMAN] Running 'pacman -S base-devel'
[2020-02-13T19:13:43+1000] [ALPM] transaction started
[2020-02-13T19:13:43+1000] [ALPM] reinstalled gawk (5.0.1-2)
[2020-02-13T19:13:43+1000] [ALPM] reinstalled m4 (1.4.18-3)
[2020-02-13T19:13:43+1000] [ALPM] reinstalled autoconf (2.69-7)
[2020-02-13T19:13:43+1000] [ALPM] reinstalled automake (1.16.1-2)
[2020-02-13T19:13:43+1000] [ALPM] reinstalled binutils (2.34-1)
[2020-02-13T19:13:43+1000] [ALPM] installed bison (3.5.1-1)
[2020-02-13T19:13:43+1000] [ALPM] reinstalled sed (4.8-1)
[2020-02-13T19:13:43+1000] [ALPM] reinstalled fakeroot (1.24-2)
[2020-02-13T19:13:43+1000] [ALPM] reinstalled file (5.38-3)
[2020-02-13T19:13:43+1000] [ALPM] reinstalled findutils (4.7.0-2)
[2020-02-13T19:13:43+1000] [ALPM] installed flex (2.6.4-3)
[2020-02-13T19:13:43+1000] [ALPM] installed libmpc (1.1.0-2)
[2020-02-13T19:13:44+1000] [ALPM] installed gcc (9.2.1+20200130-2)
[2020-02-13T19:13:44+1000] [ALPM] reinstalled gettext (0.20.1-3)
[2020-02-13T19:13:44+1000] [ALPM] reinstalled grep (3.4-1)
[2020-02-13T19:13:44+1000] [ALPM] reinstalled groff (1.22.4-3)
[2020-02-13T19:13:44+1000] [ALPM] reinstalled gzip (1.10-3)
[2020-02-13T19:13:44+1000] [ALPM] reinstalled libtool (2.4.6+42+gb88cebd5-10)
[2020-02-13T19:13:44+1000] [ALPM] reinstalled texinfo (6.7-2)
[2020-02-13T19:13:44+1000] [ALPM] reinstalled make (4.3-1)
[2020-02-13T19:13:44+1000] [ALPM] transaction failed
[2020-02-13T19:15:41+1000] [PACMAN] Running 'pacman -S pacman'
[2020-02-13T19:19:32+1000] [PACMAN] Running 'pacman -R pacman'
buratino ★★★★★
() автор топика
Ответ на: комментарий от greenman

я бинарник pacman и нужную ему библиотеку из тарбола вручную в /usr/bin и /usr/lib затолкал, чтобы был хоть какой-то пакман

какой нехороший человек лет 10 назад прибил pacman.static - я не знаю

buratino ★★★★★
() автор топика
Ответ на: комментарий от greenman

а смысл полного лога, если сломалось только сейчас. до этого там ничего интересного

реп локальный, меняется только по ручному запуску rsync, после чего вручную делается -syu. сейчас там ничего измениться не могло. какого хрена он вообще полез в pacman при обновлении, я не знаю

buratino ★★★★★
() автор топика
Ответ на: комментарий от anonymous

Running ’pacman -R pacman Защиты от дурака нет сказали умри умер.

это я пытаюсь удалить уже исчезнувший pacman, чтобы заново с нуля его поставить

правда, заново с нуля говорит это:

error: failed to commit transaction (conflicting files)
pacman: /usr/bin/pacman exists in filesystem
pacman: /usr/lib/libalpm.so exists in filesystem
pacman: /usr/lib/libalpm.so.12 exists in filesystem
pacman: /usr/lib/libalpm.so.12.0.1 exists in filesystem
Errors occurred, no packages were upgraded.

есть какой-нибудь ключ типа --force? потому что если я удалю эти файлы, я не смогу сделать pacman -S pacman :)

buratino ★★★★★
() автор топика
Ответ на: комментарий от buratino

уф, с помощью LD_LIBRARY_PATH и такой-то матери удалил

buratino ★★★★★
() автор топика
Ответ на: комментарий от anonymous

хм, когда ман читал, пропустил upgrade-options. а он там :)

buratino ★★★★★
() автор топика
Ответ на: комментарий от anonymous

я же показал фрагмент. я просто сделал pacman -S base-devel и всё. нафига он при этом в пакман полез, затем его удалил, затем не нашёл нового почему-то - и остался я вообще без пакмана.

buratino ★★★★★
() автор топика
Ответ на: комментарий от intelfx

чтобы удалить и заново установить

вообще, в OpenBSD на этот случай существует команда pkg_check, которая восстанавливает базы

buratino ★★★★★
() автор топика
Ответ на: комментарий от buratino

В пакмане тоже можно только запись в базу сделать. Смотри ман. Но все же где то ты ручками полазил в системе

anonymous
()
Ответ на: комментарий от intelfx

У него по моему или привязки либ или бинарников нарушены.Явно пошурудил в системе

/usr/bin/pacman: Нет такого файла или каталога

/usr/bin/pacman exists in filesystem

anonymous
()
Ответ на: комментарий от anonymous

я вообще ничего не трогал, кроме pacman -S base-devel

с моим опытом арча с 2007 года, я такие проблемы наблюдал ежегодно. а когда убрали pacman.static, всё стало ещё хуже

buratino ★★★★★
() автор топика
Ответ на: комментарий от anonymous

Охохо, действительно.

Ну с его подходом «я не хочу ни в чём разбираться, а ну быстро разберитесь мне тут» — тут только шиндоус-вей поможет.

intelfx ★★★★★
()
Последнее исправление: intelfx (всего исправлений: 3)
Ответ на: комментарий от anonymous

я же написал выше. у меня удалился пакман. поскольку сделать ничего больше нельзя, я взял бинарник пакмана и нужные ему файлы библиотек. только для того, чтобы заново поставить сам пакман. после того, как я его поставил, я эти файлы удалил. был бы pacman.static, проблем было бы меньше

buratino ★★★★★
() автор топика
Ответ на: комментарий от buratino

не, не соберу. сначала у какого-то файла хэш не сошёлся, пока нашёл где это отключить, теперь подпись не сошлась… дальше мне надоело…

buratino ★★★★★
() автор топика
Ответ на: комментарий от int13h

что можно сломать командой pacman -S base-devel?

я же привёл лог выше, что делал pacman, когда он потерял свой pacman, при этом перед этим удалив старый. что в выводе pacman может быть непонятно

и я уже 20 сообщений назад его переустановил. удалил записи о pacman в /var/lib/pacman, поставил pacman в нестандартный путь, библиотеки загрузил через LD_LIBRARY_PATH, затем сделал /path/pacman -S pacman

я ничего не хейчу. я же говорю, я арчем пользуюсь,начиная со среза 2007 года, и я получаю от него то, что ожидаю. просто там постоянно всё меняется, и новые нюансы вылазят. а так, с начала 2008 года, у меня арч примерно 4 года был первой системой, и также года 4 был второй-третьей системой

buratino ★★★★★
() автор топика
Ответ на: комментарий от buratino

что можно сломать командой pacman -S base-devel?

Да всё что угодно.

Словосочетание «partial upgrade» знакомо?

Вкратце, перед установкой любых новых пакетов арч необходимо полностью обновлять.

intelfx ★★★★★
()
Последнее исправление: intelfx (всего исправлений: 2)
Ответ на: комментарий от buratino

я же привёл лог выше, что делал pacman

Ты привёл кусок лога. На bbs были случаи, когда после полного лога оказывалось ясно, что юзер ССЗБ.

greenman ★★★★★
()
Последнее исправление: greenman (всего исправлений: 1)
Ответ на: комментарий от greenman

выше там ничего интересного - просто ставятся пакеты, начиная от pacstrap. ничего не удаляется :) это чистая новая свежая система.

buratino ★★★★★
() автор топика
Ответ на: комментарий от intelfx

это локальный реп, который хранится на hdd. там не может быть обновлений, пока я не запущу rsync :) а после rsync я делаю полное обновление, конечно же

единственный глюк, который может быть, вынесен в заголовок темы - это перенесённый cachedir. может быть, где-то как-то это повлияло, что он записал пэкмэн в один путь, а искать начал в другом...

кстати, а почему у меня в дебиане, чтобы прокручивать вниз, надо прокручивать тачпад в одну сторону, а в арче - в другую? за все мои десятки ноутбуков я такое вижу впервые, обычно тачпады везде себя вели одинаково :) ну это так, шутка

buratino ★★★★★
() автор топика
Ответ на: комментарий от buratino

Ну да, частичных обновлений не видно.

.
.

Странно вот это

# pacman -Syu
-bash: /usr/bin/pacman: Нет такого файла или каталога

Но при этом кто-то же в лог пишет

2020-02-13T19:13:44+1000] [ALPM] transaction failed
[2020-02-13T19:15:41+1000] [PACMAN] Running 'pacman -S pacman'
[2020-02-13T19:19:32+1000] [PACMAN] Running 'pacman -R pacman'
[2020-02-13T19:26:22+1000] [PACMAN] Running 'pacman -Syu'
[2020-02-13T19:26:22+1000] [PACMAN] synchronizing package lists
[2020-02-13T19:26:23+1000] [PACMAN] starting full system upgrade
[2020-02-13T19:27:16+1000] [PACMAN] Running 'pacman -S pacman'
[2020-02-13T19:27:31+1000] [PACMAN] Running 'pacman -S pacman'
[2020-02-13T19:27:43+1000] [PACMAN] Running 'pacman -S pacman'
greenman ★★★★★
()
Ответ на: комментарий от greenman

я же сказал, после того, как пакман изчез вообще, я взял из тарбола пакмана pacman и положил в /usr/bin/pacman, а libalpm - в /usr/lib/

иначе как я мог бы вообще что-то поставить или удалить?

buratino ★★★★★
() автор топика
Ответ на: комментарий от greenman

после установки base-devel от пакмана остался только пустой каталог в /var/lib/pacman, и распакованный пакман ругался, что не может найти desc-файл. тогда я просто удалил пустой каталог, на что пакман сказал, что не может заменить файлы, которые уже существуют. тогда я просто убрал их из /usr/bin и /usr/lib, и пакман восстановился командой pacman -S pacman

я только не понимаю, зачем он заменяет уже установленные пакеты ими же при установке группы

buratino ★★★★★
() автор топика
Ответ на: комментарий от buratino

я только не понимаю, зачем он заменяет уже установленные пакеты ими же при установке группы

Такое вот поведение по умолчанию. Используй pacman -S ... --needed.

intelfx ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.