无法登录 Fedora Server 27 上的 Wok - Python 和 PAM

无法登录 Fedora Server 27 上的 Wok - Python 和 PAM

我刚刚设置了 WOK,无法通过 root uname/pwd 登录。我在 Github 上找到了一张带有“解决方案”的票证,但我不知道如何实现它。

有人知道如何将其转化为可用的修复吗?

--- /usr/lib/python2.7/site-packages/wok/auth.py.org    2018-05-18 18:56:52.948726704 +0100
+++ /usr/lib/python2.7/site-packages/wok/auth.py        2018-05-18 18:57:15.843333455 +0100
@@ -145,7 +145,7 @@
             debug("User %s is not allowed to run sudo" % self.name)

     @staticmethod
-    def authenticate(username, password, service="passwd"):
+    def authenticate(username, password, service="system-auth"):
         '''Returns True if authenticate is OK via PAM.'''
         def _auth(result):
             def _pam_conv(auth, query_list, userData=None):

来源:https://github.com/kimchi-project/kimchi/issues/1232#issuecomment-390288343

答案1

该文件采用“统一差异”格式。以 开头的行-被以 开头的行替换+。节@@ ... @@标题描述了在文件中的何处可以找到后续几行。您将使用该patch命令应用此文件中的更改。假设您已经保存了该代码片段,patchfile您可以运行以下命令:

patch -b <patchfile

-b标志告诉patch程序在尝试更改文件之前先对文件进行备份。

或者,由于通过目视检查,唯一的区别是passwd已被替换system-auth,因此您可以使用您最喜欢的编辑器简单地编辑文件。

vi +148 /usr/lib/python2.7/site-packages/wok/auth.py

答案2

cat /usr/lib/python2.7/site-packages/wok/auth.py  | grep service=
sed -i -e 's/passwd/system-auth/g' /usr/lib/python2.7/site-packages/wok/auth.py 
cat /usr/lib/python2.7/site-packages/wok/auth.py  | grep service=
service wokd restart

相关内容