Rumah > Java > teks badan

perintah start-all.sh, start-dfs.sh tidak ditemui

PHPz
Lepaskan: 2024-02-09 13:24:09
ke hadapan
802 orang telah melayarinya

Editor PHP Apple mungkin menghadapi masalah biasa apabila menggunakan Hadoop: "start-all.sh, start-dfs.sh commands not found". Masalah ini biasanya berlaku apabila memulakan kluster Hadoop dan mungkin disebabkan oleh konfigurasi laluan yang salah atau fail skrip yang tidak wujud. Untuk menyelesaikan masalah ini, kita perlu menyemak laluan pemasangan Hadoop dan konfigurasi pembolehubah persekitaran untuk memastikan ia ditetapkan dengan betul dan memastikan fail skrip yang berkaitan wujud dalam laluan yang sepadan. Berikut akan memperkenalkan secara terperinci bagaimana untuk menyelesaikan masalah ini, mari kita lihat bersama!

Kandungan soalan

Saya menggunakan ubuntu 16.04 lts dan memasang hadoop 2.7.2. Keluaran

  hadoop version
Salin selepas log masuk

Ya

  hadoop 2.7.2
  subversion https://git-wip-us.apache.org/repos/asf/hadoop.git -r b165c4fe8a74265c792ce23f546c64604acf0e41
  compiled by jenkins on 2016-01-26t00:08z
  compiled with protoc 2.5.0
  from source with checksum d0fda26633fa762bff87ec759ebe689c
  this command was run using /usr/local/hadoop-2.7.2/share/hadoop/common/hadoop-common-2.7.2.jar
Salin selepas log masuk

Apabila saya berlari

  whereis hadoop
Salin selepas log masuk

Output yang diberikan ialah

  hadoop: /usr/local/hadoop /usr/local/hadoop-2.7.2/bin/hadoop.cmd /usr/local/hadoop-2.7.2/bin/hadoop
Salin selepas log masuk

Tetapi apabila saya menjalankan arahan

  start-all.sh
Salin selepas log masuk

Ia mengatakan arahan tidak dijumpai. Perkara yang sama apabila saya berlari

  start-dfs.sh
Salin selepas log masuk

Output yang diberikan adalah arahan tidak ditemui.

Saya boleh menjalankan arahan ini apabila saya menavigasi ke direktori hadoop, tetapi saya mahu menjalankan arahan ini tanpa menavigasi ke direktori hadoop.

Penyelesaian

Masalah anda ialah bash tidak tahu di mana hendak mencari ./start-all.sh.

Anda boleh membetulkannya dengan membuka $home/.bashrc dan menambah baris seperti ini:

path=$path:/usr/local/hadoop/sbin
Salin selepas log masuk

Ini memberitahu bash bahawa ia sepatutnya kelihatan start-all.sh dalam "/usr/local/hadoop/sbin".

Perhatian:

Perubahan kepada $home/.bashrc tidak akan berkuat kuasa di mana-mana terminal yang sedang dibuka.

Jika anda memerlukan perubahan untuk berkuat kuasa pada terminal yang sedang dibuka, jalankan

source $home/.bashrc
Salin selepas log masuk

Saya perlu menggunakan find untuk mencarinya.

find / -iname start-all.sh 2>  /dev/null
Salin selepas log masuk

Temui:

/usr/local/sbin/start-all.sh
/usr/local/cellar/hadoop/3.3.4/libexec/sbin/start-all.sh
/usr/local/cellar/hadoop/3.3.4/sbin/start-all.sh
Salin selepas log masuk

Jadi sebagai tambahan kepada jawapan sebelumnya, pembolehubah dalam $home/.bashrc kelihatan seperti ini:

PATH=$PATH:/usr/local/sbin/
Salin selepas log masuk

Nota: Saya tidak pasti yang mana satu harus ditetapkan path

Atas ialah kandungan terperinci perintah start-all.sh, start-dfs.sh tidak ditemui. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:stackoverflow.com
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan