Apakah ada tempat standar untuk menempatkan skrip Linux khusus?

70

Saya sedang mengembangkan satu set skrip, yang saya ingin hadir untuk semua pengguna, ketika saya mengatur server. Tapi saya tidak ingin mereka berada di lokasi standar seperti /usr[/local]/[bin], [sbin]dll.

Apakah ada konvensi yang ada untuk tempat skrip seperti itu ditempatkan?

vfclists
sumber
2
Kemungkinan duplikat dari superuser.com/questions/185184/where-should-i-put-my-script
user68186
Bagi mereka yang tertarik, ada utas usenet lama di sini, vb.serverknecht.de/… , yang mengarah ke sesuatu yang lebih langsung giwersworld.org/computers/linux/linux/linux-file-system.html
vfclists

Jawaban:

48

Sejauh yang saya tahu tidak ada tempat untuk skrip Linux khusus. Direktori yang harus digunakan untuk instalasi khusus adalah /optdirektori sehingga akan menjadi pilihan paling aman untuk menempatkannya di sana. Namun perlu diingat bahwa agar skrip dapat digunakan tanpa path lengkap Anda memerlukannya untuk dimasukkan dalam variabel PATH.

Jika Anda perlu bantuan mengubah PATHvariabel untuk semua pengguna, Anda dapat memeriksa Bagaimana cara menetapkan variabel PATH untuk semua pengguna di server? yang mengarahkan Anda ke /etc/environmentfile untuk mengkonfigurasi ini.

Jika kekhawatiran Anda adalah menghindari bentrokan tetapi Anda tidak ingin menambahkan rute lain ke variabel PATH yang bisa Anda gunakan /usr/local/bin. Dalam instalasi server saya tidak memiliki file apa pun sehingga bisa menjadi solusi yang mudah.

Semoga ini bisa membantu

Davisein
sumber
31

/usr/local/bin tampaknya menjadi tempat konvensional, dan direktori ini harus kosong pada instalasi baru.

Sumber: The jawaban yang diterima pada pertanyaan ini:

Rolficus
sumber
5
Ini selalu membuat saya bingung - apakah akan ada skrip (yaitu file non-biner) bin? etc? opt? mendesah.
Monkpit
5
Setelah Anda berhenti membuat perbedaan antara executable biner dan skrip, Anda akan segera menjawab keraguan Anda :)
Marcin Orlowski
13

Anda dapat menempatkan skrip di /opt/bindan menambahkan lokasi ke PATH .

Lihat:

  1. Variabel lingkungan jalur Linux

  2. Tambahkan direktori ke shell PATH secara permanen

    Untuk penggunaan global di:

    /etc/bash.bashrc

    atau

    /etc/profile
BuZZ-dEE
sumber
1
Di Ubuntu 16.04 tidak ada /opt/bindirektori lagi sehingga Anda harus membuatnya terlebih dahulu. Dalam hal ini Anda mungkin juga membuat /usr/local/scriptsdan memasukkannya ke dalam $ PATH.
WinEunuuchs2Unix
6

Ada beberapa tempat Anda dapat menempatkan ini, biasanya saya menempatkannya /opt/dan memperbarui PATH untuk setiap pengguna (atau secara global /etc/bash.bashrc) sehingga tersedia untuk pengguna. /opt/lebih atau kurang dirancang untuk apa yang ingin Anda lakukan.

Marco Ceppi
sumber
0

Ada juga ~/bin, yang bertindak seperti /usr/local/bin, tetapi hanya untuk satu pengguna. Untuk mengaktifkannya, buat ~/bindirektori, logout dan masuk kembali.

Chai T. Rex
sumber