Disable symlink and mount path resolve in Mac - macos

In mac (el captain), when a file is selected by browsing through a symlink path that points to network or mount point, and you show the file info, then the network path or device path is retrieved instead.
example:
if /nas is a symlink to nfs://nas/ifs/data, then the file info of /nas/projects will show by the system as:
nfs://nas/ifs/data/projects
then you cannot share this weird path with anybody else on windows or linux before you fix the weird information that meant to be kept hidden to the user for cleaner path.
So, is there a way I can disable this feature and mac and force it to always return the actual path regardless if this is a symlink or not?

Related

mklink error on domain connected machine but valid symlink still created - "the system cannot find the file specified"

On domain connected Windows 10 and Windows 8.1 machines (issue may not be version specific), running mklink symlinkToCreate.txt originalFile.txt is producing an error The system cannot find the file specified. The symlink is still created correctly.
I have made sure that originalFile.txt does exist and that symlinkToCreate.txt does not already exist. I have also tried using absolute paths for both parts instead of relative paths. I am using an elevated command prompt as I know that only elevated Administrators can create symlinks by default. I have also checked the Create symbolic links local policy and confirmed that this is just set to Administrators.
Directory link creation also produces the error (mklink /D). Hard link creation, however, works fine (mklink /H).
Weirdly, I get the same behaviour even when logged in using the local Administrator account. I also get the same behaviour on a different machine in the same domain. The exact same commands work perfectly on a non domain-connected machine.
Given that mklink is built into cmd and that the file I'm linking definitely exists, I'm stumped as to what file the system cannot find, though I strongly suspect that the actual content of the error is a red herring. Shame there doesn't seem to be a mklink debug mode!
Any pointers greatly appreciated as I'm banging my head against a wall with this one.

Order of resolving in Windows search PATH

I have more than 40 folders are added into search PATH on my Windows 7 machine. I used to put Python environment in the User PATH. Yesterday the system can't find python.exe suddenly... I tried to move the folder path to System PATH and the problem solved.
But today, I installed Tex live package on my machine. By default, the path of C:\texlive\2015\bin\win32 was added to User PATH. System can't find any file under this folder. Then I tied to move C:\texlive\2015\bin\win32 to the end of System PATH. System still can't find any file in this folder... Finally, I tried to paste C:\texlive\2015\bin\win32 at the beginning of System PATH, than it works (all the files in this folder can be searched).
can some one explain why I put the path to the end it doesn't work but when I put the path at the beginning it works? I prefer to put some path to User PATH, I don't know why now them can't be searched?

Go CD - how to set PATH on OS X?

I'm trying to get various bin directories on the PATH for the Go Agent on OS X and I'm not having any luck. Googling around finds references to /etc/default/go-agent, which doesn't exist by default on the Mac and I can't find any documentation for OS X indicating that the Go Agent.app would use it if I created it.
Ideally, I don't want to modify anything like this and I'd rather manage the PATH through the Go Server UI - I see that I can set environment variables, but I can't find any docs on actually appending to the PATH - default UNIX syntax of $PATH:/some/new/path/bin doesn't work.
Any advice?
There are couple of ways to override PATH while starting the GoCD Agent app on OSX:
Overriding them during startup when starting from the terminal
PATH=$PATH:/usr/local/bin open /Applications/Go\ Agent.app
Overriding them using a file ~/Library/Application Support/Go Agent/overrides.env. This file is sourced during agent startup, and it can be setup to change environment variables.
PATH=$PATH:/usr/local/bin
Source: https://docs.go.cd/current/installation/install/agent/osx.html#overriding-default-startup-arguments-and-environment

Get actual moint point of network volume in osx cli

In an automated system, i copy files to a mounted network volume with a sh
In basic i do "cp file.pdf /Volumes/NetworkShare/".
This works well until the remote system is down.
So before copying i can do a ping to detect if it's online.
But... when i get online OSX often remounts on a different path "/Volumes/NetworkShare-1/".
The old path "/Volumes/NetworkShare/" stil exists altough it's useless.
So, how can i find the actual mount point of this share in OSX cli?
I found out that diskutil does something like this for local disks, not for network volumes. Is there an equivalent for diskutil for network volumes?
The mount command (just on its own) will list all mounted filesystems. As for why OS X is creating that extra directory, that is pretty odd. Did you manually mount the filesystem, by any chance? If you created the “NetworkShare” directory yourself, OS X’s auto mounter might do what you’re suggesting.

copy OSX file with permissions

I have an OSX FTDIUSBSerialDriver.kext file for an FTDI Chipset Driver where the Info.plist file has been modified for optimum performance.
I would like to supply the modified file to users of our hardware, so that it can be copied to: MacHD/System/Library/Extensions/ and it must have "system" ownership and permissions.
What would be the easiest way to:
Copy the working FTDIUSBSerialDriver.kext file (package) retaining the current ownership and priveleges for distribution ?
Provide the user with "simple" terminal instructions on how to copy and overwrite the file to MacHD/System/Library/Extensions/ with system ownership and permissions ?
Every time I try and test, the permissions and ownership get set to the current user so the driver will not load at startup.
It would be optimal if I could bundle this as a simple installer, so the user could just double click to install.
Thanks
Peter
Edit: Needs to work on 10.6.8 and above. I am aware of a finder option in OS X 10.8 that allows for "duplicate exactly" and "paste exactly", but this is not an option for everyone.
you can use cp -p
-p Cause cp to preserve the following attributes of each source
file in the copy: modification time, access time, file flags, file
mode, user
ID, and group ID, as allowed by permissions. Access Control Lists (ACLs) and Extended Attributes (EAs), including resource
forks, will
also be preserved.
We are using a script to alter the FTDIUSBSerialDriver.kext file: See: https://github.com/arminbw/wiretouch/blob/master/perl/modify-ftdi-driver-settings.pl
However, did you by any chance experience problems after upgrading to 10.10? See: Patched FTDIUSBSerialDriver kext has to be unloaded/reloaded after reboot (OSX 10.10). Any ideas?

Resources