เปลี่ยนชื่อผู้ใช้เริ่มต้น


12

ฉันต้องการเปลี่ยนชื่อผู้ใช้เริ่มต้น (pi) เป็นบางสิ่งฉันได้ลองแล้ว

usermod -l newusername pi

แต่นั่นทำให้ฉัน

usermod: user pi is currently used by process 2104

มีวิธีอื่นในการแก้ไขบัญชีรูทหรือปิดการใช้งานนี้และสร้างบัญชีรูทใหม่หรือไม่?


1
การเริ่มระบบในเซฟโหมด ( raspberrypi.stackexchange.com/questions/3751/… ) ควรทำให้เป็นไปได้
Gerben

คำตอบ:


6

ps -lp 2104จะให้ข้อมูลบางอย่างเกี่ยวกับกระบวนการนี้ kill 2104คุณสามารถตรวจสอบที่และ

หมายเหตุคุณจะต้องทำการเข้าสู่ระบบในฐานะผู้ใช้รากหรือผู้ใช้รายอื่นที่มีสิทธิ์ดำเนินการ มันอาจจะไม่ทำงานผ่านทางsudoฯลฯ

คุณจะต้องเปลี่ยนชื่อไดเรกทอรีบ้านด้วย

IMO คุณควรสร้างผู้ใช้ใหม่ด้วยชื่ออะไรก็ตามและปล่อยให้ Pi อยู่ที่นั่น แต่นั่นก็ขึ้นอยู่กับคุณแล้ว


ขอบคุณฉันต้องการมีระบบที่สะอาดและผู้ใช้ที่ไม่ได้ใช้ด้วยเหตุผลบางอย่างทำให้ฉันรำคาญ แต่ฉันจะทิ้งไว้ ขอบคุณสำหรับความช่วยเหลือ!
Jamil Seaidoun

16

หากคุณอยู่ในคอนโซลของ 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 -dpasswd


1
วิธีการแก้ปัญหาของไมค์ใช้ได้ดีสำหรับฉัน ... ขอบคุณและอีกสิ่งหนึ่งก่อนที่จะทำตามขั้นตอนนี้ไปที่ tty (ctrl + alt + f1) และทำตามขั้นตอนที่กำหนดโดยไมค์
suprith_gowda

4

คำตอบข้างต้นนั้นถูกต้องฉันแค่ต้องการให้ตัวเลือกอื่นที่เหมาะกับคุณมากกว่า

สมมติว่า:

  • ราสเบอร์รี่ปี่ใหม่
  • คุณต้องการเปลี่ยนชื่อผู้ใช้เริ่มต้นpiเป็นmypie
  • คุณต้องการปรับกลุ่มหลักจากpiเป็นmypie
  • คุณต้องการให้สิ่งอื่น ๆ ทำงานเหมือน sudo และล็อกอินอัตโนมัติ

ดำเนินการต่อไป:

ขั้นตอนที่ 1: หยุดผู้ใช้ไม่ให้piทำงานก่อนการเปลี่ยนแปลง

  • บูตมันไปที่การกำหนดค่า RPI และ
    • อนุญาตให้ SSH
    • ไม่อนุญาตให้ลงชื่อเข้าใช้อัตโนมัติ
    • กดตกลง
  • กด ALT + F1 เพื่อไปที่ tty แรก
  • เลื่อนระดับเป็นรูทด้วย sudo su -
  • แก้ไข $vim /etc/systemd/system/autologin@.service

    • ค้นหาและแสดงความคิดเห็น (#) บรรทัด

      • #ExecStart=-/sbin/agetty --autologin pi --noclear %I $TERM

      คุณสามารถยกเลิกการใส่เครื่องหมายข้อคิดเห็นได้ในภายหลังหากคุณต้องการคอนโซลอัตโนมัติแต่อย่าลืมเปลี่ยนผู้ใช้piเป็นชื่อผู้ใช้ใหม่ของคุณmypi

  • passwdสร้างรหัสผ่านใหม่ที่มีราก (อย่าลืม)
  • ชนิด reboot

ขั้นตอนที่ 2: ทำการเปลี่ยนแปลงผู้ใช้

  • หากคุณเห็นข้อความแจ้งการเข้าสู่ระบบแบบกราฟิกแสดงว่าคุณดี ทำไม่ได้เข้าสู่ระบบ ให้กด ALT + F1 แทน (* หากคุณต้องการทำผ่าน ssh โปรดดูที่ภาคผนวก)
  • หลังจาก ALT + F1 คุณควรเห็น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โฟลเดอร์

ขั้นตอนที่ 3: ทำการเปลี่ยนแปลงกลุ่ม

  • groupmod -n mypie piพิมพ์อีกครั้งอย่างระมัดระวัง นี่จะเปลี่ยนpiชื่อกลุ่ม ตรวจสอบด้วยtail /etc/groupและคุณจะเห็นบรรทัดใหม่เป็นชื่อใหม่ที่เชื่อมโยงกับGID1,000
  • เพียงชี้แจงให้พิมพ์ls -la /home/piแล้วคุณจะเห็นว่าpiHOME เป็นของคุณmypieแล้ว

ขั้นตอนที่ 4: ให้นำบ้านใหม่มาใช้

  • ฉันเห็นในคำตอบข้างต้นการสร้างโฟลเดอร์ใหม่คัดลอกทุกอย่าง ไม่จำเป็น. ให้ใช้เหมือนกัน
  • ก่อนอื่นย้ายไปที่cd /homeเพื่อทำให้ง่ายขึ้น พิมพ์ls -laและดูกลุ่มpionwermypiemypie
  • พิมพ์อย่างระมัดระวัง: mv pi mypie. ตอนนี้คุณต้องเชื่อมโยงการเปลี่ยนแปลงนี้กับผู้ใช้ใหม่ของคุณ
  • พิมพ์อย่างระมัดระวัง: usermod -d /home/mypie mypie. สิ่งนี้จะเปลี่ยนไดเรกทอรีบ้านของคุณ ตรวจสอบด้วยtail /etc/passwdและดูที่ฟิลด์ที่หก (คั่นด้วย:)

ขั้นตอนที่ 5: บางคนปรับหลังจากความจริง

  • รีบูตด้วย reboot
  • เข้าสู่ระบบในฐานะผู้ใช้ใหม่ของคุณmypieในส่วนต่อประสานกราฟิก
  • เปิดเทอร์มินัล
เปลี่ยนรหัสผ่านของคุณ
  • พิมพ์passwdเพื่อเปลี่ยนรหัสผ่านของmypieเป็นอย่างอื่นraspberry
  • พิมพ์sudo su -และคุณจะถูกถามรหัสผ่านของคุณ
ลงชื่อเข้าใช้อัตโนมัติอีกครั้งหากคุณต้องการ (ฉันไม่แนะนำ แต่ก็ดี)
  • หากคุณต้องการอัตโนมัติบัญชีใหม่ของคุณแก้ไขไฟล์:
    • $vim etc/lightdm/lightdm.conf
    • ค้นหาบรรทัดด้วย#autologin-user=เปลี่ยนเป็นautologin-user=mypie(ไม่มีความคิดเห็น #)
  • หากคุณต้องการกลับไปใช้ ALT + F1 autologin ให้ค้นหาและแก้ไขไฟล์:
    • $vim /etc/systemd/system/autologin@.service และเปลี่ยนสาย
    • #ExecStart=-/sbin/agetty --autologin mypie --noclear %I $TERM
ทำ sudo passwordless ของคุณอีกครั้ง (ฉันไม่แนะนำเช่นกัน)
  • ย้ายตัวเอง (root) ไปที่ 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 raspberry127.0.1.1 myoven
  • แก้ไขและปล่อยให้บรรทัดเดียวกับ$vim /etc/hostnamemyoven
เสร็จสิ้น

ขั้นตอนที่ 6: รีบูต

  • พิมพ์อย่างระมัดระวัง reboot

ภาคผนวก - ssh

  • คุณอาจต้องการทำสิ่งนี้ผ่าน ssh เพื่อให้สิ่งนี้ใช้งานได้อันดับแรกคุณต้องอนุญาตการรูท
  • ค้นหาไฟล์ /etc/ssh/sshd_config
  • แสดงความคิดเห็นบรรทัด #PermitRootLogin without-password
  • เพิ่มบรรทัด PermitRootLogin yes
  • บันทึกออกเริ่มต้นใหม่ ssh ด้วย /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:ได้รับคำแนะนำหลังจากทำเช่นนั้นแล้วเครื่องมือกำหนดค่ามาตรฐานจะหยุดทำงาน

เครื่องมือกำหนดค่า Raspberry Pi

เชิงอรรถ:ขอบคุณสำหรับชุมชนการแลกเปลี่ยน raspberrypi (เช่นฉันใหม่ที่นี่ด้วย)


บันทึกเล็ก ๆ ผมพบว่าในขณะที่ทำตามขั้นตอนของคุณ: สดติดตั้งบน raspian ของฉันมีแต่ไม่มีvi vimที่จะได้รับเป็นครั้งแรกที่ฉันได้ไปใช้tty ctrl+alt+F1
akozi

3
  1. sudo passwd root
    [ป้อนรหัสผ่านรูทใหม่ที่ไร้สาระ จำไว้]
  2. เข้าสู่ระบบ / ssh เป็น pi เป็น root โดยใช้รหัสผ่านที่ไร้สาระ
  3. usermod -l newname -d /home/newname -m oldname
  4. ls -al /home/
    [ดูว่าคุณได้เปลี่ยนโฟลเดอร์ผู้ใช้ & โฮม เย้. โอ้ .. ต้องเปลี่ยนกลุ่ม ... ]
  5. groupmod --new-name newname oldname
  6. ls -al /home/
    [ดูว่ามีการเปลี่ยนแปลงโฟลเดอร์ผู้ใช้กลุ่ม & โฮม เย้!]
  7. exit
    (ตอนนี้เข้าสู่ระบบในชื่อใหม่ Yay!)
    แต่เดี๋ยวก่อน ....
    ตอนนี้คุณควรรีเซ็ตรูทเพื่อให้คนอื่นไม่สามารถบังคับรหัสผ่านที่ไร้สาระของคุณได้
  8. sudo passwd -l root
    (โอ้และถ้าคุณสนใจจริงๆ ... แก้ไข/etc/ssh/sshd_configให้ตั้งค่า "PermitRootLogin no" และเริ่มบริการนั้นใหม่)

จากนั้นคุณจะต้องเปลี่ยนการเปลี่ยนแปลงเพิ่มเติมใด ๆ ในสคริปต์ / การตั้งค่าที่อ้างถึง 'pi' ... JOY


0

ฉันไม่มีคะแนนมากพอที่จะใส่ความคิดเห็นนี้ แต่หากการบูตในเซฟโหมดไม่ทำงานคุณสามารถลองทำสิ่งนี้ได้โดยสร้างบัญชีชั่วคราวและใช้งานจากที่นั่น ดูคำอธิบายได้ที่นี่: /ubuntu//a/34075/112715

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.