Tambahkan $ HOME / bin ke PATH untuk satu pengguna di Debian Wheezy dengan LXDE

8

Di Ubuntu, jika $ HOME / bin ada, itu akan ditambahkan secara otomatis ke PATH, tetapi ini tidak terjadi di Debian.

Bagaimana cara menambahkannya secara permanen ke PATH untuk pengguna tertentu, tetapi hanya untuknya, bukan untuk semua pengguna? Saya ingin ini berlaku untuk program GUI juga, tidak hanya untuk terminal.

Sunting: Untuk memperjelas, saya menggunakan LXDE, dan dari manajer login, yaitu tidak startx. .bashrctidak berfungsi untuk program yang saya mulai di luar terminal.

sashoalm
sumber
Catatan: Karena Anda berbicara sebagai orang ketiga, ada kemungkinan pengguna itu bukan Anda. Maka dianggap tidak sopan untuk memodifikasi pengaturannya sendiri (kecuali jika dia menanyakannya secara eksplisit, tentu saja).
fkraiem
Jangan khawatir, pengguna adalah saya.
sashoalm

Jawaban:

8

Ternyata lightdm(manajer login LXDE sekarang menggunakan) tidak sumber ~/.profile.

Apa yang berhasil saya buat adalah ~/.xsessionrc:

if [ -d $HOME/bin ]; then
    export PATH="$HOME/bin:$PATH"
fi

Anda juga dapat menambahkan ini ke /etc/X11/Xsession.d/90userbinpathjika Anda ingin semua pengguna mendapat manfaat dari ini (setiap pengguna akan mendapat manfaat untuk jalurnya sendiri) dengan konfigurasi seluruh sistem.

sashoalm
sumber
2
Atau Anda dapat sumber seluruh file profil. (Yang mungkin melakukan lebih dari hanya menetapkan $ PATH):if [ -f $HOME/.profile ]; then source $HOME/.profile; fi
basic6
1

Anda dapat mencoba / etc / profile.

nano /etc/profile

Akan ada dua jenis PATH, jalur untuk root, dan jalur untuk pengguna normal, non-root. Jadi Anda tinggal menambahkan ke root atau pengguna normal / $ HOME / bin pada akhir baris Ctrl+Odan Ctrl+Xdan di sana Anda pergi :). Ingatlah bahwa Anda perlu root untuk melakukan operasi ini.

Atau, Anda dapat pergi ke rumah Anda dan melihat profil di sana.

cd /home/YOURUSERNAME
nano .profile

Dalam debian secara otomatis melakukannya juga (tambahkan bin ke path). Lakukan echo $HOMEuntuk melihat apa itu rumah.

Rafael Campos Nunes
sumber
Itu akan bersifat global untuk semua pengguna, saya secara khusus menunjukkan "untuk satu pengguna". Bukankah lebih baik menggunakan itu ~/.profilesaja?
sashoalm
@sashoalm, diedit :)
Rafael Campos Nunes
OKE, tetapi .profilesepertinya tidak dieksekusi sama sekali. Apakah ini file yang benar untuk digunakan? echo $PATHtidak menunjukkan perubahan saya, bahkan dari terminal. Saya tidak punya ~/.bash_profileatau ~/.bash_login.
sashoalm
Cobalah untuk keluar dari sesi Anda dan membuat login lagi, baik saya tidak tahu apakah itu file yang benar untuk digunakan, tetapi setiap pengguna memiliki satu, jadi itu akan menjadi jawaban untuk pertanyaan Anda ...
Rafael Campos Nunes
Ya, saya melakukan itu, tetapi sepertinya tidak dibaca sama sekali. Saya memposting pertanyaan baru tentang itu - unix.stackexchange.com/questions/131320/…
sashoalm
-1

Dalam file ~ / .bashrc Anda, tambahkan baris berikut:

PATH=$PATH:$HOME/bin

Simpan dan kemudian sumber file untuk mulai berlaku.

source ~/.bashrc

Anda dapat memeriksa dengan menjalankan

echo $PATH

Untuk menjalankan program GUI dari jendela Jalankan perintah (Alt + F2) buat file .xsession baru yang kosong di direktori home Anda dan tambahkan baris ini:

#!/bin/bash -l
PATH=$PATH:$HOME/bin

Simpan dan muat kembali sesi LXDE Anda. Saya telah menguji dengan memindahkan xterm dalam direktori $ HOME / bin dan menyebutnya dengan Alt + F2 dan mulai berhasil.

cioby23
sumber
Ini akan bekerja untuk program sesi / GUI X, bukan hanya untuk terminal, kan?
sashoalm
Ini akan bekerja untuk kedua kasus GUI dan terminal.
cioby23
OK, saya pikir program GUI tidak mewarisi dari .bashrc, kecuali dimulai dari terminal.
sashoalm
Berhati-hatilah, Anda akhirnya dapat menambahkan $HOME/binhingga akhir $ PATH beberapa kali dengan cara ini: unix.stackexchange.com/questions/124444/...
goldilocks
OK, .bashrc tidak berfungsi - sepertinya hanya berfungsi untuk program yang saya mulai xterm, tetapi tidak untuk program yang saya mulai gunakan "Alt + F2", yaitu dari LXDE (DE saya gunakan). DE menggunakan manajer login, bukan startx.
sashoalm