Если вы использовали интерфейс для изящного «извлечения» устройства, оно должно было быть изящно размонтировано, что означает, что на него больше ничего не будет записано. Если это был ваш загрузочный раздел, ваша система должна нормально перезагрузиться. Если бы раздел также включал /bin
, это объясняло бы, почему вы не можете монтировать новые устройства, так как /bin/mount
также больше не присутствует, так как содержится в несмонтированной файловой системе.
Короче говоря, вы должны нормально перезагрузиться в своем текущем состоянии.
Вы можете определить X ()
, который будет запускаться с помощью привязки клавиш.
Например:
import System.IO
debugStuff :: X ()
debugStuff = withWindowSet (\ws -> do
liftIO $ print ws
liftIO $ logToTmpFile $ show ws
)
myAppendFile :: FilePath -> String -> IO ()
myAppendFile f s = do
withFile f AppendMode $ \h -> do
hPutStrLn h s
logToTmpFile :: String -> IO ()
logToTmpFile = myAppendFile "/tmp/xmonad.log". (++ "\n")
Привязать debugStuff
к привязке клавиш.