Debian无法进入图形界面 Fatal server error: no screens found

在Debian系统中,升级GNOME后遇到无法进入图形界面的问题,显示Fatal server error: no screens found。尝试通过移除Gnome包、修复依赖、重装X server及相关组件,以及调整配置文件xorg.conf来解决。同时,发现xorg.conf为空,通过dpkg-reconfigure命令重新配置并禁用GDM以恢复命令行登录。

系统:Debian -2.6.17.8 i686
在用Synatpic升级完GNOME环境后,重启发现无法进入图形界面:
#startx

Fatal server error:
no screens found

XIO: fatal IO error 104 (Connection reset by peer) on X server ":0.0"
after 0 requests (0 known processed) with 0 events remaining.


应该是升级GNOME过程中某些不可知错误导致的X server无法启动.
于是决定移除Gnome包
# apt-get remove gnome*

不幸出错:
Reading Package Lists... Done 
Building Dependency Tree... Done
You might want to run `apt-get -f install' to correct these.
The following packages have unmet dependencies:
udev: Depends: udev (>= 0.065) but it is not installed
E: Unmet dependencies. Try using -f.


用apt-get -f install修复
结果仍然报错:

修复无法进行
dpkg: error processing
/var/cache/apt/archives/udev_0.105-4.i386.deb (--unpack)
subprocess preinstallation script returned error exit status 1



一般遇到这种情况有两种解决方案:
1.强制安装
# dpkg --force-overwrite -i /var/cache/apt/archives/udev_0.105-4.i386.deb
(it's either --force-overwrite or --force-overwrite-diverted that you need)


2.重装
Or remove it then reinstall:
# dpkg --force-depends -r udev
# apt-get install udev

但是,第一种方法不保险。最好用第二种。
可是在移除过程中,依旧报错。
错误文字忘记了,但我记得一个关健词“purge”--系统提示说remove是不行的,要purge(清洗,清除)
# dpkg --force-depends --purge udev
这次可以了。

#apt-get clean all

试一下没有GNOME这破玩意儿了还能不能进X session:
#startx

错误依然存在!!
既然是X session出问题了,就要查看其配置文件xorg.conf
# cat /etc/X11/xorg.conf
居然是空文件!

重装:
#apt-get install xserver-xorg*
#apt-get install xorg
#apt-get install xserver-xfree86*

之后运行:
#dpkg-reconfigure xserver-xorg
(或者是#dpkg-reconfigure xserver-xfree86
亦或是#dpkg-reconfigure xserver)
选择系统默认选项即可重新生成xorg.conf文件

OK

在升级GNOME后我发现系统登陆界面为GDM,而不是原来的命令行
#apt-get install rcconf
运行rcconf命令取消GDM自启动。
#rcconf

Rcconf允许你控制哪些服务在开机或重开机时所要启动的服务,相当于Redhat下的/usr/sbin/ntsysv




当使用 GCC 编译器时出现 `fatal error: no input files` 错误,通常表示编译器未能找到或识别用户提供的源文件。以下是可能导致该问题的原因及相应的解决方案: 1. **检查源文件路径和名称拼写** 确保在命令行中指定的源文件路径和文件名正确无误。例如,若源文件名为 `main.c`,但误写成 `mian.c` 或路径不正确,GCC 将无法找到输入文件。 ```bash gcc main.c -o main ``` 2. **确认源文件存在** 使用 `ls` 或 `dir` 命令检查当前目录下是否存在指定的源文件。若文件不在当前目录,可使用完整路径或切换到源文件所在目录执行编译命令。 3. **检查文件扩展名是否正确** GCC 编译器依赖文件扩展名来识别文件类型。例如,C 源文件应以 `.c` 结尾,C++ 源文件应以 `.cpp` 或 `.cc` 结尾。若扩展名缺失或错误,可能导致编译器无法识别输入文件。 示例: ```bash gcc main.cpp -o main # 无效,main.cpp 是 C++ 文件,应使用 g++ g++ main.cpp -o main # 正确 ``` 4. **确保未遗漏编译参数中的文件名** 在编译命令中,若未指定源文件名,也会导致此错误。例如,直接运行 `gcc -o main` 而没有 `main.c`,将触发 `no input files` 错误。 5. **检查 Makefile 或构建脚本** 若使用 Makefile 或其他构建脚本,确保其中的源文件路径和变量定义正确无误。可以使用 `make -n` 命令查看实际执行的命令,以确认是否包含正确的输入文件。 6. **确认 GCC 安装正确** 若上述步骤均无问题,但问题依旧存在,可能 GCC 安装存在问题。可尝试重新安装 GCC 或相关库,例如在基于 Debian 的系统上,可以运行以下命令安装必要的库 [^1]: ```bash sudo apt-get install libc6:i386 sudo apt-get install libstdc++6:i386 sudo apt-get install zlib1g:i386 ``` 7. **使用绝对路径测试** 如果怀疑是路径问题,可以尝试使用绝对路径来指定源文件,例如: ```bash gcc /home/user/project/main.c -o main ``` 通过逐一排查上述可能原因,应该能够解决 `fatal error: no input files` 的问题。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值