ICode9

精准搜索请尝试: 精确搜索
首页 > 系统相关> 文章详细

用于信号处理和用户管理的Python Unix / Windows抽象层

2019-07-09 13:05:13  阅读:262  来源: 互联网

标签:python unix windows user-management signal-handling


我想问一个问题,我的广泛的网络搜索会建议答案是“不”,但也许我忽略了一些东西……

是否有Python抽象层位于Unix和Windows信号处理(用于生成的独立进程)和用户管理(获取用户和组条目,比较它们等)之上?

是的,我知道Windows和Unix在两个方面都有所不同,但操作系统特定的方法确实完成了类似的任务.因此,创建抽象层似乎不是一个坏主意.

我找到的最接近我正在寻找的东西,至少对于子流程管理(以及在某种程度上“发信号通知”那些子流程),是python-multiprocessing,即http://docs.python.org/dev/library/multiprocessing.html – 它是抽象的一种我我正在寻找,但它并没有完全符合我的要求.

任何指针都朝这个方向发展?

在Windows上进行信号处理/用户管理的模块看起来像Unix,反之亦然.

解决方法:

Python已经有一种信号处理的抽象,但在Windows上,你的限制是:

signal()只能使用SIGABRT,SIGFPE,SIGILL,SIGINT,SIGSEGV或SIGTERM调用.在任何其他情况下都会引发ValueError.

用户管理是一个完全不同的动物:
如果您想在两个平台上进行类似处理,则必须自己编写包装器:

对于Windows,请查看win32api(例如http://timgolden.me.uk/python/win32_how_do_i/check-a-users-credentials.html)

在Linux / Windows上再次也不是为了这个目的,并且真正取决于如何验证(本地PAM,NIS等)有Debian和派生使用的libuser但我自己从未使用过它. (http://linuxsoft.cern.ch/cern/slc6X/x86_64/yum/updates/repoview/libuser-python.html)

标签:python,unix,windows,user-management,signal-handling
来源: https://codeday.me/bug/20190709/1413302.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有