Linux: A systemd szolgáltatás használata felhasználóként: Conky System Monitor

Szeretettel köszöntelek a Linux klub közösségi oldalán!

Csatlakozz te is közösségünkhöz és máris hozzáférhetsz és hozzászólhatsz a tartalmakhoz, beszélgethetsz a többiekkel, feltölthetsz, fórumozhatsz, hírt küldhetsz be, stb.

Ezt találod a közösségünkben:

  • Tagok - 319 fő
  • Képek - 129 db
  • Videók - 66 db
  • Blogbejegyzések - 302 db
  • Fórumtémák - 31 db
  • Linkek - 253 db

Üdvözlettel,
M Imre
Linux klub vezetője

Amennyiben már tag vagy a Networkön, lépj be itt:

Szeretettel köszöntelek a Linux klub közösségi oldalán!

Csatlakozz te is közösségünkhöz és máris hozzáférhetsz és hozzászólhatsz a tartalmakhoz, beszélgethetsz a többiekkel, feltölthetsz, fórumozhatsz, hírt küldhetsz be, stb.

Ezt találod a közösségünkben:

  • Tagok - 319 fő
  • Képek - 129 db
  • Videók - 66 db
  • Blogbejegyzések - 302 db
  • Fórumtémák - 31 db
  • Linkek - 253 db

Üdvözlettel,
M Imre
Linux klub vezetője

Amennyiben már tag vagy a Networkön, lépj be itt:

Szeretettel köszöntelek a Linux klub közösségi oldalán!

Csatlakozz te is közösségünkhöz és máris hozzáférhetsz és hozzászólhatsz a tartalmakhoz, beszélgethetsz a többiekkel, feltölthetsz, fórumozhatsz, hírt küldhetsz be, stb.

Ezt találod a közösségünkben:

  • Tagok - 319 fő
  • Képek - 129 db
  • Videók - 66 db
  • Blogbejegyzések - 302 db
  • Fórumtémák - 31 db
  • Linkek - 253 db

Üdvözlettel,
M Imre
Linux klub vezetője

Amennyiben már tag vagy a Networkön, lépj be itt:

Szeretettel köszöntelek a Linux klub közösségi oldalán!

Csatlakozz te is közösségünkhöz és máris hozzáférhetsz és hozzászólhatsz a tartalmakhoz, beszélgethetsz a többiekkel, feltölthetsz, fórumozhatsz, hírt küldhetsz be, stb.

Ezt találod a közösségünkben:

  • Tagok - 319 fő
  • Képek - 129 db
  • Videók - 66 db
  • Blogbejegyzések - 302 db
  • Fórumtémák - 31 db
  • Linkek - 253 db

Üdvözlettel,
M Imre
Linux klub vezetője

Amennyiben már tag vagy a Networkön, lépj be itt:

Kis türelmet...

Bejelentkezés

 

Add meg az e-mail címed, amellyel regisztráltál. Erre a címre megírjuk, hogy hogyan tudsz új jelszót megadni. Ha nem tudod, hogy melyik címedről regisztráltál, írj nekünk: ugyfelszolgalat@network.hu

 

A jelszavadat elküldtük a megadott email címre.

A systemd szolgáltatásait általában a rendszer használja, következésképpen, admin joggal futnak. Kivétel ez alól például a Pulseaudio hangrendszer, vagy manapság a PipeWire vagy a WirePlumber, melyeket felhasználói folyamatként indít a systemd.


A Conky rendszermonitor alkalmazás. Általában úgy indítod el, hogy beteszed az Indítópultba. De mindenképpen felhasználóként indítod el, nem admin joggal.

network.hu

 

Conky - systemd


Ez a megoldás megoldja a helyes időzítést is, hiszen az Indítópulttal ellentétben a sleep parancsot nem szükséges használnod.

 

Nyisd meg a kedvenc terminálodat.


Hozd létre a systemd szolgáltatást


sudo nano /usr/lib/systemd/user/conky.service


A szöveges tartalom ez legyen:


# /usr/lib/systemd/user/conky.service
[Unit]
Description=Conky System Monitor

[Service]
Type=simple
ExecStart=/usr/bin/conky --config=%h/.local/bin/Conky_Fedora_Tree/.conkyrc --display=:0 --pause=10
Restart=always
RestartSec=1
RemainAfterExit=yes
LockPersonality=yes
MemoryDenyWriteExecute=yes
NoNewPrivileges=yes

Slice=app.slice

StandardError=journal
StandardOutput=journal

 

[Install]
WantedBy=default.target
Alias=conky.service


Mentsd a változtatást, és lépj ki a nano szövegszerkesztőből

Ctrl + O, és Enter,
majd Ctrl + X

 

A felhasználói systemd szolgáltatások beállítása az --user kapcsolóval történik

 

Indítsd újra a felhasználói systemd szolgáltatásokat, a változtatások érvényesítésével

systemctl --user daemon-reload

Indítsd el a szolgáltatást


Így,

 

systemctl --user start conky

vagy így.

 

systemctl --user --no-block start conky

 

Engedélyezd a szolgáltatást, hogy minden rendszer indításkor induljon | kimenettel


systemctl
--user enable conky

Created symlink /home/debkim/.config/systemd/user/default.target.wants/conky.service → /usr/lib/systemd/user/conky.service.


Ha nem indul, úgy az állapot lekérdezés kiírja a problémát, ellenőrizd...

systemctl
--user status conky --no-pager --all

Enjoy :-)


Leírások


 

Parancssorok (jegyezd meg)

 

Használd az --user kapcsolót mindig: felhasználói szolgáltatásról van szó.

A szolgáltatás vezérlésehez admin jogra nincs szükséged (sudo nem kell).

 

Már létrehozott szolgáltatás...

 

  • azonnali indítása (start),

 

systemctl --user start conky

 

  • engedélyezése minden rendszer indításkor (enable)

 

systemctl --user enable conky

 

  • állapotának lekérdezése (status)


systemctl --user status conky --no-pager --all

 

  • változtatásainak érvényesítése (daemon-reload)

 

systemctl --user daemon-reload

 

  • újraindítása: például a szolgáltatás szerkesztése után (restart)

 

systemctl --user restart conky

 

  • újra engedélyezése: hasznos, ha esetleg, másik *.target-be teszed (reenable)

 

systemctl --user reenable conky

 

  • újraindítása a no-block kapcsolóval, ha a systemd blokkolná (restart)

 

systemctl --user --no-block restart conky

 

A szolgáltatás létrehozása

 

... kétféle módon történhet.

 

Rendszerkönytár

 

sudo nano /usr/.config/systemd/user/conky.service

 

vagy felhasználó könyvtár

 

nano $HOME/.config/systemd/user/conky.service

 

útvonalának használatával.

 

Válaszd az egyiket.

 

Egyes környezeti változó listázására példa (saját könyvtár/felhasználó),

 

echo $HOME

 

echo $USER

 

vagy (felhasználó/felhasználó környezeti változói).


whoami


systemctl --user show-environment


Magyarázat

 

Őszintén szólva, korábban tévesen (a lónak is négy lába van, mégis megbotlik) a WantedBy=graphical.target beállítást használtam (részletek lentebb), és egy ideig működött így is. Aztán, elromlott, és elkezdtem kutatni a megoldást.

 

A multi-user.target vagy a graphical.target beállítások rendszer szolgáltatások, itt nem használhatóak, mert meghívható felhasználói szolgáltatásként sincsenek jelen. Felhasználói szolgáltatás a default.target, és ez az általánosan használt WantedBy beállítás.


[Install]
WantedBy=default.target


A felhasználói szolgáltatások lekérdezése


systemctl list-units --type=target --user

 

A default.target beállítással érkezett egy hibaüzenet,

 

conky: can't load font 'monospace:size=10:bold'

 

amire a .conkyrc fájlban történt javítás a korábbi beállítást megjegyzésbe téve -a # vagy a ;  itt ilyen, kettő kötőjel- és alatta új beállítást létrehozva, létező, azaz telepített font névvel.

 

-- font = 'monospace:size=10:bold',
   font = 'Noto Sans Mono:size=10:bold',

 

Beérkezett egy másik hibaüzenet,


conky can't open display


amelyet az itt vagy az itt írt megoldások (conky.service)

 

BindTo=graphical-session.target

CollectMode=inactive-or-failed

TimeoutSec=5s

Slice=app.slice

 

nem oldottak fel.

 

Jó tudni, hogy a systemd régebbi, 219-es verziója már natívan támogatja a $DISPLAY és az $XAUTHORITY környezeti változókat,


* An X11 session scriptlet is now shipped that uploads
$DISPLAY and $XAUTHORITY into the environment of the systemd
--user daemon if a session begins. This should improve
compatibility with X11 enabled applications run as systemd
user services.

 

ennek fényében logikusnak tűnik, hogy a környezeti változók,

 

Environment="DISPLAY=:0" "XAUTHORITY=%h/.Xauthority"

 

és a felhasználóként történő használat beállításait

 

User=$USER

Group=$USER

 

immár nem szükséges használni a systemd szolgáltatásnál. A gyakorlatban egyébként nem válik be. Továbbá, nincs értelme létrehozni és használni felhasználói xsession.target-et vagy hasonló beállítást. Nem biztonságos és nem ésszerű a X.Org/Wayland grafikus felületet felhasználóként futtatni. Ténynek tekinthető, hogy

 

manapság a systemd önmagában is támogatja a szolgáltatást futtató felhasználóhoz tartozó $DISPLAY és a $XAUTHORITY környezeti változókat, alkalmazás megfelelőségeket, és teszi ezt mindössze, az --user kapcsoló használatával.

 

A gyakorlat azt mutatja, mégsem tökéletesen.
Legalábbis, egynél több monitor használata esetén...

 

Két monitort használok, az egyik a noteszgép saját kijelzője, a másik külső monitor.

 

Korábban, kerülő megoldást (workaround) alkalmaztam a conky can't open display hibaüzenetre. Az Indítópult használatával -amely alkalmazás már a grafikus felületen indul el- újraindítottam a szolgáltatást. Késleltetést nem alkalmaztam.

 

systemctl --user restart conky

 

Működött, szépséghibája az alábbi hibaüzenet:

 

conky[1812]: segfault at 10 ip 00007f93df231924 sp 00007ffc21420450 error 4 in libX11.so.6.4.0[7f93df211000+8b000] likely on CPU 1 (core 0, socket 0)

 

Ezután jutottam el a megoldáshoz

 

ExecStart=/usr/bin/conky --config=%h/.local/bin/Conky_Fedora_Tree/.conkyrc --display=:0 --pause=10

 

A kapcsolók magyarázata

 

Beállítja a $DISPLAY környezeti változót,


--display=:0

 

a Conky megjelenik az elsődleges monitoron, majd a rendszer -a Kijelző beállításai szerint- átvált a használt második monitorra, de fekete téglalap háttérrel jelenik meg mindkettőn, majd picit később jelenik meg a szokásos, elvárt kinézettel. Nem túl szép, ezért tesztelésen alapuló késleltetést alkalmaztam (az érték másodpercben értendő).

 

--pause=10

 

Gyakorlatilag, a Conky alkalmazás használatával oldottam meg azt, amit a systemd alkalmazásnak is tudnia kéne.

 

Ha nem jelenik meg a Conky...

 

Az állapot lekérdezés megmutatta, hogy a probléma oka a desktop beállítás ebben a sorban (Conky .conkyrc beállító fájl),


own_window_type = 'desktop',


 és következmény, hogy a folyamat megszakad.

 

Javítás (egy lehetőség, amely nálam bevált) és így már megjelenik a Conky

own_window_type = 'normal',

 

Beállítási lehetőségek (default: normal):

 

normal,

desktop,

dock,

panel,

override,

 

Conky hasznosságok

 

Conky Fedora Tree:
https://www.deviantart.com/iznogud78/art/Conky-Fedora-Tree-795963082

Névnap szöveges fájl:
https://hup.hu/node/100717#comment-1246997

Kapcsolódik


A leírás megszületését gyorsította egy kérdés, amely megoldása lényegében ugyanez. Ott a Raspberry Pi átalakító, és két hangkártyát köt össze, laptopot a hangkeverővel.

 

Az alkalmazott parancs:


ExecStart=/usr/bin/pactl load-module module-loopback


Az RPi használat után történő, biztonságos leállítása pedig így lett megoldva:

https://www.youtube.com/watch?v=h6GFXtKkXco

Címkék: .conkyrc conky system monitor conky.service időzített indítás indítópult raspberry pi rendszer szolgáltatás rpi systemd workaround

 

Kommentáld!

Ez egy válasz üzenetére.

mégsem

Hozzászólások

M Imre üzente 7 hónapja

Leírás frissítve!

Válasz

M Imre üzente 7 hónapja

Sajnos, megszűnt a jó működés... nálam nem működik pár napja.
Dolgozom a megoldáson. :-)

Próbaként a WantedBy= beállításnál a graphical.target ki lett cserélve a default.target beállításra, és még sok minden tesztelve lett.

Kerülő megoldás, hogy Indítópultba készítettem egy indítót. A parancssor:

systemctl --user restart conky

A hibajelzés ez (a szolgáltatás elindul, de nem képes futni):

conky[1789]: can't open display:
conky[1789]: conky: drawing to single buffer
conky[1789]: conky: invalid setting of type 'table'
systemd[1772]: Started conky.service - Conky System Monitor.

Ezek a kis idegesítő apróságok általában megoldódnak. :-)

Válasz

Ez történt a közösségben:

M Imre írta 7 órája a(z) Rövid, szines hírek fórumtémában:

Hamarosan saját maguk szerkeszthetik a génjeiket az ...

M Imre írta 7 órája a(z) Steam Linuxon (játékplatform) blogbejegyzéshez:

Lebuktak a potyázók, a Steam megszüntetett egy népszerű ...

M Imre írta 1 napja a(z) Rövid, szines hírek fórumtémában:

Linux szervereket célzott meg az Akira Ransomware | Apr 22, ...

M Imre írta 1 napja a(z) Rövid parancssoros megoldások, tippek, trükkök, tutorialok, magyarázatok ... fórumtémában:

Fixing update-grub command not found Error in Arch Linux :) ...

M Imre írta 1 napja a(z) Rövid, szines hírek fórumtémában:

About six years ago, vulnerabilities were discovered...

M Imre írta 1 napja a(z) Rövid, szines hírek fórumtémában:

As Debian Backports do not offer Long Term Support (LTS),...

M Imre írta 2 napja a(z) Társalgó fórumtémában:

A közösségi szereldében új életet lehelhetünk az elromlott ...

M Imre új eseményt adott az eseménynaptárhoz: 2024. április 27-28-án, 10 és 18 óra között várjuk az érdeklődőket a ReGamEX -RETRO VIDEÓJÁTÉK kiállításra, a 70-es, 80-as és 90-es évek hobbiszámítógépeivel, videó- és kvarcjátékaival 2024.04.27.

M Imre írta 5 napja a(z) Rövid, szines hírek fórumtémában:

Tavaly óta lehet tudni, hogy a hazánkban is kapható TP-Link...

M Imre írta 1 hete a(z) Fényképezés, képek szerkesztése és minden hasonló témakör fórumtémában:

Herzog a streetfotó hercege | 2024.03.27. Fred Herzog, ...

Szólj hozzá te is!

Impresszum
Network.hu Kft.

E-mail: ugyfelszolgalat@network.hu