Dalam Linux, anda boleh menetapkan semula PATH pembolehubah persekitaran untuk menyelesaikan masalah bahawa arahan su tidak dapat ditemui kerana "/bin" tiada dalam pembolehubah persekitaran PATH berubah kepada "eksport PATH ="/usr/sbin:/usr/bin:/usr/local/bin:/usr/local/sbin:/bin:/sbin"".
Persekitaran pengendalian tutorial ini: sistem linux7.3, komputer Dell G3.
Apabila kami memasang beberapa perisian, untuk kemudahan penggunaan, seperti jre, dll., kami mungkin perlu menetapkan beberapa perisian? pembolehubah persekitaran. Tetapi berhati-hati apabila menetapkan pembolehubah persekitaran Memandangkan saya seorang pemula dan tidak begitu biasa dengan menetapkan pembolehubah persekitaran, apabila menetapkan pembolehubah persekitaran PATH, saya menimpa nilai PATH pembolehubah persekitaran. Untuk mengelakkan perkara ini berlaku, apabila menetapkan pembolehubah persekitaran yang sepadan, nilai asal juga harus ditambah Sebagai contoh, apabila menetapkan nilai PATH, anda boleh melakukan ini: PATH=$PATH:/***/**. */ ***. PATH selepas "=" merujuk kepada nilai yang ditetapkan. Sudah tentu, cara terbaik ialah anda tidak menggunakan pembolehubah persekitaran sistem dan menyesuaikan pembolehubah persekitaran yang memenuhi keperluan anda sendiri Maka masalah yang disebutkan di atas tidak akan berlaku. Contohnya:
eksport JAVA_HOME="/usr/local/jre", JAVA_HOME ialah pembolehubah persekitaran tersuai anda.
Jadi, apakah yang perlu anda lakukan apabila masalah berlaku? Jika ini berlaku, situasi berikut akan berlaku Sebagai contoh, jika anda memasukkan arahan su 'su', anda boleh menemuinya di '/bin/su'
Memandangkan /bin tiada dalam Pembolehubah persekitaran PATH, arahan tidak dapat ditemui.
su: arahan tidak dijumpai
Tidak kira apa perintah yang anda masukkan, gesaan di atas akan dipaparkan. Sudah tentu, anda masih boleh melaksanakan arahan yang sepadan pada masa ini, tetapi anda mesti memasuki laluan mutlak perintah itu pada masa ini. Sebagai contoh, jika anda memasukkan "nama fail sudo gedit" pada masa ini, mesej ralat akan muncul, tetapi jika anda memasukkan "/usr/bin/sudo gedit nama fail", ia akan menjadi baik.
Penyelesaian: Tetapkan semula PATH pembolehubah persekitaran, eksport PATH="/usr/sbin:/usr/bin:/usr/local/bin:/usr/local/sbin:/bin:/ sbin ".
Pengetahuan lanjutan:
Perintah Linux su (ejaan penuh bahasa Inggeris: suis pengguna) digunakan untuk menukar identiti pengguna lain, kecuali akar, diperlukan Jenis kata laluan untuk pengguna ini.
Kebenaran penggunaan: Semua pengguna.
Sintaks
su [-fmp] [-c command] [-s shell] [--help] [--version] [-] [USER [ARG]]
Penerangan parameter:
-f atau --fast tidak perlu membaca fail permulaan (seperti csh.cshrc, dsb.), hanya digunakan untuk csh atau tcsh
-m -p atau --preserve-environment tidak mengubah pembolehubah persekitaran apabila melaksanakan su
-c arahan atau --command=command berubah kepada pengguna yang akaunnya adalah USER dan melaksanakan perintah ( perintah) dan kemudian menukar kembali kepada pengguna asal
-s shell atau --shell=shell menentukan shell untuk dilaksanakan (bash csh tcsh, dll.), nilai lalai ialah pengguna dalam /etc/passwd ( USER) shell
--bantu paparan fail penerangan
--versi maklumat versi paparan
- -l atau -- log masuk Selepas menambah parameter ini, ia akan menjadi seperti log masuk semula adalah sama seperti pengguna ini Kebanyakan pembolehubah persekitaran (HOME SHELL USER, dll.) adalah berdasarkan pengguna ini (USER), dan direktori kerja juga akan berubah. Jika PENGGUNA tidak dinyatakan, lalainya ialah akar
Akaun Pengguna PENGGUNA untuk ditukar
ARG Pass dalam parameter shell baharu
Pembelajaran yang disyorkan: Tutorial video Linux
Atas ialah kandungan terperinci Apakah yang perlu saya lakukan jika arahan su dalam Linux tidak dapat ditemui?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!