Linux文件属性相关补充及软硬连接
第1章 文件属性相关
1.1 文件的属性
1.1.1 扩展名
windows 通过扩展名区分不同的类型的文件
linux 扩展名是给人类看的 方便我们区分不同类型文件
.conf 配置文件
.sh 脚本
.tar.gz 压缩包
.py python脚本
[root@oldboyedu50-lnb /tmp]# ll etc.tar.gz 查看压缩包信息 -rw-r--r-- 1 root root 9734648 Jul 20 01:41 etc.tar.gz [root@oldboyedu50-lnb /tmp]# mv etc.tar.gz etc.txt 给压缩包改名 [root@oldboyedu50-lnb /tmp]# ll et etc/ etc-pai.tar.gz etc.txt ethers [root@oldboyedu50-lnb /tmp]# ll etc.txt 查看信息 -rw-r--r-- 1 root root 9734648 Jul 20 01:41 etc.txt [root@oldboyedu50-lnb /tmp]# tar tf etc.txt 一样可以打开 ##证明Linux系统下 改扩展名不影响使用
1.1.2 文件的类型
f file 文件
d dir 目录
l softlink 软连接
b block 块设备
c character 字符设备
p pipe 管道
s socket 套接字
[root@oldboyedu50-lnb /tmp]# file /bin/ls /etc/hosts /tmp/etc-pai.tar.gz ##file可以查看文件的详细类型 /bin/ls: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.18, stripped /etc/hosts: ASCII text /tmp/etc-pai.tar.gz: gzip compressed data, from Unix, last modified: Fri Jul 20 02:39:55 2018 ####### file 文件 1.二进制文件(命令) 2.文本文件(text) 3.数据文件(data)需要单独命令查看
1.2 文件系统
1、磁盘(房子)
2、分区(划分隔断)
3、格式化创建文件系统(装修)
4、挂载(安装门窗)
5、存放文件(住人)
1.3 Linux下的权限
对于一个文件来说 系统中的用户分为:主人 家人 陌生人
所有者 用户组 其他人
r----read 可读 4
w----write 可写 2
x----execute 可执行 1
- 0
1.4 与用户相关的文件
/etc/passwd 用户的信息
/etc/shadow 用户的密码信息
/etc/group 用户组的信息
/etc/gshadow 用户组的密码()
1.4.1 /etc/passwd 下每一列的含义
root :x :0 :0 :root :/root :/bin/bash nobody :x :99 :99 :Nobody :/ :/sbin/nologin clsn :x :500 :500 : :/home/clsn :/bin/bash 用户名 原来密码的位置 UID GID 用户的说明信息 用户的家目录 命令解释器
1.4.2 命令解释器
1.4.2.1 默认的命令解释器
/bin/bash 默认
/sbin/nologin 无法登陆系统--虚拟用户
1.4.2.2 其他的命令解释器
[root@znix ~]# cat /etc/shells /bin/sh /bin/bash /sbin/nologin /bin/dash /bin/tcsh /bin/csh
第2章 软连接与硬链接
链接:软连接(softlink 或 符号链接 symlink) 硬链接 (hard link)
2.1 硬链接
2.1.1 含义
在同一分区中,文件的inode号相同 则互为硬链接
硬链接即文件的入口(超市的前后门)
2.1.2 作用
防止误删文件
2.1.3 如何创建硬链接
ln 命令,前面是源文件 后面是创建的链接文件
[root@oldboyedu-50 ~]# mkdir /oldboy 创建环境 [root@oldboyedu-50 ~]# cd /oldboy/ [root@oldboyedu-50 oldboy]# echo oldboyedu.com >>/oldboy/oldboy.txt [root@oldboyedu-50 oldboy]# cat oldboy.txt oldboyedu.com [root@oldboyedu-50 oldboy]# ln oldboy.txt oldboy.txt.hard 创建硬链接 [root@oldboyedu-50 oldboy]# ll -lhi 检查 创建成功 两个文件inode号码相同 total 8.0K 523268 -rw-r--r--. 2 root root 14 Jul 10 20:53 oldboy.txt 523268 -rw-r--r--. 2 root root 14 Jul 10 20:53 oldboy.txt.hard [root@oldboyedu-50 oldboy]# cat oldboy.txt 所查看内容一样 oldboyedu.com [root@oldboyedu-50 oldboy]# cat oldboy.txt.hard 所查看内容一样 oldboyedu.com 查看两文件的inode号相同。 [root@znix clsn]# ls -lhi clsn.txt clsn.txt-hard 151273 -rw-r--r-- 2 root root 607 Aug 30 09:13 clsn.txt 151273 -rw-r--r-- 2 root root 607 Aug 30 09:13 clsn.txt-hard
2.2 软连接
2.2.1 含义
最常用
为了快捷,省事,方便使用
相当于windows 的快捷方式 存放的源文件的位置
2.2.2 如何创建软链接
不能对目录创建硬链接 软连接可以
[root@oldboyedu-50 oldboy]# ln -s oldboy.txt oldboy.txt-soft 创建软连接 [root@oldboyedu-50 oldboy]# ls -l 检查是否创建成功 total 8 -rw-r--r--. 2 root root 14 Jul 10 20:53 oldboy.txt -rw-r--r--. 2 root root 14 Jul 10 20:53 oldboy.txt.hard lrwxrwxrwx. 1 root root 10 Jul 10 21:13 oldboy.txt-soft -> oldboy.txt 创建成功 使用绝对路径创建 显示的信息也是绝对路径 相对路径创建 显示的就是相对路径 [root@oldboyedu-50 ~]# ln -s /oldboy/oldboy.txt /oldboy/oldboy.txt.1 [root@oldboyedu-50 ~]# ls -l /oldboy/ total 8 -rw-r--r--. 2 root root 14 Jul 10 20:53 oldboy.txt lrwxrwxrwx. 1 root root 18 Jul 10 21:16 oldboy.txt.1 -> /oldboy/oldboy.txt 源文件消失(移动改名删除等) 查看信息 软连接对应的源文件就会变红(红底白字)
2.3 文件删除原理
硬连接数为0
进程调用数为0 是否有人使用
2.4 如何查看被占用的文件
lsof (list open files ) 显示所有被占用的文件
模拟环境
xshell开启两个窗口 先运行窗口二 在运行窗口一 窗口1 lsof |grep oldboy.txt 窗口2 tail -f /oldboy/oldboy.txt 查看进程 [root@oldboyedu50-lnb /oldboy]# lsof |grep oldboy.txt tail 3755 root 3r REG 8,3 14 1046996 /oldboy/oldboy.txt 命令或服务名称 文件大小 inode号码 文件名
2.5 软连接与硬链接之间的区别
2.5.1 创建的区别
ln命令创建硬链接,ln -s 创建软链接
2.5.2 含义
在同一分区硬链接文件与源文件的inode节点号相同。而软链接文件相当于windows的快捷方式(inode节点号与源文件不同)
2.5.3 特点
不能对目录创建硬链接,但可以创建软链接,对目录的软链接会经常被用到
软连接可以跨文件系统,硬链接不可以跨文件系统
2.5.4 源文件 软连接 硬链接与删除
删除软连接文件,对源文件及硬链接文件无任何影响
删除文件的硬链接文件,对源文件及软连接文件无任何影响
删除连接文件的源文件,对硬链接文件无影响,会导致其软连接失效(红底白字)
同时删除源文件及硬链接文件,整个文件才会被“真正”删除
2.6 文件删除但空间未被释放案例
模拟:文件没有被彻底删除(i_link)为0 进程调用数(i_count)不为0
没有被彻底删除-硬链接数为0,进程调用数不为零
/var/log/messages
[root@oldboyedu-50 oldboy]# df -h df -h查看磁盘的使用情况 Filesystem Size Used Avail Use% Mounted on /dev/sda3 19G 6.1G 12G 35% / / 使用最多 tmpfs 491M 0 491M 0% /dev/shm /dev/sda1 190M 35M 146M 19% /boot [root@oldboyedu-50 oldboy]# du -sh /* |sort -h 使用du -sh /*一层层排查 [root@oldboyedu-50 oldboy]# du -sh /var/* |sort -h 排查过程 [root@oldboyedu-50 oldboy]# du -sh /var/log/* |sort -h 找到占用空间最多的 [root@oldboyedu-50 oldboy]# \rm -f /var/log/messages 确认无用处之后 再删除 [root@oldboyedu-50 oldboy]# df -h 删除后检查发现空间并没有被释放 Filesystem Size Used Avail Use% Mounted on /dev/sda3 19G 6.1G 12G 35% / 并没有被释放 tmpfs 491M 0 491M 0% /dev/shm /dev/sda1 190M 35M 146M 19% /boot [root@oldboyedu-50 oldboy]# lsof |grep messages 使用lsof 查看文件是否被调用 rsyslogd 1247 root 1w REG 8,3 4888993470 135456 /var/log/messages (deleted) deleted lsof的标记 表示文件硬连接数为0 进程调用不为0 [root@oldboyedu-50 oldboy]# /etc/init.d/rsyslog restart 重启进程 [root@oldboyedu-50 oldboy]# df -h 查看磁盘的使用情况 Filesystem Size Used Avail Use% Mounted on /dev/sda3 19G 1.5G 17G 9% / 磁盘空间被释放 tmpfs 491M 0 491M 0% /dev/shm /dev/sda1 190M 35M 146M 19% /boot 重启进程后/var/log/messages也会重新被创建 但是空间已被释放
2.7 如何找通过inode号找硬链接
使用find命令 -inum参数找inode号码,找到相同的inode 互为硬链接。
[root@znix ~]# ls -lhi test.txt 260141 -rw-r--r--. 2 root root 265 Aug 29 19:16 test.txt [root@znix ~]# find /* -type f -inum 260141 /root/test.txt /root/test.txt-hard
Linux文件属性相关补充及软硬连接的更多相关文章
- linux文件描述符、软硬连接、输入输出重定向
引用链接:https://blog.csdn.net/qq769651718/article/details/79459346 文件描述符的作用: 文件描述符是linux操作系统中特有的概念.其相当于 ...
- linux文件属性权限相关
一个linux目录或者文件,都会有一个所属主和所属组. 所属主,即文件的拥有者,而所属组,即该文件所属主所在的一个组. linux文件属性 包括文件类型 - d l b c s 依次表示 普通文件 ...
- Linux软硬连接
曾经对软硬连接一直搞不明白,关键是怕操作错误. 硬链接不能跨区实现连接,硬链接是对原始文件的镜像,同一个inode,软连接是快捷方式,inode保存的是快捷方式的.原始文件删除,导致软连接文件无效. ...
- Linux 文件属性及详细操作
目录 Linux 文件属性 文件属性信息组成 文件属性概念说明 文件软硬链接说明 硬链接 软链接 补充知识 存储数据相关-inode/block inode: block: 读取文件原理图 Linux ...
- 软硬连接ln
软硬连接Linux链接概念Linux链接分两种,一种被称为硬链接(Hard Link),另一种被称为符号链接(Symbolic Link).默认情况下,ln命令产生硬链接. [硬连接]硬连接指通过索引 ...
- Linux 文件属性及权限_007
Linux一切皆文件: Llinux系统的文件或目录的属性主要包括:索引节点.文件类型.文件权限.链接数.所属的用户和用户组.最近修改时间等. Llinux文件属性及权限图形说明: Linux文件属性 ...
- Linux内核相关常见面试题
转:http://www.embeddedlinux.org.cn/html/xinshourumen/201303/11-2475.html 本文详细阐述了linux内核相关的开发职位面试中 ...
- Linux文件属性与权限
一.在Linux里面,任何一个文件都具有“User,Group,Others”(用户.用户组.其他人)三种身份 二.用户组最有用的功能之一,就是当你在团队开发资源的时候,且每个账号都可以有多个用户组的 ...
- Linux文件属性之用户和组基础知识介绍
一.Linux多用户多任务介绍 Linux/Unix 是一个多用户.多任务的操作系统:在讲Linux账号及账号组管理之前,我们先简单了解多用户.多任务操作系统的基本概念. 1.1Linux单用户多任务 ...
随机推荐
- CQOI2007 涂色 paint (区间dp)
听说这道题是当年省选题 于是兴致勃勃拿来做了做 至于如何想到思路... 事实上没想象中那么简单... 脑阔挺疼的... (一开始都没看出来是区间dp) 想到可以区间dp,然后就似乎没啥大问题 枚举区间 ...
- JDBC在Java Web中的应用
JDBC在Java Web中的应用 制作人:全心全意 在Java Web开发中,JDBC的应用十分广泛.通常情况下,Web程序操作数据库都是通过JDBC实现,即使目前数据库方面的开源框架层出不穷,但其 ...
- Java Arrays.sort相关用法与重载
Java Arrays.sort() Java中的数组排序函数, 头文件 import java.util.Arrays; 相关API Arrays.sort(arys[]) Arrays.sort( ...
- Shiro_认证思路分析
[认证] 也就是登录. 1.获取当前的subject,调用SecurityUtils.getSubject() 2.测试当前的用户是否已经被认证,即是否登录.调用subject的isAuthentic ...
- 【Codeforces 567D】One-Dimensional Battle Ships
[链接] 我是链接,点我呀:) [题意] 长度为n的一个序列,其中有一些部分可能是空的,一些部分是长度为a的物品的一部分 (总共有k个长度为a的物品,一个放在位置i长度为a的物品会占据i,i+1,.. ...
- Intellij IDEA神器居然还有这些小技巧---超级好用的
Intellij IDEA神器居然还有这些小技巧----https://my.oschina.net/samgege/blog/1808622?p=8
- better-scroll & scroll
scroll better-scroll https://github.com/ustbhuangyi/better-scroll/blob/master/README.md#getting-star ...
- poj 3923 模拟
/* 1.判断是否是一个完整边框 2.判断是否长度和宽度小于3 3.判断是否有内部覆盖的现象 */ #include<stdio.h> #define N 110 #define inf ...
- poj 3164 最小树形图模板!!!
/* tle十几次,最后发现当i从1开始时,给环赋值时要注意啊! 最小树形图 */ #include<stdio.h> #include<string.h> #include& ...
- Eddy's mistakes
Problem Description Eddy usually writes articles ,but he likes mixing the English letter uses, for ...