学习嵌入式Linux的一些基本配置笔记,互相学习,大家互相交流

您所在的位置:网站首页 schdocpreview是什么文件 学习嵌入式Linux的一些基本配置笔记,互相学习,大家互相交流

学习嵌入式Linux的一些基本配置笔记,互相学习,大家互相交流

2023-01-02 00:02| 来源: 网络整理| 查看: 265

1、无法访问外网

问题:设置了静态ip,但是ping 百度是出现

ping: www.bai.com: 域名解析暂时失败

解决方式:

​ 设置DNS:

sudo vim /etc/resolv.conf

在这里插入图片描述

然后重启网络:

sudo service network-manager restart 2、如何关闭Ubuntu的图形界面 systemctl set-default multi-user.target #关闭图形界面 systemctl set-default graphical.target #打开图形界面 关闭:在图形界面下 终端输入 sudo service lightdm stop 开启:在命令行输入:sudo service lightdm start 3、20.04配置静态IP(只试过该版本)

note:由于20.04版本把/etc/network/interfaces文件删除,所以要配置静态ip得用新方法

3.1、修改配置文件

1.1、打开配置文件

sudo vim /etc/netplan/00-installer-config.yaml

1.2、配置

network: version: 2 renderer: NetworkManager ethernets: enp0s5: # 网卡名称 dhcp4: no # 关闭dhcp dhcp6: no addresses: [10.211.55.10/24] # 静态ip gateway4: 10.211.55.1 # 网关 nameservers: addresses: [8.8.8.8, 114.114.114.114] #dns

注意

1、注意空格,各个语句得位置

2、静态ip配置哪里得24,代表子网掩码中1得个数,所以,这里得子网掩码为255.255.255.0

4、18.04版本配置PC-Ubuntu-板子互联(基于:virtualBox虚拟机) 4.1、Ubuntu和Windows互通

1、virtualbox 在安装之后就会新创建后一个虚拟网络(可以在主机网络管理器新建一个),默认为 VirtualBox Host-Only Network,在 Windows 网络适配器中就可以找到。

2、将连接外网的网卡连接共享到 host-only 网络,实现虚拟机 ping 通外网。在网络适配器界面连接外网的对网卡点击右键属性,在共享界面选择共享到 rtualBox Host-Only Network。VirtualBox Host-Only Network 的 默认 ip 为 192.168.56.1,在这个操作之后会被改成 192.168.137.1(每次共享都会如此)。 三、在 Linux 中编辑 /etc/network/interfaces,配置静态 IP: 将以下行注释: auto enp0s3 iface enp0s3 inet dhcp 添加以下行: auto enp0s3 iface enp0s3 inet static address 192.168.137.101 # 在 virtualbox 的主机网络管理器中配置 netmask 255.255.255.0 gateway 192.168.137.1 四、在 Linux 中编辑 /etc/systemd/resolved.conf(Ubuntu 18.04 不再能添加到 /etc/resolv.conf) 添加 DNS: DNS=114.114.114.114 8.8.8.8 五、重启网络: $ sudo service networking restart

在这里插入图片描述

这里选择该项,界面名称是Oracle VM VirtualBo虚拟出来的网卡

在这里插入图片描述

局域地址是否正确

​ 完成以上步骤只能实现ubuntu和PC机互通,但是ubuntu与板子互通不能相互兼容

4.2、Ubuntu和板子互通

1、新建里一个网卡

在这里插入图片描述

这里网卡设置为自动配置网卡,DHCP也得改,不能和ubuntu和PC机的通道,网段相同。

在这里插入图片描述

2、配置网卡

在这里插入图片描述

3、配置静态IP地址(根据自己网口名称设置)

在这里插入图片描述

4、这里配置为自动获取IP地址

在这里插入图片描述

5、设置开发板的IP地址,要与前面设置的这个处于同一网段。

5、20.04版本配置PC-Ubuntu-板子互联(基于:VMware 虚拟机) 5.1、配置网卡模式

1、配置网卡

在这里插入图片描述

2、网络适配器设置

在这里插入图片描述

5.2、配置虚拟机

1、配置ip地址

打开/etc/netplan下的网卡配置文件

在这里插入图片描述

2、使用本文第二章的配置方式配置网口(下面固定这样配置,ip地址的主机位可以自己定)

network: version: 2 renderer: NetworkManager ethernets: ens33: #使用ifconfig查看自己的网卡名字 dhcp4: no dhcp6: no addresses: [192.168.137.101/24] gateway4: 192.168.137.1 nameservers: addresses: [8.8.8.8, 114.114.114.114]

在这里插入图片描述

重启网络

$ sudo service networking restart 5.3、Windows下配置

1、配置网卡连接共享(如果又窗口弹出,点击确认即可)

在这里插入图片描述

2、查看虚拟网卡在Windows下的ip地址

在这里插入图片描述

此时Ubuntu和Windows已经能互ping通

在这里插入图片描述

5.4、配置板子和Ubuntu互联

1、配置VWware虚拟网卡,和5.1章节相同,但是配置的是类外一张虚拟出来的网卡,配置为桥接模式,桥接到,我们板子通过网线于电脑相连的网卡;

在这里插入图片描述

2、虚拟机网卡设置

在这里插入图片描述

3、配置Ubuntu的ip地址

找对自己的Ubuntu对应的网卡名称(可以使用ifconfig查看) ip地址可以之际顺便配,但是不能和Ubuntu和Windows互联的这个网段,也就是不能为192.168.137.xxx,而且很重要的是一定要和板子的ip地址处于同一网段,不然无法互ping,这个文件的配置方式请查看第3章

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Qd6iNIkv-1671716731279)(Linux配置.assets/在这里插入图片描述 )]

然后重启网络服务

sudo service network-manager restart 6、开启FTP服务 6.1、安装FTP服务 sudo apt-get install vsftpd 6.2、配置FTP服务 sudo vi /etc/vsftpd.conf

保证这两行被打开

local_enable=YES write_enable=YES

在这里插入图片描述

此时就可以使用FTP服务了,可以去下载FileZilla Client软件进行Ubuntu和Windows文件互传Download FileZilla Client for Windows (64bit x86) (filezilla-project.org)

7、NFS服务开启 7.1、安装NFS服务 sudo apt-get install nfs-kernel-server rpcbind 7.2、配置NFS服务文件

1、创建一个文件夹路径为/home/linux/nfs(文件地址自己定)

2、在/etc/exports中最后一段添加/home/linux/nfs *(rw,sync,no_root_squash)

3、上一步注意空格,不然下一步会出错

4、sudo /etc/init.d/nfs-kernel-server restart重启NFS服务

7.3、问题----解决 7.3.1、开发板和ubuntu能ping通,但是下载出现 File lookup fail

在这里插入图片描述

原因:uboot中使用得NFS版本为V2版本,而ubuntu中的NFS版本为V3,V4及以上版本,从而导致uboot不能再NFS服务器中找到文件。

解决:让buntu中得NFS兼容V2。修改/etc/default/nfs-kernel-server 文件。

操作方法:

1、sudo vim /etc/default/nfs-kernel-server 2、修改如下

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-3FyCPu7r-1671716731280)(Linux配置.assets/在这里插入图片描述 )]

3、保持退出,并重启

sudo service nfs-kernel-server restart

来源:https://blog.csdn.net/polaris_zgx/article/details/103571725

7.3.2、解决uboot通过NFS服务调试时出现T T T T等待

在这里插入图片描述

8、安装交叉编译器(这里以Linaro的gcc为例) 8.1、安装

1、将安装包复制到/usr/local/arm(没有改目录就创建),

解压

sudo tar -vxf gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabihf.tar.xz 8.2、配置环境 sudo vi /etc/profile

在最后添加

export PATH=$PATH:/usr/local/arm/gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabihf/bin 8.3、安装相关库 sudo apt-get install lsb-core lib32stdc++6 8.4、验证

查看版本号

arm-linux-gnueabihf-gcc -v 9、配置vim/vi 9.1、安装vim sudo apt-get install vim 9.2、配置vim (1)vim /etc/vim/vimrc (2)在最后一行添加 syntax on //设置语法高亮 set tabstop=4 //设置制表符宽度为4 set softtabstop=4 //设置软制表符宽度为4 set shiftwidth=4 //设置缩进的空格数为4 set autoindent //设置自动缩进 set cindent //设置使用 C/C++ 语言的自动缩进方式 set nu //在左侧显示文本的行号 10、配置SSH 10.1、windos下开启ssh功能

点击开始菜单->设置->应用->应用和功能->可选功能->添加功能;添加OpenSSH 客户端 和 OpenSSH

在这里插入图片描述

10.2、Linux下开启SSH功能 sudo apt-getinstall openssh-server 10.3、使用密钥进行ssh免密登录 10.3.1、生成密钥

打开Windows PowerShell使用命令生成即可,-t rsa可以省略,默认就是生成rsa类型的密钥

ssh-keygen -t rsa

命令执行后会有提示,输入三次回车即可,执行完成后会在当前用户的.ssh目录下生成两个文件:id_rsa、id_rsa.pub文件,前者是私钥文件,后者是公钥文件(拷贝到其他主机只需要拷贝这个文件的内容)

10.3.2、将公钥文件复制到ubuntu下的家目录下

使用

scp ./id_rsa.pub [email protected]:/home/xinme

xinme:为Linux下的用户名 192…为ubuntu的ip地址

10.3.3、更改名字,并给权限

(1) 在Ubuntu下创建.ssh文件:mkdir .ssh

(2) 给权限:chmod 700 ./.ssh

(3) 移动公钥文件并将其改名:mv id_rsa.pub .ssh/authorized_keys

(4) 到.ssh文件下更改authorized_keys的权限:chmod 600 authorized_keys

(5) 再次到Windows下就不会需要密码了:ssh [email protected]

10.4、vscode使用ssh登录Ubuntu 10.4.1、**安装插件:**Remote - SSH 10.4.2、修改配置文件

在这里插入图片描述

10.4.5、遇见的问题并解决

1、有时候VScode原来能登录,现在却不行

解决:远程的服务器的用户目录下(/home/yourusername/),有一个.vscode-server目录,将该目录改名,重新连接即可。之后在连接的时候会重新在上述目录下新建一个.vscode-server目录。改名后的目录可以删除。

我也试了一下直接删除掉.vscode-server目录,再重新连接,也可以成功连接。只是不知道.vscode-server目录有什么重要的内容,所以还是改名的方法保险一点。

11、开发嵌入式Linux内核配置 11.1、使用图形配置界面:menuconfig

​ uboot 或 Linux 内核可以通过输入“make menuconfig”来打开图形化配置界面,menuconfig是一套图形化的配置工具,需要 ncurses 库支持。ncurses 库提供了一系列的 API 函数供调用者 生成基于文本的图形界面,因此需要先在 Ubuntu 中安装 ncurses 库.

sudo apt-get install build-essential sudo apt-get install libncurses5-dev **11.2、编译内核需要的库

如果出现arch/arm/boot/Makefile:52: recipe for target ‘arch/arm/boot/compressed/vmlinux’ failed

解决:sudo apt-get install lzop 12、配置Linux默认语言 1、sudo vim /etc/default/locale

2、修改/etc/default/locale文件

2 #中文 3 #LANG="zh_CN.UTF-8" 4 #LANGUAGE="zh_CN:zh" 5 6 #英文 7 LANG="en_US.UTF-8" 8 LANGUAGE="en_US:en"

在这里插入图片描述

13、添加新用户 1、sudo useradd -m //用于添加一个新用户 2、sudo passwd //跟上一个名字一样,设置刚才设置的新用户的密码

在这里插入图片描述

3、设置权限(这一步可给可不给,这里没给) sudo vi /etc/sudoers

在这里插入图片描述

4、设置命令解释器 sudo vi /etc/passwd //将文件拉倒最后修改解释器类型,这里自动给了

在这里插入图片描述



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3