ไม่สามารถฟ้องผู้ใช้เจนกินส์ได้หลังจากติดตั้งเจนกินส์


97

ฉันติดตั้งเจนกินส์แล้วและฉันกำลังพยายามเข้าเชลล์ในฐานะเจนกินส์เพื่อเพิ่มคีย์ ssh ฉันไม่สามารถมองเข้าไปในผู้ใช้เจนกินส์:

[root@pacmandev /]# sudo su jenkins
[root@pacmandev /]# whoami
root
[root@pacmandev /]# echo $USER
root
[root@pacmandev /]# 

ผู้ใช้ jenkins มีอยู่ในไฟล์ / etc / passwd ของฉัน รันนินsu jenkinsขอรหัสผ่าน แต่ปฏิเสธรหัสผ่านปกติของฉัน sudo su jenkinsดูเหมือนจะไม่ทำอะไรเลย เหมือนกันสำหรับsudo su - jenkins. ฉันใช้ CentOS


ผู้ใช้มีอยู่ ... แต่น่าจะไม่มีเชลล์โปรดดูsuperuser.com/questions/566041/…
thekbb

คุณไม่จำเป็นต้อง sudo เมื่อคุณรูท แม้ว่าจะไม่เจ็บ
thekbb

12
sudo usermod -s /bin/bash jenkins
jgb

1
อย่าเพิ่มเชลล์ให้กับเจนกินส์ - มันขาดไปทีละชิ้นตามการออกแบบ โดยทั่วไปคุณไม่ต้องการให้บัญชีบริการสามารถเข้าสู่ระบบแบบโต้ตอบได้
thekbb

คำตอบ:


239

เจนกินส์เป็นบัญชีบริการ แต่ไม่มีเปลือกตามการออกแบบ เป็นที่ยอมรับโดยทั่วไปว่าบัญชีบริการไม่ควรเข้าสู่ระบบแบบโต้ตอบ

ฉันไม่ได้ตอบคนนี้ครั้งแรกเป็นมันเป็นซ้ำของคำถามที่ได้รับการย้ายไปอยู่ที่ความผิดของเซิร์ฟเวอร์ ฉันควรจะตอบแทนที่จะเชื่อมโยงกับคำตอบในความคิดเห็น

หากคุณต้องการเข้าสู่ระบบในฐานะเจนกินส์ด้วยเหตุผลบางประการคุณสามารถทำได้ด้วย: sudo su -s /bin/bash jenkins


8
ขอบคุณ! ฉันเข้าใจว่าการเพิ่มเชลล์ให้เจนกินส์ดูเหมือนจะเป็นความคิดที่ไม่ดี ฉันแค่ทำมันเพราะมีคำสั่งในกระบวนการสร้างของฉันซึ่งฉันไม่มีปัญหาในการเรียกใช้จากเชลล์ของฉัน แต่การสร้างล้มเหลวเนื่องจากไม่สามารถเรียกใช้งานได้ ฉันต้องการเข้าร่วมในฐานะเจนกินส์และดูว่ามีปัญหาเรื่องสิทธิ์หรือไม่
sfendell

แก้ไขคำตอบที่จะรวม @mrg ว่า 's sudoข้อมูลที่ถูกต้องตรงเกี่ยวกับต้อง
thekbb

1
มีรหัสผ่านเริ่มต้นที่ถามเพราะฉันจำไม่ได้ว่าตั้งรหัสผ่านในการติดตั้ง
Joe Lloyd

@mrg คุณใช้รหัสผ่านอะไร
นาบิน

@JoeLloyd คุณคิดรหัสผ่านเริ่มต้นหรือยัง? รหัสผ่านคืออะไร?
นาบิน


-1

หากคุณใช้เจนกินส์ในนักเทียบท่า จากนั้นคุณควรลองทำสิ่งต่อไปนี้

  • ก่อนอื่นคุณต้องเรียกใช้คอนเทนเนอร์ jenkins "docker start (container-name หรือ container-id)"

  • จากนั้นรันคำสั่งนี้"docker exec -it (container-name or container-id) bash"

ตอนนี้หวังว่าคุณจะใช้เป็นผู้ใช้เจนกินส์


-11

ในฐานะรากให้ป้อนsu - jenkins

นอกจากนี้ให้ตรวจสอบ/ etc / passwdว่าผู้ใช้ jenkins ได้รับอนุญาตให้เข้าสู่ระบบ: ควรมีบางอย่างเช่น/ bin / bashหรือ/ bin / shไม่ใช่/ bin / falseที่ท้ายบรรทัด

คำแนะนำ: คุณไม่ได้ใช้suและsudoในเวลาเดียวกัน


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