-d <dir>: Define a server directory, defaults to server (as in, $SOLR_HOME/server). It is uncommon to override this option. When running multiple instances of Solr on the same host, it is more common to use the same server directory for each instance and use a unique Solr home directory using the -s option. Example: bin/solr start -d newServerDir
-s <dir>: Sets the solr.solr.home system property; Solr will create core directories under this directory. This allows you to run multiple Solr instances on the same host while reusing the same server directory set using the -d parameter. If set, the specified directory should contain a solr.xml file, unless solr.xml exists in ZooKeeper. The default value is server/solr. This parameter is ignored when running examples (-e), as the solr.solr.home depends on which example is run. Example: bin/solr start -s newHome
Is it possible that your Solr instance wants to use a specific home or server directory that just doesn't exist?
Have a look at the Solr documentation:
Is it possible that your Solr instance wants to use a specific home or server directory that just doesn't exist?