คำถามติดแท็ก systemd

systemd เป็นอีกทางเลือกหนึ่งสำหรับ SystemV และ Upstart init daemons สำหรับ Linux มันมีวัตถุประสงค์เพื่อให้กรอบที่ดีกว่าสำหรับการแสดงการพึ่งพาบริการที่อนุญาตให้ทำงานได้มากขึ้นในแบบคู่ขนานที่เริ่มต้นระบบและเพื่อลดเปลือกค่าใช้จ่าย

4
เราจะอนุญาตให้ผู้ใช้ที่ไม่ใช่รูทควบคุมบริการ system.d ได้อย่างไร?
ด้วยการsysvinitเป็นsudoersรายการเช่นนี้จะพอเพียง: %webteam cms051=/sbin/service httpd * สิ่งนี้จะช่วยให้คำสั่งเช่น: sudo service httpd status sudo service httpd restart ขณะนี้ด้วยsystemdชื่อบริการเป็นอาร์กิวเมนต์สุดท้าย นั่นคือบริการเริ่มต้นใหม่จะทำกับ: systemctl restart httpd.service โดยธรรมชาติแล้วฉันคิดว่าการกำหนดคำสั่งsystemctl * httpd.serviceจะทำงานได้ แต่นั่นจะอนุญาตให้บางอย่างเช่นsystemctl restart puppet.service httpd.serviceซึ่งไม่ใช่ผลที่ต้องการ เมื่อพิจารณาแล้วสิ่งใดจะเป็นวิธีที่ดีที่สุดที่จะทำให้ผู้ใช้ที่ไม่ใช่รูทสามารถควบคุมsystem.dบริการได้ สิ่งนี้ไม่จำเป็นต้องเป็นsudoers; บางทีการเปลี่ยนแปลงการอนุญาตไฟล์อาจจะเพียงพอหรือไม่

5
วิธีการปิดการใช้งาน 'apt-daily.service' บน Ubuntu cloud VM image?
อิมเมจ VM เซิร์ฟเวอร์ Ubuntu 16.04 เห็นได้ชัดว่าเริ่ม "apt-daily.service" ทุก ๆ 12 ชั่วโมงหรือมากกว่านั้น บริการนี้ทำหน้าที่ที่เกี่ยวข้องกับ APT หลายประการเช่นการรีเฟรชรายการแพ็คเกจที่มีอยู่ดำเนินการอัปเกรดแบบไม่ต้องใส่ข้อมูลหากจำเป็น ฯลฯ เมื่อเริ่มต้นจาก VM "snapshot" บริการจะถูกเรียกใช้ทันทีเนื่องจาก (ฉันเข้าใจ) systemd ตระหนักถึงอย่างรวดเร็วว่าตัวจับเวลาควรจะหายไปนานแล้ว อย่างไรก็ตามการป้องกันไม่ให้ APT ทำงานอื่น ๆกระบวนการจากการทำงานในขณะที่มันถือล็อคบนapt /var/lib/dpkgข้อความแสดงข้อผิดพลาดที่ระบุว่ามีลักษณะดังนี้: E: Could not get lock /var/lib/dpkg/lock-frontend - open (11: Resource temporarily unavailable) E: Unable to acquire the dpkg frontend lock (/var/lib/dpkg/lock-frontend), is another …

5
journalctl: วิธีป้องกันข้อความไม่ให้ถูกตัดทอนในเทอร์มินัล
ฉันจะป้องกันไม่ให้สตริงยาวถูกตัดในเทอร์มินัลได้อย่างไร เช่นถ้าฉันวิ่ง journalctl -xn มีข้อความมากมายที่ฉันอ่านไม่ออก ฉันเปิดให้ใช้โปรแกรม / เครื่องมืออื่น ๆ
59 terminal  systemd 

3
ฉันจะวางไฟล์ systemd unit ของฉันได้ที่ไหน
ฉันอ่านว่ามีสองโฟลเดอร์สำหรับไฟล์หน่วย (ไม่ใช่ในโหมดผู้ใช้) /usr/lib/systemd/system/: units provided by installed packages /etc/systemd/system/: units installed by the system administrator ขัดแย้งกับความเข้าใจนี้เป็นคำตอบต่อไปนี้: https://unix.stackexchange.com/a/47715/33386 บางคนสามารถกรอกข้อมูลที่หายไปเพื่อที่ฉันจะได้เข้าใจว่าเกิดอะไรขึ้น? ( ปรับปรุง: คำตอบได้รับการปรับปรุงและความเข้าใจของฉันจะไม่ขัดแย้งกับมันอีกต่อไป ) นอกจากนี้ดูเหมือนว่าสคริปต์จะถูกจัดระเบียบในโฟลเดอร์ย่อยภายใน/etc/systemd/system/โฟลเดอร์: getty.target.wants multi-user.target.wants ในสถานที่อื่นฉันอ่านว่ามีสถานที่อื่น ดูเหมือนว่าสิ่งเหล่านี้มีไว้สำหรับบริการเฉพาะผู้ใช้ /usr/lib/systemd/user/ where services provided by installed packages go. /etc/systemd/user/ where system-wide user services are placed by the system administrator. ~/.config/systemd/user/ where the user …


11
จะหลีกเลี่ยงข้อขัดแย้งระหว่าง dnsmasq และ systemd-แก้ปัญหาได้อย่างไร?
ฉันเพิ่งติดตั้งdnsmasqเพื่อทำหน้าที่เป็นเซิร์ฟเวอร์ DNS สำหรับเครือข่ายท้องถิ่นของฉัน dnsmasq รอฟังพอร์ต 53 ซึ่งใช้งานอยู่แล้วโดยผู้ฟัง DNS stub ในระบบจากระบบที่แก้ไขแล้ว เพียงหยุดการแก้ไข systemd แล้วรีสตาร์ทหลังจาก dnsmasq กำลังทำงานแก้ปัญหานี้ แต่กลับมาหลังจากรีบูต: systemd-modified เริ่มต้นด้วยการตั้งค่าและ dnsmasq จะไม่เริ่มทำงานเนื่องจากพอร์ต 53 ถูกใช้งานแล้ว คำถามแรกที่เห็นได้ชัดฉันเดาว่าฉันควรทำอย่างไรให้ระบบดีที่สุดเข้าใจว่ามันไม่ควรเริ่มฟัง DNS stub ในเครื่องและทำให้พอร์ต 53 ใช้งานโดย dnsmasq อย่างไรก็ตามคำถามที่น่าสนใจมากขึ้นก็คือวิธีการที่ทั้งสองบริการมักจะหมายถึงการทำงานร่วมกัน พวกเขาหมายถึงการทำงานเคียงข้างกันหรือไม่ได้รับการแก้ไข systemd ในทางถ้าคนใช้ dnsmasq?
57 systemd  dnsmasq 

8
งานหยุดทำงานสำหรับเซสชัน c2 ของผู้ใช้
ข้อความต่อไปนี้ปรากฏขึ้นเกือบทุกครั้งที่ฉันปิดคอมพิวเตอร์: A stop job is running for Session c2 of user ... (1min 30s) มันจะรอ 1 นาที 30 วินาทีจากนั้นจึงปิดกระบวนการต่อไป ฉันทำตามคำแนะนำในการวิเคราะห์การปิดระบบ systemdและรับshutdown-log.txt (ฉันไม่สามารถวางบันทึกโดยตรงที่นี่เพราะมันยาวมาก) น่าเสียดายที่ฉันไม่เข้าใจบันทึกด้วยตัวเอง ใครช่วยให้ฉันค้นหาสิ่งที่ทำให้ระบบของฉันไม่ปิดอย่างถูกต้องหรือไม่ ผมทำงาน Arch Linux กับเคอร์เนล4.4.5-1-ARCHของฉันรุ่นsystemd229-3 นอกจากที่ 1:A stop job is running...ผมสังเกตว่าทุกครั้งที่ผมออกจากระบบแล้วปิดเครื่องคอมพิวเตอร์ของฉันจากหน้าจอเข้าระบบก็ไม่ได้รับข้อความ ฉันพยายามออกจากระบบก่อนที่จะปิดหลายครั้งดังนั้นฉันคิดว่ามันไม่ได้เกิดขึ้นโดยบังเอิญ หวังว่าข้อมูลจะช่วยได้ เพิ่มเติม 2:เป็นเซสชัน c2 เสมอที่ทำให้การปิดระบบหยุดทำงาน ดังนั้นตามที่ @ n.st แนะนำให้ฉันดูที่การวินิจฉัยปัญหาการปิดระบบอีกครั้งและเก็บไว้loginctl session-status c2แทนdmesgแต่ไม่มีอะไรเกิดshutdown-log.txtขึ้น ฉันแทนที่loginctl session-status c2ด้วยsystemd-cglsและได้รับบันทึกต่อไปนี้: Control …
56 systemd  shutdown 

3
รีสตาร์ท Systemd = ไม่ได้รับเกียรติเสมอ
หมายเหตุ: ผมเขียนบทความเกี่ยวกับการขนาดกลางที่อธิบายถึงวิธีการสร้างบริการและวิธีการหลีกเลี่ยงปัญหานี้โดยเฉพาะอย่างยิ่ง: การสร้างบริการ Linux กับ systemd คำถามเดิม: ฉันใช้ systemd เพื่อให้สคริปต์ผู้ปฏิบัติงานทำงานตลอดเวลา: [Unit] Description=My worker After=mysqld.service [Service] Type=simple Restart=always ExecStart=/path/to/script [Install] WantedBy=multi-user.target แม้ว่าการรีสตาร์ทจะทำงานได้ดีถ้าสคริปต์ออกจากปกติหลังจากผ่านไปสองสามนาทีฉันสังเกตว่าถ้าซ้ำ ๆ ไม่สามารถรันเมื่อเริ่มต้นได้ แต่systemdจะยอมแพ้พยายามเริ่ม: Jun 14 11:10:31 localhost systemd[1]: test.service: Main process exited, code=exited, status=1/FAILURE Jun 14 11:10:31 localhost systemd[1]: test.service: Unit entered failed state. Jun 14 11:10:31 localhost systemd[1]: …
53 systemd 

2
วิธีแก้ปัญหา DNS ด้วยระบบที่แก้ไขแล้ว?
คุณจะค้นหาเซิร์ฟเวอร์ DNS ที่ใช้systemd-resolvedเพื่อการแก้ไขปัญหาอย่างไร โดยทั่วไปฉันสามารถใช้digและทดสอบเซิร์ฟเวอร์ DNS /etc/resolv.confที่แสดงใน (หรือ windows - ipconfig /all+ nslookup) แต่วิธีการดังกล่าวไม่ทำงานเมื่อ resolv.conf เพียงชี้ไปที่ตัวแก้ไขแบบโลคัลบนที่อยู่วนรอบ วิธีใดที่ใช้ภายใต้การแก้ไขของระบบเพื่อแสดงเซิร์ฟเวอร์ DNS ที่ใช้? ( unboundมีไฟล์ config ที่ฉันสามารถดูได้ dnsmasqทำเช่นกัน แต่ฉันไม่แน่ใจว่าเซิร์ฟเวอร์สามารถเพิ่มแบบไดนามิกโดยไม่มีไฟล์กำหนดค่าได้หรือไม่แม้แต่ NetworkManager ตอนนี้มีnmcliและฉันเห็นคุณสามารถสอบถามnmcli d show wlan0เพื่อแสดงการกำหนดค่า DNS สำหรับอินเทอร์เฟซ )

2
จะบอกเจอร์นัลให้อ่านการกำหนดค่าใหม่ได้อย่างไร?
คำถามของฉันง่าย: ฉันจะบอก journald ให้อ่านไฟล์การกำหนดค่าอีกครั้งโดยไม่ต้องรีบูตเครื่องได้อย่างไร ฉันได้ทำการเปลี่ยนแปลงบางอย่าง/etc/systemd/journald.confแล้วและฉันต้องการดูว่าถูกต้องหรือไม่และทุกอย่างทำงานได้ตามที่คาดหวัง ฉันไม่ต้องการรีบูท

1
“ systemctl daemon-reload” ทำอะไร
ฉันมีบริการที่หยุดกะทันหัน ฉันพยายามเริ่มบริการนั้นใหม่ แต่ล้มเหลวและขอให้เรียกใช้ "systemctl daemon-reload" มันทำอะไรกันแน่? "daemon reload คืออะไร"
46 centos  systemd  daemon 

2
ความแตกต่างระหว่าง / usr / lib / systemd / system และ / etc / systemd / system คืออะไร?
ก่อนที่ไฟล์หน่วยทั้งหมดจะอยู่ใน/etc/systemd/system/แต่ตอนนี้บางไฟล์แสดงขึ้นใน/usr/lib/systemd/system(<- บน CentOS หรือ/lib/systemd/system<- บน Debian / Ubuntu) ความแตกต่างระหว่างโฟลเดอร์เหล่านี้คืออะไร

1
สถานะ“ แอ็คทีฟ (ออกแล้ว)” หมายถึงอะไรสำหรับบริการ SystemD
ฉันทำงานกับบริการที่กำหนดเองซึ่งใช้งานเว็บเซิร์ฟเวอร์เป็นหลักเรียกว่า thisismywebserver ขณะนี้ยังใช้งานไม่ได้ (เช่นฉันได้รับข้อผิดพลาด "ไม่สามารถเชื่อมต่อได้" พยายามเข้าถึงหน้าเว็บ) เมื่อฉันรันคำสั่งนี้service thisismywebserver statusเพื่อดูสถานะของบริการฉันเห็นว่าสถานะนั้นเป็น "active (exited)" นี่หมายความว่าบริการหยุดทำงานหรือไม่ ถ้าไม่เช่นนั้นหมายความว่าอย่างไร root@thisismywebserver-testing:~# service thisismywebserver status ● thisismywebserver.service - LSB: ThisIsMyWebServer server Loaded: loaded (/etc/init.d/thisismywebserver) Active: active (exited) since Sun 2015-11-08 23:01:33 EST; 18h ago Warning: Journal has been rotated since unit was started. Log output is incomplete or …


5
จะปิดการใช้งาน X server autostart ใน Debian Jessie ได้อย่างไร?
ฉันมีเครื่องระยะไกลที่ใช้ Debian 8 (เจสซี) ติดตั้ง lightdm ฉันต้องการให้เริ่มในโหมด no-GUI แต่ฉันไม่ต้องการลบสิ่งที่เกี่ยวข้องกับ X ทั้งหมดเพื่อให้สามารถเรียกใช้งานได้แม้ว่า SSH ด้วย-Xพารามิเตอร์ ดังนั้นวิธีการปิดการใช้งาน X server เริ่มอัตโนมัติโดยไม่ต้องลบมัน? ฉันพยายามsystemctl stop lightdmมันหยุด lightdm แต่มันจะทำงานอีกครั้งหลังจากรีบูต ฉันพยายามsystemctl disable lightdmด้วยเหมือนกัน แต่มันก็ไม่ทำอะไรเลย มันเปลี่ยนชื่อสคริปต์ของ lightdm ใน/etc/rc*.dไดเรกทอรี แต่ก็ยังคงเริ่มต้นหลังจากรีบูตดังนั้นฉันทำอะไรผิด และฉันทำไม่ได้เพียงupdate-rc.d lightdm stopเพราะมันเลิกใช้แล้วและใช้งานไม่ได้

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