1.inux重要目录:
bin:系统可执行文件,命令
etc:系统配置,软件配置文件
dev:设备文件(linux下一切都是文件)
home:用户家目录(每建立一个用户都会在这生成一个目录)
lib:库文件
root:超级用户家目录
usr:用户软件安装目录
2.解压缩文件:
把hqd目录压缩为hqd.tar.gz:
tar -zcf hqd.tar.gz hqd )
tar -jcf hqd.tar.bz2 hqd
解压:
tar -zxf hqd.tar.gz
tar -jxf hqd.tar.ba2
3.软件安装:
安装软件 sudo apt-get install [软件名]
更新软件源 sudo apt-get update
软件缓冲区/var/cache/apt/archives
软件资源列表/etc/apt/source.list
4.网络配置
查询IP---ifconfig
设置IP--- sudo ifconfig eth0 192.168.1.122
网卡关闭--sudo ifconfig eth0 down
网卡启动--sudo ifconfig eth0 up
测试网络--ping 192.168.1.100
重启网络--sudo service networking restart
关闭防火墙:sudo ufw disable
5.用户权限命令
-rw-rw-r-- 1 class80 class80 0 10月 28 16:54 main.c
第一位表示文件类型:
-:表示普通文件 d:表示目录文件 c:字符设备文件 b:块设备文件
l:表示链接文件 p:表示管道文件 s:套接字文件
后面九位分成三组--第一组(文件所有者权限u)rw-(110---6)
--第二组(文件所属组权限g)rw-(110---6)
--第三组(其他用户权限o)r--(100---4)
修改文件权限
chmod u+x main.c(给main.c文件加上执行权限)
用八进制来修改权限
chmod 664 main.c
6.添加用户:adduser,useradd
Eg:添加用户"hqd"sudo adduser hqd
用useradd添加用户(不会创建密码,家目录)
给用户添加密码:sudo passwd tiydy
删除用户:sudo deluser hqd --remove-home
切换用户:su 用户名
7.vim的高级使用:
复制----》n yy---->黏贴p
剪切----》n dd----》黏贴p
撤销----》u ----》恢复撤销内容ctrl+r
分屏:
横屏:sp----->ctrl+w+s 竖屏:vsp---->ctrl+w+v
关闭分屏--ctrl+w+o 切换光标--ctrl+w+w
vim -O main.c hqd.c---竖屏显示两个文件
vim -o main.c hqd.c---横屏显示两个文件
显示行号:set nu --->:set nonu
自动缩进:set ai
自动补齐功能----ctrl+p
查找:?字符串,/字符串---?字符串(n向上,N向下)
替换:%s/src字符串/dest字符串/c(所有替换g)
跳到指定行ngg---跳转到n行
首行gg 末行GG
vim设置密码
:set key=xxxxxx---设置密码
:set key= ---解除密码
8.进程相关命令:
查看进程ID:ps -ef
杀死进程kill [-9] 进程ID
杀死进程killall 进程名
查看进程树pstree
查看当前活跃进程top
·查看磁盘空间:df
·查看文件或目录大小:du -sh (+文件/目录)
*9.安装软件:
sudo apt-get install samba
sudo apt-get install nfs-kernel-server
sudo apt-get install openssh-server
测试:sudo service smbd restart
sudo service nmbd restart
sudo service nfs-kernel-server restart
----------------------------------------------------------------------------------------------------------------------
samba配置:
打开sudo vim /etc/samba/smb.conf在最后面添加下面设置代码
[hqd]--共享时候显示的名称
comment = my shared--共享时候显示的备注
path=/home/class80--共享目录
writable=yes--------设置可写
browseable=yes--共享时候可以显示可浏览
guest ok=yes--共享所有用户可访问
保存重启服务器
sudo service smbd restart
sudo service nmbd restart
访问:在windows--》运行--输入\\xxx.xxx.xxx.xxx(linux服务器ip)
---------------------------------------------------------------------
远程访问:
1.安装
sudo apt-get install openssh-server
2.访问
ssh class80@192.168.1.9
3.下载和上传数据
上传数据:scp main.c zd@192.168.1.21:/home/zd
下载数据:scp main.c zd@192.168.1.21:/home/zd /main.c ./
----------------------------------------------------------------------------------------------------------------------
nfs挂载服务器
1.安装nfs服务器
Sudo apt-get install nfs-kernel-server
2.配置共享目录
sudo vim /etc/exports在最后面添加下面一行配置
/home/class80 *(rw,sync,no_subtree_check)
3.重启服务器
sudo service nfs-kernel-server restart(提示全部OK)
下面步骤在arm开发板实现(pc模拟测试)
1.测试网络是否连接OK
ping 192.168.1.9(服务器ip)
2.创建目录
mkdir mt
3.挂载
mount -o nolock,tcp 192.168.1.9:/home/class80 ./mt
4.卸载
umount ./mt----(卸载之前必须退出挂载目录)
----------------------------------------------------------------------------------------------------------------------
tftp服务器搭建
1.安装
sudo apt-get install openbsd-inetd tftpd
2.创建tftp共享目录
sudo mkdir /srv/tftp
把权限该为777
sudo chmod 777 /srv/tftp
在tftp下面放置要下载的文件(比如把main.c放置在这里)
3.客户端下载
sudo apt-get install tftp
tftp 192.168.1.9
get main.c
输入q退出
class80@class80-virtual-machine:~$ tftp 192.168.1.9
tftp> get main.c
Received 55 bytes in 0.0 seconds
tftp> q
class80@class80-virtual-machine:~$ ls
4.卸载软件
sudo apt-get remove tftpd
在安装
sudo apt-get install openbsd-inetd tftpd tftp
交叉开发环境
1.安装交叉开发工具arm-linux-gcc
把工具4.5.1.tar.gz拷贝到linux下
2.把4.5.1.tar.gz 拷贝放在/usr/local/arm目录下(如果没有此目录就创建一个)
class80@class80-virtual-machine:~$ cd /usr/local/
class80@class80-virtual-machine:/usr/local$ ls
bin etc games include lib man sbin share src
class80@class80-virtual-machine:/usr/local$ sudo mkdir arm
class80@class80-virtual-machine:/usr/local$ cd arm/
sudo cp ~/4.5.1.tar.gz ./
3.解压4.5.1.tar.gz到当前目录
sudo tar -zxf 4.5.1.tar.gz
class80@class80-virtual-machine:/usr/local/arm$ ls
4.5.1
4.环境变量设置:(系统自动搜索的路径)
class80@class80-virtual-machine:~/hqd$ echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games
把/home/class80/hqd设置到环境变量中
class80@class80-virtual-machine:~/hqd$ export PATH=/home/class80/hqd:$PATH
按照上面方法把交叉工具链路径加载到环境变量中/usr/local/arm/4.5.1/bin
class80@class80-virtual-machine:~$ export PATH=/usr/local/arm/4.5.1/bin:$PATH
class80@class80-virtual-machine:~$ arm-linux-gcc
arm-linux-gcc: no input files
路径:绝对路径--从跟目录开始的路径为
相对路径--从当前路开始的路径
使环境任意终端生效:把设置环境变量的命令export PATH=/usr/local/arm/4.5.1/bin:$PATH
加到系统配置文件中最后面(确保正确才能加入)
class80@class80-virtual-machine:~$ sudo vim /etc/bash.bashrc
使配置文件生效
class80@class80-virtual-machine:~$ source /etc/bash.bashrc
交叉编译程序---下载
例子:
vim main.c
#include<stdio.h>
int main(void)
{
printf("hello linux!\n");
return 0;
}
编译
class80@class80-virtual-machine:~/hqd$ gcc -o main main.c
class80@class80-virtual-machine:~/hqd$ ls
main main.c
class80@class80-virtual-machine:~/hqd$ ./main
hello linux!
交叉编译
class80@class80-virtual-machine:~/hqd$ arm-linux-gcc -o main main.c
class80@class80-virtual-machine:~/hqd$ ./main
bash: ./main: cannot execute binary file: 可执行文件格式错误
class80@class80-virtual-machine:~/hqd$
把main拷贝到window桌面
下载到开发板
1.启动开发板进入linux系统
2.在终端输入rx main回车
---点击crt工具栏(传送)--》xmodem--》选择要下载的文件(main)
3.修改权限
chmod 777 main
4.运行
./main
交叉编译tftp和下载
解压
class80@class80-virtual-machine:~$ tar -zxf netkit-tftp_0.17.orig.tar.gz
进入到源码目录
class80@class80-virtual-machine:~$ cd netkit-tftp-0.17/tftp
编译(pc版)
gcc -o tftp main.c tftp.c tftpsubs.c
编译(arm版)
arm-linux-gcc -o tftp main.c tftp.c tftpsubs.c
class80@class80-virtual-machine:~/netkit-tftp-0.17/tftp$ file tftp
tftp: ELF 32-bit LSB executable, ARM, EABI5 version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.27, not stripped
把tftp下载开发板------运行方式与虚拟机一样
开发板自带tftp使用
-l 后面接本地接收的文件名称m.c
-r 后面服务器文件路径/srv/tftp/m.c
-g 表示下载文件(从后面ip服务器下)
tftp -l m.c -r /srv/tftp/m.c -g 192.168.1.9
开发板设置Ip
1.自动获取
在开发板终端输入udhcpc
2.手动设置
ifconfig eth0 xxx.xxx.xxx.xxx
设置默认网关
route add default gw 192.168.1.1