Symbolic

Linux 软链接和硬链接简介

两盒软妹~` 提交于 2019-12-04 04:51:31
本文主要介绍了 Linux系统 中的链接文件。 文件系统 在 Linux 系统中,将文件分为两个部分:用户数据和元数据。 元数据(inode) 元数据即文件的索引节点(inode),用来记录文件的权限(r、w、x)、文件的所有者和属组、文件的大小、文件的状态改变时间(ctime)、文件的最近一次读取时间(atime)、文件的最近一次修改时间(mtime)、文件数据的block编号。 inode的默认大小为128Byte,新的ext4和xfs可以设置为256Byte。 在Linux中,元数据中的inode号,即索引节点号,才是文件的唯一标识而非文件名。文件名仅是为了方便人们的记忆和使用,系统或程序通过inode号寻找正确的文件数据块。 用户数据(block) 用户数据即文件数据块(block),记录了文件的真实内容,包括文件名,文件名会被记录在上级目录的block中。也就是说,目录的block中记录的是这个目录下所有一级子文件和子目录的文件名及inode的对应,而文件的block中记录的才是文件实际的数据。 block的大小可以是1KB、2KB、4KB,默认为4KB。block用于实际的数据存储,如果一个block放不下数据,则可以占用多个block,最后一个block可能不会占满,但也不能再放入其他文件的数据。多个block有可能是连续的,也有可能是分散的。 硬链接(Hard

CentOS 5.8升级OpenSSH,OpenSSL到最新版

ぃ、小莉子 提交于 2019-12-03 04:30:03
因业务系统安全要求需要升级OpenSSH版本到最新版。原有CentOS 5.8系统自带版本如下。 [root@localhost ~]# lsb_release -a LSB Version: :core-4.0-amd64:core-4.0-ia32:core-4.0-noarch:graphics-4.0-amd64:graphics-4.0-ia32:graphics-4.0-noarch:printing-4.0-amd64:printing-4.0-ia32:pri nting-4.0-noarchDistributor ID: CentOS Description: CentOS release 5.8 (Final) Release: 5.8 Codename: Final [root@localhost ~]# ssh -V OpenSSH_4.3p2, OpenSSL 0.9.8e-fips-rhel5 01 Jul 2008 升级版本: 经过多次验证最终确定使用ssh最新版本openssh-7.3p1和openssl 0.9.8的最终版本openssl-0.9.8zg(CentOS 5.8安装openssl的1.x版本有很多问题,不建议使用)。而且openssh-7.3p1最低要求openssl 0.9.8f。 openssl-0.9

Linux 查看磁盘使用情况

一笑奈何 提交于 2019-12-03 01:43:53
通过 DU/DF 可以查看磁盘使用情况 DU 通过搜索文件来计算每个文件的大小然后累加,du能看到的文件只是一些当前存在的,没有被删除的。他计算的大小就是当前他认为存在的所有文件大小的累加和。 用法:du [选项]... [文件]...  或:du [选项]... --files0-from=F Summarize disk usage of the set of FILEs, recursively for directories. 必选参数对长短选项同时适用。 -0, --null end each output line with NUL, not newline -a, --all write counts for all files, not just directories --apparent-size print apparent sizes, rather than disk usage; although the apparent size is usually smaller, it may be larger due to holes in ('sparse') files, internal fragmentation, indirect blocks, and the like -B, --block-size=SIZE scale sizes by

类加载机制,双亲委派模型(1)

吃可爱长大的小学妹 提交于 2019-11-28 18:35:27
一般来说,我们把java的类加载过程分为三个主要步骤:加载,链接,初始化。 首先是加载阶段,它是java将字节码数据从不同的数据源读取到JVM中,并映射为JVM认可的数据结构,并映射为JVM认可的数据结构(Class对象),这里的数据源可能是各种各样的形态,如jar文件,class文件,甚至是网络数据源;如果输入的数据不是ClassFile的结构,则会抛出ClassFormatError。 第二阶段是链接(Linking),这是核心的步骤,简单说是吧原始的类定义信息平滑地转化如JVM运行的过程中。这里可进一步新氛围三个步骤: 验证(Verification),这是虚拟机安全的重要保障,JVM需要核验字节信息是符合Java虚拟机规范的,否则就认为是VerifyError,这样就放置了恶意信息或者不合规的信息危害JVM的运行,验证阶段可能触发更多的class的加载。 准备(Preparation),创建类或者接口中的静态变量,并初始化静态变量的初始值。 单这里的“初始化”和下面的显式初始化阶段是有区别的,侧重点在于分配所需要的内存空间,不回去执行更进一步的JVM指令。 解析(Resolution),在这异步会将常量池中的符号引用(symbolic reference)替换为直接引用。在Java虚拟机规范中,详细介绍了类、接口、方法和字段等各个方面的解析。 最后是初始化阶段