ฉันกำลังพยายามเรียกใช้สคริปต์เริ่มต้นในสภาพแวดล้อม Ubuntu (Ubuntu 20.04) ซึ่งจะทำงานในฐานะผู้ดูแลระบบจาก บ้าน
ไดเร็กทอรีเมื่อเครื่องรีสตาร์ทหลังจากการปรับใช้ PXE เช่นเดียวกับผู้ใช้ sudo ทั่วไป ผู้ใช้คือ "อูบุนตู" (ข้อจำกัดคือต้องดำเนินการในฐานะผู้ดูแลระบบในโฮมไดเร็กตอรี่)
ดังนั้นระหว่างการปรับใช้ ฉันดาวน์โหลดสคริปต์ sh จากเซิร์ฟเวอร์ ftp ของฉัน และทำให้เรียกใช้งานได้ดังนี้:
ซีดี /โฮม/อูบุนตู
wget ftp://my_server_ip/common/preseed/postConf.sh
chmod 755 /home/ubuntu/postConf.sh
ฉันทำให้มันทำงานเมื่อเริ่มต้นเช่นนี้ (โดยใช้โฟลเดอร์ init.d และสร้างลิงก์สัญลักษณ์ไปยังโฟลเดอร์ rc2):
ซีดี /etc/init.d
wget ftp://my_server_ip/common/preseed/init.sh
chmod 755 /etc/init.d/init.sh
sed -i -e 's/\r$//' init.sh
ln -s /etc/init.d/init.sh /etc/rc2.d/S99init
เดอะ postconf.sh
ไฟล์ติดตั้ง maas Setup และมีลักษณะดังนี้:
#!/bin/bash
sudo add-apt-repository -y ppa:maas/3.0-next
อัปเดต sudo apt
sudo apt install -y maas jq markdown nmap traceroute git curl wget zfsutils-linux cloud-image-utils virtinst qemu-kvm libvirt-daemon-system libvirt-clients bridge-utils whois
sudo maas createadmin --ชื่อผู้ใช้ ubuntu --รหัสผ่าน รหัสผ่าน --อีเมล [email protected] --ssh-import gh:superpowers
...
ไฟล์ init.sh มีลักษณะดังนี้:
#!/bin/bash
ที่มา /home/ubuntu/postConf.sh
เมื่อการติดตั้งเสร็จสิ้น สคริปต์จะถูกคัดลอกอย่างถูกต้องใน /home/อูบุนตู
และใน /etc/init.d
โฟลเดอร์
ปัญหาคือดูเหมือนว่าจะทำงานไม่ถูกต้องเพราะฉันเห็นว่ามีการติดตั้งซอฟต์แวร์ maas โดยการพิมพ์ รายการ apt --installed | เกรปมาส
ฯลฯ แต่ติดตั้งไม่ถูกต้อง (configs ล้มเหลว ฯลฯ) เมื่อฉันเพิ่งดำเนินการในทางกลับกัน postconf.sh
ไฟล์ใน sudo ด้วยตนเอง:
/home/ubuntu/postconf.sh
มันใช้งานได้โดยไม่มีปัญหาใดๆ มีแนวคิดอย่างไรที่จะทำให้มันทำงานเหมือนผู้ใช้ sudo จากโฮมไดเร็กตอรี่? ขอบคุณมาก