Ubuntu 折腾记


[success]说来真的是坎坷,本来是想放弃windows的,然后就直接装了个Ubuntu,原来的数据都没了。但是现实所迫几乎做什么都需要用到windows。。。因为实在忍受不了虚拟机的卡顿,wintogo同样卡的一批。最后只好乖乖装回windows,整个过程经历了一个星期,这其中学到了很多东西,所以在这里整理一下,好的,进入正题。[/success]

换源

这个是最经常遇到的问题,我们一般可以使用阿里云的源。

进入目录cd /etc/apt/

编辑源文件夹:sudo vi sources.list

然后换成下面的源:

[block]
#阿里云源
deb http://mirrors.aliyun.com/ubuntu/ disco main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ disco main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ disco-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ disco-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ disco-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ disco-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ disco-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ disco-backports main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ disco-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ disco-proposed main restricted universe multiverse
[/block]

更新源:sudo apt-get update && sudo apt-get upgrade

美化(主题)

我们可以使用软件来进行ubuntu的美化。

安装软件:sudo apt-get install gnome-tweak-tool

主题(插件)下载网址:https://extensions.gnome.org/

推荐安装下面几个插件:

1.User theme — shell主题可以使用桌面主题

2.Dash to dock—更改dock的样式,可以使图标居中。

3.Hide top bar—可以设置自动隐藏顶部栏,因为18.04应用上框不会和顶部栏合并,比较占面积。

当然我们需要安装谷歌浏览器扩展才能手动安装:https://chrome.google.com/webstore/detail/gnome-shell-integration/gphhapmejobijbbhgpjhcjognlahblep

还有下载主机连接器:sudo apt install chrome-gnome-shell

然后看到自己喜欢的东西就可以打开开关就可以下载了。

这里推荐一下mac风格的主题和图标 主题下载 图标下载

主题一般放在 /usr/share/thems/里面,图标放在 /usr/share/icons 里面。

运行exe文件

废话不多少,直接安装wine:apt install wine

运行命令 wine xxx.exe

安装JAVA

我们可以直接安装:sudo apt-get install openjdk-8-jdk

安装好后可以查看版本:java -version

我们也可以手动安装

到官网下载压缩包:https://www.oracle.com/technetwork/java/javase/downloads/index.html

创建目录:sudo mkdir /usr/lib/jvm

解压:sudo tar -zxvf jdk-7u60-linux-x64.gz -C /usr/lib/jvm

修改资源文件:sudo vi ~/.bashrc

然后添加下面的内容:

[block]

#set oracle jdk environment
export JAVA_HOME=/usr/lib/jvm/jdk1.8.0_191  ## 这里要注意目录要换成自己解压的jdk 目录
export JRE_HOME=${JAVA_HOME}/jre  
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib  
export PATH=${JAVA_HOME}/bin:$PATH

[/block]

使环境变量生效:source ~/.bashrc

注册JDK:sudo update-alternatives --install /usr/bin/java java /usr/lib/jvm/jdk1.8.0_191/bin/java 300

然后我们就可以查看版本,看下是否生效:java -version

finalsheel安装

使用一键安装脚本:wget www.hostbuf.com/downloads/finalshell_install_linux.sh

可执行权限:chmod +x finalshell_install_linux.sh

运行脚本:sudo bash ./finalshell_install_linux.sh

参考文章:http://www.hostbuf.com/t/1059.html

下载器安装

windows上有IDM,ubuntu上有XDM,两者用起来效果都不错。

下载地址:https://sourceforge.net/projects/xdman/files/

chrome扩展安装:https://chrome.google.com/webstore/detail/xdm-browser-monitor/bgpkelneombgembocnickiddlbebmica

conda安装

按照下面的教程安装:https://docs.conda.io/projects/conda/en/latest/user-guide/install/linux.html

安装这个主要是为了方便的管理python环境。

执行安装脚本:bash Anaconda-latest-Linux-x86_64.sh

换源和添加环境变量我这里没时间写,而且我之前也写过了,所以这里就不多做演示。

openvpn安装

这个软件我们也经常用到,所以我们这里说一下怎么安装

下载地址:https://openvpn.net/community-downloads/

配置文件./configure

如果提示openssl check failed 我们安装 sudo apt install libssl-dev

如果提示route utility is required but missing 我们安装 sudo apt install net-tools

如果提示 lzo enabled but missing我们 sudo apt-get install liblzo2-dev

如果提示libpam required but missing 我们 sudo apt-get install libpam0g-dev

然后我们就可以编译安装了..

make && sudo make install

在配置好.ovpn文件后,执行

openvpn /etc/openvpn/client.ovpn

即可连接服务器了(注意该目录下对应文件的权限)。注意,上面的参数应该换成你的配置文件实际位置。

此时,终端会回显很多连接日志。如果连接不成功,则可以通过这些日志来确定出错位置。如果要断开,只需要通过Ctrl+C强制终止即可。

上面的命令在实际中并不方便,因为它要占用一个独立的终端。在测试成功后,使用以下命令即可在后台连接OpenVPN:

openvpn /etc/openvpn/client.ovpn > /dev/null &

值得称赞的是,openvpn非常智能,在连接异常中断、无法连接服务器、断网的情况下,它会自动重连。因此,如果希望开机即自动连接OpenVPN,或者是VPN常年在线,则可将上述命令行加入

/etc/rc.local

中。注意,命令末尾的&符号不能省略,否则将可能阻塞系统的正常启动。

终端美化

这个也是一个很重要的地方,有了这个你的终端就会变得非常好看。

安装zsh:sudo apt-get install zsh

把默认的shell换成zsh: chsh -s /bin/zsh

安装 oh-my-zsh : sh -c "$(curl -fsSL https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"

然后你就可以编辑这个文件了(你在哪里下载的就在哪里编辑 ): vi .zshrc

找到ZSH_THEME="robbyrussell"更改引号内的内容(也就是你要换的主题代码)更改好后保存并退出,重启虚拟机你就会发现你的Ubuntu焕然一新。

我们可以去https://ohmyz.sh/ 找好看的shell主题(这里主要是看样式…)

创建启动图标

ubuntu里面有好多软件都是sh脚本,所以我们为了方便可以自己创建一个启动图标。

一些应用程序(例如很多.sh程序)如果想在Ubuntu中添加到Dash home中进行快速的启动,则需要找到/usr/share/applications这个目录,其中存放的全部是dash中的启动器,将你需要的程序xxx添加其中即可。具体操作步骤为: 命令行操作内容:

cd /usr/share/applications

sudo gedit xxx.desktop

打开需要编辑的文本内容为:

[block]

[Desktop Entry]
Version=1.0
Name=xxx
Exec=/home/username/xxx.sh(这个是启动程序需要执行的文件路径名)
Terminal=false
Icon=/home/username/xxx.png(这个是图标)
Type=Application
Categories=Development

[/block]

这样就可以在dash中看到xxx的启动器图标了,也可以直接将其添加锁定到launcher

参考文章:https://blog.csdn.net/weixin_38437243/article/details/78259475

安卓模拟器安装

推荐用这个:https://www.genymotion.com/

安装过程不说了,自己百度。。。

可以参考这个:https://pentester.land/tips-n-tricks/2018/10/19/installing-arm-android-apps-on-genymotion-devices.html

分区

这个也很重要

查看所有的分区:sudo fdisk -l

新建分区: sudo fdisk /dev/sdb

然后我们就进入了分区界面:

之后进入command状态,大概是这么操作的:

输入 m 查看帮助

输入 p 查看 /dev/sdb 分区的状态

输入 n 创建sdb这块硬盘的分区

选 p primary =>输入 p

Partition number =>分一个区所以输入 1

其他的默认回车即可

最后输入 w 保存并退出 Command 状态。

然后我们建立一个ext4的分区:

sudo mkfs -t ext4 /dev/sda? ;?为分区号

或者

sudo mkfs.ext4 /dev/sda1

删除分区: fdisk /dev/sdb1

查看分区格式: df -T /dev/sdb1

卸载分区:sudo umount /dev/sdb1

挂载分区

创建挂载目录: mkdir /lutong

通知系统分区表的变化: partprobe /dev/sdb1

挂载分区: mount /dev/sdb1 /lutong

查看是否挂载:df -h

建立软链接

(如果想让某些云盘软件访问的话,需要自己把文件用户改为www,不是root就行)

ln -s 源地址 目的地址

比如我把linux文件系统rootfs_dir软链接到/home/jyg/目录下

ln -s /opt/linux/rootfs_dir /home/jyg/rootfs_dir就可以了

删除软连接

这个文章详细https://www.cnblogs.com/zishengY/p/7137671.html

查看被占用的端口号

lsof命令lsof -i:端口号

netstat命令netstat -tunlp | grep 端口号

snap走代理

方法一、更改/etc/environment

/etc/environment是一个Shell脚本,snapd会读取它,应用其中指定的配置信息,因此设置代理服务器的正确目标,实际上就是这里。

/etc/environment文件中加入以下两行:

[block]

http_proxy=[服务器地址]:[端口号]

https_proxy=[服务器地址]:[端口号]

[/block]

然后重启snapd服务,运行以下命令:

sudo systemctl restart snapd

注:snapd读取/etc/environment,因此设置代理环境变量是有效的,在Ubuntu上通过设置→网络→网络代理自动完成的,因此只要在更改该文件后重新启动snapd就可以了。

方法二、覆盖snapd的现有设置

除了修改environment文件,也可以修改snapd服务的配置文件,在其加入Environment信息,信息内容实际上就是方法一中设置代理服务器的语句。

运行以下命令,打开snapd的配置文件:

sudo systemctl edit snapd.service

在打开的文本编辑器中,加入以下代码,共三行:

[block]

[Service]

Environment=http_proxy=http://proxy:port

Environment=https_proxy=http://proxy:port

[/block]

最后重新加载snapd服务,运行以下命令:

sudo systemctl daemon-reload

sudo systemctl restart snapd.service

至此,Snap安装现在应该通过指定的代理了。

anbox安装

这个也是一个很厉害的安装模拟器,这个是基于linux系统直接进行的模拟,每个应用都可有一个独立的窗口,虽然很牛逼,但是我实际测试,发现没啥用,因为现在很多软件都是基于ARM框架而不是X86。。。

安装非常麻烦。。。

我直接贴我原来的文章:http://book.xiaoyou66.com/read/Ubuntu/a32

启动脚本

1.建立rc-local.service文件

sudo vi /etc/systemd/system/rc-local.service

2.复制以下内容

[block]

[Unit]
Description=/etc/rc.local Compatibility
ConditionPathExists=/etc/rc.local
[Service]
Type=forking
ExecStart=/etc/rc.local start
TimeoutSec=0
StandardOutput=tty
RemainAfterExit=yes
SysVStartPriority=99
[Install]
WantedBy=multi-user.target

[/block]

3.创建我们自定义的启动脚本(以后自己的脚本在这里面添加即可)

sudo vi /etc/rc.local

添加下面内容

[block]

#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.
touch /home/xxx/`date +%Y-%m-%d`.log
echo "`df`" > /home/xxx/`date +%Y-%m-%d`.log
echo "看到这行字,说明添加自启动脚本成功。" > /usr/local/test.log
exit 0

[/block]

sudo chmod +x /etc/rc.local && sudo systemctl enable rc-local

ftp服务安装

安装vsftpsudo apt-get install vsftpd

启动然后让它开机自动运行

  1. sudo systemctl start vsftpd
  2. sudo systemctl enable vsftpd
创建一个用户 其他配置说明 [block]
listen=NO
listen_ipv6=YES
anonymous_enable=NO #是否允许匿名访问
local_enable=YES #是否允许服务器本地登录
# write_enable=YES #是否允许对ftp文件上传和修改,默认是被注释掉,如果你需要用户上传文件,就将#去掉即可,见下文
#local_umask=022
#anon_upload_enable=YES #是否允许匿名用户上传文件,创建文件夹,默认被注释掉
#anon_mkdir_write_enable=YES #是否允许匿名创建目录,默认是被注释掉
dirmessage_enable=YES #目录信息
use_localtime=YES #文件列表的上传时间
xferlog_enable=YES #上传下载的日志
connect_from_port_20=YES #ftp连接的端口,不要改
#chown_uploads=YES #切换文件上传的目录,小心,这个操作可以会被用户误操作,建议别改
#chown_username=whoever
#xferlog_file=/var/log/vsftpd.log #默认的上传下载文件的日志存放路径,不用改,要查看日志见本文最后面
#xferlog_std_format=YES #日志格式
#idle_session_timeout=600 #会话的超时时间,默认10分钟
#data_connection_timeout=120 #设定单次最大的连续传输时间,这里使用默认
#nopriv_user=ftpsecure
#设定支撑vsftpd 服务的宿主用户为手动建立的vsftpd用户。
#async_abor_enable=YES
#设定支持异步传输功能
#ascii_upload_enable=YES
#ascii_download_enable=YES
# 设置ACII码文件上下传输
secure_chroot_dir=/var/run/vsftpd/empty
pam_service_name=vsftpd
rsa_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
rsa_private_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
ssl_enable=NO
[/block]

VMware安装

下载地址:https://www.vmware.com/cn/products/workstation-pro/workstation-pro-evaluation.html

转到下载目录下。给vmware升权限。

sudo chmod +x VMware-Workstation-Full-14.1.3-9474260.x86_64.bundle

运行脚本

sudo ./VMware-Workstation-Full-14.1.3-9474260.x86_64.bundle 运行即可

TIM安装

参考这个项目:https://github.com/wszqkzqk/deepin-wine-ubuntu

1.我们直接本的安装。

下载包git clone https://gitee.com/wszqkzqk/deepin-wine-for-ubuntu.git

安装 ./install.sh

然后自己用dpkg命令来进行安装

2.下载应用容器

http://mirrors.aliyun.com/deepin/pool/non-free/d/

TIM地址:http://mirrors.aliyun.com/deepin/pool/non-free/d/deepin.com.qq.office/

然后我们直接下载deb文件然后安装就可以了

参考文章:https://www.lulinux.com/archives/1319

显卡驱动安装

我们先来说一下驱动的问题。

查看驱动 ubuntu-drivers devices

我们来查看自己的硬件型号

我这里的驱动是GP108M,然后还会推荐一些驱动版本给你

我们同意的话就直接安装 sudo ubuntu-drivers autoinstall

结语

好了,上面这些大概就是我这两个多心情总结的内容,时间有限,所以写的很仓促,没办法,最近一大堆事情。。。。

参考文章

全部在这本书里了:http://book.xiaoyou66.com/books/Ubuntu

文章作者: 小游
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 小游 !
  目录