linux常识

目录

i.mx6ull开发板配置ip

静态IP配置

命令行配置

配置文件配置

动态IP配置

命令行配置

配置文件配置

为什么编译驱动程序之前要先编译内核?

init系统服务

systemv守护进程

systemd守护进程


i.mx6ull开发板配置ip

i.mx6ull有两个网卡(eth0和eth1)。配置方法:命令行配置(临时)和配置文件配置(永久)。

静态IP配置

命令行配置

临时配置,重启无效。

cpp 复制代码
ifconfig eth0 192.168.5.9
配置文件配置

永久配置,重启生效。

打开网络配置文件:

cpp 复制代码
vim /etc/network/interfaces

修改如下内容:

auto lo

iface lo inet loopback

auto eth0

iface eth0 inet static

address 192.168.5.9

netmask 255.255.255.0

gateway 192.168.5.1

重启网络服务:

bash 复制代码
/etc/init.d/S40network restart
reboot

动态IP配置

命令行配置

临时配置,重启无效。

bash 复制代码
udhcpc -i eth1
配置文件配置

永久配置,重启生效。

打开网络配置文件:

cpp 复制代码
vim /etc/network/interfaces

修改如下内容:

auto lo

iface lo inet loopback

auto eth0

iface eth0 inet static

address 192.168.5.9

netmask 255.255.255.0

gateway 192.168.5.1

auto eth1

iface eth1 inet udhcpc

重启网络服务:

bash 复制代码
/etc/init.d/S40network restart
reboot

为什么编译驱动程序之前要先编译内核?

驱动程序要用到内核文件。

比如驱动程序中的#include <asm/io.h>,其中asm是一个链接文件,指向asm-arm或asm-mips,这需要先配置、编译内核才会生成asm这个链接文件。

编译驱动时用的内恶化、开发板上运行的内核,要一致。

开发板上运行的内核是出厂时烧录的,编译驱动时的内核是用户自己编译的,这两个内核不一致时会导致一些问题。所以我们编译驱动程序前,要把自己编译出来的内核放到板子上,代替原内核。

更换板子的内核后,板子上的其他驱动也得更换。

板子使用新编译的内核时,板子原来的其他驱动也要更换为新编译出来的。

init系统服务

init是Unix和类Unix系统中用来产生其它所有进程的程序。它以守护进程的方式存在,其进程号为1。Linux系统在引导时加载Linux内核后,便由Linux内核加载init程序,由init程序完成余下的引导过程,比如加载运行级别,加载服务,引导Shell/图像化解密等。

systemv守护进程

System V(SysV)在大多数Linux发行版中使用最广泛。

init程序:在systemv中,在内核加载后运行的第一个程序。会做一些事情,其一就是加载一系列脚本来启动各种系统服务,例如网络、ssh守护程序等。

所有的System V初始化脚本都存储在**/etc/rc.d/init.d或/etc/init.d** 目录中。这些脚本用于控制系统的启动和关闭

比如使用"/etc/init.d/S50sshd start"开启ssh服务,使用"/etc/init.d/S50sshd stop"关闭ssh服务。

systemd守护进程

systemd源于Unix的一个习惯(在Unix中常用"d"作为系统守护进程的后缀表示,daemon)。

systemd是Linux的init程序,包括守护进程、程序库以及应用软件。其开发目标是提供更优秀的框架以表示系统服务间的依赖关系,并依此实现系统初始化时服务的并行启动,同时达到降低Shell的系统开销的效果,最终代替现在常用的System V和BSD风格的init程序。

目前绝大多数的Linux发行版都已采用systemd代替原来的Sydtem V。

相关推荐
EPSDA37 分钟前
Linux线程池
linux·运维·服务器·开发语言·c++
我爱蛋蛋后37 分钟前
Linux驱动开发之音频驱动与基础应用编程
linux·c语言·驱动开发·音视频
你好呀我是裤裤2 小时前
Linux基础开发工具的使用(apt、vim、gcc、g++、gdb、make、makefile)
linux·运维·vim
望获linux2 小时前
如何在望获实时 Linux & 京博航友善 NanoPC-T6 上部署 Docker
linux·运维·服务器·docker·eureka·开源软件
wangchen_02 小时前
linux编译器和自动化构建工具(gcc与Makeile)
linux·运维·服务器
DC_BLOG2 小时前
Linux-Ansible命令
linux·运维·服务器·ansible
suenpeng2 小时前
安全运维,等保测试常见解决问题。
linux·运维·安全
码农君莫笑2 小时前
Linux系统上同时打印到物理打印机并生成PDF副本方法研究
linux·前端·chrome·打印·信管通
马剑威(威哥爱编程)3 小时前
Linux驱动开发13个实用案例
linux·运维·驱动开发
程序员JerrySUN4 小时前
每天设计者模式-1:基础面试题
java·linux·运维·服务器·开发语言·python·docker