Linux知识点总结

Linux知识点总结

1. Linux目录结构

Linux采用层级式树状目录结构,全部文件至于一个根目录"/",在此根目录下再创建其它的目录。在Linux中,一切皆文件
目录存放的内容:

  • /bin:存放常用命令
  • /home:普通用户主目录(每个用户都有一个主目录,一般以用户名命名)
  • /root:系统管理员主目录
  • /etc:所有系统管理所需的配置文件和子目录
  • /usr:放置用户的应用程序和文件
  • /boot:启动Linux时使用的核心文件
  • /dex:设备管理器(鼠标,键盘等)
  • /media:外设(U盘,光驱等)
  • /opt:额外安装软件的目录
  • /usr/local:安装软件的安装目录
  • /var:日志文件

2.Vi和Vim

Vi是Linux内置的文本编辑器,Vim是Vi的增强版,具有程序编辑的能力

Vi和Vim有三种模式:正常模式,编辑模式,命令行模式

  • 正常模式输入i进入编辑模式,输入":"进入命令行模式,在命令模式中输入wq会保存并退出,q会退出,!q会强制退出

Vim中的快捷键:

  • yy:拷贝当前行
  • nyy:拷贝n行
  • p:粘贴
  • dd:删除当前行
  • /关键词:查找某个关键词
  • set nu:设置文件行号
  • set nonu:取消文件行号
  • G:到最末行
  • gg:到最首行
  • u:撤销
  • set nu+行号+shift + g:光标移动到指定行

3.用户管理

Linux是多任务多用户操作系统,任何一个要使用系统资源的用户,必须先申请一个账号,而每个用户属于一个用户组。

常用指令 :

  • useradd 用户名:添加用户
  • passwd 用户名:给用户设置密码
  • userdel 用户名:删除用户,但保留用户家目录
  • userdel -r 用户名:删除用户,并删除用户家目录
  • id 用户名:查询用户的id,gid,所在组名称
  • su 用户名:切换用户
  • exit:切换到原用户

用户组相关:

  • groupadd 组名:添加组
  • groupdel 组名:删除组
  • useradd -g 用户组 用户名:增加用户时直接加上组
  • usermod -g 用户组 用户名:修改用户的组

用户和组的相关文件:

  • 用户配置文件:/etc/passwd
  • 组配置文件:/etc/group
  • 口令配置文件:/etc/shadow (存放密码)

4.常用指令

1. 指定运行级别:

Linux共有七种运行级别:
0:关机
1:单用户(root密码丢失可使用该级别修改密码)
2:多用户无网络
3:多用户有网络
4:保留
5:图形界面
6:重启

  • init [级别]:进入指定级别
2. 帮助指令:
  • man [命令或配置文件]
  • help [命令]
    最好直接在百度上找
3. 文件目录类:
  • pwd:显示当前工作目录的绝对路径

  • ls [选项] [目录或文件]:查看目录所有内容信息
    -a:显示隐藏文件
    -l:以列表方式显示信息

  • cd:切换路径

  • mkdir:创建目录
    -p创建多级目录

  • rmdir:删除空目录

  • touch:创建新文件

  • cp [选项] source dest:拷贝文件
    -r 递归拷贝整个文件夹

  • rm:删除文件
    rm -rf:递归强制删除整个文件

  • mv:移动文件或重命名文件
    mv 原文件 新文件 (重命名)
    mv 原文件 目标目录 (移动文件)

  • cat:查看文件内容
    -n显示行号

  • more:分页查看文件 一般使用|more

  • less:分页查看文件,但是一次加载一部分而不是整个文件(用于查看大型文件)

  • “>”:输出重定向,会将原文件内容覆盖

  • “>>”:输出重定向,追加到原文件末尾
    如 ls -l > a.txt 会将查询到的内容写到a.txt中

  • echo:输出内容到控制台

  • head:显示文件开头部分(默认前10行)

  • tail:显示文件尾部内容
    tail -f 文件:实时追踪文档所有更新

  • ln:软链接

  • history:查看已执行过的命令
    history+数字:显示最近的几个指令
    !行号:再执行一次对应行号的指令

    4.时间日期类
    • date:显示当前时间
    • date “+%Y%m%d%H%M%S”:显示年月日时分秒
    • date -s 时间:设置系统时间
    • cal:查看日历
    • cal 年份:查看一年的日历
5.搜索查找类
  • find [搜索范围] [选项]:从指定目录向下递归地遍历各个子目录
    • -name:按文件名查找
    • -user:查找该用户的文件
    • -size:按大小查找 (+n大于 -n小于 n等于,如find /home -size +20M搜索/home下大于20M的文件)
  • grep [选项] 查找内容 源文件:过滤查找
    -n:显示行号 -i:忽略字母大小写
    通常配合管道符:如 cat hello.txt | grep xxx
6.压缩解压类
  • zip/unzip
    zip [选项] xxx.zip 源文件或目录
    -r:递归压缩文件 -d<目录>:指定解压缩后的存放目录
  • tar:打包指令
    tar -zcvf xxx.tar.gz 源文件:打包
    tar -zxvf xxx.tar.gz:解压缩(-C可以指定解压到哪个目录)

5.组管理和权限管理

Linux中每个文件都有所有者,所在组和其他组的概念,查看文件时的前三个权限就分别对应这三个概念的权限

其中权限分为:
r:可读
w:可修改(文件权限),可删除(目录权限)
x:可执行(文件权限),可进入(目录权限)

常用命令:

  • chown 用户名 文件名:修改文件所有者
  • chgrp 组名 文件名:修改文件所在组
    -R:使其子文件和目录递归生效
  • chmod 数字 文件名:修改文件权限
    其中 r=4 w=2 x=1,修改权限只需把需要的权限数字相加
    如 chmod 751 xx.txt

6.定时任务调度

  • crontab [选项]:
    -e:编辑定时任务
    -l:查询定时任务
    -r:删除当前用户所有任务

  • 定时任务的前五个数字分别代表 分,小时,天,月,星期几
    如 */1 * * * * ls -l > to.txt:每隔一分钟把查到的内容写到to.txt中
    0 2 * * * /home/mytask3.sh:每天两点执行mytask3.sh脚本

参数:
*代表任何时间
,代表不连续的时间
-代表连续的时间范围
/代表每隔多少时间
\

7.磁盘分区、挂载

Linux磁盘采用挂载的方式,将一个分区和一个目录联系起来

常用指令:

  • lsblk -f :查看系统的分区和挂载情况
  • df -lh:查看当前磁盘使用情况
  • du -h/目录:查询指定目录磁盘使用情况
  • tree:以树状显示目录结构
  • 统计文件个数: ls -l /home | grep “^-” | wc -l
  • 统计文件个数(包含子文件): ls -lR /home | grep “^-” | wc -l

8.网络配置

Linux的IP地址可以自动获取或指定固定的IP地址,作为服务器时应该使用固定的IP地址

配置方法:
修改网卡的配置文件 vim /etc/sysconfig/network-scripts/ifcfg-ens33
并修改ONBOOT=yes,BOOTPROTO=static,修改IPADDR,GATEWAY(网关),DNS

9.进程管理

  • ps -aux | grep xxx :查看指定进程
    内容包括:PID,TTY(终端机号),TIME(进程消耗CPU时间),CMD(正在执行的命令或进程),VSZ(占用虚拟内存),RSS(使用物理内存情况),STAT(进程状态,S为休眠,r运行,z僵死进程)
  • ps -ef:查看父进程
  • pstree:以树状形式查看进程信息
  • kill [选项] 进程号:通过进程号杀死进程
    -9:强制进程立即停止
  • killall 进程名称:通过进程名称杀死进程

服务管理:

  • systemctl:列出所有activeunit
  • systemctl list-units-all:列出所有unit,包括unactive的
  • systemctl [status | is-active | stop | start | is-enabled(是否开机自启动) | disabled(禁止开机自启动) | enable | restart | mask(注销)] 服务名

进程监控:

  • top:动态监控进程执行情况
    输入 u+用户名,可监视特定用户
    输入 k+pid,可杀死指定进程
    P:以CPU使用率排序
    M:以内存使用率排序
    N:以PID排序
    q:退出
  • netstat -anp:监控网络状态

10.RPM与YUM

  • rpm -q 软件名:查看有没有安装某软件
  • rpm -e 软件名:卸载软件
  • rpm -ivh RPM包全路径名:安装软件
  • yum list | grep xx 软件名:查看在yum服务器上有没有该软件
  • yum install 软件名:安装软件

你可能感兴趣的:(Linux)