zoukankan      html  css  js  c++  java
  • Linux系统基本知识整理

    Linux系统基本知识整理

    目录结构

    目录 说明
    bin 存放二进制可执行文件(ls,cat,mkdir等)
    boot 存放用于系统引导时使用的各种文件
    dev 用于存放设备文件
    etc 存放系统配置文件
    home 存放所有用户文件的根目录
    lib 存放跟文件系统中的程序运行所需要的共享库及内核模块
    mnt 系统管理员安装临时文件系统的安装点
    opt 额外安装的可选应用程序包所放置的位置
    proc 虚拟文件系统,存放当前内存的映射
    root 超级用户目录
    sbin 存放二进制可执行文件,只有root才能访问
    tmp 用于存放各种临时文件
    usr 用于存放系统应用程序,比较重要的目录/usr/local 本地管理员软件安装目录
    var 用于存放运行时需要改变数据的文件

    操作文件目录

    命令 说明 语法 参数 参数说明
    ls 显示文件和目录列表 ls [-alrtAFR] [name...]
    -l 列出文件的详细信息
    -a 列出当前目录所有文件,包含隐藏文件
    mkdir 创建目录 mkdir [-p] dirName
    -p 父目录不存在情况下先生成父目录
    cd 切换目录 cd [dirName]
    touch 生成一个空文件
    echo 生成一个带内容文件 echo abcd > 1.txt,echo 1234 >> 1.txt
    cat 显示文本文件内容 cat [-AbeEnstTuv] [--help] [--version] fileName
    cp 复制文件或目录 cp [options] source dest
    rm 删除文件 rm [options] name...
    -f 强制删除文件或目录
    -r 同时删除该目录下的所有文件
    mv 移动文件或目录 mv [options] source dest
    find 在文件系统中查找指定的文件 -name 文件名
    grep 在指定的文本文件中查找指定的字符串
    tree 用于以树状图列出目录的内容
    pwd 显示当前工作目录
    ln 建立软链接
    more 分页显示文本文件内容
    head 显示文件开头内容
    tail 显示文件结尾内容

    系统管理命令

    命令 说明
    stat 显示指定文件的相关信息,比ls命令显示内容更多
    who 显示在线登录用户
    hostname 显示主机名称
    uname 显示系统信息
    top 显示当前系统中耗费资源最多的进程
    ps 显示瞬间的进程状态
    du 显示指定的文件(目录)已使用的磁盘空间的总量
    df 显示文件系统磁盘空间的使用情况
    free 显示当前内存和交换空间的使用情况
    ifconfig 显示网络接口信息
    netstat 显示网络状态信息
    clear 清屏
    kill 杀死一个进程

    压缩命令

    tar命令

    命令 说明 参数 参数说明
    tar tar [-cxzjvf] 压缩打包文档的名称 欲打包目录
    -c
    -x
    -z
    -j
    -v
    -f
    -tf

    例子:

    • 压缩文件夹:tar -zcvf test.tar.gz test
    • 解压文件夹:tar -zxvf test.tar.gz

    gzip

    命令 说明 参数 参数说明
    gzip gzip [选项]压缩(解压缩)的文件名
    -d
    -l
    -v
    -num

    说明:压缩文件后缀为 gz

    bzip2命令

    命令 说明 参数 参数说明
    bzip2 bzip2 [-cdz]
    -d
    -z
    -num

    说明:压缩文件后缀为 bz2

    用户和组管理

    Linux 操作系统是一个多用户操作系统,它允许多用户同时登录到系统上并使用资源。系统会根据账户来区分每个用户的文件,进程,任务和工作环境,使得每个用户工作都不受干扰。

    使用 Root 用户

    在实际生产操作中,我们基本上都是使用超级管理员账户操作 Linux 系统,也就是 Root 用户,Linux 系统默认是关闭 Root 账户的,我们需要为 Root 用户设置一个初始密码以方便我们使用。

    设置 Root 账户密码
    sudo passwd root
    
    切换到 Root
    su
    
    设置允许远程登录 Root
    nano /etc/ssh/sshd_config
    
    # Authentication:
    LoginGraceTime 120
    #PermitRootLogin without-password     //注释此行
    PermitRootLogin yes                             //加入此行
    StrictModes yes
    
    重启服务
    service ssh restart
    
    用户账户说明
    普通用户

    普通用户在系统上的任务是进行普通操作

    超级管理员

    管理员在系统上的任务是对普通用户和整个系统进行管理。对系统具有绝对的控制权,能够对系统进行一切操作。用 root 表示,root 用户在系统中拥有最高权限,默认下 Ubuntu 用户的 root 用户是不能登录的。

    安装时创建的系统用户

    此用户创建时被添加到 admin 组中,在 Ubuntu 中,admin 组中的用户默认是可以使用 sudo 命令来执行只有管理员才能执行的命令的。如果不使用 sudo 就是一个普通用户。

    组账户说明
    私有组

    当创建一个用户时没有指定属于哪个组,Linux 就会建立一个与用户同名的私有组,此私有组只含有该用户。

    标准组

    当创建一个用户时可以选定一个标准组,如果一个用户同时属于多个组时,登录后所属的组为主组,其他的为附加组。

    账户系统文件说明
    /etc/passwd

    每一行代表一个账号,众多账号是系统正常运行所必须的,例如 bin,nobody 每行定义一个用户账户,此文件对所有用户可读。每行账户包含如下信息:

    root:x:0:0:root:/root:/bin/bash
    
    • 用户名: 就是账号,用来对应 UID,root UID 是 0。
    • 口令: 密码,早期 UNIX 系统密码存在此字段,由于此文件所有用户都可以读取,密码容易泄露,后来这个字段数据就存放到 /etc/shadow 中,这里只能看到 X。
    • 用户标示号(UID): 系统内唯一,root 用户的 UID 为 0,普通用户从 1000 开始,1-999 是系统的标准账户,500-65536 是可登陆账号。
    • 组标示号(GID): 与 /etc/group 相关用来规定组名和 GID 相对应。
    • 注释: 注释账号
    • 宿主目录(主文件夹): 用户登录系统后所进入的目录 root 在 /root/itcast
    • 命令解释器(shell): 指定该用户使用的 shell ,默认的是 /bin/bash
    /etc/shadow

    为了增加系统的安全性,用户口令通常用 shadow passwords 保护。只有 root 可读。每行包含如下信息:

    root:$6$Reu571.V$Ci/kd.OTzaSGU.TagZ5KjYx2MLzQv2IkZ24E1.yeTT3Pp4o/yniTjus/rRaJ92Z18MVy6suf1W5uxxurqssel.:17465:0:99999:7:::
    
    • 账号名称: 需要和 /etc/passwd 一致。
    • 密码: 经过加密,虽然加密,但不表示不会被破解,该文件默认权限如下:
      • rw------- 1 root root 1560 Oct 26 17:20 passwd-
      • 只有root能都读写
    • 最近修改密码日期: 从1970-1-1起,到用户最后一次更改口令的天数
    • 密码最小时间间隔: 从1970-1-1起,到用户可以更改口令的天数
    • 密码最大时间间隔: 从1970-1-1起,必须更改的口令天数
    • 密码到期警告时间: 在口令过期之前几天通知
    • 密码到期后账号宽限时间
    • 密码到期禁用账户时间: 在用户口令过期后到禁用账户的天数
    • 保留
    /etc/group
  • 相关阅读:
    用python实现average()函数,使得当可变参数长度为0的时候,也能正确返回结果。
    请用python实现函数func,当参数类型为list时,返回list中所有数字类型元素的和,当参数类型为tuple时,返回tuple中所有数字类型元素的乘积。
    用python实现循环和递归的形式定义函数,求出1~100的和。
    python实现0~100的平方和,用sum()函数接收一个list作为参数,并返回list所有元素之和。请计算 1*1 + 2*2 + 3*3 + ... + 100*100。
    用python实现线性回归
    IE11用JS检测判断
    Google Chrome的CSS hack写法
    javascript间窗口互相通信,window.open新建窗口保存父窗口对象
    解决IE6不支持css min-width与min-height
    CSS实现兼容性的渐变背景(gradient)效果(转)
  • 原文地址:https://www.cnblogs.com/MartyCode/p/12662451.html
Copyright © 2011-2022 走看看