title: Subprocess check_output returned non-zero exit status 1
body: <p>This is my python code:</p>
  
  <pre><code>import subprocess
  subprocess.check_output("ls",shell=True,stderr=subprocess.STDOUT)
  
  import subprocess
  subprocess.check_output("yum",shell=True,stderr=subprocess.STDOUT)
  </code></pre>
  
  <p>The first <code>.check_output()</code> works well, but the second returns this:</p>
  
  <pre><code>Traceback (most recent call last):
  File "/usr/lib/x86_64-linux-gnu/gedit/plugins/pythonconsole/console.py", line 378, in __run
  r = eval(command, self.namespace, self.namespace)
  File "&lt;string&gt;", line 1, in &lt;module&gt;
  File "/usr/lib/python3.4/subprocess.py", line 616, in check_output
  raise CalledProcessError(retcode, process.args, output=output)
  subprocess.CalledProcessError: Command 'yum' returned non-zero exit status 1
  </code></pre>
  
  <p>Why does this happen? Is it because <code>ls</code> is the original shell command but <code>yum</code> is the new package? How can I solve this problem? </p>