学习记录008-crond和visudo
1.每隔两个小时将/etc/servers文件打包备份到、tmp下(每次名字不同)
[root@kaka cc.log]# tar zcvf /server/backup/ccc.log_$(date +%F-%H).tar.gz /kaka/cc.log/ccc.log tar: Removing leading `/' from member names /kaka/cc.log/ccc.log [root@kaka cc.log]# cd /server/backup/ [root@kaka backup]# ll total -rw-r--r--. root root Jun : ccc.log_2016---.tar.gz
2.每隔一分钟,打印一个+号到任意一个文件里,给出crontab的完整命令
* * * * * echo "+" >>/opt/oldboy.log 2>&1
3.添加一个用户kaka,并指定属于sa组,要求组ID为801 ,uid为808,并且不建立家目录及禁止其登陆
[root@kaka ~]# groupadd sa -g 801 [root@kaka ~]# useradd caca -g sa -u 808 -M -s /sbin/nologin [root@kaka ~]# su - caca su: warning: cannot change directory to /home/caca: No such file or directory This account is currently not available. [root@kaka ~]# id caca uid=808(caca) gid=801(sa) groups=801(sa)
4.sudo, 讲到sudo,就想到su
su 是直接切换根用户,环境依旧不变 /home/carlton
su - carlton 切换到普通用户 ,环境变了/root,root的用户环境。所谓“用户环境”就是/etc/passwd中定义的用户家目录、使用的Shell,以及关于这个用户的个性化设置等。
su 和su - 的共同点是需要输入root密码,可是root密码是非常重要的内容,这时候就想到用sudo命令
sudo 是给予普通用户超级用户的权限,这个权限是可以控制的,比如我只给你这个用户开机和关机
那么这个权限的设置在哪里呢?
因为sudo比较重要, 一般是vi /etc/sudoers 编辑 系统直接有命令visudo 这样做的好处是你退出时,会检查语法错误
输入visudo后,你会发现整个文本文档会有,下面我列出了visudo 的所有详细配置
第一个字段:root为能使用sudo命令的用户;
第二个字段:第一个ALL为允许使用sudo的主机,第二个括号里的ALL为使用sudo后以什么身份(目的用户身份)来执行命令;
第三个字:ALL为以sudo命令允许执行的命令;
换句话理解:加入的“carlton ALL=(ALL) ALL”这一行代表的意思是,carlton这个用户(第一列)可以从任何地方登录后(第二列的ALL)执行任何人(第三列的ALL)的任何命令(第四列的ALL)。还可以
实战解释: test ALL=(root) /usr/sbin/useradd
表示允许test用户从任何主机登录,以root的身份执行/usr/sbin/useradd命令。
## Sudoers allows particular users to run various commands as ## the root user, without needing the root password. ## 该文件允许特定用户像root用户一样使用各种各样的命令,而不需要root用户的密码 ## ## Examples are provided at the bottom of the file for collections ## of related commands, which can then be delegated out to particular ## users or groups. ## 在文件的底部提供了很多相关命令的示例以供选择,这些示例都可以被特定用户或 ## 用户组所使用 ## ## This file must be edited with the 'visudo' command. ## 该文件必须使用"visudo"命令编辑 ## Host Aliases ## Groups of machines. You may prefer to use hostnames (perhaps using ## wildcards for entire domains) or IP addresses instead. ## 对于一组服务器,你可能会更喜欢使用主机名(可能是全域名的通配符) ## 、或IP地址,这时可以配置主机别名 # Host_Alias FILESERVERS = fs1, fs2 # Host_Alias MAILSERVERS = smtp, smtp2 ## User Aliases ## These aren't often necessary, as you can use regular groups ## (ie, from files, LDAP, NIS, etc) in this file - just use %groupname ## rather than USERALIAS ## 这并不很常用,因为你可以通过使用组来代替一组用户的别名 # User_Alias ADMINS = jsmith, mikem ## Command Aliases ## These are groups of related commands... ## 指定一系列相互关联的命令(当然可以是一个)的别名,通过赋予该别名sudo权限, ## 可以通过sudo调用所有别名包含的命令,下面是一些示例 ## Networking 网络操作相关命令别名 # Cmnd_Alias NETWORKING = /sbin/route, /sbin/ifconfig, /bin/ping, /sbin/dhclient , /usr/bin/net, /sbin/iptables, /usr/bin/rfcomm, /usr/bin/wvdial, /sbin/iwconfig , /sbin/mii-tool ## Installation and management of software 软件安装管理相关命令别名 # Cmnd_Alias SOFTWARE = /bin/rpm, /usr/bin/up2date, /usr/bin/yum ## Services 服务相关命令别名 # Cmnd_Alias SERVICES = /sbin/service, /sbin/chkconfig ## Updating the locate database 本地数据库升级命令别名 # Cmnd_Alias LOCATE = /usr/bin/updatedb ## Storage 磁盘操作相关命令别名 # Cmnd_Alias STORAGE = /sbin/fdisk, /sbin/sfdisk, /sbin/parted, /sbin/partprobe , /bin/mount, /bin/umount ## Delegating permissions 代理权限相关命令别名 # Cmnd_Alias DELEGATING = /usr/sbin/visudo, /bin/chown, /bin/chmod, /bin/chgrp ## Processes 进程相关命令别名 # Cmnd_Alias PROCESSES = /bin/nice, /bin/kill, /usr/bin/kill, /usr/bin/killall ## Drivers 驱动命令别名 # Cmnd_Alias DRIVERS = /sbin/modprobe # Defaults specification # # Disable "ssh hostname sudo <cmd>", because it will show the password in clear. # You have to run "ssh -t hostname sudo <cmd>". # 一些环境变量的相关配置,具体情况可见man soduers Defaults requiretty Defaults env_reset Defaults env_keep = "COLORS DISPLAY HOSTNAME HISTSIZE INPUTRC KDEDIR LS_COLORS" Defaults env_keep += "MAIL PS1 PS2 QTDIR USERNAME LANG LC_ADDRESS LC_CTYPE" Defaults env_keep += "LC_COLLATE LC_IDENTIFICATION LC_MEASUREMENT LC_MESSAGES" Defaults env_keep += "LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER LC_TELEPHONE" Defaults env_keep += "LC_TIME LC_ALL LANGUAGE LINGUAS _XKB_CHARSET XAUTHORITY" Defaults secure_path = /sbin:/bin:/usr/sbin:/usr/bin ## Next comes the main part: which users can run what software on ## which machines (the sudoers file can be shared between multiple ## systems). ## 下面是规则配置:什么用户在哪台服务器上可以执行哪些命令(sudoers文件可以在多个系统上共享) ## Syntax(语法): ## ## user MACHINE=COMMANDS 用户 登录的主机=(可以变换的身份) 可以执行的命令 ## ## The COMMANDS section may have other options added to it. ## 命令部分可以附带一些其它的选项 ## ## Allow root to run any commands anywhere ## 允许root用户执行任意路径下的任意命令 root ALL=(ALL) ALL ## Allows members of the 'sys' group to run networking, software, ## service management apps and more. ## 允许sys中户组中的用户使用NETWORKING等所有别名中配置的命令 # %sys ALL = NETWORKING, SOFTWARE, SERVICES, STORAGE, DELEGATING, PROCESSES, LOCATE , DRIVERS ## Allows people in group wheel to run all commands ## 允许wheel用户组中的用户执行所有命令 %wheel ALL=(ALL) ALL ## Same thing without a password ## 允许wheel用户组中的用户在不输入该用户的密码的情况下使用所有命令 # %wheel ALL=(ALL) NOPASSWD: ALL ## Allows members of the users group to mount and unmount the ## cdrom as root ## 允许users用户组中的用户像root用户一样使用mount、unmount、chrom命令 # %users ALL=/sbin/mount /mnt/cdrom, /sbin/umount /mnt/cdrom ## Allows members of the users group to shutdown this system ## 允许users用户组中的用户关闭localhost这台服务器 # %users localhost=/sbin/shutdown -h now ## Read drop-in files from /etc/sudoers.d (the # here does not mean a comment) ## 读取放置在/etc/sudoers.d/文件夹中的文件(此处的#不意味着这是一个声明) #includedir /etc/sudoers.d
学习记录008-crond和visudo的更多相关文章
- Java 8 学习记录
Java 8 学习记录 官方文档 https://docs.oracle.com/javase/8/ https://docs.oracle.com/javase/8/docs/index.html ...
- Quartz 学习记录1
原因 公司有一些批量定时任务可能需要在夜间执行,用的是quartz和spring batch两个框架.quartz是个定时任务框架,spring batch是个批处理框架. 虽然我自己的小玩意儿平时不 ...
- Java 静态内部类与非静态内部类 学习记录.
目的 为什么会有这篇文章呢,是因为我在学习各种框架的时候发现很多框架都用到了这些内部类的小技巧,虽然我平时写代码的时候基本不用,但是看别人代码的话至少要了解基本知识吧,另外到底内部类应该应用在哪些场合 ...
- Apache Shiro 学习记录4
今天看了教程的第三章...是关于授权的......和以前一样.....自己也研究了下....我觉得看那篇教程怎么说呢.....总体上是为数不多的精品教程了吧....但是有些地方确实是讲的太少了.... ...
- UWP学习记录12-应用到应用的通信
UWP学习记录12-应用到应用的通信 1.应用间通信 “共享”合约是用户可以在应用之间快速交换数据的一种方式. 例如,用户可能希望使用社交网络应用与其好友共享网页,或者将链接保存在笔记应用中以供日后参 ...
- UWP学习记录11-设计和UI
UWP学习记录11-设计和UI 1.输入和设备 通用 Windows 平台 (UWP) 中的用户交互组合了输入和输出源(例如鼠标.键盘.笔.触摸.触摸板.语音.Cortana.控制器.手势.注视等)以 ...
- UWP学习记录10-设计和UI之控件和模式7
UWP学习记录10-设计和UI之控件和模式7 1.导航控件 Hub,中心控件,利用它你可以将应用内容整理到不同但又相关的区域或类别中. 中心的各个区域可按首选顺序遍历,并且可用作更具体体验的起始点. ...
- UWP学习记录9-设计和UI之控件和模式6
UWP学习记录9-设计和UI之控件和模式6 1.图形和墨迹 InkCanvas是接收和显示墨迹笔划的控件,是新增的比较复杂的控件,这里先不深入. 而形状(Shape)则是可以显示的各种保留模式图形对象 ...
- UWP学习记录8-设计和UI之控件和模式5
UWP学习记录8-设计和UI之控件和模式5 1.日历.日期和时间控件 日期和时间控件提供了标准的本地化方法,可供用户在应用中查看并设置日期和时间值. 有四个日期和时间控件可供选择,选择的依据如下: 日 ...
- UWP学习记录7-设计和UI之控件和模式4
UWP学习记录7-设计和UI之控件和模式4 1.翻转视图 使用翻转视图浏览集合中的图像或其他项目(例如相册中的照片或产品详细信息页中的项目),一次显示一个项目. 对于触摸设备,轻扫某个项将在整个集合中 ...
随机推荐
- yii 验证码的使用
在HappyController 中加入 public function actions(){ return array( // captcha action renders the CAPTCHA ...
- 转 谈谈android反编译和防止反编译的方法
谈谈android反编译和防止反编译的方法 android基于java的,而java反编译工具很强悍,所以对正常apk应用程序基本上可以做到100%反编译还原. 因此开发人员如果不准备开源自己的项 ...
- Yii2文件上传
首先在app\controllers下建立TestController.php,内容为如下代码: <?php namespace app\controllers; use Yii; use yi ...
- I2总线
I2C简介 飞利浦(PHILIPS)公司开发的两线式串行总线 每个器件都有一个唯一的地址识别 1.只要求两条总线线路:一条串行数据线SDA,一条串行时钟线SCL 2.每个连接到总线的器件都可以通过唯一 ...
- iOS - UIWindow
前言 NS_CLASS_AVAILABLE_IOS(2_0) @interface UIWindow : UIView @available(iOS 2.0, *) public class UIWi ...
- Python学习笔记12—类
典型的类和调用方法: #!/usr/bin/env Python # coding=utf-8 __metaclass__ = type #新式类 class Person: #创建类 def __i ...
- Traffic Sign Recognition with Multi-Scale Convolutional Networks
总结一下文中几点值得学习的地方: 1,卷积神经网络的结构图:Multi-Scale Features. 因为它提取的特征的分层的,对吧,虽然最后 一层可以提供全局信息,但是呢,前面的几层可以提供更 ...
- hdu 5755(高斯消元——模线性方程组模板)
PS. 看了大神的题解,发现确实可以用m个未知数的高斯消元做.因为确定了第一行的情况,之后所有行的情况都可以根据第一行推. 这样复杂度直接变成O(m*m*m) 知道了是高斯消元后,其实只要稍加处理,就 ...
- JAVA调用C语言写的SO文件
JAVA调用C语言写的SO文件 因为工作需要写一份SO文件,作为手机硬件IC读卡和APK交互的桥梁,也就是中间件,看了网上有说到JNI接口技术实现,这里转载了一个实例 // 用JNI实现 // 实例: ...
- Css_加载样式
第一种效果: 代码如下: <div class="loading"> <span></span> <span></span&g ...