Namig: imenik naj si deli več uporabnikov v Linuxu

terminal

Danes se vračam z drugim namigom, ki ga osebno veliko uporabljam: imeti lahko imenik v skupni rabi med več uporabniki v Linuxu. Pripeljal sem jih v situacijo, saj z ženo doma oba uporabljava isti računalnik Arch Linux ampak vsak s svojim uporabnikom. Torej smo opazili težavo pri tistih mapah, ki jih delimo kot glasba ali fotografije, saj je vsaka imela svoje datoteke, ki so podvajale stvari.

Takrat smo razmišljali naredite mapo v skupni rabi, vendar obstaja težava z dovoljenji. Če je mapa moja, je ne vidi, če jo ustvarim, je ne izbriše in tako naprej. Na začetku je bil popravek ta, da smo 777 dovoljevali tem datotekam vsakič, ko smo uredili nekaj, do česar je imel dostop drugi, dokler nismo našli rešitve, Skupinska dovoljenja!

Kaj so skupinska dovoljenja?

To je najboljše, temu skupnemu imeniku in vsej njegovi vsebini dodelite posebno skupino z dovoljenji za branje in pisanje, s katerim bodo imeli vsi člani skupine dostop do omenjenega imenika. To nato omogoča, da lahko z dodajanjem uporabnikov v omenjeno skupino že sodelujemo v tem imeniku.

In kako ga nastavim?

To je najboljši del in v nadaljevanju vam povem, kako sem to naredil s svojo ženo. Prva stvar je ustvariti tisti imenik, ki ga bom na primer poklical «v skupni rabi".

sudo mkdir /home/compartido

Ustvarim ga znotraj / doma in zunaj naših računov, da se izognem temu, da bi se zgornji imeniki obremenjevali s svojimi dovoljenji. Zdaj moramo ustvariti skupino, ki jo bomo postavili «deljeno»

sudo groupadd compartidos

In to skupino dodelimo v imenik, ki smo ga prej ustvarili, in spremenimo tudi dovoljenja, tako da v to skupino spada tudi vse, kar ustvarimo znotraj, ne glede na to, ali gre za imenike ali datoteke.

sudo chgrp -R compartidos /home/compartido
sudo chmod g+s dirname

K temu moramo dodati tudi svoje uporabnike. Nato moramo ponoviti ta ukaz za vsakega:

sudo usermod -G compartido sebastian
sudo usermod -G compartido mimujer

Zaenkrat imamo imenik «/ domov / v skupni rabi»Kateri spada v skupino«deljeno«, S tem, do česar bodo lahko pristopili vsi člani istega uporabnika in vse, kar je ustvarjeno v imeniku, bo pripadlo skupini, s čimer jih bo lahko videl kdo od nas.

Zdaj manjka samo še zadnji korak, ki je morda neobvezen, vendar je sprememba umaske uporabnikov, da se zagotovi, da lahko vsako novo datoteko, ki jo ustvarimo, spreminjajo drugi člani skupine. To vpliva na celotnega uporabnika, ne samo na imenik, zato morajo preveriti, ali jim deluje ali ne. V mojem primeru, ker sistem uporabljava samo moja žena in nas ne moti, si določimo umasko 002, kar pomeni, da se vsaka ustvarjena datoteka začne s 775 dovoljenji.

Urejanje umaske

Če želite urediti umask, mora vsak uporabnik urediti datoteko .profile ali .bashrc, ki je v uporabnikovem domu, in spremeniti vrednost umask za želeno številko. Če možnosti ni, jo moramo dodati.

Datoteko / etc / profile lahko tudi uredite, tako da bo sprememba vplivala na vse uporabnike

Torej, v konzolo smo postavili:

sebastian@multivacs ~> vim .profile

In videli bomo nekaj takega:

vi-profil2

Torej, gremo na vrstico, ki pravi umask, pritisnemo pismo i če želite urediti in odstraniti #, da odstranite komentar. Številko spremenimo na 002. Če se vrstica ne prikaže, jo morajo dodati.

Ko končamo, pritisnemo tipko Esc za izhod iz načina urejanja in nato pišemo :+q+w. Zaradi česar shranimo spremembe in zapustimo Vi.

Videti bo takole na tej sliki:

vi-profil

In to je to! Če zaprejo svojo uporabniško sejo in jo znova odprejo, bodo sprejete spremembe, s katerimi bo imenik v skupni rabi že deloval.


Pustite svoj komentar

Vaš e-naslov ne bo objavljen. Obvezna polja so označena z *

*

*

  1. Za podatke odgovoren: Miguel Ángel Gatón
  2. Namen podatkov: Nadzor neželene pošte, upravljanje komentarjev.
  3. Legitimacija: Vaše soglasje
  4. Sporočanje podatkov: Podatki se ne bodo posredovali tretjim osebam, razen po zakonski obveznosti.
  5. Shranjevanje podatkov: Zbirka podatkov, ki jo gosti Occentus Networks (EU)
  6. Pravice: Kadar koli lahko omejite, obnovite in izbrišete svoje podatke.

  1.   živahno je dejal

    Super nasvet.

  2.   KZKG ^ Gaara je dejal

    Genialni.

    Pred nekaj leti sem videl, da moram to storiti sam, česar pa nisem vedel, je umask ... Namesto tega sem dal nalogo v crontab 🙂

    Hvala za nasvet

    1.    thalskart je dejal

      Da, tudi crontab je dober. Kaj ste postavili, če želite vsebini dodeliti 775 dovoljenj?

  3.   rawBasic je dejal

    Odličen namig .. ..po potrebi shranjen;) ..

  4.   Luis je dejal

    Ok, ustvarite mapo / dom / v skupni rabi in ji dodelite skupino "v skupni rabi"

    Komu uporabniku pripada ta mapa? Se pravi, kdo je lastnik? Jaz, druga oseba ali korenski uporabnik, katerega račun je onemogočen, ker uporabljam sudo?

    Po drugi strani imam naslednjo težavo: datotek, ki jih ustvarim, druga oseba ne more izbrisati in datotek, ki jih ustvari druga oseba, ne morem izbrisati sam.

    Kaj sem naredil narobe?

    1.    thalskart je dejal

      Ko ustvarjate mapo s sudo, vam mora biti lastnik korenski uporabnik. To lahko spremenite tudi z ukazom chown, če želite dodeliti drugega uporabnika.

      Po drugi strani preverite, ali datoteke, ki jih ustvarite, to počnejo z dovoljenji 775 (kar daje umask 002). Če nimajo teh dovoljenj, je morda prišlo do napačne konfiguracije.

      Prav tako je vredno pojasniti, da umask vpliva na vsako novo datoteko, ki je ustvarjena v imeniku, če pa premaknejo ali kopirajo vsebino z drugega mesta, se ohranijo prvotna dovoljenja in ne dovoljenja, ki smo jih nastavili v imenik.

      1.    Luis je dejal

        zdravo Prav imaš.

        Iskal sem in težavo povzroča zadnje, kar ste rekli: Ko datoteko premaknete z drugega mesta v mapo v skupni rabi, se ohranijo prvotna dovoljenja.

        Ali obstaja rešitev za to?

        Lahko bi uporabil bisere.

      2.    thalskart je dejal

        V tem primeru bi bilo najbolje, če bi postavili crontab, kot je rekel KZKG ^ Gaara, v katerem bi lahko vsakič X postavili ukaz za dodelitev skupine in dovoljenj vsebini mape.
        To pomeni nekaj takega v crontabu:
        sudo chgrp -R compartidos /home/compartido/*
        chmod -R 775 /home/compartido/*

        Če želite vse novo, se premaknite v skupno skupino z dovoljenji 775.

      3.    thalskart je dejal

        Prezri * na koncu vsake vrstice, ko sem ga postavil, sem razmišljal o čem drugem 😛

      4.    Luis je dejal

        Hvala prijatelj.

  5.   Ernesto je dejal

    Zelo dobra objava, vendar imam raje ločeno particijo, v katero lahko vstavim vse, kar želim deliti. Imam velikodušen 500 GB diska, v katerem uporabljam 100 GB z Linuxom in 400 GB particije (ntfs), v kateri je vsa glasba, fotografije itd. Na mojem računalniku smo dva uporabnika in vsak lahko dostopa do particije ntfs in dajte in odstranite, kar hočemo, kadar želimo. Če ne želim deliti ničesar, imam nekaj uporabniškega imena. 🙂

    1.    Luis je dejal

      Že zdaj je to še en način, vendar težava ni v tem, kam shraniti datoteke, temveč v konfiguraciji dovoljenj in nadzoru dostopa različnih uporabnikov.

      Lahko ga imate na particiji NTFS, pravilno, vendar imate tudi razdrobljenost, počasnejšo od EXT4 in manj varnosti, čeprav je tudi za vas dobro, da je enako veljavna.

  6.   rainerhg je dejal

    V redu! Dober nasvet, vendar bi vseeno dodal nalogo za spremembo dovoljenj na 775 novih datotek ob vsakem začetku seje, kar bi rešilo težavo z datotekami, premaknjenimi iz druge mape.
    Najlepša hvala tudi za delitev!

  7.   Joaquin je dejal

    Zanimivo, hvala!

  8.   anonimen je dejal

    Zanima me nekaj o primarni skupni rabi nekaterih distribucij gnu / linux. Nekateri distributerji ustvarijo uporabnika s primarno skupino uporabnikov in ne uporabljajo primarne skupine, ki je enaka imenu uporabnika.
    Razlika je v tem, da se pri uporabnikih primarne skupine privzeto vse deli z uporabniki skupine, ki jim bodo pripadali vsi uporabniki, ustvarjeni v tem distro, če so namesto tega ustvarjeni z isto skupino kot uporabniško ime, privzeto ne nič se ne bo delilo.

    Primer:
    $ ls -l /home/user/*.txt
    -rw-r - r– 1 carlos carlos 126 25. marec 2012 note.txt

    $ ls -l /home/user/*.txt
    -rw-r - r– 1 uporabnik carlosa 126 25. marec 2012 notes.txt

    Ne priporočam uporabe primarne skupine uporabnikov, bolje je, da ustvarite svojo primarno skupino pri ustvarjanju uporabnika.

    #groupadd carlos
    # useradd -g carlos -G lp, kolo, uucp, avdio, cdrom, cdrw, usb, lpadmin, plugdev -m -s / bin / bash carlos

    -G carlos označuje uporabo nadrejene skupine carlos.
    Primarno skupino uporabnika lahko spremenite z # usermod -g, vendar to ne bo spremenilo primarne skupine vseh datotek in map, ki so že v / home / carlos, vse pa boste morali spremeniti.

    Primer: spremenite uporabnike primarne skupine iz uporabnika carlos v primarno skupino carlos in nato spremenite
    vsa dovoljenja za datoteke in mape uporabnika carlos, tako da ostanejo od carlos carlos.

    #groupadd carlos
    # usermod -g carlos uporabniki
    # cd / home
    # chown -R carlos: carlos carlos

    Glede skupne rabe lahko ustvarite uporabnika, ki se imenuje v skupni rabi s primarno skupino v skupni rabi, in da pri kopiranju ne bo težav z dovoljenjem, najprej spremenite uporabnika
    s "$ su - shared", potem kar želite kopirati v / home / shared, s tem bodo dovoljenja kopiranega postala uporabnik v skupni rabi.
    Če že obstajajo datoteke za kopiranje, ki pripadajo drugim uporabnikom in primarnim skupinam, jih morate vse spremeniti.

    # cd / home
    # chown -R v skupni rabi: v skupni rabi

    V limbu je ostalo le nekaj, česar ne vem, kako grafično kopirati kot uporabnik v skupni rabi, torej brez potrebe po $ su - shared

  9.   anonimen je dejal

    Zelo neumno je bilo kopirati grafično, hehe, tukaj v odprti škatli uporabljam pcmanfm, vendar lahko uporabite upravitelja datotek, ki ga imate ali želite, izvaja se le kot uporabnik v skupni rabi in ne kot korenski uporabnik.

    $ su - v skupni rabi
    $pcmanfm
    $ delfin
    $mc
    etc etc

    1.    thalskart je dejal

      Kmalu sem hotel odgovoriti na to. V nasprotnem primeru je drugi crontab, ki lastnika datotek vsakič x spremeni z
      chown -R compartido:compartido compartido

  10.   Hugo je dejal

    Zdi se mi, da ukaz "usermod -G thenewgroup elusuario" v bistvu spremeni uporabniško skupino v "thenewgroup". Če bi obstoječega uporabnika dodali v novo skupino, mislim, da bi bila pravilna stvar "usermod -aG elnuevogrupo elusuario"

    Druga stvar je, da tukaj vidim, da več ljudi priporoča "chmod -R 775", vendar to ne vpliva samo na imenike, temveč tudi na vse datoteke (zaradi česar so izvršljive), kar predstavlja nepotrebno tveganje. Bolje naredite nekaj takega, kot je »najdi / doma / v skupni rabi -tip d -print0 | xargs -0 chmod 755 "in po potrebi z datotekami lahko naredite nekaj podobnega, vendar z uporabo" -type f "in odobritvijo dovoljenja 664.

    Nazadnje, en način, da več računov omogoči dostop do datoteke ali mape, ne glede na to, kdo je lastnik ali skupina, je z ukazom "setfacl", ki je v paketu acl (če se dobro spomnim). Njegova uporaba je dobro pojasnjena na strani z navodili.

  11.   Unai martin je dejal

    Imam naslednjo težavo. Ustvaril sem 4 uporabnike (web1, web2, web3, web4) in želim ustvariti mapo dostopne skupine za uporabnike spletne skupine. Ko ustvarim datoteko .htaccess, vem, da moram vstaviti Zahtevaj veljavnega uporabnika, če pa postavim Zahtevaj veljavnega uporabnika Web1 Web2 Web3 Web4, da lahko dostopajo do mape s svojim geslom, ko poskušam dostopati do mape me vpraša za uporabnika in geslo za vsakega. Kako naj dobim samo vprašanje za uporabniško ime in geslo tistega, ki želi vstopiti? ker se domneva, da eden ne pozna gesla drugega.

  12.   Gustavo F. Paredes je dejal

    Hej.

    Četrti terminal bi moral imeti "skupno" množino:

    sudo usermod -G je delil sebastiana

    sudo usermod -G je delil mojo žensko

    Lep pozdrav.

    Gustavo

  13.   Ivan je dejal

    Na zdravje :

    Prehajamo z Windows Server na CentOs 6 in še vedno smo v postopku prilagajanja. Moja poizvedba: Ali je v CentOsu na voljo grafični vmesnik za skupno rabo map in omogočanje dostopa uporabnikom do spreminjanja, urejanja in / ali brisanja datotek?, Ali naj naredim vse zgornje postopke.

    Hvala za pomoč.

    1.    Rafael je dejal

      Prav tako nameščam centos 6 in ga želim uporabljati s sambo, ki mi omogoča skupno rabo datotek iz linuxa in Windows, vem malo, linuxa ne uporabljam veliko, toda pri delu so me vprašali, kako lahko za skupno rabo map, vendar v grafičnem načinu ??.

  14.   Ricardo je dejal

    Živjo. Prosim, pomagajte mi! ... Izkazalo se je, da sem s tem, ko sem to storil v mislih uporabnika Linux, izgubil privilegije. Ne morem teči ničesar podobnega sudu. Prejel sem naslednje sporočilo "Oprostite, uporabnik" username "ni pooblaščen za izvajanje" command_to_run "kot root v" username ""

    Mislim, da ko sem uporabnika spremenil v skupno skupino, sem odstranil privilegije in kako jih lahko ponovno vzpostavim ???

  15.   Guillermo je dejal

    Hej, prijatelj, ali obstaja kakšen način, da se stori enako, ampak da se datoteke delijo z drugimi v internetu

  16.   Fabian je dejal

    Za to morate SAMBA uporabiti kot datotečni strežnik. Na zdravje

  17.   David je dejal

    Živjo. Ko sem prišel do ukaza sudo chmod g + s dirname, mi pove, da datoteka ali imenik ne obstaja. Ali veste, v čem je težava?

  18.   Javier Quiroga Almeida je dejal

    Kako ustvarim skupino v drugi skupini?

  19.   Rodrigo Hernán Ramos je dejal

    Linija:
    sudo usermod -G je delil sebastiana

    moral bi biti:
    sudo usermod -a -G je delil sebastian

    prvi način odstrani preostale uporabniške skupine.
    in če ste prepoteni, izgubite svoje privilegije