linux基础-linux简介-安装-文件属性、链接
作业:
1.按系列罗列Linux的发行版,并描述不同发行版之间的联系与区别。
debian: ubuntu,deepin(深度),mint
redhat: RHEL: RedHat Enterprise Linux, 每18个月发行一个新版本
CentOS: Community Enterprise Operating System 兼容RHEL的格式 中标麒麟:中标软件
Fedora:每6个月发行一个新版本
联系和区别:都使用linux内核,区别在于使用的版本,自带库、软件不同,系统的文件夹分类,一些系统命令也不同
2、安装Centos7.6操作系统,创建一个自己名字的用户名,并可以正常登录,将主要步骤截图。
vm安装略过
创建用户密码:
3、配置环境变量,实现执行history的时候可以看到执行命令的时间。
echo 'declare -x HISTTIMEFORMAT="%F %T "' >> .bash_profile
4、总结Linux哲学思想。
一切皆文件
小型,单一用途的程序
链接程序,共同完成复杂的任务
避免令人困惑的用户界面
配置数据存储在文本中
5、总结Linux常用命令使用格式,并用实例说明。例如echo、screen、date、ifconfig、export等命令
echo :
在屏幕上显示内容,可以用于标准输出并重定向给其他程序。
-e实现转译
[root@centos7 ~]# echo -e '123\n456'
123
456
-n结尾不换行
screen:
会话和窗口分离,tmux更优秀
演示tmux:tmux默认新建的是会话,也可以新建窗口
bash里new新建,attach接入已创建的
[root@centos7 ~]# tmux new -s win1
[detached]
[root@centos7 ~]#
new创建新的会话,在tmux会话里detach分离,switch切换,ls列出所有会话,exit会退出这个会话,记得使用detach;还可以在一个窗口里分格。还可以新建窗口。
date:
date +%F:
[root@centos7 ~]# date +%F
2021-06-05
[root@centos7 ~]#
+%跟希望的格式
-d [STRING] string较为复杂,比如“-1 day”:比当前少一天
[root@centos7 ~]# date -d "-1 day" +%F
2021-06-04
[root@centos7 ~]#
string格式参考info
ifconfig:
ifconfig没参数可以显示当前网卡信息,流量统计等
可以临时添加、更改、删除ip地址,关闭、打开网卡
这个命令已经启用,一般使用ip命令,或者nmcli管理
nmcli connection reload ens33重载网卡(配置)
[root@centos7 ~]# ip help
Usage: ip [ OPTIONS ] OBJECT { COMMAND | help }
ip [ -force ] -batch filename
where OBJECT := { link | address | addrlabel | route | rule | neigh | ntable |
tunnel | tuntap | maddress | mroute | mrule | monitor | xfrm |
netns | l2tp | fou | macsec | tcp_metrics | token | netconf | ila |
vrf }
export:
export用来设定环境变量
export显示所有环境变量
export var=value;
[root@centos7 ~]# export |grep HISTSIZE
declare -x HISTSIZE="1000"
[root@centos7 ~]# export HISTSIZE=2000
[root@centos7 ~]# export |grep HISTSIZE
declare -x HISTSIZE="2000"
[root@centos7 ~]#
6、描述Linux发行版的系统目录名称命名规则以及用途。
/boot:引导文件存放目录,内核文件(vmlinuz)、引导加载器(bootloader, grub)都存放于此目录 /bin:所有用户使用的基本命令;不能关联至独立分区,OS启动即会用到的程序 /sbin:管理类的基本命令;不能关联至独立分区,OS启动即会用到的程序 /lib:启动时程序依赖的基本共享库文件以及内核模块文件(/lib/modules) /lib64:专用于x86_64系统上的辅助共享库文件存放位置
/etc:配置文件目录 /home/USERNAME:普通用户家目录 /root:管理员的家目录 /media:便携式移动设备挂载点 /mnt:临时文件系统挂载点 /dev:设备文件及特殊文件存储位置
b: block device,随机访问
c: character device,线性访问 /opt:第三方应用程序的安装位置 /srv:系统上运行的服务用到的数据 /tmp:临时文件存储位置
/usr: universal shared, read-only data
bin: 保证系统拥有完整功能而提供的应用程序 sbin:
lib:32位使用
lib64:只存在64位系统
include: C程序的头文件(header files) share:结构化独立的数据,例如doc, man等
local:第三方应用程序的安装位置 bin, sbin, lib, lib64, etc, share
/var: variable data files
cache: 应用程序缓存数据目录
lib: 应用程序状态信息数据 local:专用于为/usr/local下的应用程序存储可变数据 lock: 锁文件
log: 日志目录及文件
opt: 专用于为/opt下的应用程序存储可变数据
run: 运行中的进程相关数据,通常用于存储进程pid文件 spool: 应用程序数据池
tmp: 保存系统两次重启之间产生的临时数据
/proc: 用于输出内核与进程信息相关的虚拟文件系统 /sys:用于输出当前系统上硬件设备相关信息虚拟文件系统
/selinux: security enhanced Linux,selinux相关的安全策略等信息的存储位置
7、描述文件的元数据信息有哪些,分别表示什么含义,如何查看?如何修改文件的时间戳信息?
inode number 节点号 文件类型
权限
UID
GID
链接数(指向这个文件名路径名称个数)
该文件的大小和不同的时间戳
指向磁盘上文件的数据块指针
有关文件的其他数据
查看:stat file
[root@centos7 ~]# stat test.sh
File: ‘test.sh’
Size: 36 Blocks: 8 IO Block: 4096 regular file
Device: fd00h/64768d Inode: 16898274 Links: 1
Access: (0600/-rw-------) Uid: ( 0/ root) Gid: ( 0/ root)
Context: unconfined_u:object_r:admin_home_t:s0
Access: 2021-06-05 05:59:30.334435265 -0400
Modify: 2021-06-05 05:59:11.879205810 -0400
Change: 2021-06-05 06:00:12.900883780 -0400
Birth: -
[root@centos7 ~]#
使用touch可以修改时间戳
8、总结软连接和硬连接区别,并用实例操作说明。
硬链接特性
创建硬链接会在对应的目录中增加额外的记录项以引用文件
对应于同一文件系统上一个物理文件
每个目录引用相同的inode号
创建时链接数递增 删除文件时:rm命令递减计数的链接,文件要存在,至少有一个链接数,当链接数为零时,该文 件被删除
不能跨越驱动器或分区
不支持对目录创建硬链接
软链接:
一个符号链接指向另一个文件,就像 windows 中快捷方式,软链接文件和原文件本质上不是同一个文件 软链接特点
一个符号链接的内容是它引用文件的名称
可以对目录创建软链接
可以跨分区的文件实现 指向的是另一个文件的路径;其大小为指向的路径字符串的长度;不增加或减少目标文件inode的 引用计数
软链接如果使用相对路径,是相对于原文件的路径,而非相对于当前目录
1. 本质: 硬链接:本质是同一个文件 软链接:本质不是同一个文件
2. 跨设备 硬链接:不支持
软链接:支持
3. inode
硬链接:相同
软链接:不同
4. 链接数 硬链接:创建新的硬链接,链接数会增加,删除硬链接,链接数减少
软链接:创建或删除,链接数不会变化
5. 文件夹
硬链接:不支持
软链接:支持
6. 相对路径 硬链接:原始文件相对路径是相对于当前工作目录
软链接:原始文件的相对路径是相对于链接文件的相对路径
7. 删除源文件
硬链接:只是链接数减一,但链接文件的访问不受影响 软链接:链接文件将无法访问
8. 文件类型 硬链接:和源文件相同
软链接:链接文件,和源文件无关