Python27(win): import daemon, but there is an error: No module named pwd

15,456

Solution 1

  1. The pwd module is a UNIX only package, it's for managing passwords.

  2. The package you are trying to install is daemon, which is an un-maintained package from 2014. There is a more recent package called python-daemon, which is well maintained and used for implementing daemons in UNIX systems. It also works with python3. Though again, this will not work on windows.

  3. If you're writing an application yourself and want to do this on windows you need to install it as a service, not a daemon this stackoverflow post is old, but still relevant.

Solution 2

python-daemon (newer version) and daemon both require the pwd package, which is not available on Windows.

Your code should detect that this is not available and disable daemon mode on Windows (which isn't really a thing).

try:
    import daemon
except ImportError:
    daemon = None

Then later, you can check if daemon is None.

Share:
15,456
Sinbad lo
Author by

Sinbad lo

Updated on June 05, 2022

Comments

  • Sinbad lo
    Sinbad lo almost 2 years

    1) pip install daemon.

    enter image description here

    2) Open windows cmd and input: python, then input: import daemon the terminal show

    >>> import daemon
    Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
      File "C:\Python27\lib\site-packages\daemon\__init__.py", line 42, in <module>
        from .daemon import DaemonContext
      File "C:\Python27\lib\site-packages\daemon\daemon.py", line 25, in <module>
        import pwd
    ImportError: No module named pwd
    >>>
    

    3) pip install pwd

    what's the problem?????

  • Erik Aronesty
    Erik Aronesty over 4 years
    python-daemon also requires pwd apparently