我正在尝试删除一个明显损坏的包gammu-smsd.service
。
当我运行时sudo apt remove gammu-smsd.service
,我得到以下结果:
Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Unable to locate package gammu-smsd.service
我到了想要删除这个包的地步,因为在我进行一些清理时,我在尝试安装和删除我选择的包时遇到了问题。这是升级的结果(更新是完美的)。
这是运行的结果sudo apt upgrade
。
Reading package lists...
Building dependency tree...
Reading state information...
Calculating upgrade...
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
1 not fully installed or removed.
After this operation, 0 B of additional disk space will be used.
Do you want to continue? [Y/n] Abort.
第 6 行(在上面的输出中)提醒我有问题。一旦我知道罪魁祸首是gammu-smsd.service
,我跑得到systemctl status gammu-smsd.service
这个结果:
● gammu-smsd.service - SMS daemon for Gammu
Loaded: bad-setting (Reason: Unit gammu-smsd.service has a bad unit file setting.)
Active: inactive (dead)
Docs: man:gammu-smsd(1)
Jul 18 20:15:18 LolouilaLawelima systemd[1]: /lib/systemd/system/gammu-smsd.service:9: Neither a valid executable name nor an absolute path: ${CMAKE_INSTALL_FULL_BINDIR}/gammu-smsd
Jul 18 20:15:18 LolouilaLawelima systemd[1]: gammu-smsd.service: Unit configuration has fatal error, unit will not be started.
Jul 18 20:56:24 LolouilaLawelima systemd[1]: /lib/systemd/system/gammu-smsd.service:9: Neither a valid executable name nor an absolute path: ${CMAKE_INSTALL_FULL_BINDIR}/gammu-smsd
Jul 18 20:56:24 LolouilaLawelima systemd[1]: gammu-smsd.service: Unit configuration has fatal error, unit will not be started.
Jul 18 20:56:25 LolouilaLawelima systemd[1]: /lib/systemd/system/gammu-smsd.service:9: Neither a valid executable name nor an absolute path: ${CMAKE_INSTALL_FULL_BINDIR}/gammu-smsd
Jul 18 20:56:25 LolouilaLawelima systemd[1]: gammu-smsd.service: Unit configuration has fatal error, unit will not be started.
Jul 18 21:18:31 LolouilaLawelima systemd[1]: /lib/systemd/system/gammu-smsd.service:9: Neither a valid executable name nor an absolute path: ${CMAKE_INSTALL_FULL_BINDIR}/gammu-smsd
Jul 18 21:18:31 LolouilaLawelima systemd[1]: gammu-smsd.service: Unit configuration has fatal error, unit will not be started.
Jul 18 21:18:33 LolouilaLawelima systemd[1]: /lib/systemd/system/gammu-smsd.service:9: Neither a valid executable name nor an absolute path: ${CMAKE_INSTALL_FULL_BINDIR}/gammu-smsd
Jul 18 21:18:33 LolouilaLawelima systemd[1]: gammu-smsd.service: Unit configuration has fatal error, unit will not be started.
如何删除和/或清除 apt 找不到的包?
根据评论和运行的建议sudo apt remove gammu-smsd
,我得到:
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages were automatically installed and are no longer required:
libgammu-i18n libgammu8 libgsmsd8
Use 'sudo apt autoremove' to remove them.
The following packages will be REMOVED:
gammu-smsd
0 upgraded, 0 newly installed, 1 to remove and 0 not upgraded.
1 not fully installed or removed.
After this operation, 179 kB disk space will be freed.
Do you want to continue? [Y/n]
(Reading database ... 737130 files and directories currently installed.)
Removing gammu-smsd (1.41.0-1) ...
Failed to stop gammu-smsd.service: Unit gammu-smsd.service not loaded.
invoke-rc.d: initscript gammu-smsd, action "stop" failed.
dpkg: error processing package gammu-smsd (--remove):
installed gammu-smsd package pre-removal script subprocess returned error exit status 1
dpkg: too many errors, stopping
Failed to start gammu-smsd.service: Unit gammu-smsd.service has a bad unit file setting.
See system logs and 'systemctl status gammu-smsd.service' fo
r details.
invoke-rc.d: initscript gammu-smsd, action "start" failed.
● gammu-smsd.service - SMS daemon for Gammu
Loaded: bad-setting (Reason: Unit gammu-smsd.service ha
s a bad unit file setting.)
Active: inactive (dead)
Docs: man:gammu-smsd(1)
Jul 18 23:16:57 LolouilaLawelima systemd[1]: /lib/systemd/sy
stem/gammu-smsd.service:9: Neither a valid executable name n
or an absolute path: ${CMAKE_INSTALL_FULL_BINDIR}/gammu-smsd
Jul 18 23:16:57 LolouilaLawelima systemd[1]: gammu-smsd.serv
ice: Unit configuration has fatal error, unit will not be st
arted.
Jul 18 23:16:59 LolouilaLawelima systemd[1]: /lib/systemd/sy
stem/gammu-smsd.service:9: Neither a valid executable name n
or an absolute path: ${CMAKE_INSTALL_FULL_BINDIR}/gammu-smsd
Jul 18 23:16:59 LolouilaLawelima systemd[1]: gammu-smsd.serv
ice: Unit configuration has fatal error, unit will not be st
arted.
Jul 18 23:22:08 LolouilaLawelima systemd[1]: /lib/systemd/sy
stem/gammu-smsd.service:9: Neither a valid executable name n
or an absolute path: ${CMAKE_INSTALL_FULL_BINDIR}/gammu-smsd
Jul 18 23:22:08 LolouilaLawelima systemd[1]: gammu-smsd.serv
ice: Unit configuration has fatal error, unit will not be st
arted.
Jul 18 23:22:11 LolouilaLawelima systemd[1]: /lib/systemd/sy
stem/gammu-smsd.service:9: Neither a valid executable name n
or an absolute path: ${CMAKE_INSTALL_FULL_BINDIR}/gammu-smsd
Jul 18 23:22:11 LolouilaLawelima systemd[1]: gammu-smsd.serv
ice: Unit configuration has fatal error, unit will not be st
arted.
Jul 18 23:22:12 LolouilaLawelima systemd[1]: /lib/systemd/sy
stem/gammu-smsd.service:9: Neither a valid executable name n
or an absolute path: ${CMAKE_INSTALL_FULL_BINDIR}/gammu-smsd
Jul 18 23:22:12 LolouilaLawelima systemd[1]: gammu-smsd.serv
ice: Unit configuration has fatal error, unit will not be st
arted.
dpkg: error while cleaning up:
installed gammu-smsd package post-installation script subpr
ocess returned error exit status 1
Errors were encountered while processing:
gammu-smsd
Processing was halted because there were too many errors.
E: Sub-process /usr/bin/dpkg returned an error code (1)
似乎有一个针对此问题的错误打开,并在下一个版本中修复,但由于某种原因,它尚未在 20.04 版本中发布,因此运行以下命令来修复问题:
最后,重新加载 systemd 并重启服务:
解释:
您的错误似乎表明了问题。该错误表明文件第 9 行指示的路径
/lib/systemd/system/gammu-smsd.service
未定义。所以要查找的路径
gammu-smsd
,可以使用命令which gammu-smsd
。然后,您只需要编辑文件
/lib/systemd/system/gammu-smsd.service
并将变量替换为上面命令所做${CMAKE_INSTALL_FULL_BINDIR}
的绝对路径即可。/usr/bin
sed