linux系统性复习
0
最近群里上传了一个题,做一下,巩固一下自己的linux知识点
1
最初开发了Linux系统、内核创始人的是Linus Torvalds、芬兰人
linux操作系统下有很多应用软件,其中大部分软件包括linux本身属于 共享软件,因为linux是开源的、共享的
Linux 核心的许可证是什么GPL又叫GUN通用许可证
GNU的含义是 gun not unix
linux具有的优点全32、多任务、多用户的操作系统,不是单线程
Linux下使用的图形用户界面是x window
rm -i 删除前询问
Linux文件权限一共10位长度,分成四段,分别是文件类型、文件所有者权限、文件所有者所在的组的权限、其他用户的权限
linux的图像文件属于二进制文件
对于可执行文件一般的颜色是绿色
确定文件类型的命令 file 文件名字
分离目录名和文件名的字符/直到这个,但不知道英文是slash(/)
显示文件"longfile"的最后10行的命令 tail 文件名
显示前面的是 head
tail和head默认都是显示10行
要想看多一点就
head -数字 文件名
同理tail
如果你的umask设置为022,缺省的,你创建的文件的权限为
umask是权限掩码,代表默认不要的权限,它是基于文件最大默认值666,文件夹777的基础上取计算该用户新建对象的默认权限的
linux中,显示当前登录用户详细信息的是who
linux系统每创建一个文件,系统都会为此生成一个index node简称(inode),而每一个文件都包含用户数据、元数据,用户数据记录的文件的真正内容,元数据记录的是文件的附加属性,文件大小、创建时间、所有者等,index node 就保存在元数据中,在linux 中文件名并不是文件的唯一,index onde 才是唯一标示,系统查找文件也是通过 index node 来查找内容数据块
硬链接
硬链接创建后,用户数据中存储的是文件本身记录,其他他的用户数据和元数据都和 myfile 一样,唯一不同的是文件名.
所以硬链接就是同一个文件有了多个文件名, 但是多个文件名都指向了 同一个 index node
这样看来,硬链接就是有多个别名的同一个文件.
他们有相同的 index node
有相同的数据记录
只能在已经存在文件上创建 硬链接
删除其中任何一个,其他硬链接不受影响.
只能对文件做硬链接
软链接
软链接创建后,用户数据中存储的并不是文件本身的记录,而是一个指向 原文件路径的一个指针.但是它有自己的 index node 序列.
所以 ,软链接其实就是一个新的文件,但是这个文件很特殊,因为他的用户数据中放的不是文件内容,而是一个指向其他文件的指针.
软链接有下面几个特点:
多个软链接有多个不同的 index node
不仅可以对文件创建,还可以对目录创建软链接
软链接可以交叉文件系统
删除软链接 并不会影响原文件,但是原文件被删除,这个软链接就成了一个死链接.
grep进行筛选
grep name# 表示只查看name这个内容
grep -v name # 表示查看除了name之外的内容
ls
-a 显示所有文件及目录 . 开头的隐藏文件也会列出)
-l 除文件名称外,亦将文件型态、权限、拥有者、文件大小等资讯详细列出
-A 同 -a ,但不列出 "." (目前目录) 及 ".." (父目录)
在Linux/Unix系统中:
chown a+x 是给所有人加上可执行权限,包括所有者,所属组,和其他人
chmod o+x 只是给其他人加上可执行权限
u = user
o = other
g = group
cd ~命令后,会进入用户的主目录
pwd,这个一般是显示当前所在目录,但是官方是说相当于在windows命令行里输入dir命令
cp
-p:除复制文件的内容外,还把修改时间和访问权限也复制到新文件中。
-r:若给出的源文件是一个目录文件,此时将复制该目录下所有的子目录和文件。
-l:不复制文件,只是生成链接文件。
-f:覆盖已经存在的目标文件而不给出提示。
-i:与 -f 选项相反,在覆盖目标文件之前给出提示,要求用户确认是否覆盖,回答 y 时目标文件将被覆盖。
less 查看文件内容过程中可以用光标上下移动来查看文件内容
^....$的意思是正则表达式的匹配四个除了换行符的之外的四个字符
linux不是大小写敏感,使用的正则
对文件进行归档,就是对文件进行压缩,就是用tar
1
打包
将整个 /etc 目录下的文件全部打包成为 /tmp/etc.tar
tar -cvf /tmp/etc.tar /etc
c 创建一个压缩文件的意思
v 压缩过程中显示文件
f 使用档名 使用了这个参数只能加档名在后面
2
把/tmp/etc.tar解压到/usr/local/src下
先cd
cd /usr/local/src
然后解压
tar -zxvf /tem/etc/tar.gz
z 是否具有gzip的属性
x 解压一个压缩文件的参数指令
其实除了下载软件安装包可能需要,其他时候大部分都是以zip、rar
1解压zip文件unzip 文件 2压缩称zip文件zip -r 目录文件名.zip 目录文件名3压缩文件为rarrar a 目录文件名.rar 目录文件名 4解压rar文件unrar x 目录文件名.rar
chown和chmod的区别
chown 可以用来改文件和目录的所有者chmod 可以用来改文件和目录的访问权限,但是不能变换所有者
想起来一个好的比喻,哈哈哈哈,就像房东与门客,第一种是房东把钥匙给了门客,第二种的chmod 777 是门开着,谁都能进,但钥匙还是房东的
超级用户root当前所在目录为:/usr/local,键入cd命令后,用户当前所在目录为/home/root
链接分为硬链接和符号链接
在/root文件夹下查找后缀为.cpp的文件的命令是 find /root -name *.cpp
快速转到用户主目录cd ~
把文件file1和file2合并成file3的命令是 cat file1 file2 > file3
标准输出上显示2012年日历的命令及参数是 cal 2012
在grep命令中,没有*这个通配符
在linux中红色文件一般是压缩文件
linux中目录文件用ls显示是蓝色的
linux系统种文件的概念
文件是一段程序或数据的聚合,在操作系统下,文件被定义为一个名字的相关字符流的集合,或者一个具有符号名的相关记录的集合
符号链接、硬链接、区别
都是链接符号链接可以建立对于文件和目录的链接。符号链接可以跨文件系统,就是跨磁盘分区。符号链接的文件类型为是1,链接文件具有新的i节点。硬链接不可以跨文件系统,他只能建立对文件的链接,硬链接的文件类型位是-,且硬链接文件的i节点同被链接文件的i节点相同
linux的文件类型有几种
ls -lh查看文件的属性第一个字符代表文件的类型-表示普通文件d表示目录文件b表示块设备文件c表示字符设备文件p表示管道文件l表示链接文件
查看文本内容的命令都有
cat\tail\head\more\less
第一个root是拥有者为root、第二个为组为root字节为599 文件名叫ff
linux系统有几种文件类型
3种普通、目录、设备文件same都是文件、都有文件名和i节点引号different普通文件的内容为数据、目录文件的内容为目录项或文件名与i节点对应表,设备文件不占用磁盘空间,通过其i节点信息可建立与内核驱动程序的联系
若下达rmdir命令来删除某个已存在的目录,但无法成功,请说明可能的原因
设置了权限、还有隐藏文件、目录可能不存在
more和less的区别
less可以自由浏览
more只能向前浏览
wc -l统计行数
统计文件/etc/fstab的行数、单词数、字符数。
wc –lwc /etc/fstab (-c只显示Bytes数。-l只显示行数。-w只显示字数。)
显示当前时间
date
2
编辑器vi
5yy表示复制当前行以及下面的4行
在vim下恢复上一步操做 命令模式下u
5G表示回到第五行的行尾,在vim下是行首
指定行数 命令下输入
:数字
vi有三种模式
默认命令模式,然后有编辑模式、末行模式
:$是到行尾
yy复制
p黏贴
dd剪裁
3
在Shell脚本中,用来读取文件内各个域的内容并将其赋值给Shell变量的命令是read
shell具有的功能和特点的是 管道、输入输出重定向、处理程序命令
Redhat Linux默认的SHELL程序是什么 bash
&加在命令后面可以在后台执行程序
linux的shell类型有bash、csh、ksh
看命令执行后的返回值应在echo命令后使用参数$?
编写的Shell程序运行前必须赋予该脚本文件 执行权限
将前一个命令的标准输出作为后一个命令的标准输入,称之为管道
Linux中的shell命令可以分为内部命令和外部命令
在shell命令行方式下,一行可以写多个指令,每次只能使用一个命令
shell是一个命令解释器
管道是什么/
unix系统传统的进程通信技术,包括管道和命名管道,通过文件系统来实现
shell程序中,对用户变量赋值的方式
等号赋值、键盘赋值、命令替换赋值
unix的shell的概念:是一种命令解释程序,shell解释用户输入的命令行,提交系统内核处理,并将结果返回给用户
什么是位置变量?shell的变量类型有?
位置变量是命令行上传递给程序的参数shell变量有用户自定义变量、环境变量、位置变量、特殊变量
4
内核的子系统有进程、内存、文件管理系统
-s 来添加用户定义用户登录的shell
在大多数Linux发行版本中,属于块设备的是硬盘
linux内核引导时,从文件/etc/fstab中读取要加载的文件系统
进程的查看使用ps
进程的调度使用top
线程是什么?
是一个进程内的基本调度单位,线程可以看成是一个执行流,拥有记录自己状态和运行现场的少量数据(堆栈和上下文),但没有单独的代码段和数据段,而是与其他线程共享
进程是什么
是一个动态概念,描述程序的一次运行活动,是操作系统可感知、可控制的动态实体,是系统分配各种资源,进行调度的基本单位
linux的内核五个子系统组成,调度进程、内存管理、虚拟文件系统、网络接口、进程间通信
linux文件系统的i节点?它包含的两个基本参数
linux文件系统通过i节点来描述所有的文件,每一个目录、文件和设备都对应一个且只能对应一个i节点、i节点中包含两个参数基本:文件说明信息、索引表
5
linux系统是一个多用户、多任务的操作系统
Linux的根分区的文件系统类型ext3
重新加载fstab文件的所有条目,可以root命令下执行mount- a
将/dev/hdc卸载的命令 umount /dev/hdc
对于外部设备文件,Linux一般放在/dev
改用户自身的密码可使用passwd
linux的临时目录存放在/tmp
使普通用户可执行超级用户文件的命令是chmod +s
ps命令显示结果中STAT的s代表休眠
hda表示第一个IDE控制器、主设备
x' window system是分布系统
umount卸载linux文件系统
ps -a列出当前用户运行的所有进程的信息
存放日志的一般在/var/log
使用fdisk工具建立分区默认的分区类型为FAT16
与windows中的Document and settings有相同作用的目录是/home
/dev/sdc6分区表示第三块SCSI硬盘的第六个分区,是逻辑分区
/dev/hdd3分区表示第四块IDE硬盘的第三个分区,是主分区或者是拓展分区
对于SCSI接口的磁盘,按照顺序分别表示为/dev/sda、/dev/sdb、/dev/sdc、/dev/sdd对于IDE接口的磁盘,按照顺序分别表示为/dev/hda、/dev/hdb、/dev/hdc、/dev/hdd
linux交换区的挂载点是/swap
添加user的用户 useradd user
删除user用户以及主目录下的所有文件 userdel -r user
显示系统当前进程的所有命令 ps -aux
a显示所有用户的进程u显示用户x显示无控制终端的进程
syslog.conf配置文件用来定义syslog的后台进程
一般交换区的大小是内存的二倍
/etc/passwd文件用来存储信息用户账户和账户的参数
linux配置文件放在/etc下
samba服务器主要是使win用户以及linux用户之间共享彼此的访问的资源
需要创建一个用户账号
user01,主目录为/home/user01,可以使用命令
useradd -d /home/user01 user01
检查分区的文件系统
fsck 分区名
分区类型:文件系统分区、交换分区
linux文件系统中每个文件用i节点表示
设定限制用户使用磁盘空间的命令是quote
要强制杀死某个进程,可以使用命令 kill -p pid
检查已安装的文件系统/dev/had5是否正常,若检查有错,则自动修复,其命令及参数是
fsck -a /dev/had5
RedHat操作系统默认的文件系统是ext3。
块设备文件类型的标志是b,c是字符设备文件
定义在/etc/fstab中的文件系统在系统启动的时候自动加载
死锁是什么?
死锁是所有并发进程都拥有部分资源,同时都在等待其他进程拥有资源的同时,使得所有进程都在等待而无法运行得状态
Linux设备驱动程序的基本结构
一个完整的设备驱动程序通常包括五个部分:设备驱动程序的注册与注销,设备的打开与释放,设备的读写操作,设备的控制操作,以及设备的中断或者查询处理
解释i节点在文件系统中的作用
在linux文件系统中,是以块为单位存储信息的,为了找到某一个文件在存储空间中存放的位置,用i节点对一个文件进行索引。I节点包含了描述一个文件所必须的全部信息。所以i节点是文件系统管理的一个数据结构
页式管理
页式管理是一种虚拟存储器管理方式,把进程的虚拟地址空间划分为大小相等的页,把物理内存空间也划分成大小相同的页。通过页表来进行地址转换
abc@server:/etc$得abc表示:登录用户;server表示:用户主机名;/etc表示:当前目录
中断的基本概念
改变处理器正常执行顺序的事件。其来源有软件(异常、系统调用)和硬件(时钟、键盘、硬盘等)
usermod –g root 用户 添加用户到root组
对于cat > 文件新添加,可以使用ctrl+d进行保存,不然ctrl+c只是保存的前台的进程,而且最后一行会不显示
cp -p 复制的时候保留属性
创建组和用户
useradd -g 组名 用户名
查找文件目录下的指定内容
grep "内容" /目录
创建用户组
groupadd 用户组名
修改用户的组
usermod -g 组 用户
6
主机名到IP地址的映射关系文件是/etc/hosts
要配置NFS服务器,在服务器端主要配置文件/etc/exports
/etc/services定义了网络服务的端口
配置主机网卡IP地址的配置文件是/etc/sysconfig/network-scripts/ifcfg-eth0
/dev/ethX表示以太网=接口设备
smtp是发送邮箱的协议、pop是接受邮箱的协议
pop3使用的tcp端口为110
在Linux中,一个网卡可以绑定多个Ip地址
NFS是什么
网络文件系统是应用层的一种应用服务,它主要应用于Linux和Unix系统、Linux和Unix系统之间的文件或目录的共享。对于用户而言可以通过 NFS方便的访问远地的文件系统,使之成为本地文件系统的一部分。采用NFS之后省去了登录的过程,方便了用户访问系统资源。
netstat查看网络接口的状态信息
配置当前主机的默认网关为192.168.2.254的命令
添加默认路由
route add default gw 192.168.2.254
gw 路由数据包通过的网关
配置ip地址 ifconfig IP地址
配置子网掩码 netmask 子网掩码地址
总结
学到一些不熟悉的命令有点豁然开朗的感觉,因为之前接触cs的时候看这些命令不是很明白,现在懂了,也知道自己的不足,对一些命令的参数不太熟悉,还得多看。