Linux之登陆问题

今天早上在使用Linux的时候进入终端输入startx,然后退出图形界面,进入了命令模式,可能是ubuntu14.04的问题,不知怎么就没有响应,我就强行重启了一下操作系统,然后进去发现在使用管理员账号登录时一直是重复登录,怎么都进不去,网上关于这方面的资料还是很多的,给出的方法也是很多。

1、环境变量问题,进入tty1 或者 tty2 然后 sudo vim profile 或者 environment,将 环境变量还原即可。但我的问题并非出于此。

2、初始化文件问题:删除.Xauthority , Xinit 等初始文件 并重启。我的问题也不在于此。

3、/home权限问题:直接将/home  chmod 成 777的权限。不过我的还是无效。

4、/tmp权限问题:我的问题就在于此,首选还是那句话,学会找到日志文件,学会分析日志文件,cd 到 /home/user 里面,然后你会发现一个 启动X组件相关的日志文件:

.xsession-errors文件,打开这个文件发现有以下错误: mkdtemp: private socket dir: Permission denied,可以知道在读写/tmp文件时 遇到权限问题而读写失败,所以 直接chmod 777 /tmp 后 然后 重启 就能进入桌面系统了。

5.ctrl+alt+f1 ,切换到tty1,输入管理员帐号和密码

sudo rm -r .Xauthority*

sudo reboot   //重启

ok

下面就说一下关于.Xauthority:startx的脚本文件(资料来源于百度):

Xserver 启动时,读文件~/.Xauthority,读入对应其display的记录.当一个需要显示的客户程序启动调用XOpenDisplay()也读这个文 件,并把找到的magic code 发送给Xserver.当Xserver验证这个magic code正确以后,就同意连接啦.

观察startx脚本也可以看到,每次startx运行,都在调用xinit以前使用了xauth的add命令添加了一个新的记录到~/.Xauthority,用来这次运行X使用认证。

解决:

Ctrl+Alt+F1~F6,都可以进入命令行模式,分别为 tty1~tty6。

注:Ctrl+Alt+F7 就是窗口模式。

使用用户名和密码进入。

sudo==/usr/bin/sudo

vi==/usr/bin/bi

去掉三个文件中给PATH增加的 /home/sjjz/android-sdk-linux_86/tools 路径

whereis=/usr/bin/whereis

cat==//bincat

mv==/bin/mv

ls==/bin/ls

bash==/bin/bash

重启:

/usr/bin/sudo /sbin/reboot

2.修改了profile文件

解决:

利用Alt+Ctrl+Shift+F1进入命令行模式, 以root的身份更改了/etc/profile文件, 这个文件我昨天在配置JDK运行环境的时候对其进行了修改, 现在又将内容改了回来,终于可以正常进入了。

3.修改了environment

解决:

/usr/lib/sudo /usr/lib/vi /etc/environment,然后将光标移动到PATH=$PATH:/home/user1/program/androidSDK/tools 这一行,按两次D,即DD就删除了着一样,

再输入命令

4.认证的问题

解决:

今天无缘无故登录不了系统 在登录界面输入正确密码后 黑屏一闪后又跳转到登录界面

黑屏出现的时间太短 经过多次查看发现 卡在check battery state

解决方法:

sudo rm -r .Xauthority*

当然,还有其他的原因,我尝试了以上几种方法都没成功,后来看到有一个博客,简单说到这个问题的本质是开机时,系统会读入/home文件夹下的一些初始化文件,如果找不到这些文件就会出错,出现之前说明的症状。结合我之前看到的一些解决方法,我认为可能是home的权限受到更改,导致非root用户无法读取/home目录下的初始化文件造成的。

时间: 2024-08-24 06:43:53

Linux之登陆问题的相关文章

Linux自动登陆的设置方法

前些天为了实现Linux自动登陆的方法,在网上查了很多资料,发现有不少方法,但网上有些方法的讲解不是特别清楚,或者已经过时.因此,特意整理了一下Linux自动登陆的设置方法.本文的测试环境为Centos 5.5. 1.设置GDMGDM是GNOME显示管理器,通过设置其配置文件/etc/gdm/custom.conf可以设置帐号自动登陆.设置方法如下:在/etc/gdm/custom.conf文件中添加以下内容[daemon]AutomaticLogin=usernameAutomaticLogi

Linux远程登陆以及免密码登陆

最近学了一下linux 的东西,其中有一个是关于ssh(linux远程登陆的) 在这里总结一下: 首先关于ssh的安装 假设我们需要登陆的主机位B,在B主机的终端输入: ssh localhost 如果出现: 就说明还没有安装ssh,所以需要安装ssh 输入  sudo apt-get install openssh-server进行安装 ps:如果这里安装失败,可能是你的一个依附程序版本不对,按照它给的名字重新安装就行了 安装成功! 登陆就非常简单了 之后我们在我们远程进行操作的主机A输入:

Linux ssh登陆慢的两种原因分析

Linux ssh登陆慢的两种原因分析 如果做运维就一定会遇到ssh登陆Linux服务器慢的问题,问题比较好解决,一般Google之后有很多文章都告诉你解决方法,但是很少有文章分析为什么会慢,这篇文章简单分析下ssh登陆慢的原因. useDNS配置导致登陆慢 如果ssh server的配置文件(通常是 /etc/ssh/sshd_config )中设置 useDNS yes ,可能会导致 ssh 登陆卡住几十秒.按照网上的方法将该配置项设为 no,然后重启 ssh 服务,再次登陆就恢复正常,但至

linux 免登陆设置

免登陆 (进入到虚拟机,以root方式登陆) vi /etc/ssh/sshd_config (要确保这些字符前无注释符号“#”) RSAAuthentication yes PubkeyAuthentication yes AuthorizedKeysFile .ssh/authorized_keys PasswordAuthentication yes PeimitEmptyPasswords yes 执行 ssh-agent bashssh-keygen -t rsa ssh-add /r

linux忘记登陆密码的两种破解办法

对于使用grub引导的linux系统.在开机自检后,出现grub引导界面时,按E键进入编辑模式,如下图所示:   把光标移到带有"kernel"字样的那一行,然后按E键编辑,如图:   在末尾按一个空格,输入数字1,再按回车键回到之前的界面.该行的意思是加载内核,末尾的参数1,该命令不能识别,所以它会将这个参数1传递给系统启动后的第一个进程,而系统启动的第一个进程是init,init 1 就是进入单用户模式.如图:   按B键启动系统,启动完成后.注意看,提示符是井号,表示现在已经是r

linux 忘记登陆密码

声明:如果不是远程登陆,机器在自己身边还有救. 第一步:重启机器,进入brug界面(grub是一个引导管理程序,可以引导linux.winxp等系统,在/boot/grub/中的menu.lst中进行配置),选择你忘记密码的那个系统. 进入brug界面方法:看见引导界面出来的时候,摁e键: 第二步:接下来你可以看到如下图所示的画面,然后你再用上下键选择最新的内核(这里是第二行,kernel.......),然后继续按"e"键. 第三步:进入之后摁下"空格"键,然后输

linux改动登陆主机提示信息

寻常管理着130多台Linux物理主机.真正搞清楚每一台主机的IP信息.应用部署比較麻烦! 所以在部署之初,必须规划好: 写一个脚本.把主机IP.管理员联系方法,应用部署等主机信息放在.sh里面 shell的主要改动地方有2个文件 1.改动/etc/issue(在机房现场操作时.能够依据显示屏提示信息,知道主机应用等) 注意issue參数的使用,对于云主机这一块,个人觉的不改动此选项也能够.反正自己一般也不登陆! 2.改动/etc/motd(远程终端ssh连接时.能够依据终端提示,知道主机应用等

Linux局域网登陆响应时间过长

在局域网中,使用ssh登陆到其他机器上时,有时会出现等待10s以上才能正常登陆的问题. 原因: Linux默认使用dns解析登陆IP,但是在局域网,并没有dns服务器,而且机器上也没有添加 IP与域名(hostname)的绑定,导致浪费很多时间检查主机名. 解决办法: 1.在/etc/hosts文件中添加IP与hostname的绑定 2.修改文件/etc/nsswitch.conf,去掉hosts: xxx后面的dns hosts:      files mdns4_minimal [NOTFO

linux入门系列3--常见的linux远程登陆管理工具

服务器一般是云服务器或者放置在机房,我们日常工作中通过远程连接工具连接到服务器进行操作,这类工具很多(如SecureCRT.XShell.Putty.FinallShell.TeamViewer以及windows10自带的PowerShell等等),本文挑选几个常用的工具进行演示,实际运用时只需要熟练使用任意一个就行,其它的当作了解. 工具使用虽然很简单,但是很多初学朋友要在众多工具中摸索还是挺费事的.网络资源泛滥,碎片化太严重,很多文章零散不成体系:再加上很多人不经过验证随手就转载别人文章,往

Linux学习笔记 第五章Linux首次登陆与在线求助 man page

 X Window与命令行模式的切换   1. 通常我们也称命令行模式为终端界面(terminal或console). Linux默认的情况下会提供6个Terminal来让用户登录,切换的方式为使用[Ctrl]+[Alt]+[F1]~[F6]的组合按钮. 2.系统会将[F1]~[F6]命名为tty1~tty6的操作界面环境. 3.切换到X Window窗口界面[Ctrl]+[Alt]+[F7]就可以了. 1~3总结: [Ctrl]+[Alt]+[F1]~[F6]:文字界面登录tty1~tty6终