ubuntu 18.04 无法安装NVIDIA驱动解决方法

笔记本是双显卡,在终端执行

ubuntu-drivers devices

可以列出可以安装的驱动 含有recommended的表示推荐的驱动
如下所示(我已安装好之后的显示)

== /sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0 ==
modalias : pci:v000010DEd00000DF6sv000017AAsd00003981bc03sc00i00
vendor   : NVIDIA Corporation
model    : GF108M [GeForce GT 550M]
driver   : nvidia-304 - third-party free
driver   : nvidia-340 - distro non-free
driver   : nvidia-driver-390 - distro non-free recommended
driver   : xserver-xorg-video-nouveau - distro free builtin

我们执行安装命令直接安装推荐的驱动

sudo apt-get install nvidia-driver-390 

问题出在这里,安装过程中提示一个文件不能覆盖,因为已经被某个软件包占用。因为ubuntu默认的驱动是xserver-xorg-video-nouveau 并且包含这个文件。这个时候我们就要添加强制写入的命令 dpkg -i –force-overwrite。
完整的命令如下

sudo apt-get -o Dpkg::Options::="--force-overwrite" -f install nvidia-driver-390 

成功安装后重启即可。

在openwrt上使用gfwlist模式

以往使用的路由翻墙模式是chnroute模式,简单来讲就是ip不在中国的全部使用代理,优点就在于方便,缺点也很明显,有些站点虽然在境外但是并没有被墙,这种情况是不应该再用代理的。

这一次改用gfwlist模式,也就是通常所说的黑名单模式。路由本身已经装好chinadns,ss,和dns-forwarder三件套,这个模式下我们可以停用chinadns了。

首先:安装dnsmasq-full,卸载dnsmasq。不要弄错顺序,不然处理起来很麻烦。(这一步是因为dnsmasq-full支持ipset)

第二步:wan口设置页面,设置dns服务器为127.0.0.1或者留空。(路由器本身提供dns服务)

第三步: DHCP/DNS设置页面:DNS转发填写能够正常访问的公共DNS。忽略解析文件不能勾选,并填写解析文件:/tmp/resolv.conf.auto (使用dnsmasq-full提供dns服务)

第四步 : 防火墙设置页面:自定义规则 (后方的端口为ss的本地端口)

ipset -N gfwlist iphash
iptables -t nat -A PREROUTING -p tcp -m set --match-set gfwlist dst -j REDIRECT --to-port 8668
iptables -t nat -A OUTPUT -p tcp -m set --match-set gfwlist dst -j REDIRECT --to-port 8668 

第五步:SSH登录路由器,在etc目录下建立dnsmasq.d文件夹,并上传gfwlist文件。格式如下所示,您可以自行添加。

server=/twimg.com/127.0.0.1#5353
ipset=/twimg.com/gfwlist

第七步:打开etc目录下的dnsmasq.conf文件,添加如下内容,指向您添加的文件夹

conf-dir=/etc/dnsmasq.d

第八步:ss访问控制设置页面:被忽略ip列表我们选择为留空,此时ss会全局代理。接下来我们要给额外忽略ip中添加两个地址 0.0.0.0/1 和 128.0.0.0/1,这样做之后,ss才会只对gfwlist中的域名代理。

第九步:我们在第五步的代码中可以看到对于gfwlist中的域名我们通过5353端口进行解析。这里我们要用到dns-forwarder,打开大的设置界面,把监听端口改为5353即可。

第十步:以上工作全部完成后,我们重启路由,通过这个网址测试是否成功。

关于openwrt的升级

openwrt更新到了18.06.2,虽然是小版本的更新,鉴于最近路由翻墙不是很稳定,决定升级。

官网下载升级包,sysupgrade.tar,在路由的备份升级界面直接升级即可。

需要注意的是,升级之后自行安装的应用将全部被覆盖,只能保留配置文件。所以如果你为了翻墙对基础设置进行了修改,升级之后有无法上网的风险,需要逐项检查。

首先:WAN口设置,把自定义的dns服务器设置成国内的公共DNS。
接着:DHCP/DNS,把DNS转发清空,把忽略解析文件的勾去掉。

连上网络之后,在软件包页面更新软件列表,更新完毕之后,搜索luci-i18n-base-zh-cn安装进行汉化。

然后就是翻墙三件套的安装,分别是ss,dns-forwarder,chinadns,下载地址
需要下载ipk文件并上传到路由器手动安装。
这里需要注意的是:路由器传输文件需要使用scp协议。而xftp不支持scp协议。我们选择WINSCP这个软件。

另外vps有些高阶端口会被封,所以再能够ping通的情况下可以先修改一下端口试试。

关于软件包的升级

执行以下命令可批量升级软件包

opkg update
opkg list-upgradable | cut -f 1 -d ' ' | xargs opkg upgrade

openwrt一些升级说明

关于dnsmasq

openwrt的默认dnsmasq并不支持ipset,需要安装dnsmasq-full版本。ipset是为了支持对域名的转发代理,而chinadns是对ip进行转发代理。所以如果你选择域名匹配翻墙需要安装dnsmasq-full版本。

这里就有了一个问题,当卸载dnsmasq之后,无法解析域名,也就无法安装dnsmasq-full了。这里需要卸载和安装同步进行以避免此类问题。代码如下:

opkg remove dnsmasq && opkg install dnsmasq-full

关于chinadns

chinadns的原理很简单,可设置两个dns,一个是国内的dns,一个是国外的可信dns。当接到解析任务的时候,会同时向两个dns发送解析请求。

首先国外的可信dns拥有优先权,如果国外dns先返回结果就采用,如果是国内ip,直接访问,如果是国外ip则通过代理访问。

如果国内dns先返回结果,如果是国内的ip则直接访问。如果是国外的ip则抛弃掉,采用国外dns的结果。

看到这里,大家可能都和我有一样的疑问,如果国内dns率先返回的是假的国内ip,这样不就解析失败了。

但是实际情况很有趣,国外被污染的域名返回的仍然是国外ip,至于原因,也许只有他们自己知道了。所以这一点暂时没有担心的必要。

其实chinadns主要思想的是提高访问速度,如果你把所有的解析任务交给国外的dns,那么对于国内网站来说,你访问的不一定是最快,最合适的服务器。而且经过代理访问dns必然大大的加大解析时间。不管如何chinadns仍然是目前最优的dns优化选择。

以下代码用来更新chinadns的中国路由信息。

 wget -O- 'http://ftp.apnic.net/apnic/stats/apnic/delegated-apnic-latest' | awk -F\| '/CN\|ipv4/ { printf("%s/%d\n", $4, 32-log($5)/log(2)) }' > /etc/chinadns_chnroute.txt

迅雷下载宝的一些问题

如果您的下载宝一直提示下载器不在线,而且下载速度变慢,请您更新下载宝的固件到最新版。

我在官网找到的最新版是327版本,刷了之后,问题依旧。

打算刷第三方的固件。不过在寻找的过程中,找到了338版本,试了一下,问题得到解决。大家可以自行百度下载。

为什么迅雷不在官网放338的固件,值得大家联想。也许迅雷打算放弃下载宝。

网上现在还有一款基于openwrt的第三方固件,因为需要sd卡刷入,暂时就不折腾了,等338这个固件也不灵了再说吧。

pixel线刷教程

手机是pixel2  xl ,系统是win10。因为手机要root,无法ota,所以每月安全更新都要线刷,然后再重新刷入twrp,和root。

准备工作:

需要在这里下载谷歌的sdk工具。在这里下载你需要的线刷包。
线刷包解压到本地,修改flash-all.bat,去掉其中的-w,保留数据。不想保留数据就不用修改文件了。
这里下载twrp,在这里下载magisk

第一步:手机通过usb连接电脑,执行下列命令重启到bootloader模式

adb reboot bootloader

第二步:直接运行flash-all.bat进行刷机。

解压线刷包到adb目录下,直接运行flash-all.bat刷机。

第三步:刷入twrp和magisk

注意:首先刷入img包可以临时进入twrp,进入之后再刷入zip包,才可保留twrp,当然如果你认为刷入twrp并无必要,可以不刷zip包,直接刷入magisk获取root即可。

adb reboot bootloader
fastboot boot twrp包名.img

进入临时twrp先刷入twrp的zip包再刷入magisk,或者直接刷入magisk。

c8950如何实现wifi以及基站定位

国行阉割安卓早已经司空见惯,即使刷了google服务包,还是无法实现基站和wifi定位。(这里的定位主要是针对google地图,据说其他app都可以实现基站wifi和基站的定位即使google地图不可以。)

最近把刷机当游戏,连刷n次就是为了找到如何实现基站和wifi定位。

即便如此 我还是没能找出到底哪里会影响定位。(我虽然实现了google地图的基站和wifi定位。)现在我把可能影响因素一一列举出来。

第一种可能,刷入的google服务包有问题。

c8950d用的是4.0.4的系统,刷入的包应该是ics的google服务包,ics就是4.0.4的命名缩写,有兴趣可以去搜一下安卓各版本的名称。

我找了大概4个服务包,刷入的是最新的服务包20120817版本。

第二种可能,刷入服务包后还需要一个googlesetupwizardplus.apk,

问题很简单你在4.0.4的设置里并找不到关于基站定位的设置,需要借助这样一个app开启google服务的基站定位。

这个app搜索下载安装即可。

第三种可能:或许我还没发现。在这里留个待续吧…..

c8950d 刷机步骤

很久没有刷机,这次刷机把方法给忘记了,走了蛮多弯路,这次把步骤写下来,希望自己以后少走弯路吧。年龄大健忘啊哭~~~。

第一步,强制升级官方包,为了安全拒绝使用第三方的rom。

把官方包放在tf卡中,同时按下电源键 音量+ 音量-进入强制升级

第二步刷入第三方的recovery

关掉快速启动 关机 同时按下电源键 音量- 10秒钟 连上电脑 刷入recovery

第三步通过第三方recovery获得root权限并刷入google服务包

关机 同时按下电源键 音量+ 进入recovery 然后获得root权限刷入google包

结束 后面还要清理app 优化一些功能 太麻烦了 打算这次做个自己的rom 以后随便刷。

c8950d刷机出现紫屏怎么办

这机子用着越来越不爽了,可能是天气太热的原因,机身发热越来越频繁,不断的重启。

下面进入正题,当你刷官方包时,也就是同时按下电源键和音量上下键进行强制升级,出现紫屏的情况,也有人说是粉屏,囧。

怎么解决呢,一般这种情况是tf卡出了问题,系统无法读取tf卡。重新插拔tf卡或者换一个tf卡即可解决这个问题。

sfc是什么,有什么用?

System File Checker 系统文件检查器,这就是SFC命令的意思了,这个命令会扫描所有受保护的系统文件并用正确的 Microsoft 版本替换不正确的版本。SFC命令对维护整个系统文件是很有用的。具体的做法是:

在“开始”/“运行”中,输入“SFC/scannow”,对系统文件进行扫描并修复。

SFC命令语句如下:

SFC [/scannow] [/scanonce] [/scanboot] [/cancel] [/enable] [/purgecache] [/cachesize=x] [/quiet] 。其中:

/scannow 立即扫描所有受保护的系统文件。

/scanonce 扫描所有受保护的系统文件一次。

/scanboot 每次启动时扫描所有受保护的系统文件。

/cancel 取消所有暂停的受保护系统文件的扫描。

/enable 为正常操作启用 Windows 文件保护。

/purgecache 清除文件缓存并立即扫描所有受保护的系统文件。

/cachesize=x 设置文件缓存大小。

/quiet 不提示用户就替换所有不正确的文件版本。