最全的Linux教程,Linux从入门到精通
======================
-
linux从入门到精通(第2版)
-
Linux系统移植
-
Linux驱动开发入门与实战
-
LINUX 系统移植 第2版
-
Linux开源网络全栈详解 从DPDK到OpenFlow
第一份《Linux从入门到精通》466页
====================
内容简介
====
本书是获得了很多读者好评的Linux经典畅销书**《Linux从入门到精通》的第2版**。本书第1版出版后曾经多次印刷,并被51CTO读书频道评为“最受读者喜爱的原创IT技术图书奖”。本书第﹖版以最新的Ubuntu 12.04为版本,循序渐进地向读者介绍了Linux 的基础应用、系统管理、网络应用、娱乐和办公、程序开发、服务器配置、系统安全等。本书附带1张光盘,内容为本书配套多媒体教学视频。另外,本书还为读者提供了大量的Linux学习资料和Ubuntu安装镜像文件,供读者免费下载。
本书适合广大Linux初中级用户、开源软件爱好者和大专院校的学生阅读,同时也非常适合准备从事Linux平台开发的各类人员。
需要《Linux入门到精通》、《linux系统移植》、《Linux驱动开发入门实战》、《Linux开源网络全栈》电子书籍及教程的工程师朋友们劳烦您转发+评论
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
- 例如:
setfacl -m d:u:sky:rx -R /home/av
,如果给av这个父目录下所有子文件赋予了读和执行默认的ACL权限,之前新建的是不会生效的,针对赋予权限之后新建的文件
删除默认ACL
权限
- 例如:
setfacl -m d:u:sky:rx -R /home/av
,删除av
这个目录下所有文件和子目录的默认ACL权限
递归ACL
权限,递归是父目录在设定ACL权限时,所有的子文件和子目录也会拥有相同的ACL权限,这时设定的是针对已经存在的文件。
-
u:用户名:权限 文件名,为用户分配ACL权限
-
例如:
setfacl -m u:sky:rx -R /home/av
,赋予sky这个用户读和执行的权限,av目录下所有文件都赋予了读和执行的权限。尽量少用递归ACL权限,会造成权限溢出。
二、文件不可改变位权限
chattr
命令 [+ - =]【选项】文件或目录名
-
+:增加权限
-
-:删除权限
-
=:等于某权限
最常用的是-i
和-a
-i
:文件不可删,不可修改。如果对文件设置i属性,那么不允许对文件进行删除、改名,也不能添加和修改数据;如果对目录设置i属性,那么只能修改目录下文件的数据,但不允许建立或删除文件。
例如:此时对bols
文件进行了赋予chattr +i bols
属性命令。使用lsattr
命令查看你会发现多了i属性,而且不能对其进行删除如下图:
设置了+i属性,不让删除
-a
:文件不可删,可修改。如果对文件设置a属性,那么只能在文件中增加数据,但不能删除和修改数据;如果对目录设置a属性,那么只允许在目录中建立和修改文件,但不允许删除文件。
例如:此时对bols
文件进行了赋予chattr +a bols
属性命令,也可以用lsattr命令查看发现多了a属性如下图:
设置+a属性了,也是不让删除的
注意:使用vi
进行修改是行不通的,系统不好判断是修改还是新增。但使用echo >> av /home/user1/bols
重定向输出是可行的。
三、文件特殊权限
通过观看学习视频,总结了下,大致的把文件特殊权限分为这三个:suid(SetUID
),sgid(SetGID
),sbit(Sticky BIT
)。
首选来了解下suid
,下面我就采用简写了。
-
只有可执行的二进制程序才能设定suid权限。
-
命令执行者要对该程序拥有X(执行)权限。
-
命令执行者在执行该程序时获得该程序文件属组的身份(在执行程序的过程中灵魂附体为文件是属组)。
-
suid权限只在该程序执行过程中有效,身份改变只在程序执行过程中生效。
passwd
命令拥有suid
权限,所以普通用户可以修改自己的密码
cat
命令没有suid
权限,普通用户不能查看/etc/shadow
文件中的类容
设定suid
的方法,4代表suid
-
chmod 4755 文件名
-
chmod u+s 文件名
有设定当然也有对应的取消suid
的方法
-
chmod 0755 文件名
-
chmod u-s 文件名
使用suid权限时得慎重,这家伙也是很危险的。
-
关键目录应该严格控制写权限。例如:“/”,"usr"等等
-
用户密码设置严格遵守密码三原则
-
对系统中默认应该具有suid权限的文件作一列表,定时检查有没有以外的文件被设置的suid权限
了解了suid权限后,再来了解下sgid
(SetUID
)权限,针对文件的作用。
-
只有可执行的二进制程序才能设定sgid权限。
-
命令执行者要对该程序拥有X(执行)权限。
-
在执行程序的时候,组身份升级为该程序文件的属组
-
sgid权限一样也只在该程序执行过程中有效,组身份改变只在程序执行过程中生效。
sgid
针对目录的作用
-
普通用户必须对此目录拥有r(读)和x(写)权限,才能进入此目录
-
普通用户在此目录中的有效组会变成此目录的属组
-
普通用户对此目录拥有w(写)权限时,新建文件的默认属组是这个目录的属组
例如:
-
/usr/bin/locate
是可执行二进制程序,可以赋予sgid
特使权限 -
执行用户lamp对
/usr/bin/locate
命令拥有执行权限 -
执行
/usr/bin/locate
命令时,组身份会升级为slocate组,而slocate组对/var/lib/mlocate/mlocate.db
数据库拥有r(读)权限,普通用户可以使用locate命令查询mlocate.db数据库 -
命令结束时,用户lamp的组身份返回lamp组
设定sgid
,2代表sgid
-
chmod 2755 文件名
-
chmod g+s 文件名
取消sgid
-
chmod 0755 文件名
-
chmod g-s 文件名
了解完sgid,就剩下最后的sbit
特殊权限了,粘着位作用。
-
粘着位目前只对目录有效
-
普通用户对该目录拥有
w
(写)和x
(执行)权限,普通用户在此目录拥有写入权限 -
如果没有粘着位,普通用户拥有
w
(写)权限,所以可以删除此目录下所有文件,包括其他用户建立的文件。一旦赋予了粘着位,只有root
可以删除所有文件,普通用户就算拥有w
(写)权限,也只能删除自己建立的文件,但不能删除其他用户建立的文件。
四、sudo权限
sudo
权限,把原本只能超级用使用的命令对普通用户赋予权限,操作对象是系统命令。
sudo
使用
-
visudo
,实际修改的是/etc/sudoers
文件 -
root
用户名ALL
被管理主机的地址 = (ALL
)可使用的身份ALL
授权命令(绝对路径) -
#%wheel
#%组名ALL
被管理主机的地址 = (ALL
)可使用的身份ALL
授权命令(绝对路径)
例如:授权普通用户可以重启服务器
-
visudo,user1 ALL = /sbin/shutdown -r now
-
注意:命令写的越简单,相对而言赋予的权限越大。
为了做好运维面试路上的助攻手,特整理了上百道 【运维技术栈面试题集锦】 ,让你面试不慌心不跳,高薪offer怀里抱!
这次整理的面试题,小到shell、MySQL,大到K8s等云原生技术栈,不仅适合运维新人入行面试需要,还适用于想提升进阶跳槽加薪的运维朋友。
本份面试集锦涵盖了
- 174 道运维工程师面试题
- 128道k8s面试题
- 108道shell脚本面试题
- 200道Linux面试题
- 51道docker面试题
- 35道Jenkis面试题
- 78道MongoDB面试题
- 17道ansible面试题
- 60道dubbo面试题
- 53道kafka面试
- 18道mysql面试题
- 40道nginx面试题
- 77道redis面试题
- 28道zookeeper
总计 1000+ 道面试题, 内容 又全含金量又高
- 174道运维工程师面试题
1、什么是运维?
2、在工作中,运维人员经常需要跟运营人员打交道,请问运营人员是做什么工作的?
3、现在给你三百台服务器,你怎么对他们进行管理?
4、简述raid0 raid1raid5二种工作模式的工作原理及特点
5、LVS、Nginx、HAproxy有什么区别?工作中你怎么选择?
6、Squid、Varinsh和Nginx有什么区别,工作中你怎么选择?
7、Tomcat和Resin有什么区别,工作中你怎么选择?
8、什么是中间件?什么是jdk?
9、讲述一下Tomcat8005、8009、8080三个端口的含义?
10、什么叫CDN?
11、什么叫网站灰度发布?
12、简述DNS进行域名解析的过程?
13、RabbitMQ是什么东西?
14、讲一下Keepalived的工作原理?
15、讲述一下LVS三种模式的工作过程?
16、mysql的innodb如何定位锁问题,mysql如何减少主从复制延迟?
17、如何重置mysql root密码?
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
15、讲述一下LVS三种模式的工作过程?
16、mysql的innodb如何定位锁问题,mysql如何减少主从复制延迟?
17、如何重置mysql root密码?
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!