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 - scientific

Stran: 1 ... 13 14 [15] 16 17
211
Server / Jak spustit příkaz jako jiný uživate sudo/su něco
« kdy: 28. 02. 2019, 18:00:16 »
Ahoj všem, prosím Vás o radu při nejspíš pro Vás banálním problému, který mě jako amatérovi dává zabrat. Prosím Vás o radu.

Máte prosím nějaký typ, jak skript spustit rootem, ale tělo skriptu se spustilo jako jiný uživatel? Myslím alternativu funkčního spouštění celého skriptu následovně: "su - postgres -c /path/to/pgbackup.sh"

Mám na CentOS skript, který potřebuji spouštět rootem, ale zároveň tam jsou části skriptu, které potřebuji spouštět jiným uživatelem, ale navzájem ty části kódu na sebe musí vidět a umět spolu spolupracovat. Jedná se například o příkazy psql a pg_dump, se kterými root neumí pracovat a zároveň ho nechci vytvářet jako roli v postgresql databázi. příkazy bych raději spouštěl uživatelem, který je pro tento účel vytvořen.

Zkoušel jsem celý obsah skriptu obalit funkcí následovně:
Kód: [Vybrat]
#!/bin/bash
function1(){
   echo `whoami`
<můj skript>
}
export -f function1
su username -c "bash -c function1"
exit 0

Také jsem zkoušel:
Kód: [Vybrat]
#!/usr/bin/env bash
whoami
sudo -i -u someuser bash << EOF
echo "In"
<můj skript>
whoami
EOF
echo "Out"
whoami

V ani z jednom příkladů skript nefungoval. Děkuji Vám všem za tipy.

212
Šifrování záloh v momentu, kdy je vytvářím není potřeba, na tom mám zakoupenou službu enterprise zálohovací řešení, které to zálohuje (tedy nejspíš i šifruje). Já dělám jen to, že uživatelem postgres dělám dump všech databází do /srv/bla/bla/zalohy/ odkud si to ten zálohovací systém už zálohuje do nějaké storage nebo tak něco. Funguje mi to zatím dobře, s tím, že používám něco jako: su - postgres -c /path/to/pgbackup.sh, který udělá dumpy do /srv/bla/bla/zalohy/ kde vlastník je uživatel postgres a skupina root.

Každopádně Vám oběma děkuji. Zvažujete různé možnosti. Ale já z toho o čem se bavíte furt nechápu jestli se mám tedy pokoušet vytvářet pgmaint odděleného uživatele pro tvoření pgdumpů, či to stačí tak jednoduše, jak jsem udělal. Nemyslím si, že by se tím mohla databáze nějak "odstřelit", používám vzhledem k databázi jen dvě věci:
  • Vypsání si pomocí uživatele postgres jaké databáze existují.
  • Na základě toho výpisu z jednotlivých databází udělat dumpy a uložit je do /srv/bla/bla/zalohovani/.

213
Fíha, vy jste se ale rozdebatovali. nečekal sem, že se tu strhne taková debata, děkuji Vám z  toho jak mezi sebou debatujete, trochu začínám chápat další souvislosti.


Automatické zálohování mám již hotové, funguje tak, že adresář s cílem záloh je vlastníka postgres, který spouští skript pro vytváření záloh. Ten automatický skript jsem viděl, ale přijde mi moc složitý a namísto toho, abych se snažil takový skript pochopit, sem si napsal svůj.


Když bych vytvořil pgmaint, mohl bych zálohovat jen ty databáze, kterých je owner pgmaint ne? Tím pádem přístup k databázím vytvořeným jiným uživatelem by neměl přístup ne? Nebo by pgmaint převzal všechno co umí i postgres výjimkou samotného běhu postgresql procesu?

214
Ano, chci vytvářet dumpy. /srv/path/to/zalohovani/ je nezbytné.
Chápu správně, že tedy nejlepší až moc přehnaně dokonalé řešení navrhuje @Miroslav Šilhavý , zatímco uživatel @Filip Jirsák doporučuje standardní řešení, které je z hlediska bezpečnosti v pořádku a zcela běžné. A klidně můžu zálohovací skript spouštět uživatelem postgres a mohu ho nastavit vlastníkem /srv/path/to/zalohovani/ .

Chápu vás správně?

215
Server / Nelze vytvořit adresář v /srv běžným uživatelem
« kdy: 18. 02. 2019, 20:22:13 »
Ahoj, mám rychlý velmi základní amatérský dotaz a prosím si o radu.

Jaký prosím navrhujete postup, abych mohl defaultním uživatelem postgresql "postgres" vrtat v adresáři /srv? Myšleno např. vytvářet tam adresáře a nahrávat tam dumpy PostgreSQL databází?

Napadají mě samé nesmysly, jak bych to jakožto amatér řešil:
  • Nastavil CHMOD na 777
  • Nastavil chown na něco jako postgres:root a změnil vlastníka z roota na postgres, což by možná systém ani nepřekousnul
  • Nějakým způsobem přidal uživatele postgres do sudoers file, což se asi dělá nějak pomocí příkazu "usermod -a sudo", jen hádám.
  • Přidal uživatele postgres do skupiny "root"
  • Možná do scriptu na začátek přidat něco jako export $PATH=$PATH:/srv/

Nejsem si jist, zda se hodí uživatele PostgreSQL databáze "postgres" (jestli to náhodou není potenciálně nebezpečné) přidávat do sudoers, ale vím, že u běžných uživatelů se to řeší nějak takhle sudo mkdir /srv/bla/bla/bla/.
Co mi prosím doporučíte? Děkuji moc za radu, jak se to správně řeší.

Jsem si vědom, že můj dotaz patří do naprostých základů jakýchkoliv systémů. Nicméně u sebe ve Windows jsem nikdy neměl potřebu se v oprávněních vrtat a na serveru jsem vždy používal roota. Momentálně ale roota vyloženě používat nechci (údajně to může vést k narušení bezpečnosti systému, pokud budu aplikace spouštět uživatelem s právy posvátné krávy).

216
Distribuce / Re:Instalace nejnovější PostgreSQL do CentOS 7
« kdy: 12. 02. 2019, 17:01:06 »
Mastím sem na forum napsat, že už sem přišel na to v čem je problém, že ten scl enable rh-postgresql95 bash nestačí zapnout globálně, ale je nutné ho zapínat po každém přihlášení, aby se to přepnulo na správné prostředí a server tak věděl k jaké verzi postgre chci posílat další příkazy. :-)

Každopádně ti moc děkuji za rady a hlavně za tvůj čas. Jistě to bylo náročné, bývám dost natvrdlý. Měj se hezky.

217
Distribuce / Re:Instalace nejnovější PostgreSQL do CentOS 7
« kdy: 09. 02. 2019, 22:56:15 »
Cesty jsem přidal, ale stejně to nefunguje. Nicméně, mám pocit, že problém je stejně někde jinde.

Chápu ho tak, že se při instalaci vytvoří defaultní postgresql uživatel pomocí kterého lze databázi ovládat, jelikož se mu v rámci instalace přiřadí nějaká "role" a můj problém celou dobu spočívá spíše v tom, že potřebuji toho uživatele co má tu roli:

Správná situace:
Kód: [Vybrat]
[root@postgre ~]# sudo -i -u postgres
-bash-4.2$ psql
psql (9.2.24, server 9.5.14)
WARNING: psql version 9.2, server version 9.5.
         Some psql features might not work.
Type "help" for help.

postgres=#
postgres=# \conninfo
You are connected to database "postgres" as user "postgres" via socket in "/var/run/postgresql" at port "5432".
postgres=# \q
-bash-4.2$ env | grep PATH
PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin
-bash-4.2$

Moje špatná situace:
Kód: [Vybrat]
[root@postgresc2 ~]# sudo -i -u postgres
-bash-4.2$ psql
-bash: psql: command not found
-bash-4.2$ env | grep PATH
PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin
-bash-4.2$



Návod při běžné instalaci bez použití SC:
Kód: [Vybrat]
Using PostgreSQL Roles and Databases

By default, Postgres uses a concept called "roles" to aid in authentication and authorization. These are, in some ways, similar to regular Unix-style accounts, but Postgres does not distinguish between users and groups and instead prefers the more flexible term "role".

Upon installation Postgres is set up to use "ident" authentication, meaning that it associates Postgres roles with a matching Unix/Linux system account. If a Postgres role exists, it can be signed in by logging into the associated Linux system account.

The installation procedure created a user account called postgres that is associated with the default Postgres role. In order to use Postgres, we'll need to log into that account. You can do that by typing:

    sudo -i -u postgres

You will be asked for your normal user password and then will be given a shell prompt for the postgres user.

You can get a Postgres prompt immediately by typing:

    psql

You will be auto-logged in and will be able to interact with the database management system right away.

However, we're going to explain a little bit about how to use other roles and databases so that you have some flexibility as to which user and database you wish to work with.

Exit out of the PostgreSQL prompt by typing:

    \q

You should now be back in the postgres user command prompt.

moje nastavení, které se vždy po odpojení od uživatele resetuje na defaultní(PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin
):
Kód: [Vybrat]
[root@postgresc2 ~]# env | grep PATH
MANPATH=/opt/rh/rh-postgresql95/root/usr/share/man:
LIBRARY_PATH=/opt/rh/rh-postgresql95/root/usr/lib64
LD_LIBRARY_PATH=/opt/rh/rh-postgresql95/root/usr/lib64
CPATH=/opt/rh/rh-postgresql95/root/usr/include
PATH=/opt/rh/rh-postgresql95/root/usr/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
PKG_CONFIG_PATH=/opt/rh/rh-postgresql95/root/usr/lib64/pkgconfig
[root@postgresc2 ~]# sudo -i -u postgres
-bash-4.2$ export PATH=/opt/rh/postgresql95/root/usr/bin${PATH:+:${PATH}}
-bash-4.2$ export LIBRARY_PATH=/opt/rh/postgresql95/root/usr/lib64${LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
-bash-4.2$ export LD_LIBRARY_PATH=/opt/rh/postgresql95/root/usr/lib64${LD_LIBRARY-PATH:+:${LD_LIBRARY_PATH}}
-bash-4.2$ export MANPATH=/opt/rh/postgresql95/root/usr/share/man:${MANPATH}
-bash-4.2$ env | grep PATH
MANPATH=/opt/rh/postgresql95/root/usr/share/man:
LIBRARY_PATH=/opt/rh/postgresql95/root/usr/lib64
LD_LIBRARY_PATH=/opt/rh/postgresql95/root/usr/lib64PATH:+:
PATH=/opt/rh/postgresql95/root/usr/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin
-bash-4.2$ export LD_LIBRARY_PATH=/opt/rh/postgresql95/root/usr/lib64
-bash-4.2$ env | grep PATH
MANPATH=/opt/rh/postgresql95/root/usr/share/man:
LIBRARY_PATH=/opt/rh/postgresql95/root/usr/lib64
LD_LIBRARY_PATH=/opt/rh/postgresql95/root/usr/lib64
PATH=/opt/rh/postgresql95/root/usr/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin
-bash-4.2$ psql
-bash: psql: command not found
-bash-4.2$

218
Distribuce / Re:Instalace nejnovější PostgreSQL do CentOS 7
« kdy: 09. 02. 2019, 14:50:20 »
Ahá, já odesílal jen scl enable rh-postgresql95 bash, ale on je to zároveň i prostředek pro práci s databází např: scl enable rh-postgresql95 "pg_dumpall > db.out", kdy se pomocí toho dá s databází kompletně pracovat, vytvářet tabulky, správa uživatelů a dat, a všechno.

Takže ten uživatel postgres není až tak potřeba, ale kdybych chtěl zálohovací skript volat např uživatelem postgre, musel by odeslat následující (myšleno příkazy z fotografie v příloze) příkazy jako root nebo by je možná stačilo v tom volaném zálohovacím skriptu přidat do záhlaví sh/bash scriptu.

Moc si mi pomohl děkuji ti, snažil jsem se několik hodin přijít na to proč mi to nejde a tys mi to dokázal v pár zprávách skvěle vysvětlit. Děkuji ti dobrý muži.

219
Distribuce / Re:Instalace nejnovější PostgreSQL do CentOS 7
« kdy: 09. 02. 2019, 10:35:54 »
Ano, všiml jsem, si že jsou všechny adresáře jinde, když jsem hledal pg_hba.conf a našel ho v /var/opt/rh/rh-postgresql95/lib/pgsql/data/pg_hba.conf , nespíš pro možnost více verzí, které běží na serveru společně.

Důvod mám takový, že na jiném serveru mi to takhle funguje v pořádku a chci udělat skript, který bude zálohovat tu databázi pravidelně na obou serverech a potřebuji aby to probíhalo na obou serverech stejně univerzálně.

Nejsem si moc jistý, jestli je vhodné, aby se ten zálohovací script spouště pod rootem? Pokud by to ničemu nevadilo, tak bych asi toho "postgres" uživatele ani nepotřeboval.

Zde je NEpožadovaný výpis:
-bash-4.2$ echo $PATH
/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin
-bash-4.2$ printenv
XDG_SESSION_ID=50
HOSTNAME=postgresc2.test
SHELL=/bin/bash
TERM=xterm
HISTSIZE=1000
USER=postgres
LS_COLORS=blabla
SUDO_USER=root
SUDO_UID=0
USERNAME=postgres
PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin
MAIL=/var/spool/mail/postgres
PWD=/var/lib/pgsql
LANG=en_US.UTF-8
HISTCONTROL=ignoredups
SHLVL=1
SUDO_COMMAND=/bin/bash
HOME=/var/lib/pgsql
LOGNAME=postgres
LESSOPEN=||/usr/bin/lesspipe.sh %s
SUDO_GID=0
_=/bin/printenv




220
Distribuce / Re:Instalace nejnovější PostgreSQL do CentOS 7
« kdy: 08. 02. 2019, 20:19:11 »
@Jose D: Výborně, děkuji, nečekal jsem až takovou trivialitu, zkoušel jsem předtím i systemctl, ale zřejmě špatně.

Kdyby se ti ještě chtělo dát mi radu, proč od standardní práce s postresql nefunguje uživatel postgres pro práci s databází? Při SC se s databází asi pracuje nějak jinak?

Problém je zase na obrázku, ale popíši ho i textově:

[root@postgresc2 ~]# sudo -i -u postgres
-bash-4.2$ psql
-bash: psql: command not found
-bash-4.2$

Zatímco u klasické instalace není problém:
[root@postgre ~]# sudo -i -u postgres
-bash-4.2$ psql -V
psql (PostgreSQL) 9.2.24
-bash-4.2$


Děkuji za nápad, jak zprovoznit funkčnost uživatele prostřednictvím kterého se ovládá databáze.

221
Distribuce / Instalace nejnovější PostgreSQL do CentOS 7
« kdy: 08. 02. 2019, 17:35:40 »
Hezký večer všem, prosím si o radu, snažím se nainstalovat nejnovější dostupnou postgresql databázi na Centos 7 a bohužel se mi do nedaří ani při postupování přesně podle Red Hat návodů.

Je tu někdo zkušený, který by mi moc prosím poradil co dělám špatně?
Veškeré informace jsou zobrazeny na fotce, ale pro jistotu ještě v textové formě:

Můj postup:
•   yum install centos-release-scl yum-utils
•   yum-config-manager --enable rhel-server-rhscl-7-rpms
•   yum install rh-postgresql95
•   psql –V
o   psql (PostgreSQL) 9.5.14
•   nano /var/opt/rh/rh-postgresql95/lib/pgsql/data/pg_hba.conf
o   indent -> md5
•   service postgresql95-postgresql start
o   Redirecting to /bin/systemctl start postgresql95-postgresql.service
o   Failed to start postgresql95-postgresql.service: Unit not found.

•   ls /etc/rc.d/init.d/ | grep postgresql
o   "Not found"

Moc Vám děkuji za případné rady. Mějte se.

222
Server / Re:Firefox využití CPU na 100% a moc procesů
« kdy: 16. 03. 2018, 19:23:01 »
No addony nepoužívám žádné, kromě javascript blokátoru, páč addony jsou jen žrouti paměti, už takhle 8GB je jen tak tak. :-D

Možná jim tam zkusím nějak přiložit celý config pro jistotu, ať se můžou mrknout na nějaké parametry co by je zajímali.

Moc ti děkuji za celý náročný proces pomoci mě.

To abych těď taky pomáhal lidem a vylepšil si karmu. :-D

223
Server / Re:Firefox využití CPU na 100% a moc procesů
« kdy: 16. 03. 2018, 14:12:15 »
Ok, zkusím se ještě poradit přímo s mozzilou. To asi tedy nemám psát na komunitní forum, ale přímo na bugzillu, chápu tě dobře?

224
Server / Re:Firefox využití CPU na 100% a moc procesů
« kdy: 16. 03. 2018, 12:57:32 »
Jak myslíš to "Kdyz tohle vsechno vyfiltruju"?  Javascript sem odfiltroval už já tím doplnkem ne? Nebo si myslel tím odfiltrováním, že si odfiltroval jen ty dva collectory?

Chápu to tak, že jsme využití CPU stáhly na minimum zablokováním téměř veškerého javascriptu a v tuto chvíli by javascript měl využívat CPU opravdu nulově, páč je povoleno jen google analitics a pár zdrojů, které ještě dodatečně zablokuji, ale i tak jsou na mílokterých webech, takže opravdu nulově.

A jediné co výrazněji žere CPU čas, jsou collectory a tím nic nezmůžeme. Takže úkol je splněn.

Moc děkuji, zkusím ještě více omezit javascript plus přidat další instance firefoxu.

225
Server / Re:Firefox využití CPU na 100% a moc procesů
« kdy: 16. 03. 2018, 01:44:35 »
No tak sem zase povolil ten plugin "nosricpt" a v podstate sem mu povolil pár zdrojů, už ho mám nastavený, zkoušel sem ho a rozdílu sem si moc nevšiml, ale teď když na to koukám, je možné, že je to o trochu lepší, přestože občas skočí CPU usage až na 150%, ale to je asi normální, když se trefí okamžik, kdy se na ráz načítá více stránek.

Zde je nový výstup z Gecko: https://perfht.ml/2FM2Xho

Vidíš tam nějaké zlepšení?

Stran: 1 ... 13 14 [15] 16 17