Rumah > Tutorial sistem > LINUX > Cara menukar prompt bash untuk kumpulan pengguna tertentu di linux

Cara menukar prompt bash untuk kumpulan pengguna tertentu di linux

Joseph Gordon-Levitt
Lepaskan: 2025-03-20 09:37:10
asal
701 orang telah melayarinya

Kami sudah melihat cara menyesuaikan prompt bash lalai di Linux. Dalam tutorial ini, kami akan belajar bagaimana menukar prompt bash untuk kumpulan pengguna tertentu dalam sistem Linux dan UNIX.

Sebelum menubuhkan custom bash custom kepada kumpulan pengguna, adalah penting untuk memahami kelebihan dan kekurangan pendekatan ini.

Jadual Kandungan

Kelebihan dan Kekurangan Prompt Perintah Khusus Kumpulan

Menggunakan command command spesifik kumpulan di Linux boleh berfaedah dalam senario tertentu, tetapi ia juga datang dengan beberapa pertimbangan. Berikut adalah kelebihan dan kekurangan:

Kelebihan

1. Mudah mengenal pasti peranan pengguna :

  • Dengan menyesuaikan command prompt berdasarkan keahlian kumpulan, menjadi lebih mudah untuk mengenal pasti peranan atau persekitaran yang anda kerjakan. Sebagai contoh, pemaju segera memberitahu pengguna bahawa mereka adalah milik kumpulan pemaju atau persekitaran.

2. Pengurangan kesilapan :

  • Gambaran tersuai boleh membantu dalam mengurangkan kesilapan, terutamanya dalam persekitaran di mana pengguna beralih antara pelbagai peranan atau pelayan. Sebagai contoh, satu petikan yang berbeza untuk pengguna admin dapat mengingatkan mereka tentang tahap keizinan yang lebih tinggi dan menggalakkan berhati -hati.

3. Pengalaman pengguna yang dipertingkatkan :

  • Bagi pengguna yang tergolong dalam pelbagai kumpulan, prompt yang disesuaikan memberikan petunjuk visual yang jelas mengenai kumpulan semasa mereka, meningkatkan pengalaman pengguna dengan menjadikan terminal lebih bermaklumat dan mesra pengguna.

4. Berguna dalam sistem pelbagai pengguna :

  • Mengenai sistem dengan banyak pengguna, penyesuaian sedemikian dapat membantu dengan cepat mengenal pasti jenis pengguna yang log masuk dan tahap akses mereka, yang bermanfaat untuk pentadbir sistem.

Kekurangan

1. Kerumitan dalam Pengurusan :

  • Melaksanakan dan menguruskan arahan tersuai boleh menambah kerumitan, terutamanya pada sistem dengan sejumlah besar pengguna atau kumpulan. Ia memerlukan skrip tambahan dan konfigurasi.

2. Potensi untuk kesalahpahaman :

  • Jika tidak disediakan dengan betul, skrip tersebut boleh membawa kepada salah faham. Sebagai contoh, yang tidak betul untuk menambahkan .BashRC boleh membawa kepada pengulangan yang tidak diingini atau bahkan kesilapan sintaks yang mungkin mempengaruhi persekitaran pengguna.

3. Pertimbangan Keselamatan :

  • Secara automatik memasuki fail konfigurasi seperti .bashrc boleh menjadi risiko keselamatan jika tidak ditangani dengan betul. Adalah penting untuk memastikan skrip tersebut tidak secara tidak sengaja membuka kelemahan keselamatan.

4. Ketergantungan keahlian Kumpulan :

  • Kaedah ini bergantung kepada keahlian kumpulan pengguna, yang mungkin berubah dari masa ke masa. Ia memerlukan keahlian kumpulan diuruskan dengan betul dan terkini.

5. Overlanting pada isyarat visual :

  • Pengguna mungkin terlalu bergantung pada isyarat visual ini dan membuat andaian yang salah mengenai keistimewaan atau persekitaran mereka berdasarkan prompt sahaja, yang boleh menyebabkan kesilapan, terutamanya jika konfigurasi segera mempunyai masalah.

Ringkasnya, menyesuaikan prompt perintah berdasarkan keahlian kumpulan boleh berguna untuk meningkatkan pengalaman pengguna dan mengurangkan kesilapan dalam persekitaran berbilang pengguna atau pelbagai. Walau bagaimanapun, ia memerlukan pelaksanaan dan pengurusan yang teliti untuk mengelakkan kerumitan, kesilapan, dan isu keselamatan yang berpotensi.

Marilah kita teruskan dan lihat bagaimana untuk menukar command prompt untuk kumpulan pengguna tertentu dalam sistem Linux dan UNIX.

Langkah -langkah berikut telah diuji pada sistem LTS Ubuntu 22.04. Kami berharap kaedah ini mungkin berfungsi pada pengagihan Linux yang lain juga.

Tukar Prompt Bash untuk Kumpulan Pengguna tertentu

Untuk tujuan demonstrasi, saya akan membuat kumpulan baru yang dipanggil 'Pemaju' dan pengguna baru bernama 'Senthil' . Dan kemudian saya akan menambah pengguna 'Senthil' kepada kumpulan 'pemaju' .

Akibatnya, apabila pengguna log 'Senthil' masuk, prompt mereka secara automatik akan berubah kepada 'pemaju-senthil@ubuntu2204: ~ $' . Mari lihat bagaimana untuk melakukannya dengan langkah demi langkah.

Langkah 1 - Membuat kumpulan di Linux

Buat kumpulan :

Jalankan arahan berikut untuk membuat kumpulan baru bernama pemaju:

 $ sudo GroupAdd pemaju
Salin selepas log masuk

Perintah ini mewujudkan kumpulan baru yang dipanggil pemaju. Anda mungkin perlu memasukkan kata laluan anda jika diminta.

Langkah 2 - Menambah pengguna baru dan menyerahkan kepada kumpulan

Buat pengguna baru :

Untuk membuat pengguna baru bernama Senthil, gunakan arahan:

 $ sudo adduser senthil
Salin selepas log masuk

Anda akan diminta untuk menetapkan kata laluan untuk pengguna baru dan mengisi beberapa maklumat pengguna pilihan. Isi ini seperti yang diperlukan.

Tambahkan pengguna ke kumpulan :

Untuk menambah Senthil kepada kumpulan pemaju, gunakan:

 $ sudo usermod -ag pemaju senthil
Salin selepas log masuk

Pilihan -ag menambah pengguna kepada kumpulan sambil mengekalkan keahlian kumpulan mereka yang sedia ada.

Langkah 3 - Tetapkan Prompt Bash Custom untuk Kumpulan Pengguna tertentu

Apabila anda ingin menukar command prompt untuk pengguna yang menjadi ahli kumpulan tertentu, anda mempunyai dua pilihan untuk meletakkan skrip yang memeriksa kumpulan pengguna dan mengubah prompt. Pilihan bergantung kepada sama ada anda mahu perubahan itu memohon kepada pengguna tunggal atau pengguna berganda:

Fail pengguna .bashrc pengguna :

  • Jika anda mahu perubahan itu hanya memohon kepada pengguna tertentu, anda harus menambah baris ke fail .bashrc pengguna yang terletak di direktori rumah mereka (~/.bashrc).
  • Pendekatan ini khusus pengguna. Setiap pengguna yang anda mahu memohon perubahan ini memerlukan skrip yang ditambahkan ke fail .bashrc mereka sendiri.
  • Sebagai contoh, jika anda hanya mahu Senthil mempunyai arahan yang berbeza apabila dia adalah sebahagian daripada kumpulan pemaju, anda akan menambah baris hanya ke fail .bashrc Senthil.

Fail konfigurasi global /etc/bash.bashrc :

  • Jika anda mahu perubahan ini memohon kepada semua pengguna pada sistem, anda boleh mengedit fail global /etc/bash.bashrc.
  • Kaedah ini akan menggunakan perubahan kepada persekitaran setiap pengguna, tetapi skrip masih akan hanya mengubah petikan bagi pengguna yang berada dalam kumpulan yang ditentukan.
  • Ini berguna jika anda mempunyai beberapa pengguna dalam kumpulan dan anda mahu tingkah laku yang sama untuk mereka semua tanpa mengedit setiap fail .bashrc individu.

Sebelum membuat sebarang perubahan dalam fail tempatan ~/.bashrc atau global /etc/bash.bashrc, saya sangat mengesyorkan anda untuk membuat sandarannya. Ini membolehkan anda memulihkan tetapan asal jika ada yang tidak kena.

Untuk membuat sandaran fail ~/.bashrc pengguna, jalankan:

 $ cp ~/.bashrc ~/.bashrc_backup
Salin selepas log masuk

Untuk membuat sandaran fail Global Bashrc, jalankan:

 $ sudo cp /etc/bash.bashrc /etc/bash.bashrc_backup
Salin selepas log masuk

Selepas membuat sandaran fail Bashrc yang sesuai, buka menggunakan editor kegemaran anda.

Di sini, saya akan menggunakan kaedah ini untuk semua pengguna dalam sistem, jadi saya mengedit fail global /etc/bash.bashrc.

 $ sudo nano /etc/bash.bashrc
Salin selepas log masuk

Tambahkan baris berikut pada akhir:

 bashrc_file = "/home/$ (whoami)/. Bashrc"
pemaju_prompt = 'ps1 = "pemaju- \ u@\ h: \ w \ $"'

# Berfungsi untuk menambah atau mengemas kini ps1 dalam .bashrc
add_or_update_ps1 () {
    prompt_line = $ 1
    grep -qf -"$ prompt_line" "$ bashrc_file" || echo "$ prompt_line" >> "$ bashrc_file"
}

jika id -ng "$ (whoami)" | grep -qw "pemaju"; kemudian
    add_or_update_ps1 "$ pemaju_prompt"
fi
Salin selepas log masuk

Marilah kita memecahkan kod di atas dan melihat apa yang dilakukan setiap pilihan.

Tentukan pembolehubah :

  • BASHRC_FILE memegang laluan ke fail .bashrc pengguna.
  • pemaju_prompt memegang rentetan PS1 untuk pengguna milik kumpulan pemaju.

Fungsi add_or_update_ps1 :

  • Fungsi ini mengambil garis segera sebagai hujah.
  • Ia menggunakan grep -qf untuk memeriksa sama ada garis prompt yang tepat sudah ada dalam .bashrc.
  • - memastikan bahawa rentetan berikutnya dianggap sebagai literal dan bukan sebagai pilihan arahan.
  • Jika ia tidak wujud (||), garis prompt dilampirkan ke .bashrc.

Semak keahlian kumpulan dan memohon segera :

  • Skrip memeriksa jika pengguna berada dalam kumpulan pemaju.
  • Jika pengguna tergolong dalam kumpulan pemaju, ia memanggil add_or_update_ps1 dengan pemaju_prompt.

Ringkasnya, skrip ini mengubah arahan arahan untuk pengguna yang tergolong dalam kumpulan pemaju dengan mengemukakan definisi cepat tersuai ke fail .bashrc mereka. Ia memastikan bahawa prompt adat hanya ditambah sekali untuk mengelakkan pertindihan.

Tekan Ctrl O diikuti oleh Ctrl X untuk menyimpan fail dan keluar.

Ingat, selepas mengedit sama ada fail, perubahan itu hanya akan berkuatkuasa apabila sesi shell baru dimulakan. Pengguna boleh log keluar dan kembali, atau mereka boleh menjalankan sumber ~/.bashrc dalam sesi semasa mereka untuk memohon perubahan dengan segera.

Sapukan perubahan menggunakan arahan:

 $ source /etc/bash.bashrc
Salin selepas log masuk

Langkah 4 - Sahkan Prompt Bash

Sekarang log keluar dan log masuk semula sebagai pengguna 'Senthil'. Buka terminal anda dan anda akan melihat arahan pengguna telah berubah menjadi sesuatu seperti ini:

Cara menukar prompt bash untuk kumpulan pengguna tertentu di linux

Jika sistem anda tidak mempunyai GUI, anda boleh mengesahkannya dengan SSH ke dalam sistem dari sistem lain.

 pemaju-senthil@ubuntu2204: ~ $
Salin selepas log masuk

Cara menukar prompt bash untuk kumpulan pengguna tertentu di linux

Lihat? Prompt bash pengguna telah diubah.

Tukar Prompt Bash Berdasarkan Keahlian Kumpulan Sudo

Anda boleh mengubah suai skrip ini untuk membezakan antara pelbagai jenis pengguna.

Sebagai contoh, anda boleh membezakan pengguna biasa dan pengguna pentadbiran yang tergolong dalam kumpulan sudo di Linux. Ini melibatkan mengubah suai command prompt berdasarkan sama ada pengguna mempunyai keistimewaan sudo.

Tambahkan baris berikut ke fail global /etc/bash.bashrc atau ke fail .bashrc pengguna individu:

 bashrc_file = "/home/$ (whoami)/. Bashrc"
sudo_prompt = 'ps1 = "sudouser- \ u@\ h: \ w \ $"'
normal_prompt = 'ps1 = "normaluser- \ u@\ h: \ w \ $"'

# Berfungsi untuk menambah atau mengemas kini ps1 dalam .bashrc
add_or_update_ps1 () {
    prompt_line = $ 1
    grep -qf -"$ prompt_line" "$ bashrc_file" || echo "$ prompt_line" >> "$ bashrc_file"
}

jika id -ng "$ (whoami)" | grep -qw "sudo"; kemudian
    add_or_update_ps1 "$ sudo_prompt"
lain
    add_or_update_ps1 "$ normal_prompt"
fi
Salin selepas log masuk

Skrip ini akan mengubah prompt ke sudouser- @hostname: ~ $ untuk pengguna dalam kumpulan sudo dan normaluser- @hostname: ~ $ untuk pengguna tidak dalam kumpulan sudo.

Adakah ini persediaan yang disyorkan?

Sama ada persediaan ini disyorkan bergantung kepada konteks dan keperluan sistem:

Kelebihan :

  • Pengenalpastian peranan yang jelas : Sama seperti petikan khusus kumpulan, persediaan ini membantu dengan segera mengenal pasti sama ada sesi pengguna semasa mempunyai keistimewaan sudo, yang boleh menjadi sangat berguna dalam persekitaran pelbagai pengguna.
  • Pencegahan ralat : Ia bertindak sebagai peringatan berterusan keistimewaan pengguna, yang berpotensi menghalang perintah tidak sengaja dengan keistimewaan yang tinggi.

Kekurangan :

  • Kerumitan dan penyelenggaraan : Seperti mana -mana penyesuaian, ia menambah lapisan kerumitan kepada konfigurasi sistem dan memerlukan penyelenggaraan yang betul.
  • Rasa Keselamatan Palsu : Pengguna mungkin mengembangkan rasa aman atau kepuasan palsu, memikirkan bahawa perubahan segera mencerminkan keistimewaan mereka. Walau bagaimanapun, keizinan sebenar lebih bernuansa dan bergantung kepada konteks.
  • Potensi untuk Konfigurasi Misconfiguration : Dilaksanakan dengan salah, ia boleh menyebabkan kekeliruan atau kesilapan.

Ringkasnya, menyesuaikan arahan arahan untuk membezakan antara pengguna biasa dan pengguna sudo boleh berguna dalam persekitaran tertentu, terutamanya jika pengenalan cepat keistimewaan pengguna adalah penting.

Walau bagaimanapun, ia tidak disyorkan secara universal, kerana ia menambah kerumitan dan bergantung kepada keperluan khusus dan keupayaan pengurusan pentadbir sistem.

Pulihkan fail .bashrc ke tetapan lalai

Jika anda menghadapi masalah, anda boleh mengembalikan perubahan dengan memulihkan fail .bashrc dari sandaran anda. Jika anda tidak membuat sandaran, anda boleh mengedit fail secara manual sekali lagi dan mengeluarkan atau mengulas skrip tersuai yang anda tambah dalam langkah -langkah sebelumnya.

Juga, terdapat versi lalai fail .bashrc dalam /etc/skel/ direktori dalam sistem Debian dan Ubuntu.

 $ ls -al/etc/skel/
Jumlah 32
DRWXR-XR-X 2 ROOT ROOT 4096 8 Jan 18:02.
DRWXR-XR-X 138 ROOT ROOT 12288 8 Jan 17:55 ..
-rw-r-r-- akar akar 220 Jan 6 2022 .bash_logout
-RW-R-R-- Root 1 Root 4116 8 Jan 18:00<strong><mark> .bashrc</mark>
-rw-r-r-- akar akar 807 6 Jan 2022.</strong>
Salin selepas log masuk

Salin versi lalai fail ~/.bashrc ke versi semasa anda seperti di bawah:

 $ cp /etc/skel/.bashrc ~/
Salin selepas log masuk

Akhirnya, jalankan arahan berikut untuk mengemas kini perubahan.

 $ sumber ~/.bashrc
Salin selepas log masuk

Untuk maklumat lanjut semak pautan berikut:

Cara memulihkan fail .bashrc ke tetapan lalai di Ubuntu

Kesimpulan

Dalam tutorial ini, kami membincangkan cara menetapkan prompt bash adat untuk pengguna kumpulan tertentu, dan kelebihan dan kekurangan mengubah arahan arahan di Linux dengan skrip contoh.

Walaupun mengubah suai bash bash boleh berguna untuk keperluan khusus dalam persekitaran tertentu, ia umumnya tidak disyorkan untuk pemula.

Ia sentiasa menjadi amalan yang baik untuk menguji pendekatan ini dalam mesin maya dan menimbang manfaat terhadap potensi risiko dan kerumitan sebelum melaksanakan perubahan ini.

Baca Berkaitan:

  • Cara menukar prompt sudo di linux

Atas ialah kandungan terperinci Cara menukar prompt bash untuk kumpulan pengguna tertentu di linux. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

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