实习日记之Linux不难(6)

本文介绍了Linux系统的基本结构,包括PCI设备查看、CPU信息获取。深入讲解了Linux中的外在设备,如设备文件在/dev目录下的命名规则。此外,还涵盖了Linux的运行机制,如init系统和关机过程。文章还详细阐述了各种文件压缩与解压命令,如gzip、bzip2和tar。最后,讨论了网络设置与维护的相关命令,如ifconfig、scp和netstat等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Linux系统结构

通过lspci可以查看所有的PCI设备

查看CPU信息 lspci /proc/cpuinfo

外在设备

Linux系统中硬件系统都以文件形式存在,设备文件存在 /dev,下面设备文件的命名方式是主文件号+次设备号

设备号fd是软盘驱动器,

U盘在Linux中主要被识别为SCSI设备,因此对应的设备文件为/dev/sdax,主设备号sd表示SCSI dis,a表示第一块SCSI设备,X(1/2/3/4/...)表示第几个分区

光驱,IDE光驱,hda表示第一个IDE口的IDE光驱,SCSI光驱对应的文件是/dev/srx,x表示SCSI的ID磁带STX,st代表SCSI tape,x是磁带驱动器编号,第一个为0第二个为1.

进程间通信,主要用于控制不同进程之间在用户空间的同步,数据共享和交换。由于不同的用户进程拥有不同的进程空间,因此进程间的通信要通过内核中转来实现。一般情况下,当一个进程等待硬件操作完成时它会被挂起。当硬件操作完成后进程被恢复执行,而协调这个过程的就是进程间的通信机制。

网络接口提供了对各种网络标准的实现和各种网络硬件的支持。网络接口一般分为网络协议和网络设备驱动程序,网络协议部分负责实现每一种网络传输协议。网络设备驱动程序则主要负责与硬件设备进行通信,每种可能的网络硬件设备都有相应的设备驱动程序。

运行机制介绍

Linux初始化init系统

Linux操作系统的启动首先从BIOS开始,接下来Linux引导程序将内核映像加载到内存,进行内核初始化,内核初始化最后一步就是启动PID为1的init进程,这个进程是系统的第一个进程,它负责产生其它所有的用户进程。

将内核运行起来之后我们需要一个系统,来定义、管理、控制init进程的行为,并负责组织很多独立的或相关的初始化工作。原来采用sysvinit,管理系统,现在采用upstart和systemd,堡垒机用的upstart

Linux关机过程

1、shutdown命令,shutdown是由shell编写得到程序,必须超级用户才能执行.

它会向所有用户广播一个即将关机的通知,请保存文档、停止作业、滞销用户。此时login指令被冻结,新用户将不能登录,当所有用户在系统中注销或指定时间已到,shutdown就发送指令给init程序,要求init改变运行级别,如果是关机指令则运行init0级别,如果要重启系统则是init6级别。

2、halt命令是最简单的关机命令,执行halt时将终止所有应用程序,然后调用系统指令sync,sync将所有内存信息通过文件系统写入硬盘,然后停止内核。halt指令在执行时首先检查系统的运行级别,如果运行级别为0或6,则立即关闭系统,如果不是则调用shut down来关闭系统。

3、reboot命令的执行过程与halt类似,不同的时halt用来关机,reboot用来重启

4、init命令,init程序主要用于系统不同运行级之间的转换

压缩与解压zip/unzip

可以对文件和目录进行压缩。

-r 递归压缩,将指定目录下的所有文件以及子目录全部压缩

-d 从压缩文件内删除指定文件

-m 将文件压缩后删除原始文件

-F尝试修复损坏的压缩文件

-T检查压缩文件内的每个文件是否正确无误

gzip/gunzip命令

只能对文件进行压缩,不可以压缩目录。其实gunzip就是gzip的硬链接,gzip -d等价于gunzip,因此压缩与解压缩都可以用gzip

-r 递归式压缩指定目录以及子目录下的所有文件

-l 显示压缩文件的压缩信息

bzip2/bunzip2命令

只能对文件进行压缩,不可以压缩目录。其实bunzip2就是bzip2的软链接,因此压缩与解压缩都可以用bzip2

tar命令

tar [主选项+辅选项] 文件或目录

生成.tar文件

dd命令

dd if ="输入文件“ of="输出文件” bs="block size" count="number"

cpio命令

cpio命令是通过重定向的方式将文件进行打包、备份、还原、恢复的工具,它可以解压以“.cpio"或”.tar"结尾的文件

无法直接读取文件,需要每个文件的或者目录的完整路径名才能识别读取,因此常和find一起使用。

网络设置与维护

ifconfig命令

关闭/打开指定网卡

# ifconfig eth0 down
# ifconfig eth0 up
# ifconfig eth0 down //关闭网卡
# ifconfig eth0 hw ether 00:AA:BB:CC:DD:EE //修改MAC地址
# ifconfig eth0 up //启动网卡
# ifconfig eth1 hw ether 00:1D:1C:1D:1E //关闭网卡并修改MAC地址

启用和关闭ARP协议

# ifconfig eth0 arp  //开启
# ifconfig eth0 -arp  //关闭

用ifconfig配置的网卡信息会在重启后全都失效,如果想让网卡配置全部生效就需要修改网卡的配置文件了。

scp命令

把文件或目录从一个Linux系统下复制到另一个Linux系统下,使用的是SSH传输协议,确保了数据的安全。

格式如下:

scp 远程用户名@IP地址:文件的绝对路径 本地Linux系统路径(远程复制到本地)

scp 本地Linux系统文件路径 远程用户@IP地址:远程系统文件的绝对路程名(本地复制到远程)

netstat命令

用来显示本机网络连接、运行端口和路由表等信息。

-a (all)显示所有选项,默认不显示LISTEN相关
-t (tcp)仅显示tcp相关选项
-u (udp)仅显示udp相关选项
-n 拒绝显示别名,能显示数字的全部转化成数字。
-l 仅列出有在 Listen (监听) 的服務状态

-p 显示建立相关链接的程序名
-r 显示路由信息,路由表
-e 显示扩展信息,例如uid等
-s 按各个协议进行统计
-c 每隔一个固定时间,执行该netstat命令。

tranceroute命令

tranceroute命令用来显示网络数据包传输到指定主机的路径信息。

traceroute 【选项】 【远程主机名或IP地址】 【数据包大小】

-i<网络接口>

-n直接使用IP地址

-v显示详细命令的执行过程

-w<超时秒数>设置等待远程主机回应的时间

-x 开启或关闭对数据包的检查

-s<来源IP地址>

-g<网关地址>

telnet命令

通过telnet远程协议与远程主机通信或获取远程主机对应端口信息

telnet 主机名或IP地址 端口

wget命令

可以直接从网络上下载自己需要的软件

wget http://cn.wordpress.org/wordpress-4.9.4-zh_CN.tar.gz

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值