软链接

linux ln用法

余生颓废 提交于 2020-04-03 18:38:57
这是linux中一个非常重要命令,请大家一定要熟悉。它的功能是为某一个文件在另外一个位置建立一个同不的链接,这个命令最常用的参数是-s,具体用法是: ln -s 源文件 目标文件 这是linux中一个非常重要命令,请大家一定要熟悉。它的功能是为某一个文件在另外一个位置建立一个同不的链接,这个命令最常用的参数是-s,具体用法是:ln -s 源文件 目标文件。 当 我们需要在不同的目录,用到相同的文件时,我们不需要在每一个需要的目录下都放一个必须相同的文件,我们只要在某个固定的目录,放上该文件,然后在其它的 目录下用ln命令链接(link)它就可以,不必重复的占用磁盘空间。 例如:ln -s /bin/less /usr/local/bin/less -s 是代号(symbolic)的意思。 这 里有两点要注意:第一,ln命令会保持每一处链接文件的同步性,也就是说,不论你改动了哪一处,其它的文件都会发生相同的变化;第二,ln的链接又软链接 和硬链接两种,软链接就是ln -s ** **,它只会在你选定的位置上生成一个文件的镜像,不会占用磁盘空间,硬链接ln ** **,没有参数-s, 它会在你选定的位置上生成一个和源文件大小相同的文件,无论是软链接还是硬链接,文件都保持同步变化。 如果你用ls察看一个目录时,发现有的文件后面有一个@的符号,那就是一个用ln命令生成的文件,用ls

Linux硬链接和软链接

Deadly 提交于 2020-03-30 21:56:13
硬链接和软连接 硬链接: 硬链接是指通过索引节点来进行转换,在Linux的文件系统中,保存在磁盘分区中的文件 不管是什么类型都会给它分配一个编号,这个编号被称为索引节点(Inode Index)或者成为Inode 在Linux系统中,多个文件中指向同一个索引节点(Inode)是正常允许的。一般这种链接就成为硬链接。硬链接的作用之一是允许一个多文件拥有多个 有效路径名,这样用户就可以建立硬链接到重要的文件,以防止“误删”源数据(很多硬件,如netapp存储中的快照功能就应用了这个原理,增加了一个快照就多了一个硬链接)。问什么文件建立了硬链接就会放置数据删除呢? 因为文件系统的原理是,只要文件名指向统一索引节点(Inode)还有一个以上的链接(仅仅删除了该文件指向)。只删除其中一个链接并不影响索引节点本身和其它的链接(既数据文件指向)。只删除一个链接并不影响索引节点本身和其它的链接(既数据文件实体并未被删除),只有当最后一个链接被删除后,此时如果有新数据要存储到硬盘时被删除文件的数据块及目录的链接才会被释放,空间被新数据占用覆盖。此时,数据就再也无法找回了。也就是说,在linux系统中,删除文件(其实目录也是文件)的添加是于之相关的所有硬链接文件均被删除。 软链接: 软链接有时也被称为符号链接(Symbolic Link)。软链接文件就类型与Windows系统中的快捷文件

文件管理

扶醉桌前 提交于 2020-03-29 19:34:58
文件管理 by:fengciaimei 一、根目录层级结构介绍 文件系统遵循 FHS ( filesyststem hierarchy standard )规范,文中定义了各个目录作用。 boot 目录 :   此目录存放系统启动过程中的引导目录,其中 grub 引导程序及其配置文件, vmlinuz 内核文件, initramfs 类伪文件系统 bin 目录 :   在 centos6 及以前版本中存放了系统启动时用到的最基础命令。也是说有用户的 PATH 路径下必须重要路径之一。此目录不能单独分区。此目录下不能又子目录。   在 centos7 、 8 中此目录已经变成了 /usr/bin 的软连接。也就是在后续系统列中弱化了 bin 、 usr/bin 相关分类概念。 sbin 目录 :   同 bin 目录一样,都是系统启动时用到的基础管理命令。此目录同样不能单独分区。     在 centos6 及以前版本中 sbin 目录时独立目录     centos7 、 8 中时 /usr/sbin 目录的软连接。 dev 目录 :   linux 系统中存放设备文件和特殊文件的目录,同样不能单独分区。此目录下设备文件分字符设备文件和块设备文件。     字符设备文件,又称线性设备文件,以 c 为类型标识符,线性访问设备。     块设备文件,又称随机设备文件,以 b

理解linux文件系统之inode

元气小坏坏 提交于 2020-03-29 12:29:47
分享一篇关于linux文件系统inode讲解得比较清晰的文章~ inode 是一个重要概念,是理解Unix/ Linux 文件系统和硬盘储存的基础。 我觉得,理解inode,不仅有助于提高系统操作水平,还有助于体会Unix设计哲学,即如何把底层的复杂性抽象成一个简单概念,从而大大简化用户接口。 下面就是我的inode学习笔记,尽量保持简单。 =================================== 理解inode 作者:阮一峰 一、inode是什么? 理解inode,要从文件储存说起。 文件储存在硬盘上,硬盘的最小存储单位叫做"扇区"(Sector)。每个扇区储存512字节(相当于0.5KB)。 操作系统 读取硬盘的时候,不会一个个扇区地读取,这样效率太低,而是一次性连续读取多个扇区,即一次性读取一个"块"(block)。这种由多个扇区组成的"块",是文件存取的最小单位。"块"的大小,最常见的是4KB,即连续八个 sector组成一个 block。 文件数据都储存在"块"中,那么很显然,我们还必须找到一个地方储存文件的元信息,比如文件的创建者、文件的创建日期、文件的大小等等。这种储存文件元信息的区域就叫做inode,中文译名为"索引节点"。 每一个文件都有对应的inode,里面包含了与该文件有关的一些信息。 二、inode的内容 inode包含文件的元信息

Linux高级命令进阶(week1_day2)--技术流ken

倾然丶 夕夏残阳落幕 提交于 2020-03-27 03:14:26
输出重定向 场景:一般命令的输出都会显示在终端中,有些时候需要将一些命令的执行结果想要保存到文件中进行后续的分析/统计,则这时候需要使用到的输出重定向技术。 >:覆盖输出,会覆盖掉原先的文件内容 >>:追加输出,不会覆盖原始文件内容,会在原始内容末尾继续添加 2>:错误输出,会覆盖掉原先的文件内容 2>>:错误追加输出,会覆盖掉原始文件内容,会在原始内容末尾继续添加 &>:将标准输出与错误输出共同写入到文件中。覆盖原有内容 &>>:将标准输出与错误输出共同写入到文件中(追加到原有内容的后面) 标准输入重定向(STDIN,文件描述符为0):默认从键盘输入,也可从其他文件或命令中输入。 标准输出重定向(STDOUT,文件描述符为1):默认输出到屏幕。 错误输出重定向(STDERR,文件描述符为2):默认输出到屏幕。 案例1:使用覆盖输出(覆盖原文内容) [root@ken ~]# vim test [root@ken ~]# cat test this is ken [root@ken ~]# echo "this is oscar" > test [root@ken ~]# cat test this is oscar 案例2:使用追加输出(原文中追加) [root@ken ~]# cat test this is oscar [root@ken ~]# echo "this is

第二周作业

谁都会走 提交于 2020-03-26 11:30:00
1、描述Linux发行版的系统目录名称命名规则以及用途。 系统目录名称的 命名规则 以 " / " 为顶点,文件和目录被组织成一个单根倒置的树状结构 根文件系统(rootfs):root filesystem 文件名称区分大小写 以 . 开头的文件为隐藏文件 路径分隔方式的 / 文件有两类数据: 元数据:metadata 数据:data 文件名最长255个字节 包括路径在内文件名称最长4095个字节 蓝色-->目录 绿色-->可执行文件 红色-->压缩文件 浅蓝色-->链接文件 灰色-->其他文件 除了斜杠和NUL,所有字符都有效.但使用特殊字符的目录名和文件不推荐使用,有些字符需要用引号来引用它们 标准Linux文件系统(如ext4),文件名称大小写敏感,例如:MAIL, Mail, mail, mAiL 目录功能介绍 /boot:引导文件存放目录,内核文件(vmlinuz)、引导加载器(bootloader, grub)都存放于此目录 /bin:所有用户使用的基本命令;不能关联至独立分区,OS启动即会用到的程序 /sbin:管理类的基本命令;不能关联至独立分区,OS启动即会用到的程序 /lib:启动时程序依赖的基本共享库文件以及内核模块文件(/lib/modules) /lib64:专用于x86_64系统上的辅助共享库文件存放位置 /etc:配置文件目录 

Linux学习(含有常用命令集)

佐手、 提交于 2020-03-22 16:03:14
Linux概述 Linux是一个开源、免费的操作系统。 Linux是一个内核,在linux内核上加工包装,二次开发成Ubuntu、CentOS等发行版。 Linux常用命令集 vi,vim,文本编辑器 vi和vim的三种常见模式:正常模式,可以使用快捷键处理文件;编辑模式,按i进入编辑模式;命令行模式,按ESC进入,完成:wq离开等命令。 查找关键字,命令行下按/关键字,回车查找关键字,n查找下一个; 设置行号,命令行下:set nu和:set nonu 到文档最末行和顶行,分别在正常模式输入G和gg 移动到指定行数,先显示行号,然后输入20,最后按快捷键shift+G 开机重启和用户注销 shutdown -h now,立即关机 shutdown -r now,reboot,重启计算机 sync,把内存数据同步到磁盘 用户管理 用户属于用户组,一个用户至少属于一个用户组,用户配置信息在/etc/passwd,组信息在/etc/group useradd 用户名,添加用户 passwd 用户名,指定密码 userdel 用户名,删除用户保留home目录 id 用户名,查询用户信息 su - 切换用户名,切换用户 groupadd 组名,增加用户组 groupdel 组名,删除用户组 useradd -g 用户组 用户名,增加用户到相应用户组 usermod -g 用户组 用户名

运维必须掌握的Linux面试题-来自马哥企业教练团队

我们两清 提交于 2020-03-22 15:54:14
1、解释下什么是GPL,GNU,自由软件? GPL:(通用公共许可证):一种授权,任何人有权取得、修改、重新发布自由软件的权力。 GNU:(革奴计划):目标是创建一套完全自由、开放的的操作系统。 自由软件:是一种可以不受限制地自由使用、复制、研究、修改和分发的软件。主要许可证有GPL和BSD许可证两种。 2、linux系统里,buffer和cache如何区分? buffer和cache都是内存中的一块区域, 当CPU需要写数据到磁盘时,由于磁盘速度比较慢,所以CPU先把数据存进buffer, 然后CPU去执行其他任务,buffer中的数据会定期写入磁盘; 当CPU需要从磁盘读入数据时,由于磁盘速度比较慢, 可以把即将用到的数据提前存入cache,CPU直接从Cache中拿数据要快的多。 3、描述Linux运行级别0-6的各自含义 0:关机模式 1:单用户模式<==破解root密码 2:无网络支持的多用户模式 3:有网络支持的多用户模式(文本模式,工作中最常用的模式) 4:保留,未使用 5:有网络支持的X-windows支持多用户模式(桌面) 6: 重新引导系统,即重启 4、描述Linux系统从开机到登陆界面的启动过程 ⑴开机BIOS自检,加载硬盘。 ⑵读取MBR,MBR引导。 ⑶grub引导菜单(Boot Loader)。 ⑷加载内核kernel。 ⑸启动init进程

ln命令总结

你。 提交于 2020-03-22 15:02:28
ln是linux中一个非常重要命令。它的功能是为某一个文件在另外一个位置建立一个同步的链接,这个命令最常用的参数是-s,具体用法是: ln -s 源文件 目标文件 -s 是 symbolic的意思。 当我们需要在不同的目录,用到相同的文件时,我们不需要在每一个需要的目录下都放一个必须相同的文件,我们只要在某个固定的目录,放上该文件,然后在其它的目录下用ln命令链接(link)它就可以,不必重复的占用磁盘空间。例如:ln -s /bin/less /usr/local/bin/less-s 是代号(symbolic)的意思。这里有两点要注意:第一,ln命令会保持每一处链接文件的同步性,也就是说,不论你改动了哪一处,其它的文件都会发生相同的变化;第二,ln的链接又软链接和硬链接两种,软链接就是ln -s ** **,它只会在你选定的位置上生成一个文件的镜像,不会占用磁盘空间,硬链接ln ** **,没有参数-s, 它会在你选定的位置上生成一个和源文件大小相同的文件,无论是软链接还是硬链接,文件都保持同步变化。软链接是可以跨分区的,但是硬链接只能在同一分区内。如果你用ls察看一个目录时,发现有的文件后面有一个@的符号,那就是一个用ln命令生成的文件,用ls -l命令去察看,就可以看到显示的link的路径了当我们需要在不同的目录,用到相同的文件时

嵌入式系统作业5

我的梦境 提交于 2020-03-19 05:16:40
一、 练习tar命令打包和解包、练习gzip和bzip2 先用tar命令将对应目录下的文件分别打包成.tar.gz和.tar.bz2格式再分别用相对应的tar命令解包和解压缩 分别使用gzip与bzip2命令对对应文件进行压缩,然后再分别用gunzip和bunzip2解压缩对应的压缩包。 二、 比较两个任意文件,解释补丁文件的含义 创建两个文件a.txt和b.txt两文件至少要有一行内容不一样,再用cat命令查看两文件内容。2表示第2行,d表示删除,1表示第1行(这个数字实际上是发生变动的行号原本格式是区间[i,j],由于后面没有行了所以省略了逗号后面的内容),意思就是新文件相对于旧文件删除了内容,<hello111右边文件相对于左边文件的补丁内容(a增加d删除c更新) 使用diff -urN a.txt b.txt>s.patch生成补丁文件,-表示旧文件(左边文件),+表示新文件(右边文件),@@中表示差异块@@-i,j +i,j@@i表示该补丁块的起始行j表示对于新旧文件各自有改动的行,“-1,2”表示在旧文件的第一行开始数的第二行; +1则表示新文件的第一行作为起始行(本文件第一行后面没有内容了,因此只显示一个起始行,如果是1,6即表示第2到6行发生改变ps:不代表其中所有行都发生改变,此时第一行作为起始行)。其下面内容的含义是旧文件相对于新文件的增删情况