Monodevelop - 仅使用 sudo 运行

Monodevelop - runs only using sudo

我已经在我的 Debian amd64 jessie 版本上安装了 Mono 和 Monodevelop,但我只能 运行 使用提升权限的 monodevelop。

从 UI startesque 菜单启动 modevelop 似乎没有任何反应。从 shell 启动 monodevelop 会导致以下错误:

Unhandled Exception: System.TypeInitializationException: An exception was thrown by the type initializer for MonoDevelop.Core.LoggingService ---> System.Configuration.ConfigurationErrorsException: Error Initializing the configuration system. ---> System.Configuration.ConfigurationErrorsException: Unrecognized configuration section (/usr/lib/monodevelop/bin/MonoDevelop.exe.config line 3) at System.Configuration.ConfigInfo.ThrowException (System.String text, System.Xml.XmlReader reader) [0x00000] in :0 at System.Configuration.SectionGroupInfo.ReadContent (System.Xml.XmlReader reader, System.Configuration.Configuration config, Boolean overrideAllowed, Boolean root) [0x00000] in :0 at System.Configuration.SectionGroupInfo.ReadRootData (System.Xml.XmlReader reader, System.Configuration.Configuration config, Boolean overrideAllowed) [0x00000] in :0 at System.Configuration.Configuration.ReadConfigFile (System.Xml.XmlReader reader, System.String fileName) [0x00000] in :0 at System.Configuration.Configuration.Load () [0x00000] in :0 at System.Configuration.Configuration.Init (IConfigSystem system, System.String configPath, System.Configuration.Configuration parent) [0x00000] in :0 at System.Configuration.Configuration..ctor (System.Configuration.InternalConfigurationSystem system, System.String locationSubPath) [0x00000] in :0 at System.Configuration.InternalConfigurationFactory.Create (System.Type typeConfigHost, System.Object[] hostInitConfigurationParams) [0x00000] in :0 at System.Configuration.ConfigurationManager.OpenExeConfigurationInternal (ConfigurationUserLevel userLevel, System.Reflection.Assembly calling_assembly, System.String exePath) [0x00000] in :0 at System.Configuration.ClientConfigurationSystem.get_Configuration () [0x00000] in :0 --- End of inner exception stack trace --- at System.Configuration.ClientConfigurationSystem.get_Configuration () [0x00000] in :0 at System.Configuration.ClientConfigurationSystem.System.Configuration.Internal.IInternalConfigSystem.GetSection (System.String configKey) [0x00000] in :0 at System.Configuration.ConfigurationManager.GetSection (System.String sectionName) [0x00000] in :0 at System.Configuration.ConfigurationSettings.GetConfig (System.String sectionName) [0x00000] in :0 at System.Diagnostics.DiagnosticsConfiguration.get_Settings () [0x00000] in :0 at System.Diagnostics.TraceImpl.InitOnce () [0x00000] in :0 at System.Diagnostics.TraceImpl.get_Listeners () [0x00000] in :0 at System.Diagnostics.Debug.get_Listeners () [0x00000] in :0 at MonoDevelop.Core.LoggingService..cctor () [0x00000] in :0 --- End of inner exception stack trace --- at MonoDevelop.Ide.IdeStartup.Main (System.String[] args, MonoDevelop.Ide.Extensions.IdeCustomizer customizer) [0x00000] in :0 at MonoDevelop.Startup.MonoDevelopMain.Main (System.String[] args) [0x00000] in :0 [ERROR] FATAL UNHANDLED EXCEPTION: System.TypeInitializationException: An exception was thrown by the type initializer for MonoDevelop.Core.LoggingService ---> System.Configuration.ConfigurationErrorsException: Error Initializing the configuration system. ---> System.Configuration.ConfigurationErrorsException: Unrecognized configuration section (/usr/lib/monodevelop/bin/MonoDevelop.exe.config line 3) at System.Configuration.ConfigInfo.ThrowException (System.String text, System.Xml.XmlReader reader) [0x00000] in :0 at System.Configuration.SectionGroupInfo.ReadContent (System.Xml.XmlReader reader, System.Configuration.Configuration config, Boolean overrideAllowed, Boolean root) [0x00000] in :0 at System.Configuration.SectionGroupInfo.ReadRootData (System.Xml.XmlReader reader, System.Configuration.Configuration config, Boolean overrideAllowed) [0x00000] in :0 at System.Configuration.Configuration.ReadConfigFile (System.Xml.XmlReader reader, System.String fileName) [0x00000] in :0 at System.Configuration.Configuration.Load () [0x00000] in :0 at System.Configuration.Configuration.Init (IConfigSystem system, System.String configPath, System.Configuration.Configuration parent) [0x00000] in :0 at System.Configuration.Configuration..ctor (System.Configuration.InternalConfigurationSystem system, System.String locationSubPath) [0x00000] in :0 at System.Configuration.InternalConfigurationFactory.Create (System.Type typeConfigHost, System.Object[] hostInitConfigurationParams) [0x00000] in :0 at System.Configuration.ConfigurationManager.OpenExeConfigurationInternal (ConfigurationUserLevel userLevel, System.Reflection.Assembly calling_assembly, System.String exePath) [0x00000] in :0 at System.Configuration.ClientConfigurationSystem.get_Configuration () [0x00000] in :0 --- End of inner exception stack trace --- at System.Configuration.ClientConfigurationSystem.get_Configuration () [0x00000] in :0 at System.Configuration.ClientConfigurationSystem.System.Configuration.Internal.IInternalConfigSystem.GetSection (System.String configKey) [0x00000] in :0 at System.Configuration.ConfigurationManager.GetSection (System.String sectionName) [0x00000] in :0 at System.Configuration.ConfigurationSettings.GetConfig (System.String sectionName) [0x00000] in :0 at System.Diagnostics.DiagnosticsConfiguration.get_Settings () [0x00000] in :0 at System.Diagnostics.TraceImpl.InitOnce () [0x00000] in :0 at System.Diagnostics.TraceImpl.get_Listeners () [0x00000] in :0 at System.Diagnostics.Debug.get_Listeners () [0x00000] in :0 at MonoDevelop.Core.LoggingService..cctor () [0x00000] in :0 --- End of inner exception stack trace --- at MonoDevelop.Ide.IdeStartup.Main (System.String[] args, MonoDevelop.Ide.Extensions.IdeCustomizer customizer) [0x00000] in :0

运行 从 shell 使用 sudo monodevelop 运行 绝对没问题。我已经清除了所有(我的意思是所有)单声道包并重新安装但错误仍然存​​在。我正在安装的软件包来自 here.

概述的单声道软件包存储库

这似乎是一个权限问题,但我终究无法确定是哪个文件夹或文件导致了此问题。我花了过去 2 天的时间试图解决这个问题,但一无所获,所以如果有人有任何想法或以前遇到过这个问题,我很想听听。

谢谢, 麦克

使用 strace 查找权限错误。通常,当一个程序只能 运行 作为 root 时,这意味着某些文件无法访问,除非是 root。

strace monodevelop

我自己也遇到了同样的问题。我做到了

strace monodevelop > user.txt
sudo strace monodevelop > root.txt
diff user.txt root.txt > diff.txt

然后我搜索了有问题的文件。

最后这实际上对我没有帮助。我最终卸载并重新安装了单声道以及与之相关的所有内容。希望这两种解决方案都能有所帮助。