ฉันต้องการเปลี่ยนชื่อผู้ใช้เริ่มต้น (pi) เป็นบางสิ่งฉันได้ลองแล้ว
usermod -l newusername pi
แต่นั่นทำให้ฉัน
usermod: user pi is currently used by process 2104
มีวิธีอื่นในการแก้ไขบัญชีรูทหรือปิดการใช้งานนี้และสร้างบัญชีรูทใหม่หรือไม่?
ฉันต้องการเปลี่ยนชื่อผู้ใช้เริ่มต้น (pi) เป็นบางสิ่งฉันได้ลองแล้ว
usermod -l newusername pi
แต่นั่นทำให้ฉัน
usermod: user pi is currently used by process 2104
มีวิธีอื่นในการแก้ไขบัญชีรูทหรือปิดการใช้งานนี้และสร้างบัญชีรูทใหม่หรือไม่?
คำตอบ:
ps -lp 2104
จะให้ข้อมูลบางอย่างเกี่ยวกับกระบวนการนี้ kill 2104
คุณสามารถตรวจสอบที่และ
หมายเหตุคุณจะต้องทำการเข้าสู่ระบบในฐานะผู้ใช้รากหรือผู้ใช้รายอื่นที่มีสิทธิ์ดำเนินการ มันอาจจะไม่ทำงานผ่านทางsudo
ฯลฯ
คุณจะต้องเปลี่ยนชื่อไดเรกทอรีบ้านด้วย
IMO คุณควรสร้างผู้ใช้ใหม่ด้วยชื่ออะไรก็ตามและปล่อยให้ Pi อยู่ที่นั่น แต่นั่นก็ขึ้นอยู่กับคุณแล้ว
หากคุณอยู่ในคอนโซลของ pi มีวิธีแก้ไขโดยไม่ต้องสร้างผู้ใช้รายอื่น (หรือตั้งค่า pw บนรูท):
สมมติว่าไม่มีสิ่งใดทำงานกับชื่อผู้ใช้ของคุณแล้วเชลล์บนคอนโซล - ไม่มีเซสชัน X ไม่มีการล็อกอิน ssh ฯลฯ :
exec sudo -s
cd /
usermod -l newname -d /home/newname -m oldname
เหตุผลที่ใช้งานได้:
sudo -s
บอกsudo
ว่าแทนที่จะเรียกใช้คำสั่งในฐานะผู้ใช้คนอื่นมันควรจะเรียกใช้เชลล์ใหม่ในฐานะผู้ใช้ที่กำหนดexec
บอกเชลล์ว่าแทนที่จะวางไข่กระบวนการใหม่เมื่อมันรันคำสั่ง (ดังนั้นปล่อยให้กระบวนการเชลล์ทำงานในฐานะผู้ใช้ที่ล็อกอิน), ว่าเชลล์ควรเขียนทับตัวเองด้วยกระบวนการใหม่ ซึ่งหมายความว่าเมื่อexec
คำสั่งสิ้นสุดเชลล์จะหายไป ในกรณีของเปลือกเข้าสู่ระบบที่เท่ากับตัดการเชื่อมต่อจากการเข้าสู่ระบบcd /
เป็นตัวเลือก อย่างน้อยสิ่งที่ได้รับบิตสับสนถ้าคุณย้ายไดเรกทอรีคุณอยู่ใน (เข้าสู่ระบบของคุณเริ่มต้นออกมานั่งอยู่ในผู้ใช้pi
ไดเรกทอรีบ้าน) บางครั้งสิ่งนี้จะทำให้เกิดความล้มเหลวดังนั้นจึงปลอดภัยกว่าขออภัยดังนั้นเมื่อexec sudo -s
คุณเขียนทับเชลล์ด้วยเชลล์ใหม่ที่สร้างขึ้นเป็นผู้ใช้อื่น (ผู้ใช้รูทในกรณีนี้)
PS จะแน่ใจว่าจะเต็ม (ลิงค์ยาก) เส้นทางหรือคุณจะจบลงด้วยการย้ายบ้านของบัญชีไปที่คุณไม่คาดหวังและมีรายการไดเรกทอรีปลอมในusermod -d
passwd
คำตอบข้างต้นนั้นถูกต้องฉันแค่ต้องการให้ตัวเลือกอื่นที่เหมาะกับคุณมากกว่า
pi
เป็นmypie
pi
เป็นmypie
pi
ทำงานก่อนการเปลี่ยนแปลงsudo su -
แก้ไข $vim /etc/systemd/system/autologin@.service
ค้นหาและแสดงความคิดเห็น (#) บรรทัด
#ExecStart=-/sbin/agetty --autologin pi --noclear %I $TERM
คุณสามารถยกเลิกการใส่เครื่องหมายข้อคิดเห็นได้ในภายหลังหากคุณต้องการคอนโซลอัตโนมัติแต่อย่าลืมเปลี่ยนผู้ใช้pi
เป็นชื่อผู้ใช้ใหม่ของคุณmypi
passwd
สร้างรหัสผ่านใหม่ที่มีราก (อย่าลืม)reboot
login
คำถาม (ไม่ใช่ออโตโลจิน)root
ด้วยรหัสผ่านรูทของคุณ ตอนนี้คุณเป็นคนเดียวในระบบและการเปลี่ยนแปลงจะไม่ได้พบกับpi
usermod: user pi is currently used by process 2104
ตรวจสอบด้วยps -u pi
เพื่อดูรายการที่ว่างเปล่าusermod -l mypie pi
อย่างระมัดระวังโดยคีย์สำคัญชนิด นี่จะเปลี่ยนชื่อผู้ใช้ของคุณจาก/etc/passwd
ไฟล์ แต่สิ่งต่าง ๆ ยังไม่พร้อม อย่างไรก็ตามตรวจสอบtail /etc/passwd
และดูบรรทัดสุดท้ายmypie:1000:...
1000 คือ UID และเป็นของคุณแล้วsu mypie
เพื่อให้แน่ใจ ไม่ทำอะไร. เพิ่งรูทexit
อีกครั้ง มันควรจะทำงาน ตอนนี้คุณต้องปรับกลุ่มและ$HOME
โฟลเดอร์groupmod -n mypie pi
พิมพ์อีกครั้งอย่างระมัดระวัง นี่จะเปลี่ยนpi
ชื่อกลุ่ม ตรวจสอบด้วยtail /etc/group
และคุณจะเห็นบรรทัดใหม่เป็นชื่อใหม่ที่เชื่อมโยงกับGID
1,000ls -la /home/pi
แล้วคุณจะเห็นว่าpi
HOME เป็นของคุณmypie
แล้วcd /home
เพื่อทำให้ง่ายขึ้น พิมพ์ls -la
และดูกลุ่มpi
onwermypie
mypie
mv pi mypie
. ตอนนี้คุณต้องเชื่อมโยงการเปลี่ยนแปลงนี้กับผู้ใช้ใหม่ของคุณusermod -d /home/mypie mypie
. สิ่งนี้จะเปลี่ยนไดเรกทอรีบ้านของคุณ ตรวจสอบด้วยtail /etc/passwd
และดูที่ฟิลด์ที่หก (คั่นด้วย:
)reboot
mypie
ในส่วนต่อประสานกราฟิกpasswd
เพื่อเปลี่ยนรหัสผ่านของmypie
เป็นอย่างอื่นraspberry
sudo su -
และคุณจะถูกถามรหัสผ่านของคุณ$vim etc/lightdm/lightdm.conf
#autologin-user=
เปลี่ยนเป็นautologin-user=mypie
(ไม่มีความคิดเห็น #)$vim /etc/systemd/system/autologin@.service
และเปลี่ยนสาย#ExecStart=-/sbin/agetty --autologin mypie --noclear %I $TERM
cd /etc/sudoers.d
010_pi-nopasswd
เป็น010_mypie_nopasswd
vim 010_mypie_nopasswd
และเปลี่ยนสายไปอย่างเห็นได้ชัดpi ALL=(ALL) NOPASSWD: ALL
mypie ALL=(ALL) NOPASSWD: ALL
มันเป็นแบบอ่านอย่างเดียวดังนั้นให้บันทึกด้วยการบังคับ:x!
$vim /etc/hosts
และการเปลี่ยนแปลงบางสิ่งบางอย่างที่เหมาะสมมากขึ้นเช่น127.0.1.1 raspberry
127.0.1.1 myoven
$vim /etc/hostname
myoven
reboot
/etc/ssh/sshd_config
#PermitRootLogin without-password
PermitRootLogin yes
/etc/init.d/ssh restart
PermitRootLogin yes
บรรทัดและลบความคิดเห็นออกPermitRootLogin without-password
หมายเหตุ 1:นี่เป็นแนวทางและเนื้อหาเกี่ยวข้องกับคำสั่งที่อันตรายมาก สำรองข้อมูลก่อนหรือระวังว่าคุณอาจต้องเบิร์นรูปภาพของคุณอีกครั้ง ในขณะที่ฉันกำลังสมมติราสเบอร์รี่ปี่ใหม่เอี่ยมจึงไม่มีอะไรจะสำรองมากนัก แต่ถ้าคุณปรับให้เข้ากับสถานการณ์อื่น
หมายเหตุ 2:อาจมีการเปลี่ยนแปลงมากกว่านี้ ในขณะที่ฉันยังใหม่กับ Raspberry pi (ฉันได้รับเมื่อ 2 วันก่อน) ฉันอาจพบว่ามีการปรับอื่น ๆ ที่ฉันออกไปและฉันจะแก้ไขคำตอบนี้อีกครั้ง
หมายเหตุ 3:ความพยายามครั้งแรกของฉันคือการย้ายpi
ผู้ใช้และpi
กลุ่มไปยังอีกUID
และGID
(1001) 1000
และสร้างผู้ใช้ใหม่สำหรับฉันเป็น นั่นไม่ได้เป็นไปตามที่วางแผนไว้และฉันต้องเผาการ์ด SD ของฉันอีกครั้งหลังจากใช้เวลาทั้งวันพยายามคิดออกว่าทำไมโปรแกรม "กำหนดค่า pi" ของคุณจะไม่ทำงานอีกต่อไป ทีนี้คุณก็ไปได้: ไพใหม่ที่มีชื่อผู้ใช้ของคุณในชื่อ UID 1000 (และสิ่งที่ดีในบ้านของคุณ)
หมายเหตุ 4:ได้รับคำแนะนำหลังจากทำเช่นนั้นแล้วเครื่องมือกำหนดค่ามาตรฐานจะหยุดทำงาน
เชิงอรรถ:ขอบคุณสำหรับชุมชนการแลกเปลี่ยน raspberrypi (เช่นฉันใหม่ที่นี่ด้วย)
vi
vim
ที่จะได้รับเป็นครั้งแรกที่ฉันได้ไปใช้tty
ctrl+alt+F1
sudo passwd root
usermod -l newname -d /home/newname -m oldname
ls -al /home/
groupmod --new-name newname oldname
ls -al /home/
exit
sudo passwd -l root
/etc/ssh/sshd_config
ให้ตั้งค่า "PermitRootLogin no" และเริ่มบริการนั้นใหม่)จากนั้นคุณจะต้องเปลี่ยนการเปลี่ยนแปลงเพิ่มเติมใด ๆ ในสคริปต์ / การตั้งค่าที่อ้างถึง 'pi' ... JOY
ฉันไม่มีคะแนนมากพอที่จะใส่ความคิดเห็นนี้ แต่หากการบูตในเซฟโหมดไม่ทำงานคุณสามารถลองทำสิ่งนี้ได้โดยสร้างบัญชีชั่วคราวและใช้งานจากที่นั่น ดูคำอธิบายได้ที่นี่: /ubuntu//a/34075/112715