{"id":70,"date":"2021-08-29T09:47:27","date_gmt":"2021-08-29T09:47:27","guid":{"rendered":"https:\/\/blog.jantle.de\/?p=70"},"modified":"2021-08-30T10:46:28","modified_gmt":"2021-08-30T10:46:28","slug":"octoprint-zugriff-auf-systemfunktionen","status":"publish","type":"post","link":"https:\/\/blog.jantle.de\/?p=70","title":{"rendered":"OctoPrint &#8211; Zugriff auf Systemfunktionen"},"content":{"rendered":"\n<p>OctoPrint l\u00e4uft ja in den meisten F\u00e4llen unter einem normalen Nutzeraccount mit eingeschr\u00e4nkten Rechten. Dies bedeutet, dass wichtige Systemfunktionen wie das Herunterfahren oder Neustarten des Systems eigentlich nicht m\u00f6glich sind.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"583\" src=\"https:\/\/blog.jantle.de\/wp-content\/uploads\/2021\/08\/Octoprint_System_Blog-1-1024x583.jpg\" alt=\"\" class=\"wp-image-72\" srcset=\"https:\/\/blog.jantle.de\/wp-content\/uploads\/2021\/08\/Octoprint_System_Blog-1-1024x583.jpg 1024w, https:\/\/blog.jantle.de\/wp-content\/uploads\/2021\/08\/Octoprint_System_Blog-1-300x171.jpg 300w, https:\/\/blog.jantle.de\/wp-content\/uploads\/2021\/08\/Octoprint_System_Blog-1-768x437.jpg 768w, https:\/\/blog.jantle.de\/wp-content\/uploads\/2021\/08\/Octoprint_System_Blog-1.jpg 1060w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>Damit das funktioniert, m\u00fcssen lediglich im System die relevanten Systembefehle f\u00fcr OctoPrint freigegeben werden.<br>Dies geschieht \u00fcber entsprechende Eintr\u00e4ge in der Sudo-Konfigurationsdatei <code>\/etc\/sudoers<\/code> bzw besser in einer eigenen, separaten Datei f\u00fcr OctoPrint: <code>\/etc\/sudoers.d\/octoprint<\/code><br>Dazu wird die Datei mittels <code>sudo visudo -f \/etc\/sudoers.d\/octoprint<\/code> erstellt und die entsprechenden Befehle dort eingef\u00fcgt.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>octoprint ALL=NOPASSWD:\/usr\/bin\/systemctl poweroff,\/usr\/bin\/systemctl reboot,\/usr\/bin\/systemctl restart octoprint,\/sbin\/ip<\/code><\/pre>\n\n\n\n<p>Der erste Eintrag <code>octoprint<\/code> gibt den Nutzernamen an, unter dessen Accout OctoPrint l\u00e4uft. In meinem Fall eben der User &#8222;octoprint&#8220;.  <br>Die n\u00e4chsten Eintr\u00e4ge <code>ALL=NOPASSWD:<\/code> bedeuten, dass der entprechende User alle folgenden Befehle ohne besondere Restriktionen und ohne Passwort ausf\u00fchren darf.<br>Die drei <code>systemctl<\/code>-Befehle sind f\u00fcr das OctoPrint-Systemmen\u00fc, der letzte Befehl <code>\/sbin\/ip<\/code> f\u00fcr das <a rel=\"noreferrer noopener\" href=\"https:\/\/plugins.octoprint.org\/plugins\/networkhealth\/\" target=\"_blank\">&#8222;Network Health&#8220;-plugin<\/a>.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>OctoPrint l\u00e4uft ja in den meisten F\u00e4llen unter einem normalen Nutzeraccount mit eingeschr\u00e4nkten Rechten. Dies bedeutet, dass wichtige Systemfunktionen wie das Herunterfahren oder Neustarten des Systems eigentlich nicht m\u00f6glich sind. Damit das funktioniert, m\u00fcssen lediglich im System die relevanten Systembefehle f\u00fcr OctoPrint freigegeben werden.Dies geschieht \u00fcber entsprechende Eintr\u00e4ge in der Sudo-Konfigurationsdatei \/etc\/sudoers bzw besser in [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[8,7],"class_list":["post-70","post","type-post","status-publish","format-standard","hentry","category-uncategorized","tag-3d-druck","tag-octoprint"],"_links":{"self":[{"href":"https:\/\/blog.jantle.de\/index.php?rest_route=\/wp\/v2\/posts\/70","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.jantle.de\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.jantle.de\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.jantle.de\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.jantle.de\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=70"}],"version-history":[{"count":7,"href":"https:\/\/blog.jantle.de\/index.php?rest_route=\/wp\/v2\/posts\/70\/revisions"}],"predecessor-version":[{"id":80,"href":"https:\/\/blog.jantle.de\/index.php?rest_route=\/wp\/v2\/posts\/70\/revisions\/80"}],"wp:attachment":[{"href":"https:\/\/blog.jantle.de\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=70"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.jantle.de\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=70"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.jantle.de\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=70"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}