我有一个在 Ubuntu 18.04 上运行的 Rails 项目,我刚刚将系统升级到 Ubuntu 20.04。
cap production deploy
在以下步骤中失败deploy:assets:precompile
:
00:07 deploy:assets:precompile
01 /home/deploy/.rbenv/bin/rbenv exec bundle exec rake assets:precompile
01 bundler: failed to load command: rake (/var/www/framelinker/shared/bundle/ruby/2.6.0/bin/rake)
01 Gem::Exception: can't find executable rake for gem rake. rake is not currently included in the bundle, perhaps you meant to add it to your Gemfile?
Run Code Online (Sandbox Code Playgroud)
我尝试将 rake 添加到我的 gemfile 中,尽管我有一种感觉这不是答案,因为 a) 它没有任何区别,b) 当一切都在 Ubuntu 18.04 上运行时,rake 不在我的 gemfile 中。
谷歌搜索告诉我要运行gem update --system
,但我不想手动弄乱服务器。
我在服务器上使用 rbenv。我的 gemfile 被锁定在 …
systemd 批准的用于从中删除例如 sidekiq.service 的方法是什么/etc/systemd/system/
?
请注意,关于此主题有许多相关讨论,例如我已经阅读过的讨论: https ://superuser.com/questions/513159/how-to-remove-systemd-services
我的困惑之处在于,上述讨论中最常见的答案要求用户rm
从多个位置手动文件,但后来的答案表明这systemctl disable <service>
应该与手动删除文件具有相同的效果。
根据我自己的测试systemctl disable sidekiq
,我发现单元文件之后sidekiq.service
仍保留在/etc/systemd/system
。
我知道,从理论上讲,rm
在一堆位置上使用应该可以解决问题,但我想知道真正熟悉systemd
或systemctl
会这样做的人是如何做到这一点的。这种暴力真的有必要吗?或者是否有systemctl
为此目的的实际命令?