Question
When trying to start Nexus Repository Manager on Solaris, I get an error:
./nexus start id: illegal option -- u Usage: id [-ap] [user]
Why does this happen and what can I do to fix it?
Answer
The problem has been seen when trying to run Nexus Repository 3 on the Solaris operating system.
The following two commands in the script that will not work with Solaris 10.
user_id=`id -u` user_name=`id -u -n`
Apparently, /usr/bin/id has issues in Solaris 10 as it is not xpg4 compliant/ does not accept the -u option.
The following appears to be an alternative to id -u
/usr/bin/id |cut -d '=' -f2|cut -d '(' -f1
The following appears to be an alternative to id -u -n
/usr/ucb/whoami
or
expr "id" : '.((.)) gid='
Other than substituting these alternatives, you may be able to install an addon package containing /usr/xpg4/bin/id and/or /usr/ucb/*
Solaris 10, for example, is very old and maybe newer versions of Solaris may not have any issues with Nexus Repository 3 start scripts.
Running Nexus on Unsupported Operating Systems
The most widely used operating system for Nexus Repository 3 is Linux, and therefore customers should consider it the best tested platform.
We have customers running on AIX, HP/UX and Solaris successfully, but these systems are not internally tested.
We try to help customer to run on these systems on a best effort basis only, but the reality is they are not officially supported. We reserve the right to have any runtime problems reproducible on a standard Linux distribution.
The best option is to give preference to running Nexus Repository 3 on a modern Linux kernel based operating system.