sudo taustalle häärimään

Olen väsännyt yad:lla graafisen front endin konsoliohjelmalle, joka vaatii siihen liittyvän rautansa puolesta rootin oikeuksia. Tavallisille pulliaisille en viitsisi antaa rootin oikeuksia. Front endissä yksinkertaisesti kysytään muutamia perusjuttuja ja sudon salasana. Sitten on vielä start- ja stop- painikkeet. Homma toimii muuten hienosti mutta kun start- painiketta klikkaa niin konsoliohjelma alkaa suunnitellusti pyöriä mutta stop- painiketta ei voi klikata eli konsoliohjelmaa ei voi lopettaa. Syyksi on ilmennyt tuo sudo, joka jää etualalle killumaan estäen stop- painikkeen klikkauksen. Ja kaiken lisäksi tuo salasana tiedosto jää turhan pitkäksi aikaa levylle näkyviin. Sudon tappamisen jälkeen stop- painiketta voi jälleen klikata. Toinen vaihtoehto on sulkea front end ja käynnistää se uudelleen, jolloin stop- painikeella voi lopettaa konsoliohjelman. Miten tuon sudon saisi taka-alalle tai käynnistämään konsoliohjelman täysin uutena prosessina? Alla käyttämäni koodin pätkä ja käyttis on Linux Mint 20 jos se jotakuta kiinnostaa.

echo $3 > ~/passwd.txt
pvm=`date _%d%m%Y-%H%M`
sudo -S -b datamanager $HOME/Documents/$pvm.data < ~/passwd.txt
rm ~/passwd.txt
7124
Äänestä

Muut lukivat myös

Vastaukset 7

Vanhimmat

Lisää käyttäjä tai sopiva ryhmä /etc/sudoers -tiedostoon ja anna sille oikeudet VAIN tälle sovellukselle.

Äänestä
  • Piti kertomani jo alunperin, että ko käyttäjillä on jo sudo- oikeudet.

    T: Aloittaja

    Äänestä

  • Anonyymi kirjoitti:

    Piti kertomani jo alunperin, että ko käyttäjillä on jo sudo- oikeudet.

    T: Aloittaja

    Sittenhän tässä ei ole ongelmaa....

    Äänestä

  • Anonyymi kirjoitti:

    Sittenhän tässä ei ole ongelmaa....

    Ongelma on ettei stop- painiketta voi klikata jos on klikannut start- painiketta. Tuo sudon etualalla killuminen estää sen.

    Äänestä

Laita start-nappiin skripti, joka tekee halutun tempun ja tallentaa pid:in johonkin tiedostoon. Stop-napissa olisi sitten skripti, joka lukee pid-tiedostosta pid-arvon, ja tappaa prosessin killillä.

Äänestä
  • Ja pid:n saa suoritettavassa skriptissä muuttujasta $$.

    Äänestä

  • Tässä+simppeli+esimerkki.+Start.sh+näyttää+kelloa,+ja+stop.sh+tappaa+start.sh:n.+Samaan+hakemistoon+nämä,+tai+sitten+pitää+muokata+polkuja.start.sh--#!/bin/bashecho+$$+>script.pidfor+((+;+;+))do++DATE=`date++"%H.%M.%S"`++printf+"\r${DATE}"++sleep+1donestop.sh--#!/bin/bashkill+-9+`cat+script.pid`

    Äänestä

Kommentoi aloitusta


Anonyymi kirjoitti:

Olen väsännyt yad:lla graafisen front endin konsoliohjelmalle, joka vaatii siihen liittyvän rautansa puolesta rootin oikeuksia. Tavallisille pulliaisille en viitsisi antaa rootin oikeuksia. Front endissä yksinkertaisesti kysytään muutamia perusjuttuja ja sudon salasana. Sitten on vielä start- ja stop- painikkeet. Homma toimii muuten hienosti mutta kun start- painiketta klikkaa niin konsoliohjelma alkaa suunnitellusti pyöriä mutta stop- painiketta ei voi klikata eli konsoliohjelmaa ei voi lopettaa. Syyksi on ilmennyt tuo sudo, joka jää etualalle killumaan estäen stop- painikkeen klikkauksen. Ja kaiken lisäksi tuo salasana tiedosto jää turhan pitkäksi aikaa levylle näkyviin. Sudon tappamisen jälkeen stop- painiketta voi jälleen klikata. Toinen vaihtoehto on sulkea front end ja käynnistää se uudelleen, jolloin stop- painikeella voi lopettaa konsoliohjelman. Miten tuon sudon saisi taka-alalle tai käynnistämään konsoliohjelman täysin uutena prosessina? Alla käyttämäni koodin pätkä ja käyttis on Linux Mint 20 jos se jotakuta kiinnostaa.

echo $3 > ~/passwd.txt
pvm=`date _%d%m%Y-%H%M`
sudo -S -b datamanager $HOME/Documents/$pvm.data < ~/passwd.txt
rm ~/passwd.txt

Anonyymi
5000

Ilmoita asiaton sisältö

  • Sisältää materiaalia, joka on loukkaavaa, herjaavaa, rasistista, uhkailevaa tai ahdistelevaa.

  • Materiaali sisältää nimiä, yhteystietoja tai muita henkilökohtaisia tietoja. Julkisuuden henkilöistä, julkisissa viroissa toimivista ihmisistä sekä yritysten vastuuhenkilöistä saa keskustella työhön liittyen. Myös yksityiselämään liittyvistä asioista voi keskustella siltä osin, kuin niistä on julkisesti kerrottu.

  • Sisältää lapsille haitallista tai heiltä kiellettyä materiaalia. Seksuaalinen sisältö on sallittua aiheeseen tarkoitetuilla palstoilla, joiden ikäraja on 18 vuotta.

  • Lainvastaista sisältöä voi olla mm. yksityiselämää loukkaavan tiedon levitys, kiihottaminen kansanryhmää vastaan, laiton uhkaaminen, alaikäisiin liittyvä seksuaalinen sisältö/grooming, petokset, identiteettivarkaudet, kunnianloukkaukset ja tekijänoikeusrikkomukset.

  • Sisältö ei liity palstan tai keskusteluketjun aiheeseen.

  • Viesti ei ole suomea tai ruotsia (pl. International Forums), se sisältää mainontaa, se sisältää tekijänoikeuksin suojattua materiaalia, se on massapostitus tai jokin muu syy.

Jaa keskustelu