Archlinux配置一些零碎的点(持续更新)

本文档记录了作者在Arch Linux系统上的配置过程及遇到的问题解决办法,包括图形界面配置、网络设置、硬盘读写权限修改等内容,并分享了PyCharm安装、TensorFlow配置及CUDA安装等经验。

就像是看自己孩子的成长一样,看自己的系统一点点完善起来。

配置:xps15 9550 4k屏

桌面:xfce4

写在前面的计划

  1. 学着备份系统
  2. 建一个个人网站
  3. 在git上面参与一个开源的项目

 

 

---22/2/2017---

今日安装

Inkscape 用于ps图片,不知如何插入latex文档,有些郁闷。

经验教训

屏幕随鼠标而动,屏幕分辨率降低。当前屏幕大小大于原显示器大小。鼠标挪到左上方,左上方的东西会出现右下部分消失。这时候,试一下Alt+鼠标滚轮。你会明白是为什么。

联wifi有很多种方法:netctl(wifi-menu), networkmanager, iw等等,记着不要混用,否则会有意想不到的麻烦。个人喜欢使用iw(https://wiki.archlinux.org/index.php/Wireless_network_configuration_(%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87)

使用这种方法时,需要注意:

1. 很多人在装机时使用的大都是netctl 或者 networkmanager并给他们设置了开机的自动启动,在设置前,请禁用networkmanager.

sudo systemctl stop NetworkManager

2. 需要提前装两个包 iw 和 dhcpcd. (详细走到这一步的小伙伴肯定已经可以在某些情况下连上网络啦)

我的步骤

sudo ip link set wlp2s0 up # 打开接口,有些人的接口可能不是wlp2s0而是wlan0,先用ifconfig查看一下咯
sudo iw wlp2s0 connect -w Tsinghua #注意官方文档没有-w,我连接的是开放wifi,故无需写上密码
dhclient -r wlp2s0
dhclient wlp2s0

 3. 之前遇到了一些奇怪的问题。sudo wifi menu有时无法解决wpa_supplicant 的问题,一般都需要通过wpa_supplicant 来配,配置文件要提前写好

4. wpa_cli status 我通过wifi-menu连上之后wpa_cli status 显示的是 interface: p2p-dev-wlp2s0, wpa_state=DISCONNECTED, p2p_device_address=, address,k uuid. 但iw 配置出来得是 interface 'wlp2s0', wpa_state=COMPLETED

5. 昨天belmont连不上,于是ln -s /usr/lib/systemd/system/NetworkManager.service /usr/lib/systemd/system/dbus-org.freedesktop.NetworkManager.service就好了,然后之后就跪了

6. 对于already up的事情,有人给出了这种解决方案

ip link set wlan0 down
netctl start profile

我试了没用

7. 也有提示,说

[   30.770142] brcmfmac: brcmf_p2p_create_p2pdev: set p2p_disc error

 然后也不知道怎么改,最后似乎是用iw 之后,它自动ln了两个文件, iw就能用了,但此时只能ping 8.8.8.8,最后还是用的是wifi-menu.

8. Networkmanager 和 啥是冲突的,

我反正是sudo systemctl stop NetworkManger.service

sudo enable system-resolved.service (这一步导致了两个ln,也就是7中描述的事情)

 

 ---26/2/2017---

时间过得咋这么快呢

由于要连服务器的Linux,因此,下载了pycharm的专业版,之后要破解它!

下好了pycharm,由于担心丢失或操作不当需要重新下载,就准备在移动硬盘中备份一次,但是却遇到了问题

ntfs格式的read only解决方案

之前买了一块WD Elements的硬盘,挂到archlinux上发现 read only.

fdisk -l 看了一下,显示

Size Type: Microsoft basic data

之后test的命令:sudo ntfsfix /dev/sda1 使用ntfsfix 修复不明白的错误

另外,检查一个文件有没有损坏,请使

硬盘的格式ntfs,可以通过lsblk -f 查看。

看wiki发现需要使用最新的包udev,据说是为了"Getting a kernel that supports usb_storage" 安上之后几乎没有用,后来发现:

archlinux采用了udisks2来负责挂载分区,默认情况下支持ntfs挂载,但是只是可读不支持写操作。

解决方法:

    安装ntfs-3g

安装好ntfs-3g后,udisks2会默认调用ntfs-3g的mount.ntfs来挂在ntfs格式了。这样挂载的ntfs格式的分区就能够有写权限了。

转自:http://blog.csdn.NET/cnsword/article/details/8445920

之后一切恢复正常。

pycharm的安装

网上有教程,我将其安装到了/usr/local/下面,因为我的matlab也安在那里,只知道windows大都安在program files下面,不知arch是怎么搞的。

包含所有内容:http://www.jianshu.com/p/042324342bf4

包含注册码:http://idea.lanyus.com/

非常好用喔。有效期至17年11月23日。

配置Tensorflow

http://blog.youkuaiyun.com/bigconvience/article/details/8782668

makepkg是一个软件包自动编译脚本。使用时需要一个 Unix 环境和 PKGBUILD.

Arch用户软件仓库(Arch User Repository,AUR)是为用户而建、由用户主导的Arch软件仓库。AUR中的软件包以软件包生成脚本(PKGBUILD)的形式提供,用户自己通过makepkg生成包,再由pacman安装。创建AUR的初衷是方便用户维护和分享新软件包,并由官方定期从中挑选软件包进入community仓库。本文介绍用户访问和使用AUR的方法。

而Yaourt相当于给pacman和AUR之间架起了一座桥梁,具体的安装步骤可以参考http://blog.youkuaiyun.com/baidu_16051437/article/details/50459171

Arch 有官方的cuda

sudo pacman -S cuda
resolving dependencies...
looking for conflicting packages...
Packages (3) gcc5-5.4.0-1  opencl-nvidia-378.13-1  cuda-8.0.44-3

大概安了这三个包吧,看看这个依赖情况。

 

youtube上面上面抄下来的命令(不全)

conda install conda- tensorflow

jupyter notebook

 

 optirun [OPTION]... command [command options...]
Run an application using the discrete video card.

 

呃,配显卡才发现,lspci -vnn | grep 能找到VGA并观测其状态http://linux.51yip.com/search/lspci

lspci可以看见各种硬件(list Peripheral Component Interconnect(外围设备互联))

比如我看见了我的N卡,

3D controller: NVIDIA Corporation GM107M [GeForce GTX 960M] (rev ff)

呃 ,然后运行了一下optirun -vv glxgears

样子嘛就是几个齿轮转动的样子

这个glxgears所在的包叫mesa-demos

3D controller: NVIDIA Corporation GM107M [GeForce GTX 960M] (rev a2)

 

Revision.

Different versions of the same model. Could mean just a different firmware version, but could mean a completely different chipset.

等我关了视频,发现后面又变成了rev ff

之所以会测不到nvidia-smi,是因为开了bumblebee。

前些天装pytorch和tensorflow一直没有成功,结果用anaconda一下就好了,感觉挺神奇的...

结果今天装torch又出了bug,后来发现是cuda版本较低所致,虽然都是8.0,还是有一个旧的函数库233.

今天学到了画图的知识,先把代码记下来

# string format
label = "./{}_{}pt_{}dstep_{}gstep_{}mbs".format(datetime.now(),npt, d_steps, g_steps, minibatch_size)

#draw
f = plt.figure()
ax = f.add_subplot(111)
db_x = np.linspace(-sample_range, sample_range, sample_points)
p_x = np.linspace(-sample_range, sample_range, sample_points)
line_db, = ax.plot(db_x, db_x, label='decision boundary')
ax.set_ylim(0, 1)
line_pd, = ax.plot(p_x, p_x, label='real data')
line_pg, = ax.plot(p_x, p_x, label='generated data')

# update
for ****
	line_db.set_xdata(db_x)
	line_pd.set_xdata(p_x)
	line_pg.set_xdata(p_x)
	line_db.set_ydata(db)
	line_pd.set_ydata(pd)
	line_pg.set_ydata(pg)
	ax.legend()
	f.canvas.draw()
	f.savefig("./{}/{}.png".format(label,iter))
	f.show()

以及如果要画新图的话:

        pg, _ = np.histogram(pg_list, bins=bins, density=True)
        # f2 = plt.figure()
        # ax2 = plt.axes()
        # ax2.hist(pg_list,bins = 1000)
        # f2.show()

其实还是不太懂句柄是怎么搞的啊。

存视频存视频。

 

转载于:https://www.cnblogs.com/kebai/p/6431428.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值