GNU/Linux >> Belajar Linux >  >> Linux

Perintah sumber tidak ditemukan

Sering kali ketika kami bekerja di Linux, kami menemukan kesalahan yang cukup umum mengenai sumber. Kesalahan ini adalah sumber:perintah tidak ditemukan, dan hari ini kami akan menjelaskan kepada Anda semua yang perlu Anda ketahui tentangnya.

Dalam artikel ini, Anda akan mempelajari apa itu source, mengapa kesalahan ini terjadi dan tentu saja, Anda juga akan belajar bagaimana mengatasinya, jadi jika Anda mendapatkan perintah sumber kesalahan yang tidak ditemukan di sistem Linux Anda, silakan lanjutkan membaca.

Pertama, apa sebenarnya perintah sumber itu? Penting untuk menyatakan bahwa sumber bukanlah paket perangkat lunak Linux yang sebenarnya , ini bukan program yang tepat seperti, misalnya, du, egrep, find, dll. Sumber adalah perintah bawaan , ini adalah bagian dari paket perangkat lunak bash .

Untuk memahami fungsinya, pertama, kita perlu mengetahui variabel shell dan variabel lingkungan apa yang ada di Linux. Setiap kali kita membuka sesi SSH baru pada sistem Linux, shell secara otomatis memuat beberapa variabel default. Variabel-variabel ini baik untuk sebagian besar tugas, tetapi untuk yang lain, kita mungkin perlu membuat beberapa perubahan, dan di situlah perintah sumber memasuki tahap.

Jika kita ingin mengubah beberapa variabel, misalnya menjalankan skrip, maka cara terbaik untuk melakukannya adalah dengan menggunakan source. Sebagian besar waktu ketika kita menjalankan skrip di Linux, skrip akan berjalan dalam subkulit, dan dengan demikian tidak akan berjalan di lingkungan yang sama dengan sesi shell kita saat ini. Nah, sumber akan menyelesaikannya untuk digunakan jika kita perlu menggunakan beberapa variabel khusus.

Pertama, kita perlu mendefinisikan variabel di lingkungan shell kita saat ini. Setelah selesai, kita dapat menggunakan source untuk mengubah lingkungan skrip yang kita jalankan dan menjadikannya lingkungan kita saat ini, yang akan membuat variabel baru tersedia untuk skrip yang kita jalankan.

Ini bisa sangat berguna dalam beberapa situasi, kita dapat melakukan lebih banyak lagi dengan sumber, meskipun bukan itu inti dari artikel ini. Jadi, jika kita melakukan kesalahan saat menggunakan sumber, kita mungkin mendapatkan kesalahan, dan salah satunya adalah perintah Sumber tidak ditemukan, tentu saja, jadi mari kita lihat apa yang menyebabkan kesalahan ini.

Penyebab perintah Sumber tidak ditemukan

Kami biasanya akan mendapatkan kesalahan ini sebagai "sumber:perintah tidak ditemukan" atau, jika kami menggunakan sudo, sebagai "sudo:sumber:perintah tidak ditemukan", dalam kedua kasus masalahnya adalah bahwa sesi shell mengharapkan kami untuk menjalankan program , tetapi ingat bahwa sumber bukanlah program , kami sebenarnya menjalankan bash bawaan seperti yang dijelaskan sebelumnya.

Karena terminal mengira bahwa kita sedang mencoba menjalankan program yang disebut "sumber", itu akan memunculkan kesalahan yang tidak ditemukan.

Error ini juga terjadi jika kita mencoba menjalankan program yang tidak terinstal di sistem kita, misalnya jika kita mencoba menjalankan sesuatu yang tidak ada, seperti “somethingsomething”, kita mendapatkan error yang sama:

[[email protected] ~]$ somethingsomething
bash: somethingsomething: command not found

Jadi, bagaimana kita bisa menyelesaikan ini? Itulah yang akan kami jelaskan sekarang.

Bagaimana cara memperbaiki kesalahan Source command not found di Linux?

Cara terbaik dan termudah untuk mengatasi masalah ini adalah menjalankan perintah menggunakan root sebagai gantinya , jadi kita perlu memulai sesi root menggunakan su atau sudo -s . Jika Anda mendapatkan kesalahan otentikasi atau kesalahan izin maka itu berarti Anda tidak dapat masuk sebagai root dengan pengguna Anda saat ini, mohon minta orang yang bertanggung jawab untuk mengubah hak istimewa sehingga Anda dapat masuk sementara sebagai root untuk menyelesaikan masalah.

Setelah Anda masuk sebagai root, coba jalankan perintah yang mengembalikan kesalahan sumber sebelumnya:kali ini akan berjalan dengan baik.

Cara lain untuk memperbaikinya adalah dengan memaksa penggunaan bash . Di beberapa distro Linux, sumber bawaan tidak tersedia secara default karena perintah sh tidak memanggil bash, tetapi program lain seperti "dash" misalnya. Jadi, dalam hal ini, kita dapat mengedit skrip yang sedang kita coba jalankan dan mengubah /bin/sh di atas menjadi /bin/bash, seperti ini:

#!/bin/bash

Solusi ketiga, meskipun tidak selalu berhasil, adalah menggunakan titik alih-alih sumber . Ya, cara kerjanya sama, jadi jika kita menjalankan skrip seperti ini:

source ./myshinyscript

Kita harus mengganti source dengan titik. Ya, satu titik:

. ./myshinyscript

Sangat penting untuk memiliki spasi di antara dua titik, seperti pada contoh.

Kesimpulan

Jadi itu cukup sederhana seperti yang Anda lihat. Masalah sebenarnya dengan kesalahan perintah sumber tidak ditemukan adalah untuk memahami mengapa itu terjadi, dan sekarang Anda tahu bahwa itu terjadi karena sesi shell salah mengira sumber untuk sebuah program padahal sebenarnya adalah Bash built-in.

Setelah kami memahami itu, memecahkan masalah itu mudah, pada kenyataannya, kami telah memberi Anda tiga solusi yang dapat Anda coba, yaitu menjalankan skrip sebagai root, memodifikasi skrip untuk memaksanya menjalankan bash, atau menggunakan titik alih-alih sumber di baris perintah.

Perintah sumber tidak ditemukan terakhir diubah:9 April 2020 oleh Esteban Borges
Linux
  1. ifrename:perintah tidak ditemukan

  2. netstat:perintah tidak ditemukan

  3. kubectl:perintah tidak ditemukan

  1. tvservice:perintah tidak ditemukan

  2. lspci:perintah tidak ditemukan

  3. rm:perintah tidak ditemukan

  1. manajer langganan:perintah tidak ditemukan

  2. mv:perintah tidak ditemukan

  3. ln:perintah tidak ditemukan