Tôi đã cài đặt hai phiên bản Python.
- Python 2.7,14 trong
/usr/local/bin
- Python 2.7.5 trong
/usr/bin
.
Khi tôi gõ # python
, nó sử dụng phiên bản 2.7.14
nhưng khi tôi gõ sudo python
, nó sử dụng phiên bản 2.7.5
. Làm thế nào tôi có thể làm sudo python
trỏ đến phiên bản 2.7.14
?
Trong đầu ra của sudo env | grep PATH
, /usr/local/bin
xuất hiện trước /usr/bin
nhưng nó vẫn đang nhặt Python từ /usr/bin
.
PATH=/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
Khi tôi gõ sudo su
để vào vỏ gốc, nó cho tôi python 2.7.14
nhưng trong cùng một phiên nếu tôi gõ sudo python
, nó đưa cho tôi python 2.7.5
.
Tôi đã đi qua câu hỏi này nhưng câu trả lời được chấp nhận không trả lời làm thế nào để đảm bảo sudo sử dụng đúng đường dẫn.
Đây là cách đường dẫn an toàn trông như thế nào:
secure_path = /usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
sudo: type: command not found
. Tôi đã tạo một bí danh nhưng tôi đã xóa nó vì nó không hoạt động cho sudo
sudo bash -c 'type python'
?
python is /bin/python
sudo type python
? (Tôi nghi ngờ rằng bạn có bí danhpython
đến một cái gì đó khác, hoặc tạo ra một chức năng ở đâu đó.)