[root@localhost~]#序言
首先讲讲昨天关于缩容失败,开不机的解决方法;ACL权限也算是一个很重要的知识点,不难,但是很实用;
磁盘配额一般不需要自己弄,但是要懂得原理。
剩下的就是编译属于自己的linux内核,根据自己的需求不论是硬件还是其他,你都可以定制,但是编译成功与否这个我不敢保证,我也编译了两次才成功的。


 开班第十三天:

[root@localhost~]#今天的课程大纲
.缩容失败原因以及开不了机解决方法
.Linux中ACL权限的详解
.讲解一下磁盘配额的知识
.编译属于自己的linux内核

详细讲解:  

[root@localhost~]#缩容失败原因以及开不了机解决方法

  昨天为了增加lvroot的容量,而去减少lvhome的大小,在减少的过程中,有些人可能会误操作先减少了lv,再减少文件系统,这样问题就出现了,那多出来的文件系统,放在那里,所以正确的方法是跟动态扩容的顺序反一反。问题出现了,那么我们就需要解决。

  开不了机的主要原因还是开机自动挂载了/home,而/home本身已经损坏,所以开机的时候就会卡在挂载/home的地方,开机可以进入字符界面,提示输入密码,但是进去不了图形界面。解决方法如下:

  1. 输入密码之后,vim /etc/fstab,进入文件注释掉挂载/home的那一条,如果提示权限不足,进不去fstab,那么我们使用mount -o remount,tw /,重新以读写的方式挂载根文件系统。这样就可以了。
  2. 还有一个问题需要注意,查看fstab的时候,看看挂载选项写的是/dev/....还是uuid,如果是uuid,就需要改成/dev/....,因为文件系统变化,uuid变化,所以下次想要挂载的时候会不成功。
[root@localhost~]#Linux中ACL权限的详解

  ACL权限更加细化的设置UGO权限,那么使用ACL需要满足一下两点:

  1. ACL是文件系统的特性,有些文件系统是不支持的,例如ntfs,fat32.
  2. 就算支持,也需要开启ACL,假如我开启根的ACL,mount -o remount,acl /,如果想开机自动开启,编辑/etc/fstab。(可以使用mount来查看是否开启了ACL权限)

  如何来使用ACL权限呢,ACL权限可以针对某个用户,某个组,来单独设置权限,使用普通的UGO是难以实现的,现在有个需求,/home/libin/libin.txt,我想为libin这个用户单独对这个文件有rwx权限。

  1. 设置ACL权限,setfacl -m u:libin:rwx /home/libin/libin.txt,这样就设置好了。(会出现一个+号)
  2. 查看ACL权限,使用getfacl /home/libin/libin.txt。

  

  3.setfacl -x u:libin /home/libin/libin.txt,移除用户libin对这个文件的ACL权限。

  4.setfacl -b /home/libin/libin..txt,移除这个文件上所有的ACL权限。(+号没有了)

  5.设置目录的默认ACL权限,意思就是这个目录里新建的文件都会继承这个目录上的ACL权限,setfacl -d -m u:libin:rwx /home/libin,移除这个默认使用参数-k。

[root@localhost~]#讲解一下磁盘配额的知识

  磁盘配额是啥玩意,它是根据设置inode和block来限制文件系统可以使用的容量大小。(inode和block不懂的可以看以前的教程)。我们可以手动设置配额,假设我让一个文件系统只有一个inode,那么你可以做的就是在我的磁盘上只能放一个文件,第二个都放不进去。(感觉可以恶搞)

  磁盘配额使用要求:(类似ACL)

  1. 文件系统支持
  2. 开启磁盘配额,mount -o remount,usequota,grpquota /,同样开机启动也需要编辑fstab。

  现在我针对libin这个用户在/home分区下设置磁盘配额,

  1.首先使用quotacheck -ugvc /home,作用是检查磁盘的使用空间与限制。

  2.现在我已经开启了磁盘配额,使用quotaon /home,开启。

  3.现在我们用root用户设置libin针对/home分区的磁盘配额,使用edquota -u -f /home libin,其中block和inode是已经使用的,我们针对soft和hard设置,假设我设置inode后面的hard为15,soft为13,表示libin在/home中可以总共放置15个文件,到13个时候会警告快要满了。

  

  4.到达soft的限制后,一般是七天之内还可以添加文件,七天之后就就算你没有到达hard,也不能添加了,现在我们设置到达soft之后还可以多少天内添加文件,使用 edquota -u -f /home -T libin。

  5.关闭磁盘配额很简单,quotaoff /home。

  6.这里我做了一个例子,针对libin用户在/boot分区下,只能创建6个文件,且4个之后就会警告。还是例子更能让人理解一点。

  

  

  7.记住上面这些设置soft和hard的命令都只有root才能执行,edquota是设置libin用户在某个目录的磁盘配额,而且libin用户要进入到这个目录才能使用quota查看自己在这个目录的配额。

[root@localhost~]#编译属于自己的linux内核

  编译内核,听起来还是蛮高端的,其实很简单,我们编译内核主要有以下几个原因:

  1. 得到内核源代码(可以到kernel.org下载,不过慢,我提供两个)
  2. 解压源代码
  3. 编译内核
  4. 安装

  

  我习惯把内核解压到/usr/src目录中,tar /内核 -C /usr/src,进入解压之后的文件夹,cd /usr/src/内核.我们是初学者,要是有一个图形界面帮助我们就更好了,linux提供了,我们进入目录之后,直接执行make menuconfig,就可以打开一个图形界面,所有内核的设置都在这里。

  

  几千个,我说不过来,你不要的模块,空格去掉就行,不过我劝大家第一次不要修改太多,要不然怎么失败的都不知道,我这里开启了ntfs支持(默认不支持的),去掉了wireless(wifi),蓝牙。修改了内核编译出来的后缀名为自己的-625.libin。

  设置好之后,就可以开始编译了,执行make all && make modules_install && make install ,这个过程很漫长,一般在半个小时以上两个小时以下,所以慢慢等。。。。

  我这里成功编译出来了,并且也安装上了,怎么看是否是用的自己的内核呢?

  1. 查看ls /boot/grub/grub.conf 查看是否有新的内核选项
  2. 开机之后,uname -r 查看。

  

  自己的内核,看起来还是挺装x的。大家有什么不懂的可以私信我,然后我为你们详细解答。我讲的可能不是很清楚,因为太多了。

总结:

[root@localhost~]#来自爱家人爱老婆的IT男
对于linux的扩容缩容,一定要提前做好备份。内核编译不难,主要是很难搞清楚一些模块的依赖情况,所以现在的我还没有能力去深入了解这些东西。
一个一个字打出来的,挺累的,不过为了大家为了自己,挺值得的,希望大家点一波关注!谢谢各位!
博客园:爱家人爱老婆的IT男
QQ群:145252709,我会上传资源,同时会有很多大神跟你们讨论学习分享
微信公众号:程序猿的野生香蕉【获取文章中出现的工具】

<实训|第十三天>linux中ACL权限控制以及磁盘配额,附编译属于自己的linux内核的更多相关文章

  1. <实训|第九天>掌握linux中普通的权限控制和三种特殊的权限(sst),做合格的运维工程师

    linux中,权限的学习是必不可少的,不论是作为一名运维工程师或者是单一的管理者,学习好linux中的权限控制,你就可以保护好自己的隐私同时规划好你所管理的一切. 权限的学习是很多的,不要认为自己已经 ...

  2. Linux系统——ACL权限控制及特殊权限

    ACL权限控制 ACL(access control list),可以提供除属主.属组.其他人的rwx权限之外的细节权限设定 ACL的权限控制 (1)User 使用者 (2)Group 群组 (3)M ...

  3. Linux下ACL权限控制以及用sudo设置用户对命令的执行权限

    ACL权限分配 1.setfacl命令设置文件权限 setfacl -m u:user1:rw root.txt setfacl -m u:user2:rwx root.txt 2.getfacl命令 ...

  4. Linux - 文件ACL权限控制

    getfacl 1.test # 查看文件ACL权限 setfacl -R -m u:xuesong:rw- 1.test # 对文件增加用户的读写权限 -R 递归

  5. linux:ACL权限

    ACL权限是为了防止权限不够用的情况,一般的权限有所有者.所属组.其他人这三种,当这三种满足不了我们的需求的时候就可以使用ACL权限: 比如:一个网络老师,给一个班的学员上课,他在linux的根目录下 ...

  6. [转]Linux中文件权限目录权限的意义及权限对文件目录的意义

    转自:http://www.jb51.net/article/77458.htm linux中目录与文件权限的意义 一.文件权限的意义 r:可以读这个文件的具体内容: w:可以编辑这个文件的内容,包括 ...

  7. zookeeper的ACL权限控制

    ACL:Access Control List  访问控制列表 1.  简介 0.概述 ACL 权限控制,使用:scheme:id:perm 来标识,主要涵盖 3 个方面: 权限模式(Scheme): ...

  8. phalcon: 目录分组后的acl权限控制

    phalcon: 目录分组后的acl权限控制 楼主在做acl权限的时候,发现官方的acl只能针对未分组的目录,如下: app/ ___|./controller ___|./logic ___|./p ...

  9. 1.ZooKeeper ACL权限控制

    参考:https://blog.csdn.net/liuxiao723846/article/details/79391650 ZK 类似文件系统,Client 可以在上面创建节点.更新节点.删除节点 ...

随机推荐

  1. Javascript之旅——第二站:对象和数组

    一觉睡到中午,本来准备起来洗洗继续睡,不过想想没辙,还得继续这个系列,走过变量的第一站,第二站我们再来看看对象和数组. 一:对象   说起对象,我们不自然就想起了面向对象中自封装的一个类,同样JS中也 ...

  2. 挖一挖C#中那些我们不常用的东西之系列(3)——StackTrace,Trim

    时间太快了,三月又要过去了,告别一下...继续期待生死未卜的四月,今天我们继续挖一挖. 一: Environment.StackTrace 可能我们看到最多的就是catch中的e参数,里面会有一个St ...

  3. 我的ElasticSearch集群部署总结--大数据搜索引擎你不得不知

    摘要:世上有三类书籍:1.介绍知识,2.阐述理论,3.工具书:世间也存在两类知识:1.技术,2.思想.以下是我在部署ElasticSearch集群时的经验总结,它们大体属于第一类知识“techknow ...

  4. iNeedle系统之国舜项目

    一.简介 本周公司接了一个小项目,是给北京国舜科技股份有限公司做一个HTTP相关的小功能产品.大概实现功能是将交换机的源数据通过解析,分析出HTTP包配对的request和response头,并把每对 ...

  5. ASP.NET Core 1.0 安装并发布到Centos 7.2 使用jexus 5.8.2

    安装运行环境 sudoyuminstall libunwind libicu 下载.net core https://www.microsoft.com/net/download 下载完后上传文件 安 ...

  6. 手动添加jar包到maven

    废话不说,先上图,后说明: 1.登录系统 2.跟着箭头和方框走,一直到 Select Artifact(s) to Upload... 按钮 3.点击Select Artifact(s) to Upl ...

  7. netfilter-在内核态操作网络数据包

    一.概述                                                    netfilter是自2.4内核的一个数据包过滤框架.可以过滤数据包,网络地址和端口转换 ...

  8. VS2010最常用快捷键

    1.选择类 F8 当前位置变成选定区域的头/尾(再移动光标或者点鼠标就会选定) Ctrl + F8 当前行变成选定区域的头/尾(再移动上下光标或者点鼠标就会选定多行) CTRL + W 选择当前单词 ...

  9. NopCommerce 发布时 Could not load file or assembly 'file:///...\Autofac.3.5.2\lib\net40\Autofac.dll' or one of its dependencies

    本文转自:http://www.nopcommerce.com/boards/t/33637/4-errors.aspx 问题: The 3.5 solution compiles fine, and ...

  10. 2014 UESTC暑前集训搜索专题解题报告

    A.解救小Q BFS.每次到达一个状态时看是否是在传送阵的一点上,是则传送到另一点即可. 代码: #include <iostream> #include <cstdio> # ...