在初次配置过程中,本人总结了以下几点,做此文章方便下次回顾,顺便把资源进行整合,希望能帮到跟我存在一样问题的朋友。在此过程参考了一些博主的文章,对应的链接也引入进来了(十分感谢!!!)
树莓派的镜像下载直接去阿里源可以找到,想要什么版本都有,对应的链接如下:
树莓派上的Ubuntu系统阿里源
找到对应的版本下载即可,我下载的是server无桌面版本的
我用的是这两个软件烧录系统的,具体的方法网上有很多都很详细,大家可以看一下
树莓派Ubuntu系统烧录
登录系统时两个·需要注意的地方:
1、更改密码之前需要再一次输入之前“ubuntu”这个密码;
2、如果一直没反应,等大概半分钟就好了这种情况是因为系统还在运行其他的东西。
执行以下两个命令:
sudo lshw
sudo nano /etc/netplan 50-cloud-init.yaml
执行完第一个命令会有wlan0字样
执行第二个命令时配置相应的wifi信息
注意:
1、:后面要留一个空格。
2、wifi名称可以带引号也可以不带引号,如果带引号连接不上去可以把引号去掉试试
接下来执行以下命名即可
sudo netplan -debug try
sudo netplan -debug generate
sudo netplan -debug apply
此时可以通过ifconfig查看对应的ip地址,但是ifconfig还没有下载因此根据提示安装对应的包之后即可通过ifconfig查看自己树莓派的ip地址。
如果查看不到ip地址此时重启一下再执行ifconfig命名查看即可。
sudo reboot
以上步骤便是我成功的方法,再次我也附上我参考的链接,里面详细说明了配置wifi时可能遇到的问题以及安装完桌面之后wifi图标不显示的解决办法,链接如下:
树莓派wifi配置问题详解
因为换源等其他操作需要大量的复制粘贴操作,因此我们先建立ssh连接,然后通过远程控制树莓派系统。
ssh安装
一般系统默认给我们安装了ssh,部分没装的可以用以下命令安装。
安装ssh-client命令:sudo apt-get install openssh-client
安装ssh-server命令:sudo apt-get install openssh-server
开启ssh服务
sudo /etc/init.d/ssh start
修改ssh配置
1) 将PermitRootLogin prohibit-password那一行修改为PermitRootLogin yes
2) port 22前面的#去掉
重启ssh
sudo service ssh restart
建立连接
可以通过putty或者虚拟机命令行进行连接
用putty连接只需要输入ip地址即可,如出现无法登陆,提示“key exchange fail”,建议升级远程工具
如果用虚拟机进行连接的话在虚拟机终端控制中执行以下命令
sudo ssh [email protected]
其中ubuntu是你树莓派的用户名,后面的192.168.1.1是对应的ip地址
在连接的过程中可能报错:sudo: unable to resolve host ubuntu: Name or service not known
此时执行下面这个命令查看一下是否有第二行这句话,如果没有加上即可。
sudo vim /etc/hosts
127.0.0.1 localhost
127.0.1.1 ubuntu
# The following lines are desirable for IPv6 capable hosts
::1 ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
ff02::3 ip6-allhosts
此时便可以通过电脑远程操作树莓派了。
在终端中输入
sudo passwd root
Enter new UNIX password: (在这输入你的密码)
Retype new UNIX password: (确定你输入的密码)
passwd: password updated successfully
如果要再次禁用 root 帐号,那么可以执行
sudo passwd -l root
转到root权限操作系统的命令,在终端输入
sudo su
点击回车会提示你输入密码,即可登录root用户,想要退出时,使用exit命令即可。
返回原来的用户权限执行以下命令(username即你想切换的用户名)
su -username
注意:切换用户身份的两种情况: su username 和 su - username.下面就来说说它们的区别
su - username 实现的效果与直接用此username登录此机的效果是一样的,会运行环境变量,会处在用户默认的账户目录等等。而su username只是把用户切换过去了此用户名而已,而环境变量和目录则没有任何变化。
DNS设置不全会导致报Temporary failure in name resolution等类似的错误,因此需要提前配置好DNS避免后期出问题。具体步骤如下:
很多文章说这个sudo vim /etc/resolv.conf命令是可以成功的,但是经过我的研究发现,这个命令是一次性的,reboot之后里面的内容还是跟之前没改一样,因此我们需要用到下面这种方法。
执行命令
sudo vim /etc/systemd/resolved.conf
在其中添加dns信息如下:
DNS=8.8.8.8 114.114.114.114
保存后退出,可能有些小白还不知道vim的使用方法,可以把执行命令中的vim改为nano,不过还是建议学一下vim的使用方法,这里有一个对应vim使用命令的链接:vim指令大全
然后以root身份在ubuntu终端中依次执行如下命令:
systemctl restart systemd-resolved
systemctl enable systemd-resolved
mv /etc/resolv.conf /etc/resolv.conf.bak
ln -s /run/systemd/resolve/resolv.conf /etc/
注意:在最后一个命名执行后可能会报错说权限不够,我当时因为这个问题困扰了很久,加上f改为强制写入,因此可以把最后一个命令给改为下面这个命令:
ln -sf /run/systemd/resolve/resolv.conf /etc/
再查看/etc/resolv.conf文件就可以看到新的DNS信息已经写入其中了。即使重启内容也写入其中。
显示内容如下:
nameserver 127.0.0.53
nameserver 8.8.8.8
nameserver 114.114.114.114
options edns0 trust-ad
换源的资源网上有很多,大家可以参考一些写得比较好的,这里做一下简单的介绍
首先执行这条命令把原始文件备份,避免后期出问题找不到原始文件
sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak
接下来就是执行以下命令修改源文件了
sudo gedit /etc/apt/sources.list
把文件原来的内容都删除掉,这里我是在清华源找的镜像,对应的链接:清华源ubuntu-ports镜像,不建议随便找一个博主的复制粘贴,官网的还是更权威一些。大家打开链接选择版本自行复制到文件里。
注意:有些人找的源可能是Ubuntu的源,发现换了源之后执行更新的时候一直报错,这是因为树莓派的架构跟Ubuntu是不一样的,树莓派上装的Ubuntu系统用的是Ubuntu—ports的源。用我这个链接的源是没问题的。
接下来就是更新源了
sudo apt-get update
如出现依赖问题,解决方式如下:
sudo apt-get -f install
更新软件
sudo apt-get upgrade
最后更新软件花费的时间会比较长,大家耐心等待即可,到此源是完全配好了,我们已经拥有了一个相对完美的系统。
如果有安装桌面或者ros配置等方面需求的话可以关注我,我后续会更进,希望这个文章能够帮到你,如果有疑问或者更好的建议欢迎在评论区指出。后续再见……