dpkg, заменяющий файлы в файловой системе FAT

Это зависит от Вашей системы, но, возможно, можно хотеть использовать hostname команда. Вы, возможно, все еще должны перезапустить bash, возможно, или перезагрузка это - файл профиля/дистанционного управления.

22
06.03.2019, 18:32
1 ответ

Поведение, которое вы видите, реализовано в archives.c в dpkg исходнике, строка 1030 (для версии 1.18. 1):

debug(dbg_eachfiledetail, "tarobject nondirectory, 'link' backup");
if (link(fnamevb.buf,fnametmpvb.buf))
  ohshite(_("unable to make backup link of '%.255s' before installing new version"),
          ti->name);

Мне кажется, что вы можете справиться с отказом ссылки, вернувшись к поведению переименования, используемому в строках 1003 и последующих; что-то вроде (это не проверено):

debug(dbg_eachfiledetail, "tarobject nondirectory, 'link' backup");
if (link(fnamevb.buf,fnametmpvb.buf)) {
  debug(dbg_eachfiledetail,"link failed, nonatomic");
  nifd->namenode->flags |= fnnf_no_atomic_overwrite;
  if (rename(fnamevb.buf,fnametmpvb.buf))
    ohshite(_("unable to move aside '%.255s' to install new version"),
            ti->name);
}

Я не эксперт по dpkg, хотя... (И в dpkg нет опции, доступной для такого поведения)

.
13
27.01.2020, 19:43

Теги

Похожие вопросы