Operation System Permission
Hi all...
I am try to execute a class method from JDBC connection. My method are simple, just create a file at $HOME like this:
set sc='$zf(-1,"touch $HOME/lixo.txt > /var/tmp/log666 2>&1")
I put a log file to this commnad because it's don't work, and in log file i get this:
touch: cannot touch ‘/root/lixo.txt’: Permission denied
after to try other commands I found that user and enviromnent variables are diferents:
I try this:
set sc='$zf(-1,"echo $USER > /var/tmp/log666 2>&1") ;Return root
set sc='$zf(-1,"echo $HOME > /var/tmp/log666 2>&1") ;return /root
set sc='$zf(-1,"whoami > /var/tmp/log666 2>&1") ; return cacheusr
I need help to write a file at $HOME using a JDBC connection in Cache 2017
w $zversion Cache for UNIX (Red Hat Enterprise Linux for x86-64) 2017.2.1 (Build 801U) Wed Dec 6 2017 09:23:15 EST
Well, as a cacheusr you don't have access to /root. Why not write into some temp directory?
I need to run third party software that needs a configuration file in $HOME
You can change the $HOME for cacheusr to some other dir, /home/cacheusr probably.
I try to set $HOME before to write file, but...
when I run third party software that reads the configuration file, the $ HOME variable goes back to / root
This is works.... but sound like a workarround:
I'm using the same workaround.
It works like this because $zf(-1) spawns a new process.
If you want to change the environment variable for a current process, you can use this utility.
Yes... its works to me...
You need to set $HOME and run the program in one call:
Here's an example.
Social networks
InterSystems resources
Log in or sign up
Log in or create a new account to continue
Log in or sign up
Log in or create a new account to continue
Log in or sign up
Log in or create a new account to continue