Linux--笔记

软件包分类:源码包和二进制包

RPM安装: rpm -ihv 

配置ip: setup(红帽子专有)

yum源安装: yum -y install 包名

yum源卸载: yum -y remove 包名

源码包和rpm包的区别

源码包安装: ./config && make && make install    make的作用是生成makefile文件

 

/etc/passwd  : 用户名称:密码标志:UID:GID:用户说明:家目录:登陆后的shell

/etc/shadow  : 用户名:加密密码:最后的修改时间:两次修改密码时间间隔:密码有效期:密码修改到期警告天数:账号失效时间:保留

/etc/group     : 组名 : 组密码标志:GID:组中附加用户(初始组:用户一登录就拥有用户组的权限)

/etc/gshadow : 组名:组密码:组管理员用户:组中附加用户(附加组:一个用户可以有多个附加组 且拥有这些组的权限)

 

用户的家目录: 普通- /home/用户名 700

                        管理员 - /root/          500

用户的邮箱 : /var/spool/mail/用户名

用户模板目录: /etc/skel

用户添加时修改了6处  useradd usermod  userdel passwd chage  groupadd groupmod groupdel + option + 用户名

 

ACL权限:解决目录 u g o 权限不足的情况 

查看分区acl权限是否开启: dumpe2fs -h /dev/sda3

永久开启分区acl权限: vim /etc/fstab 在"/"下的 default,acl

查看acl权限:getfacl 文件名

设置acl权限: setfacl -m|-x U:用户名:rwx 目录

                     setfacl -m|-x G:组名:rwx 目录

SetUID :执行该程序是拥有属主的身份(文件)

              二进制程序才能设置SUID权限,命令执行有x权限 ,执行过程中才有效,

    chmod 4755 文件名(给vim设置suid权限)

setGID :执行程序时拥有属组的身份;新建目录时默认组为属组(文件+目录)

             chmod 2755 文件名

SBIT    : 只有目录有效  普通用户有w+x权限(写入权限) (目录)

 

chattr权限: 防止误操作 限制文件或目录对文件名和数据的操作

sudo权限 :  root用户的权限赋予普通用户

 

文件系统:

  主分区 + 扩展分区 <= 4 ; 

   扩展分区 <= 1 ; 

  逻辑分区包含于扩展分区 .

  主分区1:/dev/sda1 

  主分区2:/dev/sda2 

  扩展分区:/dev/sda3 

  逻辑分区1:/dev/sda5


格式化:写入文件系统

文件系统是:ext4
文件系统查看命令:df -ahTmk
统计目录或文件大小:du -ahs


du命令和df命令的区别:df 看剩余空间准确(所有文件+系统+进程)
           du 看文件大小准确(只有文件)

文件系统修复(一般不用):fsck -a 分区设备名
            fsck -y 分区设备名

显示磁盘状态命令: dumpe2fs 分区设备名
挂载命令格式:     mount [-t 文件系统] [-l 卷标名] [-o 特殊选项] 设备文件名 挂载点
内存和swap查询命令:free

 

外层应用程序 --> shell命令解释器 --> 内核 --> 硬件

shell:命令行解释器,可以直接调用linux命令[sh]
shell脚本: #!/bin/bash 开头 (变量两端不能有空格)
历史命令: history
别名: (查看)alias; 永久生效(/root/.bash.rc); (删除)unalias 别名;
命令执行顺序:绝对路径,相对路径-->执行别名-->执行bash内部命令-->执行$PATH环境变量定义的目录


标准输入输出: /dev/stdin;/dev/stdout; /dev/stderr

输出重定向:   命令 >> 文件
       命令 2>> 文件
输入重定向:   命令 < 文件 (把文件作为命令的输入)
       命令 << 标识符 (把标识符之间的内容作为命令的输入)

多命令执行顺序: 命令1 ; $$ || 命令2

 

变量:计算机的内存单元,存放的值可以改变(字母,数字,下划线组成[不能以数字开头])
变量叠加: "$变量名"    ${变量名}
命令的结果赋值给变量:  `命令`   $(命令)
系统查找命令的路径:$PATH


系统变量:(查看)set;  (删除)unset 变量名;
环境变量:(声明)export 变量名=变量值;  (查询)env ;  (删除)unset 变量名
位置参数变量: $n  $*  $a   $#
预定义变量:   $?  $$  $!


shell登录信息:(本地终端)/etc/issue
       (远程终端)/etc/issue.net
       (欢迎界面)/etc/motd

注销时生效的配置文件:~/.bash_logout(环境变量)

           ~/.bash_history(其他配置文件)

 

通配符(匹配文件名): ? * [] [0-9] [a-z] [^0-9]  其他特殊符号: '-' "-" `-` $() $[] ${} $(()) # $ \

正则表达式(匹配字符串):  *  .  ^  $  []  [^]  \  \{n\}   \{n,\}  \{n,m\} 

 

Linux服务的分类:
  rpm包默认安装的服务
    独立服务
      启动
        (1)/etc/init.d/独立服务名 start|stop|status{restart
        (2)/etc/rc.d/init.d/独立服务名 start|stop|status{restart
        (3)service 独立服务名 start|stop|status{restart
      自启动
        (1)chkconfig --leavel 运行级别[一般为2345] 独立服务名 on/off
        (2)修改/etc/rc.d/rc.loal
        (3)使用ntsysv命令管理自启动(红帽专有)
    基于xinetd的服务
      启动
        (1)vim /etc/xinetd.d/telnet disable=no
        service xinetd restart 重启
      自启动
        (1)chkconfig telnet on
        (2)使用ntsysv命令管理自启动(红帽专有)
    源码包安装的服务
      启动
        绝对路径 start|stop|status{restart
      自启动
        /etc/rc.local
      被服务管理命令识别
        (举例)ln -s /user/local/apache2/bin/apchaectl /etc/init.d/apache

 

posted @ 2018-08-30 21:01  喋云怡雪  阅读(159)  评论(0编辑  收藏  举报