/ etc / profile vs ~ / .profile

13

Saya menjalankan ubuntu 12.04.1 LTS. Dan saya tidak bisa mendapatkan urutan / prioritas untuk memuat file profil. Ketika saya memulai sistem dan masuk menggunakan GUI file mana yang dimuat? Dan mengapa? Bagaimana jika menjalankan shell-login? Apakah akan sama? Sebenarnya saat ini saya tidak mengerti mengapa saya ~/.profiletidak memuat ketika sistem mulai karena di sini saya melihatnya harus:

https://help.ubuntu.com/community/EnvironmentVariables

berjemur
sumber
Bagaimana Anda menguji apakah ~ / .profile dimuat?
Andrea Corbellini
Ada variabel lingkungan diperbarui di ~ / .profile
sunprophit

Jawaban:

3

Anda dapat mendefinisikan variabel di setiap file:

ORDER=${ORDER}+"/etc/profile"

masing-masing

ORDER=${ORDER}+"~/.profile"

dan melakukan

echo ${ORDER}

untuk melihat, apa yang terlibat dan dalam urutan apa. Tentu saja itu tidak akan memberi tahu Anda, jika ada skrip berbeda yang Anda lewatkan.

Jadi, jika Anda melihat satu sumber disebutkan, baca skrip itu untuk melihat, apakah satu skrip sumber sumber lain, dan sertakan juga.

/etc/bash.bashrc dan ~ / .bashrc dan ~ / .bash_login muncul di pikiran, juga hal-hal dari / etc / default.

Pengguna tidak diketahui
sumber
Hm, $ ORDER kosong, yang berarti tidak ada yang dimuat?
sunprophit
Tidak yakin mengapa $ ORDER kosong, mungkin karena beberapa kesalahan sintaksis. Saya tidak tahu banyak tentang perbedaan dash dan bash. Meskipun saya akan menandai jawaban Anda sebagai yang benar karena itu membantu untuk mendapatkan di mana masalahnya.
sunprophit
7

Itu semua tergantung pada pengguna mana yang Anda coba masuk. File global /etc/profiledimuat untuk setiap pengguna , sementara ~/.profileitu hanya dimuat untuk pengguna.

~menunjuk ke direktori home pengguna saat ini. Jadi, jika Anda memasukkannya /home/user-a/.profiledan login sebagai user-a, global dan file khusus pengguna dimuat (dalam urutan itu), sedangkan jika Anda akan login sebagai user-btanpa .profilefile, itu hanya memuat yang global.

gertvdijk
sumber
Dalam profil pengguna saat ini (~ /. Profil) ada bagian yang harus memperbarui variabel lingkungan. Maksud saya tidak ada di profil lain. Profil pengguna ini. Tapi saya mencoba solusi @user_unknown untuk menguji pemuatan profil dan sepertinya tidak ada yang dimuat.
sunprophit
0

Keduanya harus dimuat, dan ~ /. Profil harus dimuat terakhir (artinya memiliki prioritas).

dobey
sumber
Maka saya tidak yakin apa yang sedang terjadi. Jika saya menjalankannya secara eksplisit di terminal itu memuat. Mungkinkah ada masalah selama login dan hasilnya ~ / .profile tidak dimuat, tetapi kemudian di terminal tidak ada masalah ini. Bisakah saya memeriksa apakah sistem mencoba memuatnya?
sunprophit
0

Ini adalah kesalahanku. Ada [[some_test]] di profil ~ / .profile saya dan berjalan dengan baik di bash, tapi saya kira dash menjalankan beberapa perintah pre_session_creation / post_session_creation pada awal sesi dan dash tidak tahu [[kata kunci. Jadi semuanya telah dimuat tetapi berhenti karena kesalahan.

berjemur
sumber