今天是我嵌入式学习的第5天,以下是今天学习的学习笔记:
以下几个位置不允许创建文件或文件夹
/ 整个Linux的核心目录,如果开放写的权限,会危害到系统本身
/home 这里管理家目录,也就是存放用户对应的目录,如果开放写的权限,会危害到用户数据
/mnt/hgfs 这个是共享目录,以后所有的共享和外设都挂载在这里
虚拟机网络模式
1.桥接模式
和windows共享一个网段,并且能够与windows系统一样可以连接到互联网说明:虚拟机类似于一台电脑连接到了路由器
好处:网络稍微会快一点
坏处:占用路由器的IP,如果路由器的载荷过大,网络会掉线。
2.NAT模式
和windows的网段不一样,是由虚拟机网卡分配网段和IP,并且能够与windows系统一样可以连接到互联网
好处:不占用路由器的IP
缺点:网络会稍微慢一点
3.仅主机模式
和windows网段不一样,不能连接网络
好处:数据安全
缺点:不能访问互联网
网络相关
ping
语法:
ping [选项] 目标IP/目标网址
说明:测试网络是否畅通
选项:
-c n:显示n次应答后停止
举例:
ping 192.168.12.13 测试IP
ping 百度一下,你就知道网址百度一下,你就知道 测试网址
ping -c 5 192.168.12.13 测试IP,显示5次应答后停止
ifconfig
语法:
ifconfig [网络接口名] [设置选项]
说明:查看及临时配置网络接口(所谓的临时配置网络,也就是一关机就失效了,下次开机重新配置)
执行者:若配置网络接口则需要root权限
选项:
...
注意:此指令常常用来查看本机IP,如果用ifconfig来配置网络按口,可能需要root权限。
举例:
ifconfig 查看本机所有网络接口信息
ifconfig eth0 查看eth0的接口信息
sudo ifconfig eth0 192.168.12.13 将eth0的IP临时设置为192.168.12.13
netstat
语法:
netstat [选项]
说明:查看网络状态信息
执行者:所有用户
选项:
-l:只显示监听状态的套接字
-t:显示tcp协议的套接字
-a:显示所有套接字
-u:显示udp协议的套接字
-n:显示数字形式的IP
进程相关指令
ps
语法:
ps [选项]
说明:查看系统运行的进程
执行者:所有用户
选项:
-a:显示所有进程
-x:通常与a一起使用,可列出较完整信息
-u:用户为主的进程状态
举例:
ps -aux BSD语法格式
ps -ef标准语法格式
kill
语法:
kill [选项] 进程ID
说明:根据进程ID 终止进程
执行者:所有用户
选项:
-9 强调终止进程运行
举例:
kill -9 69487 终止进程ID为69487的进程
killall
语法:
killall [选项] 进程名
说明:根据进程名终止进程
执行者:所有用户
选项:
-9 强调终止进程运行
举例:
killall -9 bash 终止进程进程名为bash的进程
磁盘相关命令
du
语法:
du [选项] [文件/目录]
说明:显示某文件和目的磁盘使用空间大小
执行者:所有用户
选项:
-b:以BYTE为单位显示大小
-k:以KB为单位显示大小
-m:以MB为单位显示大小
-h:以-b -k -m显示,最常用的选项
举例:
du -h ~/Mywork
df
语法:
df [选项] [文件系统/挂载点/目录]
说明:显示磁盘分区上可以使用的磁盘空间
执行者:所有用户
选项:
-a 以byte为单位显示全部分区
-h 以-b,-k,-m显示,最常用的选项
举例:
df -h
df -h /dev/sda1
文件的挂载及卸载指令
什么是挂载和卸载
Linux中的根目录以外的文件要想被访问,就需要将其关联Linux系统中的某个目录来实现,我们将这种关联操作称作“挂载”,这个目录就是“挂载点”,解除此关联关系的过程称作“卸载”。
文件挂载指令
fdisk
语法:
sudo fdisk -l
说明:查看所有磁盘列表,包括linux自身+外部存储(查询所有可挂载的文件系统)
执行者:需要root权限
举例:
mount
语法:
mount [选项] [文件系统 挂载点]
说明:查看或挂载文件系统
执行者:挂载文件系统需要root权限
选项:
-t:文件系统类型:指定要挂载的设备上的文件类型
-r:只读挂载
-w:只写挂载
注意:缺省选项显示目前系统中的挂载信息
举例:sudo mount /dev/sad1 /mnt 挂载/dev/sda1文件系统到/mnt
sudo mount -t ext4 /dev/sda1 /mnt 以ext4文件系统类型挂载/dev/sda1文件,将其挂载到/mnt下
说明:
我们每一个外设在接入Linux系统的时候,Linux系统会为每一个外部设备准备一个映射文件,这个映射文件存放在/dey下。如果我们要想访问这个外设(存储外设),我们需要访问/dev下对应的映射文件,或者根据文件系统将外设挂载到我们指定的挂载点,这样我们就可以正常访问。
步骤:
- 将硬件存储设备插入Linux设备。
- 通过sudo fdisk -l 获取文件系统名(我们查到的是列表,从列表中获取具体的某个外设的名称)
- 通过sudo mount 外设名称(一般都是/dev/...)挂载点路径
文件卸载指令
unmount
语法:
mount [选项] 文件系统/挂载点
说明:卸载文件系统
执行者:需要root权限
选项:
-t:文件系统类型:指定要挂载的设备上的文件系统类型
-f:强制卸载
举例:sudo unmont /mnt
NFS网络文件系统
Linux系统之间共享文件夹
服务端
步骤:
- 在被共享的系统中安装nfs服务
sudo apt-get install nfs-kernel-server
注意:如果系统提示无法定位软件包,就需要更新软件源
sudo apt-get update
sudo apt-get upgrade
- nfs服务端的配置
sudo vim /etc/exports
- 在文件的末尾添加如下内容
/home/gec/share *(rw,sync,no_root_squash)
说明:
/home/gec/share:要被共享的目录
*:指定哪些用户可以访问
*:表示所有可以ping通该用户主机的用户
192.168.12.*:表示指定网段中的用户可以访问
192.168.12.13:表示指定IP的用户可以访问
(rw,sync,no_root_squash):表示访问权限(其他选项:man 5 exports查看),可以1个,可以多个
ro:只读
rw:可读可写
sync:同步
no_root_squash:不降低root用户的权限
4.重启nfs服务器
sudo service nfs-kernel-server restart
或者
sudo /etc/init.d/nfs-kernel-server restart
客户端
- nfs客户端环境搭建
sudo apt-get install nfs-common
- nfs客户端查看服务端的共享目录(非必须)
sudo showmount -e 服务器IP
举例: sudo showmount -e 192.168.12.13
- 将共享目录挂载到本地目录
sudo mkdir /mnt/remote --创建本地目录
sudo mount 主机IP:服务端共享文件目录 /mnt/remote --将共享目录挂载到本地目录
举例:sudo mount 192.168.12.13:/home/XXX/share /mnt/remote
以上就是我今天学习的学习笔记,有什么问题还请指正,谢谢!