每天一个linux命令(18):locate 命令
locate 让使用者可以很快速的搜寻档案系统内是否有指定的档案。其方法是先建立一个包括系统内所有档案名称及路径的数据库,之后当寻找时就只需查询这个数据库,而不必实际深入档案系统之中了。在一般的 distribution 之中,数据库的建立都被放在 crontab 中自动执行。 1.命令格式: Locate [选择参数] [样式] 2.命令功能: locate命令可以在搜寻数据库时快速找到档案,数据库由updatedb程序来更新,updatedb是由cron daemon周期性建立的,locate命令在搜寻数据库时比由整个由硬盘资料来搜寻资料来得快,但较差劲的是locate所找到的档案若是最近才建立或 刚更名的,可能会找不到,在内定值中,updatedb每天会跑一次,可以由修改crontab来更新设定值。(etc/crontab) locate指定用在搜寻符合条件的档案,它会去储存档案与目录名称的数据库内,寻找合乎范本样式条件的档案或目录录,可以使用特殊字元(如”*” 或”?”等)来指定范本样式,如指定范本为kcpa*ner, locate会找出所有起始字串为kcpa且结尾为ner的档案或目录,如名称为kcpartner若目录录名称为kcpa_ner则会列出该目录下包括 子目录在内的所有档案。 locate指令和find找寻档案的功能类似,但locate是透过update程序将硬盘中的所有档案和目录资料先建立一个索引数据库,在 执行loacte时直接找该索引,查询速度会较快,索引数据库一般是由操作系统管理,但也可以直接下达update强迫系统立即修改索引数据库。 3.命令参数: -e 将排除在寻找的范围之外。 -1 如果 是 1.则启动安全模式。在安全模式下,使用者不会看到权限无法看到 的档案。这会始速度减慢,因为 locate 必须至实际的档案系统中取得档案的 权限资料。 -f 将特定的档案系统排除在外,例如我们没有到理要把 proc 档案系统中的档案 放在资料库中。 -q 安静模式,不会显示任何错误讯息。 -n 至多显示 n个输出。 -r 使用正规运算式 做寻找的条件。 -o 指定资料库存的名称。 -d 指定资料库的路径 -h 显示辅助讯息 -V 显示程式的版本讯息 4.使用实例: 实例1:查找和pwd相关的所有文件 命令: locate pwd 输出: peida-VirtualBox ~ # locate pwd /bin/pwd /etc/.pwd.lock /sbin/unix_chkpwd /usr/bin/pwdx /usr/include/pwd.h /usr/lib/python2.7/dist-packages/twisted/python/fakepwd.py /usr/lib/python2.7/dist-packages/twisted/python/fakepwd.pyc /usr/lib/python2.7/dist-packages/twisted/python/test/test_fakepwd.py /usr/lib/python2.7/dist-packages/twisted/python/test/test_fakepwd.pyc /usr/lib/syslinux/pwd.c32 /usr/share/help/C/empathy/irc-join-pwd.page /usr/share/help/ca/empathy/irc-join-pwd.page /usr/share/help/cs/empathy/irc-join-pwd.page /usr/share/help/de/empathy/irc-join-pwd.page /usr/share/help/el/empathy/irc-join-pwd.page 实例2: 搜索etc目录下所有以sh开头的文件 命令: locate /etc/sh 输出: peida-VirtualBox ~ # locate /etc/sh /etc/shadow /etc/shadow- /etc/shells peida-VirtualBox ~ # 实例3:搜索etc目录下,所有以m开头的文件 命令: locate /etc/m 输出: […]
每天一个linux命令(17):whereis 命令
whereis命令只能用于程序名的搜索,而且只搜索二进制文件(参数-b)、man说明文件(参数-m)和源代码文件(参数-s)。如果省略参数,则返回所有信息。 和find相比,whereis查找的速度非常快,这是因为linux系统会将 系统内的所有文件都记录在一个数据库文件中,当使用whereis和下面即将介绍的locate时,会从数据库中查找数据,而不是像find命令那样,通 过遍历硬盘来查找,效率自然会很高。 但是该数据库文件并不是实时更新,默认情况下时一星期更新一次,因此,我们在用whereis和locate 查找文件时,有时会找到已经被删除的数据,或者刚刚建立文件,却无法查找到,原因就是因为数据库文件没有被更新。 1.命令格式: whereis [-bmsu] [BMS 目录名 -f ] 文件名 2.命令功能: whereis命令是定位可执行文件、源代码文件、帮助文件在文件系统中的位置。这些文件的属性应属于原始代码,二进制文件,或是帮助文件。whereis 程序还具有搜索源代码、指定备用搜索路径和搜索不寻常项的能力。 3.命令参数: -b 定位可执行文件。 -m 定位帮助文件。 -s 定位源代码文件。 -u 搜索默认路径下除可执行文件、源代码文件、帮助文件以外的其它文件。 -B 指定搜索可执行文件的路径。 -M 指定搜索帮助文件的路径。 -S 指定搜索源代码文件的路径。 4.使用实例: 实例1:将和**文件相关的文件都查找出来 命令: whereis svn 输出: [root@localhost ~]# whereis tomcat tomcat: [root@localhost ~]# whereis svn svn: /usr/bin/svn /usr/local/svn /usr/share/man/man1/svn.1.gz 说明: tomcat没安装,找不出来,svn安装找出了很多相关文件 实例2:只将二进制文件 查找出来 命令: whereis -b svn 输出: [root@localhost ~]# whereis -b svn svn: /usr/bin/svn /usr/local/svn [root@localhost ~]# whereis -m svn svn: /usr/share/man/man1/svn.1.gz [root@localhost ~]# whereis -s svn svn: [root@localhost ~]# 说明: whereis -m svn 查出说明文档路径,whereis -s svn 找source源文件。
每天一个linux命令(16):which命令
我们经常在linux要查找某个文件,但不知道放在哪里了,可以使用下面的一些命令来搜索: which 查看可执行文件的位置。 whereis 查看文件的位置。 locate 配合数据库查看文件位置。 find 实际搜寻硬盘查询文件名称。 which命令的作用是,在PATH变量指定的路径中,搜索某个系统命令的位置,并且返回第一个搜索结果。也就是说,使用which命令,就可以看到某个系统命令是否存在,以及执行的到底是哪一个位置的命令。 1.命令格式: which 可执行文件名称 2.命令功能: which指令会在PATH变量指定的路径中,搜索某个系统命令的位置,并且返回第一个搜索结果。 3.命令参数: -n 指定文件名长度,指定的长度必须大于或等于所有文件中最长的文件名。 -p 与-n参数相同,但此处的包括了文件的路径。 -w 指定输出时栏位的宽度。 -V 显示版本信息 4.使用实例: 实例1:查找文件、显示命令路径 命令: which lsmod 输出: [root@localhost ~]# which pwd /bin/pwd [root@localhost ~]# which adduser /usr/sbin/adduser [root@localhost ~]# 说明: which 是根据使用者所配置的 PATH 变量内的目录去搜寻可运行档的!所以,不同的 PATH 配置内容所找到的命令当然不一样的! 实例2:用 which 去找出 which 命令: which which 输出: [root@localhost ~]# which which alias which=’alias | /usr/bin/which –tty-only –read-alias –show-dot –show-tilde’ /usr/bin/which [root@localhost ~]# 说明: 竟然会有两个 which ,其中一个是 alias 这就是所谓的『命令别名』,意思是输入 which 会等於后面接的那串命令! 实例3:找出 cd 这个命令 命令: which cd 输出: 说明: cd 这个常用的命令竟然找不到啊!为什么呢?这是因为 cd 是bash 内建的命令! 但是 which 默认是找 PATH 内所规范的目录,所以当然一定找不到的!
每天一个linux命令(15):tail 命令
tail 命令从指定点开始将文件写到标准输出.使用tail命令的-f选项可以方便的查阅正在改变的日志文件,tail -f filename会把filename里最尾部的内容显示在屏幕上,并且不但刷新,使你看到最新的文件内容. 1.命令格式; tail[必要参数][选择参数][文件] 2.命令功能: 用于显示指定文件末尾内容,不指定文件时,作为输入信息进行处理。常用查看日志文件。 3.命令参数: -f 循环读取 -q 不显示处理信息 -v 显示详细的处理信息 -c<数目> 显示的字节数 -n<行数> 显示行数 –pid=PID 与-f合用,表示在进程ID,PID死掉之后结束. -q, –quiet, –silent 从不输出给出文件名的首部 -s, –sleep-interval=S 与-f合用,表示在每次反复的间隔休眠S秒 4.使用实例: 实例1:显示文件末尾内容 命令: tail -n 5 log2014.log 输出: [root@localhost test]# tail -n 5 log2014.log 2014-09 2014-10 2014-11 2014-12 ==============================[root@localhost test]# 说明: 显示文件最后5行内容 实例2:循环查看文件内容 命令: tail -f test.log 输出: [root@localhost ~]# ping 192.168.120.204 > test.log & [1] 11891[root@localhost ~]# tail -f test.log PING 192.168.120.204 (192.168.120.204) 56(84) bytes of data. 64 bytes from 192.168.120.204: icmp_seq=1 ttl=64 time=0.038 ms 64 bytes from 192.168.120.204: icmp_seq=2 ttl=64 time=0.036 ms 64 bytes from 192.168.120.204: icmp_seq=3 ttl=64 time=0.033 ms 64 bytes from 192.168.120.204: icmp_seq=4 ttl=64 time=0.027 ms 64 bytes from 192.168.120.204: icmp_seq=5 ttl=64 time=0.032 ms 64 bytes from 192.168.120.204: icmp_seq=6 ttl=64 time=0.026 ms 64 bytes from 192.168.120.204: icmp_seq=7 ttl=64 time=0.030 ms 64 bytes from 192.168.120.204: icmp_seq=8 ttl=64 time=0.029 ms 64 bytes from 192.168.120.204: icmp_seq=9 ttl=64 time=0.044 ms 64 bytes from 192.168.120.204: icmp_seq=10 ttl=64 time=0.033 ms 64 bytes from 192.168.120.204: icmp_seq=11 ttl=64 time=0.027 ms [root@localhost ~]# 说明: ping 192.168.120.204 > test.log & //在后台ping远程主机。并输出文件到test.log;这种做法也使用于一个以上的档案监视。用Ctrl+c来终止。 实例3:从第5行开始显示文件 命令: tail -n +5 log2014.log 输出: [root@localhost test]# cat log2014.log 2014-01 2014-02 […]
每天一个linux命令(14):head 命令
head 与 tail 就像它的名字一样的浅显易懂,它是用来显示开头或结尾某个数量的文字区块,head 用来显示档案的开头至标准输出中,而 tail 想当然尔就是看档案的结尾。 1.命令格式: head [参数]… [文件]… 2.命令功能: head 用来显示档案的开头至标准输出中,默认head命令打印其相应文件的开头10行。 3.命令参数: -q 隐藏文件名 -v 显示文件名 -c<字节> 显示字节数 -n<行数> 显示的行数 4.使用实例: 实例1:显示文件的前n行 命令: head -n 5 log2014.log 输出: [root@localhost test]# cat log2014.log 2014-01 2014-02 2014-03 2014-04 2014-05 2014-06 2014-07 2014-08 2014-09 2014-10 2014-11 2014-12 ============================== [root@localhost test]# head -n 5 log2014.log 2014-01 2014-02 2014-03 2014-04 2014-05[root@localhost test]# 实例2:显示文件前n个字节 命令: head -c 20 log2014.log 输出: [root@localhost test]# head -c 20 log2014.log 2014-01 2014-02 2014 [root@localhost test]# 实例3:文件的除了最后n个字节以外的内容 命令: head -c -32 log2014.log 输出: [root@localhost test]# head -c -32 log2014.log 2014-01 2014-02 2014-03 2014-04 2014-05 2014-06 […]
每天一个linux命令(13):less 命令
less 工具也是对文件或其它输出进行分页显示的工具,应该说是linux正统查看文件内容的工具,功能极其强大。less 的用法比起 more 更加的有弹性。在 more 的时候,我们并没有办法向前面翻, 只能往后面看,但若使用了 less 时,就可以使用 [pageup] [pagedown] 等按键的功能来往前往后翻看文件,更容易用来查看一个文件的内容!除此之外,在 less 里头可以拥有更多的搜索功能,不止可以向下搜,也可以向上搜。 1.命令格式: less [参数] 文件 2.命令功能: less 与 more 类似,但使用 less 可以随意浏览文件,而 more 仅能向前移动,却不能向后移动,而且 less 在查看之前不会加载整个文件。 3.命令参数: -b <缓冲区大小> 设置缓冲区的大小 -e 当文件显示结束后,自动离开 -f 强迫打开特殊文件,例如外围设备代号、目录和二进制文件 -g 只标志最后搜索的关键词 -i 忽略搜索时的大小写 -m 显示类似more命令的百分比 -N 显示每行的行号 -o <文件名> 将less 输出的内容在指定文件中保存起来 -Q 不使用警告音 -s 显示连续空行为一行 -S 行过长时间将超出部分舍弃 -x <数字> 将“tab”键显示为规定的数字空格 /字符串:向下搜索“字符串”的功能 ?字符串:向上搜索“字符串”的功能 n:重复前一个搜索(与 / 或 ? 有关) N:反向重复前一个搜索(与 / 或 ? 有关) b 向后翻一页 d 向后翻半页 h 显示帮助界面 Q 退出less 命令 u 向前滚动半页 y 向前滚动一行 空格键 滚动一行 回车键 滚动一页 [pagedown]: 向下翻动一页 [pageup]: 向上翻动一页 4.使用实例: 实例1:查看文件 命令: less log2013.log 输出: 实例2:ps查看进程信息并通过less分页显示 命令: ps -ef |less 输出: 实例3:查看命令历史使用记录并通过less分页显示 命令: history | less 输出: [root@localhost test]# history | less 22 scp -r tomcat6.0.32 root@192.168.120.203:/opt/soft 23 cd .. 24 scp -r web root@192.168.120.203:/opt/ 25 cd soft 26 ls 27 scp -r jdk1.6.0_16/ root@192.168.120.203:/opt/soft 28 clear 29 vim /etc/profile 30 vim /etc/profile […]
每天一个linux命令(12):more命令
more命令,功能类似 cat ,cat命令是整个文件的内容从上到下显示在屏幕上。 more会以一页一页的显示方便使用者逐页阅读,而最基本的指令就是按空白键(space)就往下一页显示,按 b 键就会往回(back)一页显示,而且还有搜寻字串的功能 。more命令从前向后读取文件,因此在启动时就加载整个文件。 1.命令格式: more [-dlfpcsu ] [-num ] [+/ pattern] [+ linenum] [file … ] 2.命令功能: more命令和cat的功能一样都是查看文件里的内容,但有所不同的是more可以按页来查看文件的内容,还支持直接跳转行等功能。 3.命令参数: +n 从笫n行开始显示 -n 定义屏幕大小为n行 +/pattern 在每个档案显示前搜寻该字串(pattern),然后从该字串前两行之后开始显示 -c 从顶部清屏,然后显示 -d 提示“Press space to continue,’q’ to quit(按空格键继续,按q键退出)”,禁用响铃功能 -l 忽略Ctrl+l(换页)字符 -p 通过清除窗口而不是滚屏来对文件进行换页,与-c选项相似 -s 把连续的多个空行显示为一行 -u 把文件内容中的下画线去掉 4.常用操作命令: Enter 向下n行,需要定义。默认为1行 Ctrl+F 向下滚动一屏 空格键 向下滚动一屏 Ctrl+B 返回上一屏 = 输出当前行的行号 :f 输出文件名和当前行的行号 V 调用vi编辑器 !命令 调用Shell,并执行命令 q 退出more 5.命令实例: 实例1:显示文件中从第3行起的内容 命令: more +3 log2012.log 输出: [root@localhost test]# cat log2012.log 2012-01 2012-02 2012-03 2012-04-day1 2012-04-day2 2012-04-day3 ======[root@localhost test]# more +3 log2012.log 2012-03 2012-04-day1 2012-04-day2 2012-04-day3 ======[root@localhost test]# 实例2:从文件中查找第一个出现”day3″字符串的行,并从该处前两行开始显示输出 命令: more +/day3 log2012.log 输出: [root@localhost test]# more +/day3 log2012.log …skipping 2012-04-day1 2012-04-day2 2012-04-day3 2012-05 2012-05-day1 […]
每天一个linux命令(11):nl命令
nl命令在linux系统中用来计算文件中行号。nl 可以将输出的文件内容自动的加上行号!其默认的结果与 cat -n 有点不太一样, nl 可以将行号做比较多的显示设计,包括位数与是否自动补齐 0 等等的功能。 1.命令格式: nl [选项]… [文件]… 2.命令参数: -b :指定行号指定的方式,主要有两种: -b a :表示不论是否为空行,也同样列出行号(类似 cat -n); -b t :如果有空行,空的那一行不要列出行号(默认值); -n :列出行号表示的方法,主要有三种: -n ln :行号在萤幕的最左方显示; -n rn :行号在自己栏位的最右方显示,且不加 0 ; -n rz :行号在自己栏位的最右方显示,且加 0 ; -w :行号栏位的占用的位数。 -p 在逻辑定界符处不重新开始计算。 3.命令功能: nl 命令读取 File 参数(缺省情况下标准输入),计算输入中的行号,将计算过的行号写入标准输出。 在输出中,nl 命令根据您在命令行中指定的标志来计算左边的行。 输入文本必须写在逻辑页中。每个逻辑页有头、主体和页脚节(可以有空节)。 除非使用 -p 标志,nl 命令在每个逻辑页开始的地方重新设置行号。 可以单独为头、主体和页脚节设置行计算标志(例如,头和页脚行可以被计算然而文本行不能)。 4.使用实例: 实例一:用 nl 列出 log2012.log 的内容 命令: nl log2012.log 输出: [root@localhost test]# nl log2012.log 1 2012-01 2 2012-02 3 ======[root@localhost test]# 说明: 文件中的空白行,nl 不会加上行号 实例二:用 nl 列出 log2012.log 的内容,空本行也加上行号 命令: nl -b a log2012.log 输出: [root@localhost test]# nl -b a log2012.log 1 2012-01 2 2012-02 3 4 5 ======[root@localhost test]# 实例3:让行号前面自动补上0,统一输出格式 命令: 输出: [root@localhost test]# nl -b a -n rz log2014.log 000001 2014-01 000002 2014-02 000003 2014-03 000004 2014-04 000005 2014-05 000006 2014-06 000007 2014-07 000008 2014-08 000009 2014-09 000010 2014-10 000011 2014-11 000012 2014-12 000013 ======= […]
每天一个linux命令(1):ls命令
ls命令是linux下最常用的命令。ls命令就是list的缩写缺省下ls用来打印出当前目录的清单如果ls指定其他目录那么就会显示指定目录里的文件及文件夹清单。 通过ls 命令不仅可以查看linux文件夹包含的文件而且可以查看文件权限(包括目录、文件夹、文件权限)查看目录信息等等。ls 命令在日常的linux操作中用的很多! 1. 命令格式: ls [选项] [目录名] 2. 命令功能: 列出目标目录中所有的子目录和文件。 3. 常用参数: -a, –all 列出目录下的所有文件,包括以 . 开头的隐含文件 -A 同-a,但不列出“.”(表示当前目录)和“..”(表示当前目录的父目录)。 -c 配合 -lt:根据 ctime 排序及显示 ctime (文件状态最后更改的时间)配合 -l:显示 ctime 但根据名称排序否则:根据 ctime 排序 -C 每栏由上至下列出项目 –color[=WHEN] 控制是否使用色彩分辨文件。WHEN 可以是’never’、’always’或’auto’其中之一 -d, –directory 将目录象文件一样显示,而不是显示其下的文件。 -D, –dired 产生适合 Emacs 的 dired 模式使用的结果 -f 对输出的文件不进行排序,-aU 选项生效,-lst 选项失效 -g 类似 -l,但不列出所有者 -G, –no-group 不列出任何有关组的信息 -h, –human-readable 以容易理解的格式列出文件大小 (例如 1K 234M 2G) –si 类似 -h,但文件大小取 1000 的次方而不是 1024 -H, –dereference-command-line 使用命令列中的符号链接指示的真正目的地 –indicator-style=方式 指定在每个项目名称后加上指示符号<方式>:none (默认),classify (-F),file-type (-p) -i, –inode 印出每个文件的 inode 号 -I, –ignore=样式 不印出任何符合 shell 万用字符<样式>的项目 -k 即 –block-size=1K,以 k 字节的形式表示文件的大小。 -l 除了文件名之外,还将文件的权限、所有者、文件大小等信息详细列出来。 -L, –dereference 当显示符号链接的文件信息时,显示符号链接所指示的对象而并非符号链接本身的信息 -m 所有项目以逗号分隔,并填满整行行宽 -o 类似 -l,显示文件的除组信息外的详细信息。 -r, –reverse 依相反次序排列 -R, –recursive 同时列出所有子目录层 -s, –size 以块大小为单位列出所有文件的大小 -S 根据文件大小排序 –sort=WORD 以下是可选用的 WORD 和它们代表的相应选项: extension -X status -c none -U time -t size -S atime -u time -t access -u version -v use -u -t 以文件修改时间排序 -u 配合 -lt:显示访问时间而且依访问时间排序 配合 -l:显示访问时间但根据名称排序 否则:根据访问时间排序 -U 不进行排序;依文件系统原有的次序列出项目 -v 根据版本进行排序 -w, –width=COLS 自行指定屏幕宽度而不使用目前的数值 -x 逐行列出项目而不是逐栏列出 -X 根据扩展名排序 -1 每行只列出一个文件 –help 显示此帮助信息并离开 –version 显示版本信息并离开 4. 常用范例: 例一:列出/home/peidachang文件夹下的所有文件和目录的详细资料 命令:ls -l -R /home/peidachang 在使用 ls 命令时要注意命令的格式:在命令提示符后,首先是命令的关键字,接下来是命令参数,在命令参数之前要有一短横线“-”,所有的命令参数都有特定的作用,自己可以根据需要选用一个或者多个参数,在命令参数的后面是命令的操作对象。在以上这条命令“ ls -l -R /home/peidachang”中,“ls” 是命令关键字,“-l -R”是参数,“ /home/peidachang”是命令的操作对象。在这条命令中,使用到了两个参数,分别为“l”和“R”,当然,你也可以把他们放在一起使用,如下所示: 命令:ls -lR /home/peidachang 这种形式和上面的命令形式执行的结果是完全一样的。另外,如果命令的操作对象位于当前目录中,可以直接对操作对象进行操作;如果不在当前目录则需要给出操作对象的完整路径,例如上面的例子中,我的当前文件夹是peidachang文件夹,我想对home文件夹下的peidachang文件进行操作,我可以直接输入 ls -lR peidachang,也可以用 ls -lR /home/peidachang。 […]
解决Ubuntu更新nVidia显卡驱动后黑屏问题
跟大数据没关系,自己使用的一个记录。 现在已经完全抛弃windows了,完全用ubuntu来干活了。不是windows不好,是中国的windows生态环境太差了,随便装个国产小软件会附带给用户装一堆垃圾的东西,什么各种毒霸,各种手机助手,各种输入法,稍微点错个什么按钮就装一堆的垃圾,到处都是陷阱,就连开源的SourceForge推出的FileZilla安装器,后台还偷偷自动下载Norton 360强制安装。他妈的老外都被中国这帮臭流氓软件公司带坏了。用户还根本没得选择,所以干脆痛下决心,把Windows干掉,直接上ubuntu了,使用方法习惯了几天就好了,把eclipse也换成了IntelliJIDEA,感觉开发效率比用windows的时候还高不少,现在再看别人用windows觉得那玩意就是渣渣啊。除了网银还得虚拟机,别的真的没啥需要windows来做的。而且,说实话,在linux下用命令行解决问题比用界面解决快多了。 但是,又说但是了,Linux系统虽然很好,可显卡厂商对它支持并不好,我用了半年ubuntu,基本出问题都是在nVidia显卡上,Linus Torvalds曾经在大会上当众对英伟达竖中指,并说”Fuck you nVidia”。我的使用的感觉也是一样的。 官方linux版本驱动更新太慢,ppa的bumble bee里面有最新的驱动,但是不稳定。昨晚上就被搞黑屏了。笔记本是intel/nVidia双显卡,平时都是用intel集显,没啥大问题,昨晚下载安装了xorg-edgers的349驱动,然后选了一下nVidia显卡,结果直接启动黑屏了,怎么折腾都不行。Google被屏蔽,百度上翻好几页基本都是建议重装系统,所以再次吐槽百度,搜索正经事出来的结果就是垃圾。特别提醒程序员们,如果想提高自己的各种水平,花钱买VPN翻墙上google也不能用百度,用百度的程序员处于鄙视链的最底层,是程序员里的败类,不管你用什么语言。:) 然后还是翻墙上了谷歌,第一条就搜到想要的答案了。很快就解决了,适用于nVidia更新非官方显卡驱动后启动黑屏或花屏,整理方法如下,记录一下,省的以后忘了。 启动黑屏后可以按Ctrl-Alt-F1进入命令行界面。这个是基础知识,需连网。 进入cli模式后,sudo apt-get install ppa-purge sudo ppa-purge xorg-edgers sudo apt-get purge nvidia-* 创建一个临时文件夹如 mkdir ~/tmp cp /etc/X11/xorg.conf* ~/tmp sudo apt-get autoremove sudo apt-get update sudo apt-get upgrade sudo reboot 重启后还是C+A+F1进命令行 sudo apt-get install nvidia-331 nvidia-prime sudo cp ~/tmp/xorg.conf.nvidia-xconfig-original /etc/X11/xorg.conf sudo vi /etc/X11/xorg.conf 确保内容如下 Section “ServerLayout” […]