[34期] KO战队0810笔记总结|房子

2024-01-31 22:40

本文主要是介绍[34期] KO战队0810笔记总结|房子,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1RPM安装时一般不能指定安装目录
正确 RPM一般是作者在编译的时候指定好了路径
2、卸载软件时如果有依赖关系就不能卸载
错误  可以强制卸装
rpm -e --nodeps
yum remove
3、使用yum安装时可以使用yum install -y自动安装
正确 使用y就不会出现提示
4、如果想查询一个软件包安装了哪些文件在系统可以使用命令rpm -qi
错误 QI是查询软件包的信息
查询软件是否安装 rpm -q rpm -qa
查询文件隶属的软件包 rpm -qf
查询软件包的信息 rpm -qi
查询软件安装了哪些文件 rpm -ql

5、校验软件包使用rpm -V显示5T表示文件权限被更改过
错误  
M-mode权限更改 5-md5校验值更改 S-文件大小 U-所有者 G-所属组
T-修改时间 missing-文件丢失
rpm -V 软件包
rpm -Vf 文件
diff file1 file2
md5sum 值   Grub-MD5-CRYPT grub-md5-crypt
6、一个命令被误删除后只能重新安装命令对应的软件包
错误  可以提取安装包里的文件
重新安装软件包 yum remove yum install
rpm -i --replacepkgs 覆盖安装
提取文件 rpm2cpio 软件包 | cpio -idv .提取文件 d软件结构  I 导入文件   V 信息

7、在光盘修复模式挂载光盘不能使用/dev/cdrom文件    dev/hdX
正确
光盘修复模式软链接失效

8、源代码包可以指定安装目录
正确

标准的源代码包安装流程:
1解压解包 tar -zxf
进入源代码包目录
2、配置 ./configure
./configure 执行当前目录下的configure
configure configure当成命令执行在PATH中查找
指定安装目录 --prefix 默认目录:/usr/local/softwarename
作用:搜集系统软硬件信息生成编译文件makefile
安装相应的编译器 C语言-gcc C++语言-gcc-c++
./configure --help 查看配置选项
3、编译 make
作用:调用编辑器把源代码编译成文件
4、安装 make install
作用:拷贝编译文件和源代码包文档到安装目录(设置权限)

只有用RPM包安装的软件才能使用rpm/yum查询校验

检测源代码包是否安装成功
1、检测安装目录下文件
2、尝试启动服务
groupadd nogroup
/usr/local/proftpd/sbin/proftpd
ps -le | grep proftpd
* 源代码大多没有安装启动程序,所以不能使用service启动

卸载源代码包:
1、关闭服务进程
2、删除安装目录 rm -rf/usr/local/proftpd


脚本安装:
判断标准:是否有configure文件
查看源代码包目录下READMEINSTALL文件

/etc/passwd 文件格式
root:x:0:0:root:/root:/bin/bash
root   :x:   0:  0 : root:  /root:   /bin/bash
用户名 密码位 UID  GID 描述  宿主目录   SHELL

root-用户名
x-密码位
0-UID User ID UID0就是管理员
0-GID 用户缺省组的组ID
root- 描述 jacklee "project term 01 lisi"
/root- 宿主目录 root-/root
         username-/home/username
宿主目录:保存用户配置文件和数据
/bin/bash- 命令解释器   
系统的相关命令都在ETC/SHELLS下面 cat /etc/shells
/sbin/nologin 设定用户无法登录系统
Useradd 用户名。如果不指定用户组,则系统自动创建一个和用户名相同的组。


Linux中每个进程都要对应的一个用户身份。
/etc/shadow 格式  保存用户密码
root:$1$VTECcrG1$1k2N5.6M9ki4qdAuf6QIS.: 15191:      0:     99999:       7:::
用户     密码          最后修改时间  密码最小天数  最大时间间隔  警告时间  

密码为空的在本地不需要密码就可以登陆,但远程登陆则禁止连接
Passwd -d 删除密码 

/etc/passwd
| pwconv 密码写入
/etc/shadow

Pwunconv 密码回写 如果执行pwunconv shadow自动消失,
如果shadow没有,则系统启动不起来。因为LINUX系统启动的时候要验证帐号passwd shadow文件

可以利用GREP来查看是否存在用户信息
Grep 用户 /etc/passwd 查看用户是否存在及用户的相关信息

存放用户信息的文件 存放组的信息文件
/etc/passwd /etc/group
/etc/shadow /etc/gshadow

/etc/group 的格式
Sys : x: 3: root,bin,adm
组名 组密码位 ID 组内成员

为什么组要密码?
一个用户不隶属于某个组,如果有组密码也可以临时声明为组成员。
如何设置组密码?
Gpasswd 组名 设置组密码 gpasswd webadmin
Grep webadmin /etc/gshadow
只有两类用户可以对组进行管理:root 组管理员
/etc/gshadow配置文件格式
Adm : : :root,adm,daemon
组名: 组密码: 组管理员: 组内成员

/etc/skel 新添加用户配置文件 用于配置
/etc/motd 登陆后给用户显示信息
/etc/issue 登陆前给显示信息

案例:手工添加一个用户 hward
1、生成用户信息 /etc/passwd
ID 指定缺省组
hward:x:510:511:projectzhangsan:/home/hward:/bin/bash   注意:这里指定的组ID必须存在
2、生成用户密码 /etc/shadow
密码 直接复制其他用户密码
hward:$1$U8/GDI/M$ZktOqoLYzumK/zYyVoYgB1:15192:0:99999:7:::
3、把用户加入用户组 /etc/group /etc/gshadow
webadmin:::hward     记得要将用户加入到组里面去
4、创建宿主目录并更改权限
cp -r /etc/skel/home/hward       skel 下面存在默认新用户配置文件
宿主目录权限700,所有者为此用户,所属组为此用户缺省组
chmod -R 700/home/hward ; chown -R hward /home/hward ; chgrp -R webadmin /home/hward
命令添加用户:
useradd 选项用户名
-u UID   没有什么用。系统创建时自动累加
-g 缺省组GID/组名 *
-G 指定隶属多个组 *
-d 宿主目录 directory
-s 命令解释器 shell
-c 描述 comment *
-e 失效时间 expire YYYY-MM-DD *
useradd -gwebadmin -c "project zhangxiaoguang" -e 2011-09-30 admin
passwd admin

特殊权限
SetUID 权限在文件所有者x位置标记s
1、可执行文件授权
2、执行时会以授权文件的所有者身份执行
* 所有命令默认的所有者都是root

chmod u+s 4755
SetGID 概念和SetUID一样,执行时所属组会以文件所属组身份执行
chmod g+s 2755 6755
取消SetUID u-s g-s 755

案例1:授权touch/mkdir具有SetUID      前提:文件可执行
su – hward  切换到hward 用户
touch file01    新建文件
ls -l file01      查看文件的详细
-rw-r--r-- 1hward webadmin 0 Aug 6 22:16 file01    file01的权限644
chmod u+s/bin/touch   给TOUCH授权特殊权限   U+S 4
ls -l /bin/touch 查看命令的touch详细信息
-rwsr-xr-x 1 root root 42284 Mar 1 2010/bin/touch
su – hward  切换到普通用户hward 
touch file02  
ls -l file02
-rw-r--r-- 1 root webadmin 0 Aug 6 22:20 file02  权限没有变,但所属者变为ROOT
chmod g+s/bin/touch     TOUCH授权特殊组GID  权限位 2  
ls -l /bin/touch
-rwsr-sr-x 1 rootroot 42284 Mar 1 2010 /bin/touch touch组的执行权限变为S
su - hward
touch file03
ls -l file*
-rw-r--r-- 1hward webadmin 0 Aug 6 22:16 file01     touch正常的权限
-rw-r--r-- 1root webadmin 0 Aug 6 22:20 file02      有4SETUID
-rw-r--r-- 1 root root 0 Aug 6 22:26 file03 有2SETGID

案例2/usr/bin/vim 授予SetUID
chmod u+s/usr/bin/vim
ls -l/usr/bin/vim
-rwsr-xr-x 1 rootroot 2731692 Sep 20 2009 /usr/bin/vim
vi /etc/inittab
vi /etc/shadow 结果会导致普通用户都可以编辑。会被别人利用。

案例3:查找SetUID命令
find -perm
permission 权限
查找系统中权限为777的二进制文件 find / -perm -0777 -a -type f

find / -perm-4000 -o -perm -2000 > /test/setuid.list
chmod u+s/bin/mkdir
find / -perm-4000 -o -perm -2000 > /test/setuid.list.20110820
diff/test/setuid.list /test/setuid.list.20110820
61a62
> /bin/mkdir

练习题:
1 用户加到用户组可不做
6
7
8

手工添加用户、SetUID


0810.rar

原文地址:http://bbs.lampbrother.net/read-htm-tid-99955.html

<script type=text/javascript charset=utf-8 src="http://static.bshare.cn/b/buttonLite.js#style=-1&uuid=&pophcol=3&lang=zh"></script> <script type=text/javascript charset=utf-8 src="http://static.bshare.cn/b/bshareC0.js"></script>
阅读(47) | 评论(0) | 转发(0) |
0

上一篇:[34期] KO战队0811笔记总结|房子

下一篇:[34期] 相信自己 坚持到底

相关热门文章
  • 毕业五年(续)
  • 毕业五年
  • 职业生涯规划
  • 中国软件开发工程师之痛...
  • 闲置书处理!
  • 大家都是用什么来管理hadoop集...
  • 网站被人挂了吗,添加了些程序...
  • Nginx如何保证不走宕机的那个...
  • 大家谈谈MYSQL客户端和服务器...
  • 以下代码运行后为何会输出5?...
给主人留下些什么吧!~~
评论热议

这篇关于[34期] KO战队0810笔记总结|房子的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/665288

相关文章

Android数据库Room的实际使用过程总结

《Android数据库Room的实际使用过程总结》这篇文章主要给大家介绍了关于Android数据库Room的实际使用过程,详细介绍了如何创建实体类、数据访问对象(DAO)和数据库抽象类,需要的朋友可以... 目录前言一、Room的基本使用1.项目配置2.创建实体类(Entity)3.创建数据访问对象(DAO

Java向kettle8.0传递参数的方式总结

《Java向kettle8.0传递参数的方式总结》介绍了如何在Kettle中传递参数到转换和作业中,包括设置全局properties、使用TransMeta和JobMeta的parameterValu... 目录1.传递参数到转换中2.传递参数到作业中总结1.传递参数到转换中1.1. 通过设置Trans的

C# Task Cancellation使用总结

《C#TaskCancellation使用总结》本文主要介绍了在使用CancellationTokenSource取消任务时的行为,以及如何使用Task的ContinueWith方法来处理任务的延... 目录C# Task Cancellation总结1、调用cancellationTokenSource.

HarmonyOS学习(七)——UI(五)常用布局总结

自适应布局 1.1、线性布局(LinearLayout) 通过线性容器Row和Column实现线性布局。Column容器内的子组件按照垂直方向排列,Row组件中的子组件按照水平方向排列。 属性说明space通过space参数设置主轴上子组件的间距,达到各子组件在排列上的等间距效果alignItems设置子组件在交叉轴上的对齐方式,且在各类尺寸屏幕上表现一致,其中交叉轴为垂直时,取值为Vert

学习hash总结

2014/1/29/   最近刚开始学hash,名字很陌生,但是hash的思想却很熟悉,以前早就做过此类的题,但是不知道这就是hash思想而已,说白了hash就是一个映射,往往灵活利用数组的下标来实现算法,hash的作用:1、判重;2、统计次数;

git使用的说明总结

Git使用说明 下载安装(下载地址) macOS: Git - Downloading macOS Windows: Git - Downloading Windows Linux/Unix: Git (git-scm.com) 创建新仓库 本地创建新仓库:创建新文件夹,进入文件夹目录,执行指令 git init ,用以创建新的git 克隆仓库 执行指令用以创建一个本地仓库的

【学习笔记】 陈强-机器学习-Python-Ch15 人工神经网络(1)sklearn

系列文章目录 监督学习:参数方法 【学习笔记】 陈强-机器学习-Python-Ch4 线性回归 【学习笔记】 陈强-机器学习-Python-Ch5 逻辑回归 【课后题练习】 陈强-机器学习-Python-Ch5 逻辑回归(SAheart.csv) 【学习笔记】 陈强-机器学习-Python-Ch6 多项逻辑回归 【学习笔记 及 课后题练习】 陈强-机器学习-Python-Ch7 判别分析 【学

系统架构师考试学习笔记第三篇——架构设计高级知识(20)通信系统架构设计理论与实践

本章知识考点:         第20课时主要学习通信系统架构设计的理论和工作中的实践。根据新版考试大纲,本课时知识点会涉及案例分析题(25分),而在历年考试中,案例题对该部分内容的考查并不多,虽在综合知识选择题目中经常考查,但分值也不高。本课时内容侧重于对知识点的记忆和理解,按照以往的出题规律,通信系统架构设计基础知识点多来源于教材内的基础网络设备、网络架构和教材外最新时事热点技术。本课时知识

二分最大匹配总结

HDU 2444  黑白染色 ,二分图判定 const int maxn = 208 ;vector<int> g[maxn] ;int n ;bool vis[maxn] ;int match[maxn] ;;int color[maxn] ;int setcolor(int u , int c){color[u] = c ;for(vector<int>::iter

整数Hash散列总结

方法:    step1  :线性探测  step2 散列   当 h(k)位置已经存储有元素的时候,依次探查(h(k)+i) mod S, i=1,2,3…,直到找到空的存储单元为止。其中,S为 数组长度。 HDU 1496   a*x1^2+b*x2^2+c*x3^2+d*x4^2=0 。 x在 [-100,100] 解的个数  const int MaxN = 3000