Nowe posty

Autor Wątek: Skrypt ubijający usługę  (Przeczytany 1743 razy)

Paweł

  • Gość
Skrypt ubijający usługę
« dnia: 2018-06-18, 14:56:07 »
Witam wszystkich.
Pomóżcie mi proszę napisać skrypt który ubije mi wszystkie procesy libreoffice a potem zresetuje samą usługę libre.

ps ax  | grep libre

  449 ?        Sl     0:01 /opt/libreoffice3.6/program/oosplash --writer /home/127-13/Desktop/szablony.odt
  536 ?        Sl     0:01 /opt/libreoffice3.6/program/oosplash --writer /home/127-13/Desktop/szablony.odt
  584 ?        Sl     0:01 /opt/libreoffice3.6/program/oosplash --writer /home/164-13/Desktop/szablony.odt
  797 ?        Sl     0:00 /opt/libreoffice3.6/program/oosplash --writer /home/24-13/Desktop/szablony.odt
  802 ?        Sl     0:01 /opt/libreoffice3.6/program/oosplash --writer /home/164-13/Desktop/szablony.odt
  882 ?        Sl     0:00 /opt/libreoffice3.6/program/oosplash --writer /home/24-13/Desktop/szablony.odt
  931 ?        Sl   697:29 /opt/libreoffice3.6/program/soffice.bin --writer /home/24-13/Desktop/szablony.odt
 1085 ?        Sl     0:01 /opt/libreoffice3.6/program/oosplash --writer /home/164-13/Desktop/szablony.odt
 1100 ?        Sl     0:01 /opt/libreoffice3.6/program/oosplash --writer /home/164-13/Desktop/szablony.odt
 1131 ?        Sl     0:01 /opt/libreoffice3.6/program/oosplash --writer /home/164-13/Desktop/szablony.odt
 1152 ?        Sl     0:01 /opt/libreoffice3.6/program/oosplash --writer /home/164-13/Desktop/szablony.odt
 1175 ?        Sl     0:01 /opt/libreoffice3.6/program/oosplash --writer /home/164-13/Desktop/szablony.odt

Pozdrawiam,
Paweł

Offline Paweł Kraszewski

  • Administrator
  • Guru
  • *****
  • Wiadomości: 3047
  • Lenistwo jest matką potrzeby = babcią wynalazku
    • Zobacz profil
Odp: Skrypt ubijający usługę
« Odpowiedź #1 dnia: 2018-06-18, 17:30:57 »
O jakiej usłudze libre mowa? Bo jedyne usługopodobne, co mi się kojarzy z libreoffice, to ikona szybkiego startu z zasobnika - ale ona nie jest LO potrzebna do życia...
Paweł Kraszewski
~Arch/Void/Gentoo/FreeBSD/OpenBSD/Specjalizowane customy

Paweł

  • Gość
Odp: Skrypt ubijający usługę
« Odpowiedź #2 dnia: 2018-06-19, 07:22:01 »
Mam serwer terminalowy na którym klienci korzystają masowo z libre.
Po jakimś czasie na kolejnych nowo zalogowanych terminalach libre nie chce się odpalić. Kiedyś miałem skrypt, który robił robotę ale, że dostęp do serwera ma kilka osób to skrypt wsiąkł :(

Pozdrawiam,
Paweł.

Offline Paweł Kraszewski

  • Administrator
  • Guru
  • *****
  • Wiadomości: 3047
  • Lenistwo jest matką potrzeby = babcią wynalazku
    • Zobacz profil
Odp: Skrypt ubijający usługę
« Odpowiedź #3 dnia: 2018-06-19, 08:10:21 »
Raczej poszukałbym przyczyny, a nie leczył objawy amputacją. Przy próbie odpalenia LOO z konsoli - co się dzieje? Na co marudzi? Czy jest wyłączony i zablokowany OpenGL i OpenCL w konfiguracjach LOO? To słabo działa przez sieć. Czy są limity zasobów per-klient? Czy i jaka separacja klientów?

Jak jest - tylko nowe LOO nie startują, czy wszystkie naraz przestają działać? Bo jak tylko nowe nie startują, to ponury żniwiarz może bardzo rozczarować tych, którym LOO jeszcze działa i mają coś otwartego.
Paweł Kraszewski
~Arch/Void/Gentoo/FreeBSD/OpenBSD/Specjalizowane customy

Paweł

  • Gość
Odp: Skrypt ubijający usługę
« Odpowiedź #4 dnia: 2018-06-20, 11:06:41 »
Jak już przestaje robić LO to tylko na danym terminalu. Reszta pracuje bez problemu i nie zdarzyło się tak aby coś komuś żniwiarz zabrał ;)

ps aux | grep -i office | awk {'print $2'} | xargs kill -9
będzie dobrze ? :)

Pozdrawiam,
Paweł.
« Ostatnia zmiana: 2018-06-20, 11:56:46 wysłana przez Paweł Kraszewski »

Offline Paweł Kraszewski

  • Administrator
  • Guru
  • *****
  • Wiadomości: 3047
  • Lenistwo jest matką potrzeby = babcią wynalazku
    • Zobacz profil
Odp: Skrypt ubijający usługę
« Odpowiedź #5 dnia: 2018-06-20, 12:11:44 »
Lepsze będzie

pkill -u$USER -f -KILL /opt/libreoffice3.6/program

Rozkładając na części:

* Parametr -u$USER ogranicza procesy tylko do bieżącego użytkownika

* Parametr -f sprawia, że nazwa procesu dopasowywana jest do całej ścieżki a nie do "gołej" nazwy programu. To pozwala dopasować do dowolnego działającego programu w /opt/libreoffice3.6/program - czyli zarówno oosplash jak i soffice.bin

* Parametr -KILL to sygnał do wysłania

Pkill nigdy nie widzi samego siebie, w odróżnieniu od potoku ps | grep.
Paweł Kraszewski
~Arch/Void/Gentoo/FreeBSD/OpenBSD/Specjalizowane customy

Paweł

  • Gość
Odp: Skrypt ubijający usługę
« Odpowiedź #6 dnia: 2018-06-27, 11:08:33 »
Czesć,
Czy zamiast -KILL nie powinno być -signal ?

Pozdrawiam,
Paweł.

Offline Paweł Kraszewski

  • Administrator
  • Guru
  • *****
  • Wiadomości: 3047
  • Lenistwo jest matką potrzeby = babcią wynalazku
    • Zobacz profil
Odp: Skrypt ubijający usługę
« Odpowiedź #7 dnia: 2018-06-27, 11:41:19 »
Cytuj
Jak wszystko inne zawiedzie, przeczytaj instrukcję

-KILL jest równoważne --signal KILL co jest równoważne (w Linuksie) --signal 9 . Tak samo -HUP = --signal HUP czy -USR1 = --signal USR1
Paweł Kraszewski
~Arch/Void/Gentoo/FreeBSD/OpenBSD/Specjalizowane customy