mites luon hakemistoja käyttäjille...

tyhmin

käyttäen polussa heidän nimeään?

Eli home-tiedoston tyylisen?

Esim. /home/jotain/"joku"

jossa "joku" kohtaan tulee käyttäjän tunnus...
käyttäjiä on satoja, joten en viitsisi yksitellen tehdä, ja sen jopa osaisin ilman neuvoakin tehdä... :)

11

708

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • onnistunee...

      Tee scripti joka lukee käyttäjänimiä tiedostosta luoden sitten hakemiston käyttäjälle. Eli yksinkertainen silmukka varmaan hoitaa tuon mallikkaasti.

      Ei lienee monimutkaista, varmaan saisin itsekin aikaan, vaikka en olekaan noihin scripteihin perehtynyt sitten dosin komentojonojen jälkeen. Pitäisi kyllä.

      • *BSD

        Esim. komentoriviltä voi (edellyttäen, että oikeudet riittää):

        # for user in user1 user2 ... usern; do
        > mkdir -p /home/jotain/$user
        > chown $user /home/jotain/$user
        > chgrp ..
        done
        #

        Eli tossa on simppeli tapa tehdä homma. For-loopissa (sh/ksh/bash) lista 'user1 user2 user3' jne. Sitten taas jos (ja kun) kyseessä on satoja käyttäjiä on parempi varmaan tehdä tosta skripti, jossa on listattuna myös noi käyttäjät.

        Suosittelen kokeilemaan em. viritystä ensin ilman root-tunnusta kun en testannut sitä mitenkään :)


      • kysymystä
        *BSD kirjoitti:

        Esim. komentoriviltä voi (edellyttäen, että oikeudet riittää):

        # for user in user1 user2 ... usern; do
        > mkdir -p /home/jotain/$user
        > chown $user /home/jotain/$user
        > chgrp ..
        done
        #

        Eli tossa on simppeli tapa tehdä homma. For-loopissa (sh/ksh/bash) lista 'user1 user2 user3' jne. Sitten taas jos (ja kun) kyseessä on satoja käyttäjiä on parempi varmaan tehdä tosta skripti, jossa on listattuna myös noi käyttäjät.

        Suosittelen kokeilemaan em. viritystä ensin ilman root-tunnusta kun en testannut sitä mitenkään :)

        Hyvä ja simppeli skripti! Mutta vieläkin eri versioissa on huomattava, tuo chgrp: joissa jakeluissa ryhmä käyttäjillä (oletuksena) on users, toisissa taas $user... jne.
        (Saattaisi mennä tosin yhdelläkin chown-komennolla.)


      • kysymystä kirjoitti:

        Hyvä ja simppeli skripti! Mutta vieläkin eri versioissa on huomattava, tuo chgrp: joissa jakeluissa ryhmä käyttäjillä (oletuksena) on users, toisissa taas $user... jne.
        (Saattaisi mennä tosin yhdelläkin chown-komennolla.)

        chown username file ..
        chgrp groupname file ..
        =
        chown username.groupname file ..


      • *BSD
        Mik26 kirjoitti:

        chown username file ..
        chgrp groupname file ..
        =
        chown username.groupname file ..

        Ja vielä BSD:ssä ja Solariksessa toi sama
        on:
        chown username:groupname file ...


      • kysymystä

    • kysymystä

      Linuxissa (Unixeissa) on tiedostoilla ja hakemistoilla oikeuksia:
      omistaja, ryhmä ja muut. Lisäksi näille on omat luku-, kirjoitus- ja ajo-oikeutensa...
      Kurkkasepa mitä kertoo komento ls -l

      • kysymykseen

        Uups. Vastasin väärään kysymykseen, mutta...
        roottina hakemiston tekeminen käyttäjän hakemistoon jää oikeudet root-tunnukselle, joten myös tuo omistusoikeudet pitänee muuttaa.
        Homma ei siis ole aivan yksinkertainen... mutta vaatinee (?) lisäksi chown komennon ajamisen skriptissä :(


    • skriptaaja

      # HUOM: ei testattu!

      mkdir -p /home/jotain
      cd /home/jotain
      mkdir `ls /home`
      chown `ls /home` `ls /home`

      # yllä luotiin hakemistot (ja vähän liikaakin...)
      # ja asetettiin hakemistoille oikeudet

      • skriptaaja

        edellisessä tuo chown-rivi tekee asiat väärin, älä käytä sitä! Parempi olisi vaikkapa bashissa:

        mkdir -p /home/jotain
        cd /home/jotain
        for user in `ls /home` ; do
        mkdir -p $user
        chown $user $user
        # muuta tarvittavaa tänne...
        done


    • onion

      Iski inspis, tässä kunnon pieni softa. Muokkaa itsellesi sopivaksi:


      #include
      #include
      #include
      #include
      #include

      #define BASEDIR "./home/testing/"
      #define MIN_UID 100

      struct passwd *ent;

      int main (int argc, char **argv)
      {
      int gid;
      char buffer[2048];

      if (argc!=2) exit(1);
      if (getuid()!=0) exit(2);

      gid=atoi(argv[1]);
      if (gid==0) {
      printf("Not a valid GID\n");
      exit(3);
      }

      while ( (ent=getpwent()) != NULL) {
      if (ent->pw_uidpw_gid==gid) {
      printf("The uid [%d] matches gid, creating dir: ", ent->pw_uid);
      strcpy(buffer, BASEDIR);
      strcat(buffer, ent->pw_name);
      mkdir(buffer, S_IRWXU);
      chown(buffer, ent->pw_uid, ent->pw_gid);
      printf("%s\n", buffer);
      }
      }
      endpwent();

      return 0;
      }

    Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. Persujen vaalilupaus oli euron bensa

      Nyt puhutaan jo kolmen euron bensasta. Kyseessä on Suomen historian törkein vaalipetos.
      Maailman menoa
      121
      2253
    2. Vain vasemmistohallitus saa minut menemään töihin

      Änkyräkapitalistien sortaessa kansaa en laita rikkaakaan ristiin. Elän mielummin Kelan tuilla, ja jos niitä leikataan, n
      Maailman menoa
      58
      2187
    3. Maataloustuet perittävä korkojen kera takaisin

      Yrittäjiltä jotka ovat myyneet tuotantoaan ulkomaille. Veronmaksajan kustantama tuki on tarkoitettu elintarvikkeiden hi
      Maataloustuki
      50
      1875
    4. EK: Suomi tarvitsee vuosittain 45 000 maahanmuuttajaa

      Senpä takia Riikkakin laulaa sen lauluja kenen leipää syö. Viime vuonnahan Suomeen muutti 50 tuhatta ulkomaalaista. htt
      Maailman menoa
      12
      1436
    5. Topi osti Askon

      Hieno mies. Pelastaa työpaikkoja. Kiitokset myös emännälleen, joka pitää isännän virkeänä. https://www.is.fi/taloussan
      Maailman menoa
      80
      1408
    6. Mitä kirjainta kaipaat?

      Pitkästä aikaa tämmöistä. Onko kirjain muuttunut edellisestä. ☺️
      Ikävä
      94
      1387
    7. Kastaa ja upottaa on eri sanat

      Kastaa ja upottaa on eri sanat ja niillä on eri merkitys. Eikä Jeesusta haudattu upottamalla maahan kaivettuun kuoppaan
      Kaste
      219
      1161
    8. Uskomatonta touhua!

      Ei olis uskonut että kateus yrittäjää kohtaan menee noin pitkälle. TTP:ssa irrotettu sähköjohto jäätelöaltaasta. Kaikki
      Haapavesi
      31
      1160
    9. Oliko se oikeasti epäselvää

      sinulle että olin ihastunut sinuun? (Ymmärrän että siitä on aikaa, eikä voi olettaa että kaikkea muistaisi tai että men
      Ikävä
      63
      1139
    10. Miten hän sinua katsoi?

      😊😊😊😊😊😊
      Ikävä
      69
      1010
    Aihe