If it's any comfort to you, Peter, I am having the same problem, also on a multisite installation, also running HEAD (quite recent). The only other thing I can think of that might be relevant is that I've recently upgraded drush to 7.2 because of a recent thread about older versions being deprecated. I get reasonable results from 'drush help islandora_book_batch_preprocess' and I get specific complaints if I get a parameter wrong. I get a second error message about drush not being able to start (bootstrap) the database, although this is a working site with content. I have also tried many variants of the 'uri' parameter.
Here's my command and its output:
[drupal7]# drush -v --user=<user> --uri=
http://maccready.library.caltech.edu islandora_book_batch_preprocess --content_models=islandora:bookCModel --namespace=pbm --parent=islandora:293 --do_not_generate_ocr --type=zip --target=/home/<user>/maccready/DATA/Series7/PBM_7_1/batch__PBM_7_1_1.zip
The drush command 'islandora_book_batch_preprocess' could not be found. Run [error]
`drush cache-clear drush` to clear the commandfile cache if you have installed
new extensions.
Drush was not able to start (bootstrap) the Drupal database. [error]
Hint: This may occur when Drush is trying to:
* bootstrap a site that has not been installed or does not have a configured
database. In this case you can select another site with a working database setup
by specifying the URI to use with the --uri parameter on the command line. See
`drush topic docs-aliases` for details.
* connect the database through a socket. The socket file may be wrong or the
php-cli may have no access to it in a jailed shell. See
Drush was attempting to connect to:
Drupal version : 7.43
PHP executable : /usr/bin/php
PHP configuration : /etc/php.ini
PHP OS : Linux
Drush script : /root/.composer/vendor/drush/drush/drush.php
Drush version : 7.2.0
Drush temp directory : /tmp
Drush configuration :
Drush alias files :
Drupal root : /var/www/html/drupal7