"Drupal root not found. Pass --root or a @siteAlias in order to see Drupal-specific commands" I have multiple sites inside the same htdocs directory. In one, I removed all the folders except vendor under Web. Now drush will not work (it worked before I moved the folders). But now, it cannot find the database, which is correctly defined in web/sites/default/settings.php
/srv/www/htdocs/jar/drupal # ./drush status
 PHP binary    : /usr/bin/php
 PHP config    : /srv/www/php.ini
 PHP OS        : Linux
 Drush script  : /srv/www/htdocs/jar/drupal/vendor/drush/drush/drush
 Drush version : 10.3.6
 Drush temp    : /tmp
 Drush configs : /srv/www/htdocs/jar/drupal/vendor/drush/drush/drush.yml
 Drupal root   : /srv/www/htdocs/jar/drupal

I am running Drupal 9.0.8 and drush 10.3.6 (in /srv/www/htdocs/jar/drupal). I have removed drush using composer (2.0.3) and reinstalled it (recreating vendor in the process).
/srv/www/htdocs/jar/drupal # ./drush -vvv cr
 [preflight] Config paths: /srv/www/htdocs/jar/drupal/vendor/drush/drush/drush.yml
 [preflight] Alias paths: /srv/www/htdocs/jar/drupal/drush/sites,/srv/www/htdocs/jar/drush/sites
 [preflight] Commandfile search paths: /srv/www/htdocs/jar/drupal/vendor/drush/drush/src
 [debug] Starting bootstrap to site [0.04 sec, 8.17 MB]

In BootstrapHook.php line 32:
  [Exception]
  Bootstrap failed. Run your command with -vvv for more information.
Exception trace:
  at /srv/www/htdocs/jar/drupal/vendor/drush/drush/src/Boot/BootstrapHook.php:32
 Drush\Boot\BootstrapHook-&gt;initialize() at /srv/www/htdocs/jar/drupal/vendor/consolidation/annotated-command/src/Hooks/Dispatchers/InitializeHookDispatcher.php:44
 Consolidation\AnnotatedCommand\Hooks\Dispatchers\InitializeHookDispatcher-&gt;doInitializeHook() at /srv/www/htdocs/jar/drupal/vendor/consolidation/annotated-command/src/Hooks/Dispatchers/InitializeHookDispatcher.php:36
 Consolidation\AnnotatedCommand\Hooks\Dispatchers\InitializeHookDispatcher-&gt;callInitializeHook() at /srv/www/htdocs/jar/drupal/vendor/consolidation/annotated-command/src/Hooks/Dispatchers/InitializeHookDispatcher.php:29
 Consolidation\AnnotatedCommand\Hooks\Dispatchers\InitializeHookDispatcher-&gt;initialize() at /srv/www/htdocs/jar/drupal/vendor/consolidation/annotated-command/src/CommandProcessor.php:145
 Consolidation\AnnotatedCommand\CommandProcessor-&gt;initializeHook() at /srv/www/htdocs/jar/drupal/vendor/consolidation/annotated-command/src/AnnotatedCommand.php:296
 Consolidation\AnnotatedCommand\AnnotatedCommand-&gt;initialize() at /srv/www/htdocs/jar/drupal/vendor/symfony/console/Command/Command.php:221
 Symfony\Component\Console\Command\Command-&gt;run() at /srv/www/htdocs/jar/drupal/vendor/symfony/console/Application.php:1018
 Symfony\Component\Console\Application-&gt;doRunCommand() at /srv/www/htdocs/jar/drupal/vendor/symfony/console/Application.php:271
 Symfony\Component\Console\Application-&gt;doRun() at /srv/www/htdocs/jar/drupal/vendor/symfony/console/Application.php:147
 Symfony\Component\Console\Application-&gt;run() at /srv/www/htdocs/jar/drupal/vendor/drush/drush/src/Runtime/Runtime.php:118
 Drush\Runtime\Runtime-&gt;doRun() at /srv/www/htdocs/jar/drupal/vendor/drush/drush/src/Runtime/Runtime.php:49
 Drush\Runtime\Runtime-&gt;run() at /srv/www/htdocs/jar/drupal/vendor/drush/drush/drush.php:72
 require() at /srv/www/htdocs/jar/drupal/vendor/drush/drush/drush:4

I looked at all the above suggestions, but am stuck. Drush works perfectly on my other 5 sites...
A missing composer.json file was the solution for me.