title: .Net Core Process.Start on Linux
body: <p>I am facing the following issue when running my .Net Core application on Linux.</p>
  
  <p>Here is the exception:</p>
  
  <pre><code>System.ComponentModel.Win32Exception (0x80004005): Permission denied
     at Interop.Sys.ForkAndExecProcess(String filename, String[] argv, String[] envp, String cwd, Boolean redirectStdin, Boolean redirectStdout, Boolean redirectStderr, Int32&amp; lpChildPid, Int32&amp; stdinFd, Int32&amp; stdoutFd, Int32&amp; stderrFd)
     at System.Diagnostics.Process.StartCore(ProcessStartInfo startInfo)
     at System.Diagnostics.Process.Start()
     at Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater.&lt;Update&gt;d__18.MoveNext() in C:\projects\requestplex\src\Ombi.Schedule\Jobs\Ombi\OmbiAutomaticUpdater.cs:line 218
  </code></pre>
  
  <p>Here is the code:</p>
  
  <pre><code>var updaterFile = Path.Combine(Path.GetDirectoryName(Assembly.GetEntryAssembly().Location),
       "TempUpdate", $"Ombi.Updater");
  
  var start = new ProcessStartInfo
  {
      UseShellExecute = false,
      CreateNoWindow = true,
      FileName = updaterFile,
      Arguments = GetArgs(settings), // This just gets some command line arguments for the app i am attempting to launch
      WorkingDirectory = Path.Combine(Path.GetDirectoryName(Assembly.GetEntryAssembly().Location), "TempUpdate"),
  };
  
  using (var proc = new Process { StartInfo = start })
  {
      proc.Start();
  }
  </code></pre>
  
  <p>It seems that the exception is being thrown when we call <code>.Start()</code>.</p>
  
  <p>I am not sure why this is happening, the permissions on the file and folders have been set to 777.</p>