diff --git a/typo3/sysext/install/Classes/SystemEnvironment/Check.php b/typo3/sysext/install/Classes/SystemEnvironment/Check.php
index 75308c88e3edcc8571b805773d650fdb3fcccde5..8cd8b90964f04051ef3b1b290e63daf50acf9ac6 100644
--- a/typo3/sysext/install/Classes/SystemEnvironment/Check.php
+++ b/typo3/sysext/install/Classes/SystemEnvironment/Check.php
@@ -70,6 +70,13 @@ class Check implements CheckInterface
         'zlib',
     ];
 
+    /**
+     * @var string[]
+     */
+    protected $suggestedPhpExtensions = [
+        'fileinfo' => 'This extension is used for proper file type detection in the File Abstraction Layer.',
+    ];
+
     /**
      * Get all status information as array with status objects
      *
@@ -96,7 +103,11 @@ class Check implements CheckInterface
         $this->checkWindowsApacheThreadStackSize();
 
         foreach ($this->requiredPhpExtensions as $extension) {
-            $this->checkRequiredPhpExtension($extension);
+            $this->checkPhpExtension($extension);
+        }
+
+        foreach ($this->suggestedPhpExtensions as $extension => $purpose) {
+            $this->checkPhpExtension($extension, false, $purpose);
         }
 
         $this->checkPcreVersion();
@@ -637,23 +648,26 @@ class Check implements CheckInterface
     }
 
     /**
-     * Check if a specific required PHP extension is loaded
+     * Checks if a specific PHP extension is loaded.
      *
      * @param string $extension
+     * @param bool $required
+     * @param string $purpose
      */
-    protected function checkRequiredPhpExtension($extension)
+    protected function checkPhpExtension(string $extension, bool $required = true, string $purpose = '')
     {
         if (!extension_loaded($extension)) {
             $this->messageQueue->enqueue(new FlashMessage(
-                'TYPO3 CMS uses PHP extension ' . $extension . ' but it is not loaded'
-                    . ' in your environment. Change your environment to provide this extension.',
-                'PHP extension ' . $extension . ' not loaded',
-                FlashMessage::ERROR
+                'TYPO3 uses the PHP extension "' . $extension . '" but it is not loaded'
+                    . ' in your environment. Change your environment to provide this extension. '
+                    . $purpose,
+                'PHP extension "' . $extension . '" not loaded',
+                $required ? FlashMessage::ERROR : FlashMessage::WARNING
             ));
         } else {
             $this->messageQueue->enqueue(new FlashMessage(
                 '',
-                'PHP extension ' . $extension . ' loaded'
+                'PHP extension "' . $extension . '" loaded'
             ));
         }
     }