<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[sunxiangran的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/sunxiangran</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; sunxiangran]]></copyright><item><title><![CDATA[linux设备树简析]]></title><link>https://blog.youkuaiyun.com/sunxiangran/article/details/108192689</link><guid>https://blog.youkuaiyun.com/sunxiangran/article/details/108192689</guid><author>sunxiangran</author><pubDate>Mon, 24 Aug 2020 10:07:59 +0800</pubDate><description><![CDATA[1.什么是设备树
设备树(Device Tree)，将这个词分开就是“设备”和“树”，描述设备树的文件叫做 DTS(Device Tree Source)，这个 DTS 文件采用树形结构描述板级设备，也就是开发板上的设备信息，比如CPU 数量、 内存基地址、 IIC 接口上接了哪些设备、 SPI 接口上接了哪些设备等等。
2. DTS、 DTB 和 DTC
DTS 是设备树源码文件， DTB 是将DTS 编译以后得到的二进制文件。将.c 文件编译为.o 需要用到 gcc 编译器，那么将.dts 编译为.dt]]></description><category></category></item><item><title><![CDATA[ubuntu16.04下配置samba共享服务支持Windows访问]]></title><link>https://blog.youkuaiyun.com/sunxiangran/article/details/106454378</link><guid>https://blog.youkuaiyun.com/sunxiangran/article/details/106454378</guid><author>sunxiangran</author><pubDate>Wed, 03 Jun 2020 15:13:14 +0800</pubDate><description><![CDATA[一、安装ubuntu samba服务器
sudo apt-get install samba
sudo apt-get install smbclient # Linux客户端测试用

二、创建samba配置文件

备份原配置文件sudo cp /etc/samba/smb.conf /etc/samba/smb.conf.bak


创建共享目录（如需要的话）可跳过sudo mkdir -p /home/share 

一般来说，该目录的权限为755，将其改为777之后，Owner之外的其他用户才有权限写]]></description><category></category></item><item><title><![CDATA[通过nfs挂载根文件系统]]></title><link>https://blog.youkuaiyun.com/sunxiangran/article/details/106454800</link><guid>https://blog.youkuaiyun.com/sunxiangran/article/details/106454800</guid><author>sunxiangran</author><pubDate>Wed, 03 Jun 2020 15:13:02 +0800</pubDate><description><![CDATA[使用busybox构建根文件系统，uboot设置环境变量 bootargs 如下：
setenv bootargs noinitrd root=/dev/nfs nfsroot=192.168.1.10:/home/nfs ip=192.168.1.111:192.168.1.10:192.168.1.1:255.255.255.0::eth0:off init=/linuxrc console=ttyPS0,115200; saveenv
(板卡-IP:PC-IP:网关:子网掩码)

ubi根文件系统 环]]></description><category></category></item><item><title><![CDATA[嵌入式linux下ftp服务移植]]></title><link>https://blog.youkuaiyun.com/sunxiangran/article/details/84956197</link><guid>https://blog.youkuaiyun.com/sunxiangran/article/details/84956197</guid><author>sunxiangran</author><pubDate>Wed, 03 Jun 2020 15:09:31 +0800</pubDate><description><![CDATA[嵌入式linux下ftp服务移植前言使用ftp可以将文件快速的上传到ftp服务器或者下载文件，很方便的在PC端与ARM板之间进行文件传输一、准备软件包二、交叉编译三、修改配置创建用户并测试
前言
使用ftp可以将文件快速的上传到ftp服务器或者下载文件，很方便的在PC端与ARM板之间进行文件传输
一、准备软件包
     我这里使用的是 vsftpd-2.1.2.tar.gz,  解压 （tar ...]]></description><category></category></item><item><title><![CDATA[嵌入式Linux 根据ramdisk制作 ubifs 根文件系统]]></title><link>https://blog.youkuaiyun.com/sunxiangran/article/details/85779044</link><guid>https://blog.youkuaiyun.com/sunxiangran/article/details/85779044</guid><author>sunxiangran</author><pubDate>Wed, 03 Jun 2020 15:09:19 +0800</pubDate><description><![CDATA[命令：mkfs.ubifs -r ramdisk -o ubifs.img -m 2048 -e 126976 -c 3360
-r, -d, --root=DIR               build file system from directory DIR
-m, --min-io-size=SIZE       minimum I/O unit size，最小输入输出大小,最小输入...]]></description><category></category></item><item><title><![CDATA[Linux编程之Makefile入门]]></title><link>https://blog.youkuaiyun.com/sunxiangran/article/details/106433429</link><guid>https://blog.youkuaiyun.com/sunxiangran/article/details/106433429</guid><author>sunxiangran</author><pubDate>Wed, 03 Jun 2020 15:09:06 +0800</pubDate><description><![CDATA[嵌入式linux下Makefile入门
#1.概述
Makefile与Shell脚本类似，是一系列命令的集合。用于项目代码编译管理。其定义了一系列的规则来指定文件是否需要编译以及编译顺序，甚至进行更复杂的功能操作。
优点：
“自动化编译”，节省编译时间
一次编写，终身受益
要点：
“一个规则”
“两个函数”
“三个自动变量”

...]]></description><category></category></item><item><title><![CDATA[gitlab生成ssh key]]></title><link>https://blog.youkuaiyun.com/sunxiangran/article/details/86588965</link><guid>https://blog.youkuaiyun.com/sunxiangran/article/details/86588965</guid><author>sunxiangran</author><pubDate>Wed, 03 Jun 2020 15:08:55 +0800</pubDate><description><![CDATA[gitlab生成ssh公钥

右键 Git Bash Here
输入
ls -al ~/.ssh
查看该路径下是否存在id_rsa.pub 或者 id_dsa.pub文件

生成新的ssh key
ssh-keygen -t rsa -C &amp;amp;quot;your_email@163.com&amp;amp;quot;
默认会在相应路径下（/your_home_path）生成id_rsa和id_rsa.pub两个文件，这里我的本地路径是...]]></description><category></category></item><item><title><![CDATA[ZYNQ系统移植-----u-boot]]></title><link>https://blog.youkuaiyun.com/sunxiangran/article/details/85268030</link><guid>https://blog.youkuaiyun.com/sunxiangran/article/details/85268030</guid><author>sunxiangran</author><pubDate>Wed, 03 Jun 2020 15:08:34 +0800</pubDate><description><![CDATA[环境：

SDK: Xilinx SDK 2016.4
ZYNQ: XC7Z020
虚拟机: ubuntu16.04
交叉编译工具：gcc-linaro-arm-linux-gnueabihf-4.7-2013.03

源码：

u-boot-xlnx-xilinx-v2016.4.tar.gz
device-tree-xlnx-xilinx-v2016.4.tar.gz

1.源码下载
u-bo...]]></description><category></category></item><item><title><![CDATA[ubuntu下gitlab服务器搭建]]></title><link>https://blog.youkuaiyun.com/sunxiangran/article/details/106453337</link><guid>https://blog.youkuaiyun.com/sunxiangran/article/details/106453337</guid><author>sunxiangran</author><pubDate>Wed, 03 Jun 2020 15:08:21 +0800</pubDate><description><![CDATA[1.安装依赖包
sudo apt-get install curl openssh-server ca-certificates postfix

注：执行完成后，出现邮件配置，选择Internet那一项（不带Smarthost的）

2.配置镜像（这里使用清华源）
首先信任 GitLab 的 GPG 公钥
curl https://packages.gitlab.com/gpg.key 2&gt; /dev/null | sudo apt-key add - &amp;&gt;/dev/null

使用r]]></description><category></category></item><item><title><![CDATA[gitlab服务器数据备份与恢复]]></title><link>https://blog.youkuaiyun.com/sunxiangran/article/details/106454129</link><guid>https://blog.youkuaiyun.com/sunxiangran/article/details/106454129</guid><author>sunxiangran</author><pubDate>Wed, 03 Jun 2020 15:08:06 +0800</pubDate><description><![CDATA[一、数据备份

执行 gitlab-rake gitlab:backup:create 进行备份
可以到/var/opt/gitlab/backups找到备份包，解压查看，会发现备份的还是比较全面的，数据库、repositories、build、upload等分类还是比较清晰的。
备份gitlab.rb and gitlab-secrets.
cd /etc/gitlab  目录，备份gitlab.rb 和 gitlab-secrets两个文件

二、数据恢复


恢复前需要先停掉数据连接服务：
gitla]]></description><category></category></item><item><title><![CDATA[ubuntu下nfs服务搭建、挂载验证]]></title><link>https://blog.youkuaiyun.com/sunxiangran/article/details/106454277</link><guid>https://blog.youkuaiyun.com/sunxiangran/article/details/106454277</guid><author>sunxiangran</author><pubDate>Wed, 03 Jun 2020 15:07:53 +0800</pubDate><description><![CDATA[1.安装NFS相关包
apt-get install nfs-kernel-server  nfs-common

2.配置NFS目录与权限
vim /etc/exports
/home/work *(rw,sync,no_root_squash,no_subtree_check)

3.切换到/home目录下
mkdir work
chmod 777 work -R

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

4.挂载到本地
mount -t nfs 1]]></description><category></category></item><item><title><![CDATA[ubuntu添加arm-gcc 交叉编译工具环境变量]]></title><link>https://blog.youkuaiyun.com/sunxiangran/article/details/106454549</link><guid>https://blog.youkuaiyun.com/sunxiangran/article/details/106454549</guid><author>sunxiangran</author><pubDate>Wed, 03 Jun 2020 15:07:33 +0800</pubDate><description><![CDATA[1.交叉编译工具拷贝到linux某文件夹

2.解压   tar jxvf gcc-linaro-arm-linux-gnueabihf-4.7-2013.03-20130313_linux.tar.bz 2

3.添加环境变量


4.使环境变量生效

5.测试
输入  arm-

tab键   补全 说明  配置成功


]]></description><category></category></item><item><title><![CDATA[bash  运行可执行文件hello 报错 No such file or directory]]></title><link>https://blog.youkuaiyun.com/sunxiangran/article/details/106454701</link><guid>https://blog.youkuaiyun.com/sunxiangran/article/details/106454701</guid><author>sunxiangran</author><pubDate>Wed, 03 Jun 2020 15:07:12 +0800</pubDate><description><![CDATA[问题：eclipse 下编写hello world 程序（代码简单，此处不贴出），交叉编译生成可执行文件hello，
放入开发板  输入  ./hello    结果输出：-bash: ./hello: No such file or directory
解决方法：

chmod +x hello  并不能解决问题！！！！！
在可执行文件目录下输入readelf  -a  hello    会输出很多信息

其中会有以下这条信息：

然而在开发板的/lib 目录下并没有ld-linux.so.3 文件存在。]]></description><category></category></item><item><title><![CDATA[buildroot制作功能齐全的根文件系统]]></title><link>https://blog.youkuaiyun.com/sunxiangran/article/details/106454868</link><guid>https://blog.youkuaiyun.com/sunxiangran/article/details/106454868</guid><author>sunxiangran</author><pubDate>Wed, 03 Jun 2020 15:06:53 +0800</pubDate><description><![CDATA[buildroot制作文件系统




PageTitle
MetaDescription
DateApproved
editor




创建
buildroot制作文件系统
2019/10/15
孙小草


背景
从 busybox 开始一步一步的构建根文件系统适合学习、了解根文件系统的组成，但是不适合做产品(主要是自己构建的话会有很多不完善、没有注意到的细节)。buildroot 会帮我们处理好各种细节地方，是我们的根文件系统更加的合理、有效。因此大家在做产品的时候推荐大家使用 buildroot 来]]></description><category></category></item><item><title><![CDATA[ZYNQ网卡DMA错误问题]]></title><link>https://blog.youkuaiyun.com/sunxiangran/article/details/106454907</link><guid>https://blog.youkuaiyun.com/sunxiangran/article/details/106454907</guid><author>sunxiangran</author><pubDate>Wed, 03 Jun 2020 15:06:39 +0800</pubDate><description><![CDATA[错误：
macb e000b000.ethernet eth0: DMA bus error: HRESP not OK

分析：

如果DMA传输驻留在小于0x00080000的内存地址中的数据，则会出现错误。根据Zynq-7000参考手册（UG585），DMA不应访问0x00000000至0x0007ffff的地址范围（对于0x00000000至0x0003ffff的地址范围：地址由SCU过滤并且OCM映射为高）。

解决：
打开linux-xlnx-xilinx-v2016.4\arch\arm\ma]]></description><category></category></item><item><title><![CDATA[Linux随机数nonblocking pool快速初始化]]></title><link>https://blog.youkuaiyun.com/sunxiangran/article/details/106455007</link><guid>https://blog.youkuaiyun.com/sunxiangran/article/details/106455007</guid><author>sunxiangran</author><pubDate>Wed, 03 Jun 2020 15:06:29 +0800</pubDate><description><![CDATA[1.问题：
mosquitto broker一直连接不上，直到出现random: nonblocking pool is initialized。
2.分析：
初步分析与nonblocking pool初始化有关。
3.解决：
内核打补丁，实现nonblocking pool快速初始化
diff --git a/drivers/char/random.c b/drivers/char/random.c
index 9cd6968e2f92..514f67a98b88 100644
--- a/drivers]]></description><category></category></item><item><title><![CDATA[7zip移植到arm-linux平台]]></title><link>https://blog.youkuaiyun.com/sunxiangran/article/details/106455114</link><guid>https://blog.youkuaiyun.com/sunxiangran/article/details/106455114</guid><author>sunxiangran</author><pubDate>Wed, 03 Jun 2020 15:06:19 +0800</pubDate><description><![CDATA[1.下载源码
https://sourceforge.net/projects/p7zip/files/p7zip/
我这里下载的是 p7zip_16.02_src_all.tar.bz2
2.解压修改makefile并完全编译
tar -xvf p7zip_16.02_src_all.tar.bz2

解压源码包p7zip_9.20.1_src_all.tar.bz2后，进入源码包，会发现有一个makefile和n多其它平台的m­akefile：makefile.aix_gcc、makefile.linu]]></description><category></category></item><item><title><![CDATA[MQTT-mosquitto 移植]]></title><link>https://blog.youkuaiyun.com/sunxiangran/article/details/106455381</link><guid>https://blog.youkuaiyun.com/sunxiangran/article/details/106455381</guid><author>sunxiangran</author><pubDate>Wed, 03 Jun 2020 15:06:00 +0800</pubDate><description><![CDATA[1.源码下载(这里选择最新版本1.6.8)
mosquitto下载地址https://github.com/eclipse/mosquitto/releases
/*ubuntu-----------------------------------------------/
2.添加依赖库
apt-get install gcc gcc-c++ libstdc++-devel 
apt-get install openssl-devel
apt-get install libc-ares-dev (解决ar]]></description><category></category></item><item><title><![CDATA[基于unzip60编译unzip工具]]></title><link>https://blog.youkuaiyun.com/sunxiangran/article/details/106455698</link><guid>https://blog.youkuaiyun.com/sunxiangran/article/details/106455698</guid><author>sunxiangran</author><pubDate>Wed, 03 Jun 2020 15:05:49 +0800</pubDate><description><![CDATA[概述：
由于busybox编译出来的unzip不支持有密码的压缩包解压，因此基于unzip60源码包，交叉编译一个嵌入式Linux上的unzip工具。
1.下载地址：
http://sourceforge.net/projects/infozip/files/UnZip%206.x%20%28latest%29/UnZip%206.0/unzip60.tar.gz/download
2.配置：
解压：tar -zxvf unzip60.tar.gz
cd unzip60/
vi unix/Makefile
]]></description><category></category></item><item><title><![CDATA[移植libmodbus到ARM开发板]]></title><link>https://blog.youkuaiyun.com/sunxiangran/article/details/106455741</link><guid>https://blog.youkuaiyun.com/sunxiangran/article/details/106455741</guid><author>sunxiangran</author><pubDate>Wed, 03 Jun 2020 15:05:37 +0800</pubDate><description><![CDATA[一、源码下载

libmodbus官网
http://libmodbus.org/download/
选择长期稳定版本libmodbus-3.0.6.tar.gz
下载链接：http://libmodbus.org/releases/libmodbus-3.0.6.tar.gz

二、交叉编译


拷贝到相应目录，解压
tar -zxvf libmodbus-3.0.6.tar.gz(在使用指令前，使用进入文件夹指令cd /home/fushaolei)


创建安装目录
mkdir install



]]></description><category></category></item></channel></rss>