Я предполагаю, что я могу изменить точку, на которой скрипт работает, возился с параметром просязания
, который будет иметь противоположный эффект того, что вы хотите. Из MAN SYSTEMD.UNIT
:
Weymentby =, требуется, требуется =
[...] символическая ссылка создана в .wants / или .requires / каталог каждого из перечисленных единиц, когда Этот агрегат устанавливается SystemCTL Enable. Это влияет, что зависимость типа хочет = Или требуется = добавляется из перечисленного блока к текущему блоку .
На основании этого мы можем видеть правильную опцию подразделения «Хочет» или «требует»; На основании описания тех, «требуется», вероятно, является правильным, с добавлением «после», чтобы обеспечить не только то, что сетевая служба будет запускаться, но она выполняется до этого устройства.
Ни один из вариантов устройства, AFAIK, не может включать в себя условие, что начало Perquisite должен выполнить или достичь определенного момента (сетевая служба, вероятно, является услугой демона), только что его запускается . Имея в виду, что вы можете сделать свой скрипт тип = выпукать
и бросить здоровую задержку (скажем, 30 секунд) или какой-то цикл выхода на успех, включая задержку, чтобы сделать уверен, что у вас первый аренду DHCP.
Загрузите нужный вам пакет(ы) и используйте --instdir
с опцией --instdir
:
dpkg --instdir=/path/to/mounted/HDD --install yourpackage.deb
вы можете использовать --purge
(также с помощью соответствующего --instdir
! !) сначала, если dpkg
не хочет перезаписывать половину установленного пакета.
Самый простой способ сделать это - создать chroot, а затем выполнить операции восстановления внутри chroot. Вы делаете это следующим образом:
sudo ifconfig
. sudo mkdir -pv / mnt / mymint
sudo mount -v -t ext4 / dev / sdX
, где X - буква корневого раздела. Вам может потребоваться изменить параметр -t
в зависимости от вашей файловой системы. sudo swapon / dev / sdY
, где Y - ваш раздел подкачки. mount -t proc proc / mnt / mymint / proc
mount --rbind / sys / mnt / mymint / sys
mount - -rbind / dev / mnt / mymint / dev
chroot / mnt / mymint / bin / bash
source / etc / profile
export PS1 = "(chroot) $ PS1"
sudo apt-get remove --purge brokenpackagename && sudo apt-get-install packagename
exit
umount -l / mnt / mymint / dev {/ shm, / pts,}
umount / mnt / mymint {/ boot, / sys, / proc,}
перезагрузка
Мое личное мнение таково, что использование корня-чейнджера - самый безопасный подход, потому что таким образом ничто из LiveCD / USB не мешает работе вашей системы.Я допускаю, что такой подход, вероятно, отпугивает некоторых новых пользователей, но могу заверить вас, что это работает, поскольку это метод, который Gentoo Distribution использует для новых установок. Если интересно, см. главу 6 Руководства по установке Gentoo .