ฉันได้รับข้อมูลจำเพาะ RPM ที่สมบูรณ์บางส่วนสำหรับบริการที่เราเขียน มันจะได้รับการสร้างไดเรกทอรีที่ต้องการคัดลอกไฟล์ตั้งค่าสิทธิ์เป็นต้น แต่มันไม่ได้ทำให้บัญชีระบบที่ต้องการซึ่งบริการจะทำงานภายใต้ ฉันถูกบอกว่าดีที่สุดสำหรับ RPM ที่จะดูแลสิ่งนี้ดังนั้นฉันจึงเพิ่ม
Requires(pre): /usr/sbin/useradd
%pre
useradd -r -d /path/to/program -s /bin/false myservice
สิ่งนี้จะประสบความสำเร็จในการสร้างบัญชีผู้ใช้ (และกลุ่มที่เกี่ยวข้อง) ดังนั้นในภายหลังเมื่อพยายามตั้งค่าความเป็นเจ้าของ / การอนุญาตบนไฟล์ของบริการซึ่งจะประสบความสำเร็จเช่นกัน
ปัญหาปัจจุบันของฉันคือก) หากบัญชีผู้ใช้มีอยู่แล้วการติดตั้ง RPM ล้มเหลวเนื่องจากuseradd
ล้มเหลว (เนื่องจากผู้ใช้มีอยู่แล้ว); และ b) ฉันไม่รู้ว่าจะrpm -e myservice
ลบผู้ใช้และกลุ่มที่เกี่ยวข้องได้อย่างไร