<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta name="generator" content="rustdoc">
    <meta name="description" content="API documentation for the Rust `daemon` fn in crate `nix`.">
    <meta name="keywords" content="rust, rustlang, rust-lang, daemon">

    <title>nix::unistd::daemon - Rust</title>

    <link rel="stylesheet" type="text/css" href="../../normalize.css">
    <link rel="stylesheet" type="text/css" href="../../rustdoc.css">
    <link rel="stylesheet" type="text/css" href="../../main.css">
    

    
    
</head>
<body class="rustdoc fn">
    <!--[if lte IE 8]>
    <div class="warning">
        This old browser is unsupported and will most likely display funky
        things.
    </div>
    <![endif]-->

    

    <nav class="sidebar">
        
        <p class='location'><a href='../index.html'>nix</a>::<wbr><a href='index.html'>unistd</a></p><script>window.sidebarCurrent = {name: 'daemon', ty: 'fn', relpath: ''};</script><script defer src="sidebar-items.js"></script>
    </nav>

    <nav class="sub">
        <form class="search-form js-only">
            <div class="search-container">
                <input class="search-input" name="search"
                       autocomplete="off"
                       placeholder="Click or press ‘S’ to search, ‘?’ for more options…"
                       type="search">
            </div>
        </form>
    </nav>

    <section id='main' class="content">
<h1 class='fqn'><span class='in-band'>Function <a href='../index.html'>nix</a>::<wbr><a href='index.html'>unistd</a>::<wbr><a class="fn" href=''>daemon</a></span><span class='out-of-band'><span id='render-detail'>
                   <a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">
                       [<span class='inner'>&#x2212;</span>]
                   </a>
               </span><a class='srclink' href='../../src/nix/unistd.rs.html#491-494' title='goto source code'>[src]</a></span></h1>
<pre class='rust fn'>pub fn daemon(nochdir: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>, noclose: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>) -&gt; <a class="type" href="../../nix/type.Result.html" title="type nix::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.tuple.html">()</a>&gt;</pre><div class='docblock'><p>Daemonize this process by detaching from the controlling terminal (see
<a href="http://man7.org/linux/man-pages/man3/daemon.3.html">daemon(3)</a>).</p>

<p>When a process is launched it is typically associated with a parent and it,
in turn, by its controlling terminal/process.  In order for a process to run
in the &quot;background&quot; it must daemonize itself by detaching itself.  Under
posix, this is done by doing the following:</p>

<ol>
<li>Parent process (this one) forks</li>
<li>Parent process exits</li>
<li>Child process continues to run.</li>
</ol>

<p><code>nochdir</code>:</p>

<ul>
<li><code>nochdir = true</code>: The current working directory after daemonizing will
be the current working directory.</li>
<li> <code>nochdir = false</code>: The current working directory after daemonizing will
be the root direcory, <code>/</code>.</li>
</ul>

<p><code>noclose</code>:</p>

<ul>
<li><code>noclose = true</code>: The process&#39; current stdin, stdout, and stderr file
descriptors will remain identical after daemonizing.</li>
<li><code>noclose = false</code>: The process&#39; stdin, stdout, and stderr will point to
<code>/dev/null</code> after daemonizing.</li>
</ul>

<p>The underlying implementation (in libc) calls both
<a href="http://man7.org/linux/man-pages/man2/fork.2.html">fork(2)</a> and
<a href="http://man7.org/linux/man-pages/man2/setsid.2.html">setsid(2)</a> and, as
such, error that could be returned by either of those functions could also
show up as errors here.</p>
</div></section>
    <section id='search' class="content hidden"></section>

    <section class="footer"></section>

    <aside id="help" class="hidden">
        <div>
            <h1 class="hidden">Help</h1>

            <div class="shortcuts">
                <h2>Keyboard Shortcuts</h2>

                <dl>
                    <dt>?</dt>
                    <dd>Show this help dialog</dd>
                    <dt>S</dt>
                    <dd>Focus the search field</dd>
                    <dt>&larrb;</dt>
                    <dd>Move up in search results</dd>
                    <dt>&rarrb;</dt>
                    <dd>Move down in search results</dd>
                    <dt>&#9166;</dt>
                    <dd>Go to active search result</dd>
                    <dt>+</dt>
                    <dd>Collapse/expand all sections</dd>
                </dl>
            </div>

            <div class="infos">
                <h2>Search Tricks</h2>

                <p>
                    Prefix searches with a type followed by a colon (e.g.
                    <code>fn:</code>) to restrict the search to a given type.
                </p>

                <p>
                    Accepted types are: <code>fn</code>, <code>mod</code>,
                    <code>struct</code>, <code>enum</code>,
                    <code>trait</code>, <code>type</code>, <code>macro</code>,
                    and <code>const</code>.
                </p>

                <p>
                    Search functions by type signature (e.g.
                    <code>vec -> usize</code> or <code>* -> vec</code>)
                </p>
            </div>
        </div>
    </aside>

    

    <script>
        window.rootPath = "../../";
        window.currentCrate = "nix";
    </script>
    <script src="../../main.js"></script>
    <script defer src="../../search-index.js"></script>
</body>
</html>