[MEGOLDVA] HP-UX külön history usereknek

Fórumok

Hogyan tudom megcsinálni, ha többen pb-znek az admin userID-ra, hogy minden login usernek külön history fájlja legyen?

szerk.: logname azt mondja root.
szerk2: már nem mondja, valószínű powerbráner félrekonfig áll a háttérben
MEGOLDVA: who -m (who am i, logname is jó //igaz riscen hibádzik)

Hozzászólások

ingyenlinux bash-éhez hasonlítom, ahol mindent készen a kezem alá tolnak

Windows alatt meg méginkább. Hogy is mondja a költő?

Mi a magyar most? - Rút sybarita váz.

Ne kényelmesedjünk már el ennyire, ha valamit nem tolnak készen a seggünk alá, már megy a sírás. Amúgyis, a HP-UX felhasználóbarát, csak megválogatja a barátait. :-D

Ave, Saabi.

Nem tudom a "pb-znek" részt értelmezni.

Ave, Saabi.

Shell függő.

sh-posix(1):

If the shell is invoked by an exec*() system call and the first character of argument zero (shell parameter 0) is dash (-), the shell is assumed to be a login shell and commands are read first from /etc/profile, then from either .profile in the current directory or $HOME/.profile if either file exists, and finally from the file named by performing parameter substitution on the value of the environment parameter ENV, if the file exists.

ksh(1):

If the shell is invoked by exec (see exec(2)), and the first character of argument zero ($0) is -, the shell is assumed to be a login shell and commands are read first from /etc/profile. The expression ${HOME:-.}/.profile is then evaluated and an attempt to open the resulting filename is made. If the file is opened successfully, the file is read.

csh(1)

/etc/csh.login A csh script sourced (executed) before
~/.cshrc and ~/.login when starting a csh
login (analogous to /etc/profile in the POSIX
shell).

Viszont ez a PowerBroker egy third-party termék, nem tudom megmondani miként paraméterezi meg a login shellt indításkor. Sajnos a dokumentációjához csak megfelelő jogosultsággal lehet hozzáférni. Nekem ilyen nincsen.

Mire jó ez egyébként?

Visszatérve a historyhoz, sh-posix(1):

HISTFILE If this parameter is set when the shell is invoked, its
value is the path name of the file that is used to
store the command history. The default value is
$HOME/.sh_history. If the user is a superuser and no
HISTFILE is given, then no history file is used. See
the Command Reentry subsection and the WARNINGS
section.

Ezt a változót kell személyenként külön értékre beállítani és máris szeparáltad a historykat.

Ave, Saabi.

én whitepaper-eket néztem meg, van "pb vs. sudo.pdf". mailcímet kellett megadni hozzá. aztán már írt is az emea account manager, hogy van eval és meetinget szervezne nekem egy powerbroker engineerrel :)

> Mire jó ez egyébként?

cég ezt használja. ugyanazt valósítja meg mint a su (vagy sudo), csak (talán jobban) auditálható. e.g. logol minden parancsot, de azt hiszem a vi-n belül meg pl. már nem.

> Ezt a változót kell személyenként külön értékre beállítani és máris szeparáltad a historykat.

hát igen, csak nem tudom kik a személyek, mit ad vissza a pb.

tehát nem az a bajom, hogy a .profile-ban nem tudom megadni, hogy mi legyen a histfile, hanem azt nem tudom, hogy rendeljem usernévhez. pl. most .history.privuser a neve, de én azt szeretném, ha sima user 'pb privuser' (3rd party 'su - privuser'), akkor .history.privuser.simauser legyen a neve.

itthon linuxon:
$ logname
user
$ sudo su -
# logname
user

viszont hp-ux-on sima userként 'pb privuser' után azt mondja a logname, hogy root.

sajnos bele is szól.


user1@server:/home/user1$ tty
/dev/pts/0
user1@server:/home/user1$ ls -l /dev/pts/0
crw--w----   1 user1      tty        157 0x000000 Feb  8 03:05 /dev/pts/0
user1@server:/home/user1$ logname
user1
user1@server:/home/user1$ whoami
user1
user1@server:/home/user1$ who am i
user1      pts/0        Feb  8 03:05
user1@server:/home/user1$ pb app_user
Please enter a reason for doing this: 
user1 , your command will be logged.

(c)Copyright hegyek

app_user@server:/home/app_user$ tty
/dev/ttyp1
app_user@server:/home/app_user$ ls -l /dev/ttyp1
crw-------   2 root       sys         17 0x000001 Feb  8 03:06 /dev/ttyp1
app_user@server:/home/app_user$ logname
root
app_user@server:/home/app_user$ whoami
app_user
app_user@server:/home/app_user$ who am i
root       ttyp1        Feb  8 03:06
app_user@server:/home/app_user$

a history /etc/profile alatt kerül beállításra:


# Set HISTFILE to a local filesystem
        HISTFILE=/tmp/.histfile.$LOGNAME
        export HISTFILE

én meg azt szeretném, ha be lehetne állítani minden user1, user2, user3-nak külön app_user historyt, .histfile.app_user.user1 néven, ha user1 pb-zett app_userre, .histfile.app_user.user2, stb., de ehhez az kellene, hogy logname a rendes usernevet adja vissza.

su-val (legalábbis linuxon meg aixon) ezt meg lehet csinálni, de a pb ezek szerint máshogy működik. itt meg nem vagyok root hogy su-zni tudjak. sőt ypcat group | grep wheel sincs, talán admin a su groupja?

powerbraner - LOL :-) De ahogy nézem, tényleg az... Gondolom helybe logol a drága, magyarul ha valaki nagyon disznolkodni akar, az fog tudni, igaz, picit nehezebben...
Én a kacat elé leraknék egy scb-t, a konzolos matatást meg igen szigorúan megkötni, hogy ki, mikor, miért, hogyan és mit.

Ha minden igaz, a tty nem valtozik, az pedig megmarad a bejovo user tulajdonaban.

Nalunk igy van megoldva:

export HISTFILE=$HOME/.ksh_hist/.sh.history.`uname -n`.$$.`date "+%Y%m%d_%H%M%S"`

igen, az app_user tulajdonába, amire pb-znek (su-znak) az igazi emberek. akiken majd számon kell kérni mit tettek (és akkor jó lenne nem azt mondani, hogy valaki aki su-zhat az app_userre), illetve egyszerűbb lenne nekik csak a saját historyjukban keresni. nekem mint user, ez utóbbi kellene :)

végülis who -m megmondja pb (su) után is.

igen. egyébként kicsit zavaró az, hogy úgy néz ki valamit hegesztettek rajta a múltkori óta, ugyanis most már hol jó hol nem a logname amit visszaad. nem root-ot ad vissza, hanem a rendes usernevet.

annyi különbség van most még, hogy .profile-ból hívom a .kshrc-t és ebbe tettem bele a HISTFILE-t, hogy who -m-el egészítse ki a history fájlt. hanem ez ia64-en megy pöccre, viszont pa/risc-en üres stringet ad vissza. aztán ha várok 4-5 másodpercet, akkor már jó. pb config mizériát sejtek a háttérben, de ahhoz nincs hozzáférésem.