Prosíme přihlašte se nebo zaregistrujte.

Přihlašte se svým uživatelským jménem a heslem.
Vaše pomoc je stále potřeba!

Autor Téma: RamDisk  (Přečteno 2487 krát)

Le_Ze

  • Návštěvník
  • Příspěvků: 93
RamDisk
« kdy: 06 Prosince 2015, 09:01:32 »
Zdar
Poradí někdo, kde dělam chybu.
Vytvořil jsem si ramdisk
Kód: [Vybrat]
tmpfs       /home/pi/ramdisk    tmpfs    defaults,mode=0755,size=40m    0    0
Mužů v něm vytvářet podadresáře i soubory.
Mohu do něj cokoliv nakopírovat.
Nedá se však zapisovat do souboru.
Proč

Soubor file1 normálně vytvořím  sudo touch /home/pi/ramdisk/file1
Už ale do něj níc nezapíšu.

Takto take ne.
Kód: [Vybrat]
pi@raspberrypi ~ $ sudo echo "zkouska" > /home/pi/ramdisk/test
-bash: /home/pi/ramdisk/test: Operace zamítnuta
« Poslední změna: 06 Prosince 2015, 09:26:20 od Le_Ze »

Savalas

  • Aktivní člen
  • *
  • Příspěvků: 409
Re:RamDisk
« Odpověď #1 kdy: 06 Prosince 2015, 10:00:11 »
Ja pouzivam mode 1777.
Kubuntu 18.04/AMD RYZEN 5 3600, Asus PRIME X370-PRO, ASUS DUAL GeForce RTX2060S O8G EVO, RAM Kingston 2x16GB DDR4 2666MHz CL16, 2xWD Caviar Blue 1TB+Seagate BarraCuda 2TB/LVM mirror, Samsung 970 EVO PLUS 250GB, Seasonic M12II-620 Evo, Evolveo Sigma T2, DVD-R/+R Asus DRW-24D5MT, APC Back-UPS ES 700, Eizo EV2450

GdH

  • Moderátor
  • Závislák
  • ***
  • Příspěvků: 3176
    • GdH-Notes
Re:RamDisk
« Odpověď #2 kdy: 06 Prosince 2015, 10:07:21 »
Pokud použiješ sudo, spustí se pod rootem jen první příkaz za ním, ale přesměrování je již další operace bashe, která proběhne pod uživatelem. Buď se přihlaš jako root do konzole a pak spouštěj příkazy, nebo musíš použít konstrukci, která pod ním spustí celý příkaz, pokud tedy je použití roota nutností.

Le_Ze

  • Návštěvník
  • Příspěvků: 93
Re:RamDisk
« Odpověď #3 kdy: 06 Prosince 2015, 10:49:50 »
Děkují moc, mode 1777 pomohlo, všude na netu pišou těch 0755
Kód: [Vybrat]
echo "zkouska" > /home/pi/ramdisk/testFunguje to i bez sudo

Ale stejnák to můj problém nevyřešilo.

Je adresář /home/pi/teplota
V adresáři 2 soubory - spust.sh a teplomer_1.rrd
Soubor spust.sh se spouští co 5 minut a zapisuje data do souboru teplomer_1.rrd
rrdtool update /home/pi/teplota/teplomer_1.rrd N:${teplota:-NaN}:NaN
Funguje to.
Vytvořil jsem ramdisk  /home/pi/ramdisk
A v tom souboru spust.sh přidal.
rrdtool update /home/pi/ramdisk/teplomer_1.rrd N:${teplota:-NaN}:NaN

Skript však zapisuje data jen do toho souboru v adresáři teplota.
Pokud zruším ramdisk, a systém bere adresář ramdisk jako složku, normálně to fungje.

Zkoušel jsem i sudo chmod 1777 /home/pi/ramdisk/teplomer_1.rrd  :-\



« Poslední změna: 06 Prosince 2015, 10:56:26 od Le_Ze »

TIBOR

  • Závislák
  • ***
  • Příspěvků: 6529
  • Som uzivatel linuxovej distribucie, som linuxak?
Re:RamDisk
« Odpověď #4 kdy: 06 Prosince 2015, 11:49:54 »
Ako dlho trva nez to zapises a kym to kontrolujes? Nemoze sa stat ze data su este v cash? Ja som mal podobny problem ked som zapisoval data do ramdisku a hned som sa ich pokusil citat.
Skus za riadok rrdtool update /home/pi/ramdisk/teplomer_1.rrd N:${teplota:-NaN}:NaN dat prikaz
Kód: [Vybrat]
sync
HP Laptop 17-ca1xxx Ubuntu Mate 22.04 FF 64bit.
Asus X751LB-TY014H Ubuntu Mate 20.04.1 FF 64bit.
Linus, Lajnas, Línus, Luínus, Lajnus a je mi naozaj jedno, ako ľudia vyslovujú moje meno. Ale "Linux" je vždy "Linux". LINUS TORVALDS, tvorca Linuxového jadra.(V dokumente Revolution OS)

Jakub Vaněk

  • Stálý člen
  • **
  • Příspěvků: 752
    • Web programátora a studenta Jakuba Vaňka
Re:RamDisk
« Odpověď #5 kdy: 06 Prosince 2015, 15:32:13 »
Na ten zápis do souboru se občas dá použít tee:
Kód: [Vybrat]
echo "string" | sudo tee <soubor>Ale nemělo by to být ve skriptu, protože sudo se může zeptat na heslo a ten program tak zablokovat.
Notebook: Lenovo Thinkpad X200, Xubuntu 16.04

Le_Ze

  • Návštěvník
  • Příspěvků: 93
Re:RamDisk
« Odpověď #6 kdy: 06 Prosince 2015, 15:35:40 »
Tu jde o to že to do toho souboru vůbec nezapisuje.
Jde to vidět podle času za souborem.
V adresaří teplota se co 5 minut mění.





A nejde to aní takto.

cp /home/pi/teplota/spust.sh /home/pi/ramdisk
sudo chmod 755 /home/pi/ramdisk/spust.sh
/home/pi/ramdisk/spust.sh
« Poslední změna: 06 Prosince 2015, 15:47:00 od Le_Ze »

Martin Šácha

  • Člen občanského sdružení Ubuntu ČR a placené komunitní podpory
  • Administrátor fóra
  • ******
  • Příspěvků: 5153
Re:RamDisk
« Odpověď #7 kdy: 07 Prosince 2015, 07:11:55 »
V Ubuntu je jeden predpripraveny tmpfs v /dev/shm, muzes ho klidne pouzit.
Mint MATE 64bit / DuckDuckGo.com
Programátoři považují WYSIWYG za špatné u kódu i u žen. Programátor chce "dostat to, co žádá“ – kód tajemný, neodpouštějící, nebezpečný.

Savalas

  • Aktivní člen
  • *
  • Příspěvků: 409
Re:RamDisk
« Odpověď #8 kdy: 07 Prosince 2015, 08:43:08 »
 /dev/shm taky pouzivam, ale muzou a bejvaj tam soubory od jinych programu, takze si tam clovek nemuze delat uplne cochce.
Kubuntu 18.04/AMD RYZEN 5 3600, Asus PRIME X370-PRO, ASUS DUAL GeForce RTX2060S O8G EVO, RAM Kingston 2x16GB DDR4 2666MHz CL16, 2xWD Caviar Blue 1TB+Seagate BarraCuda 2TB/LVM mirror, Samsung 970 EVO PLUS 250GB, Seasonic M12II-620 Evo, Evolveo Sigma T2, DVD-R/+R Asus DRW-24D5MT, APC Back-UPS ES 700, Eizo EV2450

Le_Ze

  • Návštěvník
  • Příspěvků: 93
Re:RamDisk
« Odpověď #9 kdy: 07 Prosince 2015, 12:21:30 »
/dev/shm  mam také a prazdné.
Když tam něco nakopíruji a dam reboot tak to zmizne.
Takže by to mohlo fungovat.
Zkusím.

Le_Ze

  • Návštěvník
  • Příspěvků: 93
Re:RamDisk
« Odpověď #10 kdy: 07 Prosince 2015, 15:48:10 »
Dotaz.
Když zapisujete něco do souboru v ramdisku, mění se Vám čas?

Počet jsem se na netu, že čas zůstava furt stejný a důvod je mount ramdisku s relatime volbou

jmp

  • Host
Re:RamDisk
« Odpověď #11 kdy: 07 Prosince 2015, 16:11:45 »
to by muselo být mountnuté s volbou noatime

Le_Ze

  • Návštěvník
  • Příspěvků: 93
Re:RamDisk
« Odpověď #12 kdy: 07 Prosince 2015, 16:28:05 »
čudne to je.
Takto to mam ja.
Kód: [Vybrat]
tmpfs       /home/pi/ramdisk    tmpfs    defaults,mode=1777,size=40m    0    0
Zkoušim i ten /dev/shm

Všude se čas nemění.

md5sum /dev/shm/teplomer_1.rrd
md5sum /home/pi/ramdisk/teplomer_1.rrd

Vidím že se co 5 minut hash mění
Tak co je potom špatně?

 

Provoz zaštiťuje spolek OpenAlt.