虽然之前用过Linux,但在日常使用过程中发现还是有些东西没有了解,所以最近花了些时间看了《鸟哥的linux私房菜》(基础学习篇)一书。作为一个前端一般不需要掌握的太多,在这里把一些我认为比较重要的内容做下笔记。本篇为笔记第一篇,关于磁盘分区和文件权限。
磁盘分区
硬盘的读写是以扇区为基本单位的。整块磁盘的第一个扇区(一个扇区512字节)很重要,记录了一个主引导分区(master boot record),可以安装引导加载程序的地方,有446字节;还有分区表,记录整块磁盘分区的状态,有64字节。主引导分区很重要,系统在开机的时候会主动读取这块内容才知道程序放在哪里要怎么开机。
分区表对磁盘进行分区,记录了分区的起始与结束的柱面号码(分区最小单位为柱面),64字节的容量最多只写入四组分区信息。但是,利用额外的扇区来记录更多的分区信息,可以切割出更多的分区(逻辑分区)。
操作系统会控制硬件,读取硬盘的软件执行软件,但是操作系统这个软件又是怎么被执行的呢?BIOS是写入到主板上的一个软件,会找到硬盘里的主引导分区的引导加载程序,加载程序执行读取操作系统内核文件然后就跑起来了。引导加载程序是操作系统安装时提供的。
文件目录与目录树挂载
Linux内的所有数据都是以文件形态呈现的,所以,整个Linux系统最重要的就在于目录树结构。目录树结构以根目录为主,所有文件都是在根目录下(目录也是一种文件),系统找到某个文件就是通过根目录下去寻找到的。分区和目录树的关系通过挂载联系起来,所谓的“挂载”就是利用一个目录当作进入点,将磁盘分区的数据放置在该目录下,也就是进入该目录就可以读取该分区的意思。所以当你为你的主机新加一块硬盘后,需要通过挂载操作才能访问到里面的内容(当然分区的文件系统得是系统支持的)。根目录一定要挂载到某个分区,其他目录可根据用户自己需求挂载到不同分区。
Linux文件系统概述
文件权限
Linux的所有文件(目录也是一种文件)有“User,Group,Other”三种身份属性,一个User可能属于多个Group,记录了该文件的所属用户、所属组和其他用户对该文件拥有的权限rwx(读写执行)权限。终端输入ls -al
可以列出目录下文件和信息(-a是all,-l是long,表示长串信息)。套用鸟哥的一个图,列出的读写信息如下所示:
(图中档案类型也就是文件类型,可能是目录文件(d)或者文件(-))
需要注意的是,有了文件的写权限并没有删除文件的权限,删除文件的权限是文件所在目录的写权限,所以拥有了某个目录的写权限才可以对目录下文件进行增删和修改文件名。而拥有目录执行权限才可以让用户进入目录当成工作目录,而目录读权限可以读取目录下文件信息。
改变文件属性与权限命令:chgrp命令改变文件所属用户组;chown改变文件所有者;chmod改变文件的权限。
普通用户获取root权限方法:
- 执行命令
su -
,然后输入root密码 - 在执行的命令前加上
sudo
,然后输入自己的密码,这个只有特定用户可以使用
系统几个主要的目录
- /usr(UNIX software resource):与软件安装与执行有关,放置“UNIX系统软件资源”,包括系统默认自带的软件
- /var(variable):与系统运作过程有关,针对常态性变动的文件,包括缓存、登陆文件以及软件运行时产生的文件
- /bin:系统和用户很多执行文件的放置目录,与/usr/bin几乎是一样的,许多distribution课呢呢个/bin是/usr/bin的一个符号连接
- /etc:系统主要的配置文件
- /opt:第三方如软件放置的目录
- /usr/local,在你安装完了Linux之后,基本上所有的配备你都有了,但你可以安装其他软件。系统管理员在本机自行安装自己下载的软件,一般安装到此目录。同时,安装完毕之后所得到的执行档,为了与系统原先的执行档有分别,这些软件的执行档通常摆在/usr/local/bin这个地方。
书上关于磁盘分区与文件权限与目录的重要(也是基础)内容就是这些,下一篇记录一下文件的常见操作与文件系统(Ext2)。