ฉันต้องการให้ผู้ใช้ใหม่ทุกคนจากนี้ไปมีทุบตีเป็นเปลือกของพวกเขาโดยค่าเริ่มต้น
ฉันรู้ว่าในการเปลี่ยนเชลล์ของคุณเองเป็นทุบตีคุณจะใช้คำสั่ง "chsh -s / bin / bash" แต่ฉันจะตั้งค่าเชลล์ของผู้ใช้ในอนาคตทั้งหมดให้เป็นทุบตีโดยอัตโนมัติได้อย่างไร
ฉันต้องการให้ผู้ใช้ใหม่ทุกคนจากนี้ไปมีทุบตีเป็นเปลือกของพวกเขาโดยค่าเริ่มต้น
ฉันรู้ว่าในการเปลี่ยนเชลล์ของคุณเองเป็นทุบตีคุณจะใช้คำสั่ง "chsh -s / bin / bash" แต่ฉันจะตั้งค่าเชลล์ของผู้ใช้ในอนาคตทั้งหมดให้เป็นทุบตีโดยอัตโนมัติได้อย่างไร
คำตอบ:
adduser
ไฟล์เป็นค่าเริ่มต้นadduser
/etc/adduser.conf
เชลล์เริ่มต้นที่กำหนดโดยDSHELL
ตัวแปรนั้นเป็น/bin/bash
ค่าเริ่มต้น
useradd
เป็นไปได้ว่าคุณไม่ต้องการสิ่งนี้เพราะ useradd เป็นยูทิลิตี้ระดับต่ำมากและแทบจะไม่เคยใช้โดยตรง
หากคุณใช้ useradd ให้แก้ไข/etc/default/useradd
ไฟล์ Skeleton (อย่าลืมทำการสำรองข้อมูล)
ตั้งค่าSHELL
ตัวแปรแทน/bin/bash
/bin/sh
ตอนนี้ทุกครั้งที่คุณใช้useradd
เพิ่มผู้ใช้ใหม่bash
จะเป็นเชลล์เริ่มต้นโดยอัตโนมัติ
มีผู้ใช้ที่มีอยู่แล้ว
หากคุณต้องการเปลี่ยนเปลือกของผู้ใช้ที่มีอยู่แล้วคุณต้องแก้ไข/etc/passwd
ไฟล์ (โปรดตรวจสอบให้แน่ใจว่าได้สำรองข้อมูลไว้)
นี่คือคำอธิบายของคอลัมน์
ตามลำดับนั้นคั่นด้วยเครื่องหมายทวิภาค (:) เช่นนี้
root:x:0:0:root:/root:/bin/bash
man 5 passwd
สำหรับข้อมูลเพิ่มเติมเกี่ยวกับแฟ้มที่ปรึกษาหน้าคน
วิธีที่จะเปลี่ยนค่าเริ่มต้นนั้นขึ้นอยู่กับวิธีที่คุณสร้างผู้ใช้ ฉันพยายามสร้างผู้ใช้ใหม่ผ่านการตั้งค่า Gnome ของฉันในตอนนี้และดูเหมือนว่าจะตาม/etc/default/useradd
มาดังนั้นอาจเป็นทางออกที่ดีที่สุดของคุณ สำหรับผู้ใช้ที่มีอยู่วิธีที่ปลอดภัยที่สุดในการเปลี่ยนเชลล์ล็อกอินของคนอื่นคือด้วยusermod :
usermod -s /bin/bash $USERNAME
หากคุณไม่รากคุณจะต้องsudoว่า อีกทางเลือกหนึ่งคือการsudoเป็นผู้ใช้ที่คุณต้องการแก้ไขและเพียงแค่เรียกใช้chshเช่นนี้:
sudo -u $USERNAME chsh -s /bin/bash
เป็นการดีที่สุดที่จะหลีกเลี่ยงการแก้ไข/etc/passwd
ด้วยมือเพราะความผิดพลาดในนั้นอาจทำลายทุกสิ่ง
หากคุณต้องการให้ผู้ใช้ทั้งหมดบนเซิร์ฟเวอร์ทุบตี (ซึ่งเป็นคำถามที่ถามจริง) คุณสามารถเรียกใช้คำสั่ง:
sudo dpkg-reconfigure dash
จากนั้นเลือกไม่รีบ ตามที่อธิบายไว้ในคำตอบนี้
ฉันจะทำให้ / bin / sh ชี้ไปที่ / bin / bash ได้อย่างไร
ไม่เพียง แต่จะทำให้ bash เป็นเชลล์เริ่มต้นเท่านั้น
หวังว่านี่จะช่วยได้
sudo -u $USER chsh -s $SHELL
ผมคิดว่าเป็นวิธีที่ปลอดภัยที่จะเปลี่ยนเปลือกของผู้ใช้อื่นจะเป็นสิ่งที่ชอบ