abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
dnes 20:33 | Nová verze

Byla vydána nová verze 3.0.8 multiplatformního multimediálního přehrávače VLC (Wikipedie). Jedná se o minor verzi řešící několik regresí a opravující 13 bezpečnostních chyb.

Ladislav Hagara | Komentářů: 0
dnes 06:00 | Pozvánky

Srpnový pražský sraz spolku OpenAlt se koná již tento čtvrtek – 22. 8. 2019 od 18:00 v Radegastovně Perón (Stroupežnického 20, Praha 5). Tématem bude jako obvykle svobodný software a hardware. A pokud vás zajímá bezpečnost bezdrátových klávesnic a myší (útok MouseJack a spol.) a nějaké takové zařízení máte, vezměte ho sebou – trochu ho potrápíme o ověříme jeho bezpečnost.

xkucf03 | Komentářů: 0
včera 16:33 | Nová verze

David Heinemeier Hansson oznámil vydání nové major verze 6.0 frameworku pro vývoj webových aplikací Ruby on Rails (Wikipedie). Přehled novinek v příspěvku na blogu a v poznámkách k vydání. Přispělo 801 vývojářů.

Ladislav Hagara | Komentářů: 7
17.8. 18:11 | Nová verze

Byla vydána verze 2.23.0 distribuovaného systému správy verzí Git. Přispělo 77 vývojářů, z toho 26 nových. Přehled novinek v poznámkách k vydání nebo v příspěvku na blogu GitHubu.

Ladislav Hagara | Komentářů: 8
17.8. 13:33 | Komunita

Nadace Raspberry Pi na svém blogu informuje o vydání Scratch 3 Desktopu pro Raspbian na Raspberry Pi. Verze 3 výukového vizuálního programovacího jazyka Scratch byla vydána v lednu letošního roku. Offline Scratch Desktop byl ale dosud dostupný pouze pro Windows a macOS.

Ladislav Hagara | Komentářů: 0
15.8. 19:44 | Bezpečnostní upozornění

Byly zveřejněny informace o 8 bezpečnostních chybách v implementacích protokolu HTTP/2. Chyby CVE-2019-9511 až CVE-2019-9518 lze zneužít k odepření služeb (DoS). Přehled softwarových produktů a v nich obsažených chyb v tabulce na stránce CERT/CC.

Ladislav Hagara | Komentářů: 19
15.8. 17:55 | Nová verze

Byla vydána verze 1.37.0 programovacího jazyka Rust (Wikipedie). Podrobnosti v poznámkách k vydání. Vyzkoušet Rust lze například na stránce Rust by Example.

Ladislav Hagara | Komentářů: 106
15.8. 15:11 | Nová verze

Byla vydána nová verze 19.08.0 KDE Aplikací (KDE Applications). Přehled novinek v kompletním seznamu změn a na stránce s dalšími informacemi. Videoukázka nových vlastností na YouTube nebo na PeerTube.

Ladislav Hagara | Komentářů: 5
15.8. 14:44 | Zajímavý projekt

CutiePi je open source tablet postavený na Raspberry Pi, konkrétně na Compute Module. K dispozici by měl být koncem roku. Cena zatím nebyla stanovena. Vývojový tým zjišťuje zájem [Hacker News].

Ladislav Hagara | Komentářů: 8
14.8. 21:33 | Zajímavý článek

Greg Kroah-Hartman v příspěvku na svém blogu popisuje svou práci na linuxovém jádře. Popis prokládá videoukázkami ve formátu asciinema. Dnes používá především poštovního klienta Mutt. V plánu má přejít na poštovního klienta aerc, pokud do něj budou přidány v popisu zmíněné vlastnosti.

Ladislav Hagara | Komentářů: 0
Používáte ještě 32bitový software na PC?
 (20%)
 (15%)
 (17%)
 (43%)
 (6%)
 (29%)
Celkem 432 hlasů
 Komentářů: 36, poslední včera 21:46
Rozcestník

Dotaz: Základy sdílení souborů

6.1.2018 18:24 Milan
Základy sdílení souborů
Přečteno: 540×
Zdravím. Mám dotaz ohledně sdílení souborů mezi dvěma uživateli v systému Debian. V podstatě mi to sdílení funguje, ale když jeden uživatel ve sdílené složce založí nový soubor, tak mu musí ještě ručně nastavit přístupová práva a skupinu, jinak druhý uživatel ten soubor nemůže otevřít.

Chci se zeptat, jestli je možné, aby se při vytváření souborů ty práva a skupiny nastavovaly automaticky?

Tady je kompletní postup sdílení, jak jsem ho dal dohromady:

========================

Vytvořím 2 obyčejné uživatele "pepa" a "lojza":

adduser pepa

adduser lojza

Vytvořím skupinu "sdileni":

groupadd sdileni

a oba uživatele do té skupiny přiřadím:

usermod -G sdileni pepa

usermod -G sdileni lojza

Pro informaci si ověřím, že tu skupinu mají oba nastavenou:

id pepa

uid=1001(pepa) gid=1002(pepa) groups=1002(pepa),1004(sdileni)
id lojza

uid=1002(lojza) gid=1005(lojza) groups=1005(lojza),1004(sdileni)
V Pepově adresáři vytvořím složku a v ní první pokusný soubor:

mkdir /home/pepa/sdilenaslozka

nano /home/pepa/sdilenaslozka/soubor.txt

Protože všechno dělám jako root, nastavím téhle složce vlastnictví pro Pepu a skupinu na "sdileni"

chown -R pepa /home/pepa/sdilenaslozka/

chgrp -R sdileni /home/pepa/sdilenaslozka/

A ještě nastavím celé složce maximální přístupová práva pro skupinu a vlastníka (ostatní uživatelé jsou bez práva)

chmod -R 770 /home/pepa/sdilenaslozka

Pro informaci detailní výpis:

cd /home/pepa/

ls -hasl1
4.0K drwxrwx--- 2 pepa sdileni 4.0K Jan 6 16:29 sdilenaslozka
A teď chci, aby i Lojza měl přístup k té sdílené složce a všemu co se v ní nachází. Proto mu do jeho home adresáře tu sdílenou složku přilinkuji:

ln -s /home/pepa/sdilenaslozka/ /home/lojza/

Když se přihlásím jako "lojza", tak všechno funguje jak má, můžu ve sdílené složce provádět s existujícími soubory libovolnou činnost. Stejně tak, když se přihlásím jako "pepa", tak také mohu ve sdílené složce s existujícími soubory dělat co chci.

Problém je ale s novými soubory, které může upravovat a číst jen autor. To se dá ale vyřešit tím, že se po uložení souboru provede změna práv a změna skupiny toho vytvořeného souboru.

Například když Lojza vytvoří nový soubor:

nano /home/lojza/sdilenaslozka/prispevek_od_lojzy.txt

tak má soubor nastaveny tyto atributy:

4.0K -rw-r--r-- 1 lojza lojza 6 Jan 6 17:08 prispevek_od_lojzy.txt
Takže se musí ještě nastavit:

chmod 770 /home/lojza/sdilenaslozka/prispevek_od_lojzy.txt

chgrp sdileni /home/lojza/sdilenaslozka/prispevek_od_lojzy.txt

protože jinak by ten soubor Pepa neotevřel.


Řešení dotazu:


Odpovědi

Řešení 1× (Milan (tazatel))
6.1.2018 18:41 Filip Jirsák | skóre: 67 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: Základy sdílení souborů
Nastavte tomu sdílenému adresáři sgid bit a jako vlastníka tu sdílenou skupinu. Nově vytvářené soubory v tomto adresáři pak nebudou mít skupinu uživatele, který soubor vytvořil, ale převezmou ji z toho nadřazeného adresáře.
6.1.2018 19:03 Milan
Rozbalit Rozbalit vše Re: Základy sdílení souborů
Nevím, jestli jsem to našel správně.

Zkusil jsem příkaz:

chmod g+s /home/pepa/sdilenaslozka/

Složka "sdilenaslozka" má pak tyto atributy:
4.0K drwxrws--- 2 pepa sdileni 4.0K Jan 6 18:53 sdilenaslozka
U nově vytvořených souborů se nastaví automaticky skupina na "sdileni", ale práva souboru zůstávají pořád nedostatečná:
4.0K -rw-r--r-- 1 pepa sdileni 11 Jan 6 18:53 vytvoril_pepa.txt
6.1.2018 19:25 Filip Jirsák | skóre: 67 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: Základy sdílení souborů
Výchozí práva souborů nastavuje umask – nastavuje se tam, které bity se mají při vytváření souboru odebrat. V /etc/profile si to můžete přenastavit na hodnotu 002, která odebírá právo zápisu jen ostatním. Nyní zřejmě máte nastaveno 022, které odebírá práva zápisu ostatním i skupině.
6.1.2018 19:46 Milan
Rozbalit Rozbalit vše Re: Základy sdílení souborů
Díky za snahu, ale tohle už asi nedám. Obsah souboru /etc/profile:
# /etc/profile: system-wide .profile file for the Bourne shell (sh(1))
# and Bourne compatible shells (bash(1), ksh(1), ash(1), ...).

if [ "`id -u`" -eq 0 ]; then
  PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
else
  PATH="/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games"
fi
export PATH

if [ "$PS1" ]; then
  if [ "$BASH" ] && [ "$BASH" != "/bin/sh" ]; then
    # The file bash.bashrc already sets the default PS1.
    # PS1='\h:\w\$ '
    if [ -f /etc/bash.bashrc ]; then
      . /etc/bash.bashrc
    fi
  else
    if [ "`id -u`" -eq 0 ]; then
      PS1='# '
    else
      PS1='$ '
    fi
  fi
fi

if [ -d /etc/profile.d ]; then
  for i in /etc/profile.d/*.sh; do
    if [ -r $i ]; then
      . $i
    fi
  done
  unset i
fi



Řešení 1× (Milan (tazatel))
6.1.2018 20:02 Filip Jirsák | skóre: 67 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: Základy sdílení souborů
/etc/profile je normální shell skript, který se spouští každému uživateli po každé, když spustí shell. Můžete si do něj (např. na konec) přidat spuštění příkazu, v tomto případě umask 002. Případně ten skript spouští všechny soubory s příponou sh v adresáři /etc/profile.d/. Takže bych si vytvořil soubor /etc/profile.d/umask.ss a do něj zadal jen
umask 002
6.1.2018 20:02 Filip Jirsák | skóre: 67 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: Základy sdílení souborů
Pardon, překlep, ten soubor se má jmenovat /etc/profile.d/umask.sh.
6.1.2018 20:10 Milan
Rozbalit Rozbalit vše Re: Základy sdílení souborů
DÍKY MOC.

Už to běží.
7.1.2018 08:40 petr_p | skóre: 59 | blog: pb
Rozbalit Rozbalit vše Re: Základy sdílení souborů

Řešit sdílení přes skupiny má určitá úskalí.

Například umask, ke které jste se se dopracovali, se uplatní na všechny vytvářené soubory. Nejen na ty, které budou ve sdíleném adresáři. Je pravda, že současné distribuce právě z tohoto důvodu dávají uživatelům jedinečnou primární skupinu, ale i tak je dobré na to myslet.

Je-li uživatel jednou členem skupiny a není-li souborovým systémem zakázána interpretace SGID bitu, je nemožné uživatele ze skupiny vyloučit, protože uživatel si před odebráním členství může vytvořit SGID program a ten po odebrání členství použít k neoprávněnému získání členství.

Jako lepší řešení lze použít ACL. Namísto SGID bitu sdíleným adresářům se nastaví default ACL, které se pak používá na nově vytvářené soubory. Rovněž je možné přidat přístup konkrétním uživatelům namísto přidání skupiny a uživatelů do skupiny.

7.1.2018 18:30 jherne
Rozbalit Rozbalit vše Re: Základy sdílení souborů

"Rovněž je možné přidat přístup konkrétním uživatelům namísto přidání skupiny a uživatelů do skupiny"

Můžeš to rozvést? Zajímá mě to, díky.
7.1.2018 20:51 petr_p | skóre: 59 | blog: pb
Rozbalit Rozbalit vše Re: Základy sdílení souborů

Příklad:

petr@album:/tmp $ echo text >/tmp/soubor
petr@album:/tmp $ chmod 0400 /tmp/soubor
root@album:/usr/src/linux-4.14.12 # su -c 'cat /tmp/soubor' blb
cat: /tmp/soubor: Operace zamítnuta
petr@album:/tmp $ setfacl -m u:blb:r /tmp/soubor 
root@album:/usr/src/linux-4.14.12 # su -c 'cat /tmp/soubor' blb
text
petr@album:/tmp $ getfacl /tmp/soubor 
getfacl: Removing leading '/' from absolute path names
# file: tmp/soubor
# owner: petr
# group: users
user::r--
user:blb:r--
group::---
mask::r--
other::---

Přečti si acl(5), nástroje se jmenují setfacl(1) a getfacl(1). Případně si do vyhledávače zadej „POSIX Access Control List“.

7.1.2018 21:46 Filip Jirsák | skóre: 67 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: Základy sdílení souborů
Klasická unixová práva nastavujete vlastníkovi souboru, skupině a ostatním. ACL umožňují nastavit práva (opět rwx) i dalším uživatelům a skupinám, ne jenom vlastníkovi.

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267   www.czech-server.cz
© 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.