Linux 老男孩58期17组 刘艺 第13——17天笔记

第十三天笔记

1、selinux

  安全规则,让Linux系统更安全的一套规则。

  这个规则太严格了,一般的情况下都会关闭selinux。

  自己开启防火墙啊,用其他手段来实现同样的安全目的。

  getenforce (查看selinux状态)

临时关掉:

  setenforce 0

永久关闭:

  vim /etc/selinux/config

  SELINUX=disabled


2、Linux里防火墙C6 iptables  C7 firewalld

  作用:防护计算机,防止被入侵。

  systemctl status firewalld.service (查看防火墙状态)

  开启firewalld(C6 service iptables start 或者/etc/init.d/iptables start)

让firewalld开机自启动

  systemctl enable firewalld.service

C6用法:chkconfig iptables off

C7就是一个命令systemctl


3、硬链接

  具有相同inode节点号的文件互为硬链接。

  一个文件的两个入口。

  作用:

    备份,防止误删。

4、软链接:

    本质是快捷方式,指向源文件实体,本身和源文件是不同的文件。

用途:

  1、对软件、服务进行软连接,开发需要引用路径,给开发软连接路径,方便运维进行后期软件更新

  2、/etc/对应的分区要满了,没法放很多文件,但是程序还想通过/etc/目录访问文件。

    此时,我们可以把文件放入/opt/oldboy下,然后做一个到/etc/oldboy的软链接。


Linux文件删除原理:

  1、静态文件:没有进程或程序正在访问的文件。

  所有的硬链接数为0(i_link),即所有硬链接都被干掉了,包括自身。

  硬链接的数量的代表变量符号i_link

  rm -f oldboy.txt oldboy_hard_link

  执行完 其实文件也没删,关机停止运行。

a.系统定时清理没有文件名的inode。

b.磁盘检查会清理。

c.增加新文件时优先占用没有文件名的inode。

  恢复的工具:debugfs,ext3grep等等。

  亡羊补牢其实不可取的,违反运维的三大核心原则。

  多备份,操作前备份,异服务器和异地备份。

2、动态文件:有程序或进程访问的文件

删除原理:

a.所有硬链接删除。i_link为0.

b..i_count是进程调用文件的数量(引用计数)。所有进程调用都要停止取消。i_count为0


通配符知识:

1、基本含义

    通配符简单说就是键盘上的一些特殊字符,可以实现某些特殊的功能,

    例如,可以用*代表所有,来模糊搜索系统中的文件。

2、范围:通配符试用范围是命令行中【普通命令】或脚本编程中。

第十四天笔记


1、正则表达式

  作用和特殊字符一样。

  正则表达式是为处理大量的字符串及文本而定义的一套规则和方法。

2、提高效率,快速获取到想要的内容。

3、适用于三剑客命令 grep(egrep),sed,awk

  以行为单位处理。

易混淆事项

  1、和通配符区别。

  2、开发人员正则,一般是Perl兼容正则表达式。

  3、Linux系统三剑客正则表达式******。

分类:

  1、BRE  grep

  2、ERE  egrep


a{n,m} 匹配前一个字符最少n次,最多m次

a{n,} 匹配前一个字符最少n次

a{n} 匹配前一个字符正好n次

a{,m} 匹配前一个字符最多m次


Linux三剑客

  awk  sed  grep

sed

  Sed是操作、过滤和转换文本内容的强大工具。

  常用功能有对文件实现快速增删改查(增加、删除、修改、查询),

  其中查询的功能中最常用的2大功能是过滤(过滤指定字符串)和取行(取出指定行)。

sed [选项]  [sed内置命令字符]  [文件]

  选项:

  -n 取消默认sed的输出,常与sed内置命令的p连用※

  -i 直接修改文件内容,而不是输出到终端。

  如果不使用-i选项sed只是修改在内存中的数据,并不会影响磁盘上的文件※

sed的内置命令字符说明

  s 替换

  g 全局global

  p 打印print

  d 删除delete

第十五天笔记

1、正则表达式

  作用和特殊字符一样。

  正则表达式是为处理大量的字符串及文本而定义的一套规则和方法。

  提高效率,快速获取到想要的内容。

  适用于三剑客命令 grep(egrep),sed,awk

  以行为单位处理。

易混淆事项

  1、和通配符区别。

  2、开发人员正则,一般是Perl兼容正则表达式。

  3、Linux系统三剑客正则表达式******。

分类:

  1、BRE  grep

  2、ERE  egrep


  a{n,m}匹配前一个字符最少n次,最多m次

  a{n,} 匹配前一个字符最少n次

  a{n} 匹配前一个字符正好n次

  a{,m} 匹配前一个字符最多m次


2、Linux三剑客

  awk  sed  grep

三剑客自身有特长的。

  grep 过滤查找内容。筛子

  sed  取行,替换,删除,追加

  awk  取列


sed

  Sed是操作、过滤和转换文本内容的强大工具。

  常用功能有对文件实现快速增删改查(增加、删除、修改、查询),

  其中查询的功能中最常用的2大功能是过滤(过滤指定字符串)和取行(取出指定行)。

  sed [选项]  [sed内置命令字符]  [文件]

选项:

  -n 取消默认sed的输出,常与sed内置命令的p连用※

  -i 直接修改文件内容,而不是输出到终端。

sed的内置命令字符说明

  s 替换

  g 全局global

  p 打印print

  d 删除delete

  正则是贪婪匹配模式,人性是贪婪的。


awk

  awk  [option]  'pattern{action}' file ...

  awk  [参数]      '条件{动作}'    文件 ...

  参数:

  -F 指定分隔符

  列:$1第一列 $2第二列 以此类推....

  $0  整行

  $NF 最后一列 倒数第一列

  $(NF-1) 倒数第二列


第十六天笔记

1、Linux基础权限是9个字符。

  33631870 -rw-r--r--. 1 root root    21 Oct  6 22:54 a.txt

分3组:

  前三个字符是表示用户(属主)权限位  user(用户) u

  中三个字符是表示用户组权限位 group(用户组)    g

  后三个字符是其它用户权限位 others(其他用户)    o

同一组的三个字符权限也是有位置的

  第一个字符(r)的位置读的权限位 r  4

  第二个字符(w)的位置写的权限位 w  2

  第三个字符(x)的位置是执行的权限位。 x  1

-  0


groupadd incahome  创建一个用户组(incahome)

useradd oldboy    创建一个用户  (oldboy)

usermod -g incahome oldboy 将用户(oldboy)添加到incahome用户组

id oldboy 查看用户信息

useradd oldboy -g incahome  创建一个用户(oldboy)指定用户组(incahome)


2、Linux权限有两种表现形式:

数字表示法 称为8进制权限

  r 4

  w 2

  x 1

  - 0

  rw-rw-r-x  代表的数字权限为665

  --xr-x-wx  代表的数字权限为153

  -wx--x--x  代表的数字权限为311

而以下数字权限表示的字符权限如下:

  755  代表的字符权限为rwxr-xr-x

  644  代表的字符权限为rw-r--r--

  134  代表的字符权限为--x-wxr--

实际的权限表示就是将每3位相加即可。

  rwxr-xr-x  755

  rwx 7

  r-x 5

  r-x 5


3、修改文件属性的用户和组

  chown 用户.用户组 文件  这里的点可以用:替换。

  chown 用户 文件

  chown .用户组 文件  ====chgrp 用户组 文件

安全权限临界点:

  文件不想被修改被执行:644


4、博客:写博客。。。服务器的博客目录和文件的权限,防止被恶意篡改。

  企业真实案例:网站文件被恶意修改了。。。。打开网站后有弹窗广告(不是你网站的)

  用户打开网站,报警。

  原因:权限设置有漏洞,chmod -R 777 目录 开发人员习惯

  解决方案:

  1、备份

  tar zcvf /opt/oldboy_$(date +%F).tar.gz ./oldboy/

  2、找到被修改的文件

  [root@oldboyedu /]# find /oldboy -type f |xargs grep 'ddddddddddddd'

  /oldboy/oldboy.txt:<script>ddddddddddddd</scripts>

  /oldboy/test.sh:<script>ddddddddddddd</scripts>

  3、批量删除

  [root@oldboyedu /]# find /oldboy -type f |xargs sed -i '/ddddddddddddd/d'

  [root@oldboyedu /]# find /oldboy -type f |xargs grep 'ddddddddddddd'

  4、找到文件被篡改来源,并优化调整。

  5、写总结 故障报告。


5、控制默认权限的东西  umask

  创建文件默认最大的权限为666 (-rw-rw-rw-),其默认创建的文件没有可执行权限x位。

  umask 044 临时更改

  当umask中存在奇数位的时候,在计算完毕,奇数位加1

  基于文件:默认权限规则 了解

  从666计算

  umask都为偶数 默认权限用减法

  umask有奇数 默认权限用减法 然后奇数位加1

6、特殊权限位

  suid位:

    suid(setuid)位通过S字符标识,

    存在于基本权限的用户权限位的x权限对应的位置,

    如果用户权限位对应的x权限位上有x权限,则suid就用小写的s标识,

    suid的s对应的数字权限为4,完整权限用八进制数4000表示。

  sgid位:

    sgid(setgid)位同样是通过S字符来标识,

    但是,sgid位存在于基本权限的用户组权限位的x权限对应的位置,

    如果用户组权限位对应的x权限位上有x权限,则sgid就用小写的s标识,

    suid的s对应的数字权限为2,完整的权限用八进制数2000表示。

  sticky(粘滞位)知识简介

    sticky(粘滞)位通过字符T标识,存在于基本权限的其他用户位对应的x权限位上,

    如果其他用户位的x权限位上有x权限,

    则sticky(粘滞)位通过小写的t标识,对应的数字权限是1,

    完整的权限用八进制数1000表示。

修改方法:

chmod 7755 1.txt

-rwsr-sr-t 1 root root 0 Oct  7 23:42 1.txt


7、suidd用处

  简单地说,suid的作用就是让普通用户可以在执行某个设置了suid位的命令或程序时,

  拥有和root管理员一样的身份和权限(默认情况)。


第十七天笔记

作用之一:

  sgid的作用就是让普通用户可以在执行某个设置了sgid位的命令时,

  拥有和命令对应用户组(一般为root用户组)一样的身份和权限(默认)。

locate搜索内容,默认从updatedb对应的数据库中查找

updatedb 更新locate查找内容对应的数据库。

sgid基于目录的作用:

  让不同的人创建文件属于相同的用户组,从而可以互相共享文件的权限。


1、定时任务

  周期性的执行任务计划的软件,Linux定时任务的常用软件crond。

2、使用定时任务软件,可以每天,每小时按你需求重复的执行一项工作。

  例如:备份 都是0点以后,2点爬起来备份,4点以后睡觉。

  需要写一个程序实现自动备份,然后让定时任务软件帮你执行。


1、系统定时任务计划

  1.不用管理员干预,系统自动执行。

  2.也可以利用系统任务为管理员服务。

2、用户定时任务计划

  在Linux系统中,

  cron是定时任务的软件名,

  crond是服务进程名,真正实现定时任务服务。

  crontab命令是用来设置定时任务规则的配置命令。

要想配置定时任务,首先启动crond服务。

  systemctl start crond.service  启动

  systemctl stop crond.service  停止

  systemctl status crond.service 查看状态

开启自启动:

  systemctl disable crond.service 关闭

  systemctl enable crond.service  开启


crontab命令是用来设置定时任务规则的配置命令。

  内容存放哪里了。定时任务内容存放的位置/var/spool/cron/

  -l l列表 查看已经设置的定时任务*

  -e edit 编辑定时任务*

  -u user 查看特定用户下定时任务

编写定时任务的语法:

  # Example of job definition:

  # .---------------- minute (0 - 59)

  # |  .------------- hour (0 - 23)

  # |  |  .---------- day of month (1 - 31)

  # |  |  |  .------- month (1 - 12) OR jan,feb,mar,apr ...

  # |  |  |  |  .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat

  # |  |  |  |  |

  # *  *  *  *  *  (command to be executed)

共六列:

第一列:分 minute (0 - 59)

第二列:时 hour  (0 - 23)

第三列:日 day of month (1 - 31)

第四列:月 month (1 - 12) OR jan,feb,mar,apr ...

第五列:周 day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat

第六列:要执行的任务命令或程序


特殊符号:

 

  - 连续区间 1-10

  00 8-23 * * * cmd

  , 列举 1,2,3,4,8

  00 1,2,3,4,8 * * * cmd

  /n n是数字。

  n代表自然数字,即“每隔n单位时间”,例如:每10分钟执行一次任务可以写成

  */10 * * * * cmd


定时任务操作步骤

  1.命令行执行成功。

  2.配置定时任务crontab -e 编辑配置

  3.检查

设置思路

  1、先输入* * * * *

  2、先命令行操作成功。

  3、拷贝命令到定时任务编辑里。

运维规范:

  脚本位置:/server/scripts

  软件位置:/server/tools

  编译位置:/application/软件名字-版本,然后要软链接。

生产环境下的定时Cron书写要领

  要领1:为定时任务规则加必要的注释

  要领2:所有的定时任务尽量都以脚本的形式执行

  要领3:在执行的Shell脚本前加上/bin/sh

  要领4:定时任务中命令或脚本的结尾加>/dev/null 2>&1

  要领5:在指定用户下执行相关定时任务

  要领6:生产任务计划程序中不要随意打印输出信息,有输出的想法去掉。

  要领7:定时任务执行的脚本要存放到规范路径下

  要领8:配置定时任务要规范操作过程,减少出错

  要领9:定时任务脚本中程序命令及路径尽量用全路径

  要领10:时间变量%号要用反斜线转义(只有定时任务里是命令时需要)

  要领11:若脚本中调用了系统环境变量,要重新定义

  要领12:出错或无法执行,就检查/var/log/cron日志

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 220,492评论 6 513
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 94,048评论 3 396
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 166,927评论 0 358
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 59,293评论 1 295
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 68,309评论 6 397
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 52,024评论 1 308
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,638评论 3 420
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,546评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 46,073评论 1 319
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 38,188评论 3 340
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 40,321评论 1 352
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,998评论 5 347
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,678评论 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 32,186评论 0 23
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,303评论 1 272
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,663评论 3 375
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 45,330评论 2 358