Zobrazit příspěvky

Tato sekce Vám umožňuje zobrazit všechny příspěvky tohoto uživatele. Prosím uvědomte si, že můžete vidět příspěvky pouze z oblastí Vám přístupných.


Příspěvky - Peter Fodrek

Stran: [1] 2 3 ... 13
1
No vidite, a ja dneska resil na celkem cerstve instalaci Bubuntu proc mi to sice napise core dumped ... ale core file jsem nikde neobjevil. Asi uz starnu, Linux je "nejaky jiny nez za mladych let".


v Ubuntu je  tvorba core zakázaná v defualt stave.  povoliť je to možné príkazom ulimit napr ulimit -c 10000000

2
Vývoj / Re:$1 z bash skriptu do sed
« kdy: 14. 09. 2021, 12:43:05 »
Koukam ze je toho vic co je treba nahradit v nahrade - https://stackoverflow.com/a/407649

Krome viditelnych oddelovacich znaku (bezne /, u me #), je to i \ a &


Nakoniec bola chyba v tom, že v $1 bola cesta ./ZH...........

tak som radšej pridal druhý parameter, ktorý je bez ./ a už to ide


3
Vývoj / Re:$1 z bash skriptu do sed
« kdy: 14. 09. 2021, 07:34:20 »
Ďakujem všetkým

4
Vývoj / Re:$1 z bash skriptu do sed
« kdy: 13. 09. 2021, 22:34:24 »
Jednoduche uvodzovky sposobuju, ze sa ich obsah neexpanduje.
Skusal si namiesto `sed -e` dat kvoli debugu `echo`?

Kazdopadne, druha moznost funguje ked $1 neobsahuje medzery. S medzerami je stale moznost ukoncit jednodnoduche uvodzovky a dat $1 do dvojitych. Teda napr:
Citace
sed -e 's/file.cvs/'"$1"'/g'
alebo pouzit komplet dvojite uvodzovky.

Pozor na to, ze $1 moze obsahovat aj ine kontrolne znaky; tu typicky lomitka alebo & (expanduje sa na vsetko).

veď práve sú tam zátvorky

5
Vývoj / $1 z bash skriptu do sed
« kdy: 13. 09. 2021, 21:39:10 »
Vážené kolegyne, vážení kolegovia!

V skripte potrebujem volať v bash scripte

sed -e 's/file.cvs/$1/g'

a nejako sa mi nedarí sa mi nastaviť to tak, aby ten prvý parameter bol prebraný zo skriptu

nevyzerá, že by fungovalo

sed -e 's/file.cvs/'$1'/g'

nevie mi niekto poradiť prečo?
Ďakujem

6
Vývoj / Re:localtime a (ne)tvorba nových dát v pamäti
« kdy: 27. 07. 2021, 12:26:50 »
https://linux.die.net/man/3/localtime
https://www.cplusplus.com/reference/ctime/localtime/

Protože standardní localtime/gmtime/... používají nějakou vnitřní sdílenou strukturu, tak to není zrovna bezpečné
Možná je lepší se rovnou pohlédnout po jiných funkcích např localtime_r (ale jukněte do dokumentace), obzvlášť pokud jedete s více vlákny.
A k malloc není důvod, stačí normálně zkopírovat přiřazením.
Kód: [Vybrat]
struct {
  struct tm time1; 
  struct tm time2;
} Item;
Item.time1=*localtime(&rawtime);
localtime_r(&rawtime,&Item.time2);


Vďaka.

7
Vývoj / Re:localtime a (ne)tvorba nových dát v pamäti
« kdy: 26. 07. 2021, 16:30:18 »
Ukaz kod..


Myslím, že netreba

nahradil som
vystup.odlievanieVymenik=localtime(cas);

dvoma riadkami

vystup.odlievanieVymenik=(struct tm *) malloc (sizeof (struct tm));
memcpy(vystup.odlievanieVymenik,lokalny, sizeof (struct tm));

a ide to tak, ako má


....

8
Vývoj / Re:localtime a (ne)tvorba nových dát v pamäti
« kdy: 26. 07. 2021, 16:25:35 »
Manuál?
https://linux.die.net/man/3/localtime

Citace
The return value points to a statically allocated struct which might be overwritten by subsequent calls to any of the date and time functions.


Tým pádom mi nestačia moje okuliare (brýle)  +2,0 dioptrire vodorovne a -3,5  dioptrie pod uhlom 5°

9
Vývoj / localtime a (ne)tvorba nových dát v pamäti
« kdy: 26. 07. 2021, 15:28:09 »
Milé kolegyne, vážení kolegovia!


Narazil som na neočakávané správanie sa funkcie localtime.

Doteraz som bol v tom, že localtime alokuje  miesto v pamäti  pre struct tm, naplní ho a vráti smerník na dáta.


Dnes sa správa tak, ako keby nealokoval nové miesto v pamäti. Vidím to, tak že mám viacero tm * a po localtime sa zmenia  dátumu všade, kde používam smerník pôvodne z iných localtime v kóde.


Nezdá sa mi to  ako  korektné správanie sa. Ak ale je správne, tak mám otázky

1. Je lepšie alokovať pre dáta v štruktúrach, kde je tm *, pomocou malloc a kopírovať  dátumové položky dátumu manuálne alebo dať do štruktúry priamo položku tm.

2. Ak je 1  závislé od použitia, tak by som rád vedel aspoň orientačne, ako je to  lepšie kde?


Nechce sa mi robiť refactoring z ->  na. , takže  asi skúsim malloc ako prvú možnosť.



10
Software / Co je možné smazat z /usr/lib/debug?
« kdy: 01. 06. 2021, 16:23:48 »
Vayene kolegyne, vazeni  kolegovia"
Prosim Vas o radu

Co mozno    zmazat  z /usr/lib/debug ? Prestali  fungovat cross partition  symlinks


Pri rieseni
EXT4: ls, file, ldd súbor pozná, ale "./a.out" vyhlási file not found
https://forum.root.cz/index.php?topic=24800.msg352258;topicseen#new


som narazil na jednu  potencialnu  chybu

system y  problemom mam  v /root/suse

Kód: [Vybrat]
df -h
Filesystem      Size  Used Avail Use% Mounted on

/dev/sdb3         /root/suse
/dev/sdb5        /root/suse/boot
/dev/sdb4        ,,,,,/root/suse/home
/dev/sdb8        49G   48G  780M  99% /root/suse/usr
/dev/sdb6      /root/suse/var/log
[root@sysrescue ~]# du -sh  suse/usr/ |egrep bin
[root@sysrescue ~]# ls -la  suse/usr/ |egrep bin
dr-xr-xr-x   2 root root 491520 May 26 13:15 bin
lrwxrwxrwx   1 root root     11 Jun  1 13:53 sbin -> /home/sbin/

[root@sysrescue ~]# du -sh suse/home/sbin
841M suse/home/sbin

Teda obsah  /home/sbin  resp.  symlink na neho  s menom /usr/sbin  zabera viac ako je volneho  na partici mountovanej   do /usr.

Programy su  spustia ak sa zada cesta /home/sbin/yast (vysteka ale pokusi sa spustit)  pricom ten isty program  pri spusteni  cez /usr/sbin/yast  da file not found.

nepomoze ani  nanovo  vtvoreny  symlink

napadlo ma vratit ten /usr/sbin spat

ale chyba miesto a

Kód: [Vybrat]
du -sh  suse/usr/*|egrep G
8.9G suse/usr/bin
15G suse/usr/lib
24G suse/usr/lib64

a

Kód: [Vybrat]
du -sh  suse/usr/lib/*|egrep G
4.2G suse/usr/lib/debug
...
4.4G suse/usr/lib/python3.8

resp.

Kód: [Vybrat]
1.7G suse/usr/lib64/jvm
...
1.1G suse/usr/lib64/mpi
...
2.1G suse/usr/lib64/piglit
1.9G suse/usr/lib64/python3.8

Chcem sa opytat, co  z toho  je nejmenej potrebne pri  boote, aby som to dal na inu  particiu a namiesto toho vratil  /usr/sbin , aby nebo cez  symlink?

Pripadne ako obnovit funkcnost  symlinku na adresar na inu  particiu..

Dakujem za kazdu radu

11
Tak to, ze nesel bin/sh ani /init, nesouvisi s tim, zda mas usr ci nikoliv. Jsem nedavno delal jedno harakiri (nfsboot a prenastaveni site za behu, ze ktereho to bezi) a stacilo zkopirovat   /bin /lib64 /sbin do tmpfs (ramdisku) a slo do toho udelat chroot.

Tvuj problem bych videl na to, ze nejde namountovat rootfs = nemas pak /bin/sh ani /sbin/init.

initrd zbehne OK. problem nastane pri  prepnuti  na "real root" a hned po nom,

Ono to vyzera  "len na" padnuty ld.so.cache. Lenze  bez  chrootu  som ho neobnoval (volanim  ldconfig).  este skusim niekde  splasit staticky linkovany bash alebo  busybox sh


[root@sysrescue ~]# ls -la suse/bin/sh
-rwxr-xr-x 1 root root 1152112 May 27 10:00 suse/bin/sh
[root@sysrescue ~]# chroot suse /bin/sh
chroot: failed to run command ‘/bin/sh’: No such file or directory
[root@sysrescue ~]# suse/bin/sh
suse/bin/sh: /usr/lib/libreadline.so.8: no version information available (required by suse/bin/sh)
sh-5.1#
exit
[root@sysrescue ~]# find suse -iname libreadline.so*
suse/usr/lib/libreadline.so.8.1
suse/usr/lib/debug/usr/lib/libreadline.so.8.1-8.1-2.1.i386.debug
suse/usr/lib/debug/usr/lib64/libreadline.so.8.1-8.1-2.1.x86_64.debug
suse/usr/lib/libreadline.so.8
suse/usr/lib64/libreadline.so
suse/usr/lib64/libreadline.so.8
suse/usr/lib64/libreadline.so.8.1
suse/lib64/libreadline.so.5
suse/lib64/libreadline.so.6.3
suse/lib64/libreadline.so.6
suse/lib64/libreadline.so.5.2
suse/lib/libreadline.so.5
suse/lib/libreadline.so.6.3
suse/lib/libreadline.so.6
suse/lib/libreadline.so.5.2



12
Ale oni tam tie súbory sú
...
pre /usr/bin/bash mám overené, že na blok sedí veľkosť, podľa screenshotu z času, keď to fungovalo..
Má suse něco jako debsums, že to zkontroluje checksumy nainstalovaných souborů? Velikost nic neznamená, jenom že to správně obnovilo metadata - ale v těch blocích můžou být libovolné nesmysly.


jasne, file a ldd overí len magic bytes/magic block. readelf mi  možno dá niečo podrobnejšie a ani to nemusí bzť dostatočné.

13

Dále chroot do kompletně rozbitého systému provedeš tak, že tam hodíš staticky linkovaný busybox a uděláš "chroot ./suse /bin/busybox sh". Staticky linkovaný busybox pro všechny možné architektury stáhneš tady: https://packages.debian.org/buster/busybox-static


Vďaka uvažoval som nad staticky linknutým  bash-om, ale bussybox je lepší..

14
A proc se vlastne snazis neco poustet ze sveho disku nebo tam delat chroot, kdyz vis ze tam neni /usr ?
Prvni pravidlo zachrany je - nesahat do poskozeneho. A druhy je zalohovat.. nejspis to mas hodne roz*****e takze bootni live distro / live cd (gentoo admincd ?), a odzalohuj si /etc, /root a /home, pripadne /opt a jine.. a udelej reinstall.

Protoze i kdyby jsi s e2fsck /dev/susedisk pochodil, to neni nastroj ktery by ti navratil /usr, ale vytvori zmet anonymnich souboru v lost+found.


Ale oni tam tie súbory sú

ja mám zvlášť partície pre

2x swap
/
/home
/usr
/var/log
/boot
/boot/efi


na /home a /boot nikdy nebol problém.

/boot/efi bol 1x plný
/var/log bol pomerne často plný

pre /usr/bin/bash mám overené, že na blok sedí veľkosť, podľa screenshotu z času, keď to fungovalo..

Reinštalácia je prejavom  rezignácie alebo osobnej neschopnosti. Prosba o radu na  odstránia osobného zacyklenia je prostriedok osobného odborného rastu(učiť sa môžete len od lepších od Vás) lebo sa človek dozvie, čo sa oplatí zvažovať.

15
pri  dumpe2fs ma zarazili 7 vecí:
A 399 groups
B. mount count: 1 (pri  nepripojenom fs)
C. filesytem  revision 1(dynamic)
D filesystem state: clean
E. filesytem flag:  signed_directory_hash
F. filesystem featues: ........extra_isize
G. First inode: 11

nevidí tam niekto, čo mňa len mätie?

Ten Nonzero mount count  pre mountom partície ma desí a netuším ako sa ho zbaviť= google zatiaľ nepomáha

Ešte raz  vďaka


Stran: [1] 2 3 ... 13