1
0

More than 3 years have passed since last update.

pyenvでインストールしたpythonをrootユーザー権限(sudo)で使う方法

Posted at

pythonの環境を確認

$which python
/home/[user]/.pyenv/shims/python

pyenvで管理されているpythonにパスが通っている。

$python -V
Python 3.7.7

バージョンは3.7.7

sudoで実行したときの挙動を確認する

print_python_version.py
import platform
print(platform.python_version())

pythonのバージョンがプリントされるスクリプト

$python print_python_version.py 
3.7.7

一般ユーザーとして実行する。pyenvのpythonで実行されている。

$sudo python print_python_version.py 
2.7.16

rootユーザーの権限で実行する。pythonのバージョンが3.7.7でない。

$sudo which python
/usr/bin/python

システムのpythonで実行されている。

実行するpythonをshebangで明記する

print_python_version_shebang.py
#!/home/[user]/.pyenv/shims/python

import platform
print(platform.python_version())
chmod +x print_python_version_shebang.py

実行権限を与える。

$./print_python_version_shebang.py
3.7.7

一般ユーザーとして実行する。pyenvのpythonで実行されている。

$sudo ./print_python_version_shebang.py
3.7.7

rootユーザーの権限で実行する。pyenvのpythonで実行されている。

まとめ

shebangで使用したいpythonのパスを明記すれば解決した。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0