Linux第五节随笔

三期第四讲
1.查询文件类型与文件位置命令
  file
    作用:查看文件类型(linux下的文件类型不以后缀名区分)
    语法举例:
    [[email protected] ~]# file passwd
    passwd: ASCII text 《——ASCII文本文档
    [[email protected] ~]# file 123
    123: directory 《——目录文档
    [[email protected] ~]# file /var/lib/mlocate/mlocate.db
    /var/lib/mlocate/mlocate.db: data 《——data文档
    [[email protected] ~]# file /bin/ls
    /bin/ls: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.18, stripped 《——可执行        文档(包含suid设置、兼容的cpu硬件平台,lib库,linux内核等)

2.vim
  作用:修改文件
  模式: 默认进来是一般模式、i 编辑模式、esc 退出编辑 、shift+: 底行模式
  参数: w: write/q:quit/! force
  编辑模式:
    a:光标之后插入内容
    A:光标最后插入内容
    o:当前光标下新行插入内容
    O:当前光标上新行插入内容
    x:向后删除
    X:向前删除
    u:撤销当前操作
    U:撤销所有操作
    shift+D :删除光标之后的字符

  一般模式:
    ^:跳到行首
    $:跳到行尾
    ndd:删除n行,从光标起
    nyy:复制n行
    p :粘贴
    gg:文件首行
    G :文件尾行
    g :全局替换 1,$s/root/ROOT/g 1,$s#root#ROOT#g
    1, $s#\/#\\/#g: 脱意:\,去掉特殊符号的意思
    /: 查找字符, n: 查找下一个 N:查找上一个
    dw:删除词语

  底行模式:
    set number: 显示行号
    set nonu: 不显示行号
    r file: 合并文件
3. 目录中文件是否能修改需要看上级目录的权限

4、设置特殊权限 SUID、SGID详解 参考:http://www.cnblogs.com/fhefh/archive/2011/09/20/2182155.html
  SUID : Set User ID (find / -perm -04000 -type f -ls查找设置SUID的程序)
    作用:临时赋予用户二进制文档的拥有者的权限(主要用于让普通用户可以使用某些特殊命令)
    语法1:chmod u+s file(增加s权限)
    语法2:chmod u-s file(减去s权限)
    使用限制与环境:
      1、仅对于二进制文件有效;

      2、执行者必须对文件拥有x权限(否则即使设置了SUID,由于你对文件根本无法执行SUID此时也无效,此时权限位显示S);

      3、权限只是在执行过程中拥有。

      4、执行者必须对文件拥有x权限(否则即使设置了SUID,由于你对文件根本无法执行SUID此时也无效,此时权限位显示S);

      PS:例如passwd命令,路径/usr/bin/passwd,权限为"-rwsr-xr-x"。(passwd命令会修改"/etc/shadow")
      PS:SUID只可用于二进制文件,不可用于shell script文件。

5.SGID : Set Group ID:继承上一级目录的所属组权限
  对于文件
    作用:临时赋予用户二进制文档的拥有组的权限(多用于让普通用户可以使用某些特殊命令,和suid类似)
    语法1:chmod g+s file(增加s权限)
    语法2:chmod g-s file(减去s权限)
    使用限制与环境:
      1、仅对于二进制文件有效;
      2、执行者必须对文件拥有x权限(否则根本无法执行文件,更别谈SGID赋予权限,此时权限位显示S);
      3、权限只是在执行过程中拥有。     

      4、执行者必须对文件拥有x权限(否则根本无法执行文件,更别谈SGID赋予权限,此时权限位显示S);

      PS:例如locate命令,路径/usr/bin/locate,权限为"rwx--s--x"。
      ( locate命令会读取"/var/lib/mlocate/mlocate.db")
  对于目录
    作用:临时将用户的effective group修改成该目录的的群组
    语法1:chmod g+s dir(增加s权限)
    语法2:chmod g-s dir(减去s权限)
    使用限制与环境:      

    1、文件的所属组是用户的主组,如果在设置了SGID目录下建立文件,则文件的所属组是继承目录的属组,并且新建立的目录也继承g+s权限
    2、若用户对此目录拥有w权限,由于effective group被修改成该目录的group,所以用户在此目录下创建任何文件,属组该目录的用户组。
    3、在group位的x显示为S或s,s代表包含了x权限,S代表未包含x权、
    4、使用者必须对该目录拥有x权限(否则无法进入,更别谈SUID赋予权限,此时权限位显示S);

6.SBIT Sticky Bit, 只对目录有效,对文件无效,防止删除其他用户的资料
  作用:限制目录下不同用户之间对于其他用户文档或目录的编辑权限。
  语法1:chmod o+t dir(增加t权限)
  语法2:chmod o-t dir(减去t权限)
  使用限制与环境
    1、只能针对目录;
    2、必须有x和w权限(否则无法进入和编辑,更不用谈sbit权限,此时权限位显示T);
    3、用户自身创建的文档和目录,只有自己和root可以编辑(重命名、修改内容、复制、删除等)

     4、必须有x和w权限(否则无法进入和编辑,更不用谈sbit权限,此时权限位显示T);

7.赋予权限

chmod 4777 //是设sid
chmod 2777 //是设置gid
chmod 1777 //是设sticky-- t 该位可以理解为防删除位. 一个文件是否可以被>某用户删除,主要取决于
        该文件所属的组是否对该用户具有写权限. 如果没有写权限, 则这个目录下的所有文件都不
        能被删除, 同时也不能添加新的文件. 如果希望用户能够添加文件但同时不能删除文件, 则
        可以对文件使用sticky bit位

0: 不设置特殊权限
1: 只设置sticky
2 : 只设置SGID
3: 只设置SGID和sticky
4 : 只设置SUID
5 : 只设置SUID和sticky
6 : 只设置SUID和SGID
7 : 设置3种权限

时间: 2024-07-31 14:26:48

Linux第五节随笔的相关文章

Linux第七节随笔

linux第七讲(上)1.diff http://www.cnblogs.com/peida/archive/2012/12/12/2814048.html 作用:diff命令能比较单个文件或者目录内容.如果指定比较的是文件,则只有当输入为文本文件时才有效.以逐行的方式,比较文本文件的异同处. 如果指定比较的是目录的的时候,diff 命令会比较两个目录下名字相同的文本文件.列出不同的二进制文件.公共子目录和只在一个目录出现的文件. 参数:-a或--text diff预设只会逐行比较文本文件. -

Linux第六节随笔

三期第五讲 -高级文件管理1.输入输出重定向 ls -l /dev/stdin -> /proc/self/fd/0 标准输入 设备:键盘 标记:0 ls -l /dev/stdout -> /proc/self/fd/1 标准输出 设备:屏幕 标记:1 ls -l /dev/stderr -> /proc/self/fd/2 错误输出 设备:屏幕 标记:2 ls /etc/passwd /etc/passwd1 1>1.log 2>2.log 将正确输出1 写入1.log

Linux第七节随笔-下

baidubaike 磁盘管理物理磁盘---> RAID--->文件系统--->用户使用LVM概念简述Raid详细解说                0                  1                   5N块          N                  N/2                N-1                N>=2           N>=2            N>=3       奇偶校验信息和相对应的

linux第五节课(补三月十六号)

又是美(ku)好(bi)的一天 开心 原文地址:https://www.cnblogs.com/veian/p/10548901.html

Linux学习第五节课-标准I/O和管道

Linux学习第五节课 ------------------------------------------------------------------------------------------------------------------------------------------------------------------ 三十一.标准输入和输出 程序:指令+数据 读入数据:Input 输出数据:Output 打开的文件都有一个fd: file descriptor (文

第一周第五节,目录结构及ls、alias命令

目录结构.文件类型 目录结构:/boot:系统引导文件.内核 /bin:用户的基本命令 /dev:设备文件 /etc:配置文件 /home:用户目录 /root:root用户目录 /sbin:管理类的基本命令 /tmp:临时文件存放地 /usr:共享的只读数据 /mnt:临时文件系统挂载点 /media:移动设备挂载点 /opt:第三方应用程序的安装位置 /srv:系统运行的服务用到的数据 /var:变化的数据文件 /proc:用于输出内核与进程信息相关的虚拟文件系统 /sys:用于输出当前系统

android内部培训视频_第五节(1)_OA实战之登录界面

第五节(1):OA实战之登录界面  一.登录界面布局 1.背景图片 2.文本框 3.checkbox 4.按钮 暂未实现点击切换图片效果 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent&q

Git帮助文档阅读笔记----第二章-第五节---打标签

本节我们一起来学习如何列出所有可用的标签,如何新建标签,以及各种不同类型标签之间的差别. 列显已有的标签 直接运行 git tag 即可: 可以用特定的搜索模式列出符合条件的标签.在 Git 自身项目仓库中,有着超过 240 个标签,如果你只对 1.4.2 系列的版本感兴趣,可以运行下面的命令: $ git tag -l 'v1.4.2.*' v1.4.2.1 v1.4.2.2 v1.4.2.3 v1.4.2.4 新建标签 轻量级的(lightweight) 含附注的(annotated)(建议

Linux 的五个重启命令及具体说明

一.Linux 的五个重启命令 1.shutdown 2.poweroff 3.init 4.reboot 5.halt 二.五个重启命令的具体说明 shutdown reboot 在linux下一些常用的关机/重启指令有shutdown.halt.reboot.及init,它们都能够到达重启体系的意图,但每个指令的内部作业进程是不一样的,经过这篇文章的介绍,希望你能够愈加灵敏的运用各种关机指令. 1.shutdown shutdown命令安全地将系统关机. 有些用户会使用直接断掉电源的方式来关