linux 嵌入式 基本概念

1.  第一组   用户管理类命令
                1.添加用户

  格式  :  useradd  【选项】  用户名
  
  范例:
  useradd   david
    添加名字为david的用户,当用户创建成功后,会在/home/目录下生成与用户名同名的目录。
 
   2.删除用户

  格式  :  userdel  【选项】  用户名
  
  范例:
  userdel -r   david
    删除名字为david的用户,“-r”选项会使/home目录下的该用户目录也被删除。 

3.修改密码 

  格式  :  passwd  【选项】  用户名
  
  范例:
  passwd  david
    修改david用户的密码。 
   
 4.切换用户 

  格式  :  su  【选项】  用户名
  
  范例:
  su - root
    切换到root用户,并将root用户的环境变量同时带入。

     5.添加用户组 

  格式  :  groupadd  【选项】  用户名
  
  范例:
  groupadd   group1 
    添加组名为"group1"的用户组。 

  6.删除用户组 

  格式  :  groupdel  【用户组名】 
  
  范例:
  groupdel   group1 
    删除组名为"group1"的用户组。   
   
   
第二组:  文件与目录类命令

1.查看目录
格式:   ls 【选项】  【目录或文件】

范例:
1. ls/home
显示/home目录下的文件与目录(不包含隐藏文件)

2. ls -a /home
显示/home目录下的所有文件与目录(包含隐藏文件)

3. ls -l /home
    显示/home目录下的文件与目录的详细信息。 
    
 2.改变工作目录
   格式: cd 目录名

 范例:
 1. cd /home/
     进入/home 目录
 2. cd ..
      退回到上一级目录
      
      
 3.复制文件/目录
   格式: cp 【选项】 源文件或目录  目标文件或目录 

 范例:
 1. cp /home/test   /tmp/
     进入/home 目录下的test文件copy到/tmp目录下 
 2. cp -r /home/dir1   /tmp/ 
      将/home目录下的dir1目录copy到/tmp目录下
  
 4.移动或更名
  格式: mv 【选项】 源文件或目录  目标文件或目录
 
范例:
1. mv  /home/test   /home/test1
   将/home 目录下的test文件更名为test1

2. mv  /home/dir1  /tmp/
   将  /home目录下dir1目录移动(剪切)到/tmp目录下。

    5.删除文件/目录 
  格式: rm 【选项】 文件或目录 
 
范例:
1. rm  /home/test
   删除/home目录下的test文件 

2. rm -r  /home/dir
   删除/home目录下dir1目录  


6.改变文件权限 
  格式: chmod 【who】 【+ | - | =】 【mode】 文件名 
参数: 
who:
u表示文件的所有者。
g表示与文件所有者同组的用户。
o表示'其他用户'。
a表示“所有用户”。 它是系统默认值。

mode:
+ 添加某个权限
- 取消某个权限
= 赋值给定权限

例: chmod g+w  hello.c 

7.创建目录
 格式:mkdir 【选项】 目录名
 范例:
  1.mkdir /home/workdir
 
 在/home目录下创建workdir目录
 
2. mkdir -p /home/dir1/dir2
  创建/home/dir1/dir2目录,如果dir1不存在,先创建dir1.

8.查看目录大小
格式:du目录名
范例:
1.du /tmp

9.查看当前路径
格式:pwd
范例:
1.pwd
显示当前工作目录的绝对路径。


第三组     压缩打包类命令


压缩解压:
在linux环境中,压缩文件的扩展名通常为*.tar; *.tar.gz; *.tgz; *.gz;*.bz2
    而不同后缀名的文件,则需要使用不同的命令来处理。
 
*.gz    <---->   gzip 命令压缩的文件
*.bz2   <---->   bzip2命令压缩的文件
*.tar   <---->   tar命令打包的文件

*.tar.gz  <--->   tar打包后,,再经过gzip压缩的文件
*.tar.bz2 <---->  tar命令打包后,再经过bzip2压缩的文件 

1.gzip
格式:   gzip  【选项】  文件名

范例:
  1.gzip  /root/anaconda-ks.cfg
  压缩文件
2.gzip -d /root/anaconda-ks.cfg.gz
解压文件 

  2.bzip2
格式:   bzip2  【选项】  文件名

范例:
  1.bzip2  /root/anaconda-ks.cfg
  压缩文件
2.bzip2 -d /root/anaconda-ks.cfg.bz2
解压文件
 
3.打包压缩 - tar
      格式:  tar 【选项】  目录或者文件
  
  范例:
  1.tar  cvf tmp.tar  /tmp
   将tmp目录打包为一个文件。
2.tar  xvf  tmp.tar
将打包文件解开
3.tar cvzf tmp.tar.gz  /tmp
将tmp目录打包为一个文件
4.tar xvzf tmp.tar.gz
将打包文件解开



第四组   磁盘管理类命令
 1.加载光盘 - mount
     格式: mount  【选项】 设备名  挂载目录
 范例:
 1. mount /dev/cdrom  /mnt
 
 2.卸载光盘 - umount
  格式: umount   挂载目录
范例:
1.umount /mnt   

重要提示: 请在执行umount之前,保证用户已经退出了mnt目录。 

   3.查看磁盘 - df 
  格式: df   【选项】 
范例:
1.df  -hl  
 
4.创建新文件  -- touch
  格式: touch  文件名
  
  范例:
  1.touch  newfile
  创建一个名字为"newfile"的空白文件。 
5.文件链接 - ln

  在linux系统中,存在类似于windows中快捷方式的链接文件,链接文件又分为
     “软链接” 和  “硬链接”。
 
 格式:  ln 【选项】  文件名  链接名
 范例:
  1.  ln  oldfile  hlink
   为oldfile文件创建一个硬链接hlink.

2.  ln   -s  oldfile  slink
   为oldfile文件创建一个软链接slink

问题: 软链接和硬链接区别?

第五组:  查找类命令


1.查找文件/目录  - find
格式:  find  查找路径  - name  文件名
范例:
1.find  /root/  -name  install.log
在root目录下寻找名字为intall.log的文件。

2.查找字符串
格式: grep "字符串" 路径 【选项】
范例:
1.grep  "hello" ./ -rn
 在当前路径下寻找包含字符串"hello"的文件
 
2. grep "he*" ./ -rn
在当前路径下寻找包含以“he”开头的字符串的文件。
 
第六组:  进程管理类命令


1.查看进程 -  ps 
格式:  ps  【选项】 
范例:
1.ps  aux 

2.杀死进程  - kill
  格式: kill  【选项】 pid
  范例:
  1. vi  hello.c
 2. ps  aux
 3. kill
 
3.查看内存 - free

格式: free 【选项】
范例:
1.free

4.cpu占有率 - top
    格式: top 【选项】
范例:
1.top  


第七组  杂项命令大聚合


1.软件管理  - rpm

格式: rpm 【选项】  【软件包】

范例:
1.rpm  -ivh  /mnt/Packages/xinetd-2.3.14-34.el6.i686.rpm
安装xinetd-2.3.14-34.el6.i686.rpm

2.rpm  -qa
查看系统中已经安装的所有软件包

3.rpm  -e  xinetd-2.3.14-34.el6.i686
卸载已经安装的xinetd-2.3.14-34.el6.i686

2.管道操作 -  |
格式   命令1  |  命令2
范例:
1. rpm -qa | grep  tar

查询系统中安装的所有软件包,并从中找出所有字符串"tar"的。

3.查看帮助  -  man

   格式:  man  命令名

    范例:
     1.  man find
      查看find命令的用法。
  
4.关闭linux系统
格式: shutdown  【选项】  时间

   1.范例:
shutdown   now
立刻关机。  


第二课:  linux网络配置
Vmware 网络设置

1.VMWare提供了三种网络工作模式供用户选择,它们分别是:

    1.bridged  (桥接模式)
2.NAT   (网络地址转换模式)
3.host-only (主机模式)
 

1. bridged

  外部网络  --------------------    路由器   -  计算机B(IP3) 
                                      |          
                                     计算机A(IP1)--虚拟机(IP2 路由器分配) 
如果网络中提供多个IP地址,则使用桥接方式。

2.主机模式

计算机A    -----------------  Vmware 虚拟机

如果按照虚拟机的主机没有连接任何外部网络,则使用主机模式。
 

3.网络地址转换模式

   外部网络   ---------------------  路由器 - 计算机B(IP2)
|

计算机A(IP1)--虚拟机(IP1)  

如果网络中只能提供一个IP地址,则使用NAT方式。  


注意事项:
1.选择网络模式前,停止虚拟机中系统的运行。
2.配置完网络后,重新启动虚拟机中的系统。


Linux 网络设置:
1.ifconfig: 查看各网卡详细信息(如IP)
    以太网卡名一般为“eth0”
 
2./etc/init.d/network restart
   重启各网卡。 
   
   
 Linux网络设置:
  1.配置步骤1:
  /etc/init.d/network restart
 重启各网卡
 运行结果: 报错
 
 This  device is not active   失败

错误原因:
/etc/init.d/network   与  NetworkManager冲突了。

解决办法: 关闭NetworkManager

service NetworkManager stop

2.配置步骤2
  1.ifconfig
  
    运行结果: 没有发现以太网卡"eth0"
 
 
    linux常见网络接口
 
-eth0: 系统中的第一块物理网卡。
-lo : 虚拟的回环网卡。
-virbr0: 虚拟网桥。 

问题解决:ifconfig后没有出现eth0
1.修改eth0网卡的配置文件,将ONBOOT="no" 改为 "yes"
  文件位置: /etc/sysconfig/network-scripts/ifcfg-eth0
2. /etc/init.d/network restart 重新启动网络 
 
测试:  ping 192.168.1.102  
 
 
第三课: 远程登录


1.登录任务
   windows主机  ----------->   linux主机

2.登录前提
    1.从windows能够ping通linux
    2.关闭linux防火墙
   运行命令: /etc/init.d/iptables stop

3.Putty-SSH 软件登录

在会话基本设置:   主机名称: 192.168.1.102

一般就可以登录了。

3.VNC
1.从RHEL6安装光盘packages目录中,双击安装vnc服务器。

2.启动vnc服务: vncserver &

3.vnc   从windows端运行, vnc-E4_2_5-x86_win32_viewer.exe


常见故障:
1.windows不能ping通linux
2.没有关闭linux防火墙。
 
第四课: windows 与linux文件共享


  前提:
  1.从windows能够ping通linux
2.关闭linux防火墙
  运行命令: /etc/init.d/iptables stop   
  
1.使用软件  winscp

SFTP    host name: 192.168.1.102   port number : 22
        user name: root     password:shijian
 
2.samba服务器
 
1.安装samba服务器
rpm -ivh  /mnt/Packages/samba-3.5.10-125.el6.i686.rpm
 
2.添加用户并修改密码
useradd win
passwd win
3.设置该用户登录samba服务的密码
smbpasswd -a win
4. 配置samba服务
vim /etc/samba/smb.conf

添加:
[root]  
comment = Root Directories
browseable = yes
path = /
writable = yes
valid users = win 
5.重启samba服务
/etc/init.d/smb restart 

常见问题:
1.通过samba访问linux速度很慢,且很多目录访问失败。

故障原因:未关闭Selinux,通过执行命令setenforce permissive 将其关闭。 

 
第五课:  TFTP与NFS服务器配置


交叉开发: 嵌入式系统开发多采用交叉开发模式,其中产生嵌入式软件平台称为宿主机,
    通常为pc电脑,运行嵌入式软件的平台称为目标机。宿主机一般通过网络,USB,JTAG等方式将
软件下载到目标机。  

1.tftp服务器

  1.安装tftp服务器
  rpm  -ivh  /mnt/Packages/tftp-server-0.49-7.el6.i686.rpm
  2.配置tftp服务器
  vim /etc/xinetd.d/tftp
 
  修改:
  user = root
server_args = -s /tftp
disable  = no
 
 
  3.重启tftp服务器
  /etc/init.d/xinetd restart 
 
  4.测试tftp服务。 
  
   
2.NFS服务器
NFS(网络文件系统)为两台Linux主机之间的通讯,提供了类似于windows上共享目录一样的服务。
在嵌入式linux开发中,linux目标机经常通过NFS方式访问Linux宿主机上的文件。为了实现这种访问,首先需要
在linux宿主机上搭建NFS服务器
 
1.配置NFS服务器
 
  vim /etc/exports
  
  /tmp   *(rw,sync,no_root_squash)
  
  /tmp: 共享的目录
  *:允许访问共享目录的主机IP
  (rw,sync,no_root_squash) 访问权限。
  
  2.启动NFS服务器
  /etc/init.d/nfs restart
     
  
 
 
     
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值