[学习日志][操作系统]Linux基础知识点整理

Linux

目录

Linux概述

Linux含义

  • 狭义

    • 由Linus Torvalds开发的Linux内核代码
  • 广义

    • 由Linux厂商基于Linux内核开发的Linux发行版操作系统。

操作系统

  • 常见操作系统

    • Window
    • mac OS
    • Linux
    • IOS
    • Android
  • 作用

    • 作用于硬件与软件之间,控制硬件,支持软件,承上启下。

虚拟机软件

  • 常用虚拟机

    • Vmware
    • VirtualBox
  • 作用

    • 模拟一个真实计算机,虚拟机间相互隔离。
  • 备份操作系统

    • 快照

      • 保存拍快照时候的系统状态。
      • 适用于短期,频繁备份,一般在虚拟机操作系统开启状态时进行备份。
    • 克隆

      • 分类

        • 链接克隆

          • 对原始虚拟机的引用,所需磁盘空间少,但原始虚拟机必须可以访问时才能运行。
        • 完整克隆

          • 对分类机状态的完整副本,独立,占磁盘空间大。
      • 适用于长期备份,备份时虚拟机需关闭。

ubuntu

  • 概述

    • Linux操作系统的一种,免费,稳定。
  • 主要目录

    • /(根目录)

      • /bin

        • 系统指令目录,存放系统指令。
      • /etc

        • 系统配置文件目录
      • /boot

        • 系统引导目录,启动文件,引导文件。
      • /dev

        • 系统设备目录,影片,光驱都在此目录下/dev/cdrom
      • /home

        • 用户家,非管理员用户在/home目录下都有家
      • /lib

        • 库文件目录

          • .so 动态库
          • .a 静态库
      • /media

        • 多媒体目录,光驱与软驱
      • /mnt

        • 挂在目录
      • /opt

        • 第三方程序目录,qq,wps软件通常放置于此目录下。
      • /proc

        • 内存目录
      • /root

        • 超级管理员的家目录
      • /run

        • 保存到下次引导前有效的关于系统的信息文件
      • /srv

        • 服务启动之后需要访问的数据目录
        • 如www服务需要访问的网页数据存放在/srv/www内
      • /sbin

        • s为super,超级指令超级目录。供root管理员使用。
      • /sys

        • 目录与/proc类似,是一个虚拟的文件系统,主要记录与系统核心相关的信息,入系统当前已经载入的模块信息等。
      • /tmp

        • temp的所需,临时目录
      • /usr

        • 应用程序存放目录。
        • 安装Linux软件包时默认安装到/usr/local目录下。
      • /var

        • 经常变化的目录,页文件、数据库文件通常放置于此目录下。

Linux内核与发行版

  • Linux内核

    • 操作系统的内部操作和控制硬件的核心程序。
  • Linux发行版

    • 概述

      • Linux内核与常用软件的组合。
    • 常用发行版

      • Ubuntu
      • CentOS
      • Redhat

Linux基础操作

终端命令格式

  • 语法

    • command [-options] [parameter]

    • command

      • 命令名
    • [-options]

      • 选项,可无也可有多个

      • 短选项

        • -单字母
      • 长选项

        • –单词
    • [parameter]

      • 参数,可有可无
  • 注意点

    • 一般选项与参数没有顺序要求,但对scp命令必须先选项,后参数。

命令帮助

  • 命令–help

  • man 命令

    • 空格

      • 显示下一屏
    • 回车

      • 显示下一行
    • b

      • 显示上一屏
    • f

      • 显示下一屏
    • q

      • 退出

查看目录

  • ls

    • 作用:查看当前目录信息

    • 显示信息说明

      • 文件类型 文件存区控制 硬链接数 文件属性 文件所属的组 文件大小(默认单位字节) 文件修改时间 文件名

      • 开头

        • -d开头表示目录,-表示文件。
      • 链接数

        • 文件的引用计数表示该文件的硬链接数,目录的引用计数表示该目录下有多少个子目录。
      • 所有者

        • 文件属于哪个用户。默认属于创建用户。
      • 所有组

        • 文件属于哪个组,默认属于创建用户所在的组。
    • 选项

      • [-l]

        • 以列表方式显示。
      • [-a]

        • 显示隐藏文件及目录。
      • [-h]

        • 较高可读性(文档大小默认单位字节)的形式显示。
  • tree

    • 以树状方式显示目录文件
  • pwd

    • 查看当前目录路径

切换目录

  • cd 目录

    • 切换到指定目录
  • cd

    • 切换到当前用户的家目录
  • cd ~

    • 当前用户主目录
  • cd …

    • 切换到上一级目录
  • cd .

    • 切换到当前目录
  • cd -

    • 切换到上一次目录
  • **切换目录时目录必须存在。

路径

  • 绝对路径

    • 从根目录开始
  • 相对路径

    • 从当前目录开始
  • Tip

    • 一次tab–>自动补全
    • 两次tab–>提示

创建删除文件目录

  • 创建

    • touch 文件名

    • mkdir 目录名

      • [-p] :创建嵌套目录
  • 删除

    • rm 文件或目录名

      • -i

        • 交互式提示
      • -r

        • 递归删除
      • -f

        • 强制删除,不存在忽略不提示
      • -d

        • 删除空目录
      • -p

        • 递归删除空目录
    • rmdir 空目录名

复制移动文件目录

  • 复制

    • cp 文件或目录

      • -i

        • 交互式提示
      • -r

        • 递归
      • -v

        • 显示拷贝后的路径描述
      • -a

        • 保留文件原有权限
  • 移动,重命名

    • mv 文件或目录

      • -i

        • 交互式提示
      • -v

        • 显示移动后的路径描述

设置命令别名

  • 1.打开 .bashrc

    • vim .bashrc
  • 2.为clear命令添加别名

    • alias cls=‘clear’
  • 3.让别名生效

    • source ~/.bashrc

磁盘内存

  • 查看磁盘空间大小。-h可读性。

    • df[-h]
  • 查看内存使用情况

    • free

    • -m

      • 表示以M为单位查看
    • -h

      • 以可读性较高的形式展示大小

日期时间

  • 时间分类

    • 系统时间
    • 分类时间
  • date

    • 获取系统时间

    • -s

      • 设置系统时间
  • hwclock

    • 管理计算机硬件RTC时间

    • -w

      • 将linux系统时间保存到硬件RTC中
    • -s

      • 将RTC中的事件保存到linux系统时间中
  • timedatectl

    • 同时设置系统时间,RTC硬件时间,还可以设置时区。

    • -list-timezones

      • 列出系统上所有支持的时区名称
    • -set-timezone

      • 设定时区位置
    • -set-time

      • 设定时间
  • cal

    • 查看系统日历

    • -l

      • 输出当前月份日历
  • ntpdate

    • 手动网络校时
    • ntpdate ntp服务器地址

Linux进阶操作

重定向命令

  • 概述

    • 终端输出内容重定向到文件中。
  • 操作

    • ‘>’
  • 覆盖

  • ‘>>’

    • 追加

查看文件内容

  • cat

    • 查看小型文件
  • gedit

    • 查看和编辑文件
  • more

    • 分屏查看
    • 空格,回车,b,f,q
  • tac

    • 倒叙查看文件命令
  • tail

    • -n

      • 查看一个文件后n行,不指定默认10行
    • -f

      • 查看一个文件动态变化内容(一般用于查看系统日志)
      • ctrl+c退出卡屏
  • less

    • 查看大文件,比较少的输出内容
  • wc

    • 统计文件内容信息(包含行数,单词书,字节数)

    • -l

      • 表示行数,以换行符为基准
    • -w

      • 单词数
    • -c

      • 字节数
  • du

    • 查看文件或目录,占用磁盘空间大小

    • -s

      • 显示汇总大小
    • -h

      • 高可读性进行显示
  • 管道 |

    • 内容容器

      • ls lh | more

链接命令

  • 软连接

    • 操作

      • ln -s 源文件(绝对路径)链接文件路径
    • 特点

      • 相当于window中的快捷键
      • 删除源文件软链接失效。
      • 可以给目录创建软链接。
      • 源文件路径必为绝对路径
  • 硬链接

    • 语法

      • ln 源文件路径 硬链接
    • 特点

      • 多个链接指向一个数据
      • 源数据被删,硬链接仍可访问数据
      • 源文件路径 可为相对路径也可绝对路径
      • 不能给目录创建硬链接

文本搜索

  • 语法

    • grep [选项] 文本搜索内容 文件

      • -i

        • 忽略大小写
      • -n

        • 显示匹配行号
      • -v

        • 取反 ,显示不包含匹配文本的所有行
  • 常用正则

    • ^

      • 指定字符开头
    • $

      • 指定字符结束
    • .

      • 匹配一个非换行字符
  • 与管道配合

    • ls | grep ‘lib’

查找文件命令

  • 语法

    • find 指定查找目录 [选项] ‘文件名’

      • [-name]

        • 根据文件名查找
      • [-type]

        • 根据文档类型查找
  • 可配合命令

    • ls mv cp
  • 通配符

      • 0或多个任意字符
      • 一个任意字符
    • **注意:find命令使用通配符需要加引号

压缩解压缩

  • .gz / .bz2

    • tar 选项 文件

      • -c

        • 创建打包文件
      • -v

        • 显示打包或者解包详细信息
      • -f

        • 指定文件名,放所有选项后面
      • -z

        • 压缩解压缩 .gz
      • -j

        • .bz2
      • -x

        • 解包
      • -C

        • 解压到指定目录
  • .zip

    • zip,unzip

      • -d

        • 指定目录
  • 常用操作

    • 压缩

      • tar -zcvf test.tar.gz *.txt -C 路径
      • tar -jcvf test.bz2 *.txt
      • zip test.zip *.txt -d 路径
    • 解压缩

      • tar -zxvf test.tar.gz
      • tar -jxvf test.bz2
      • unzip test.zip -d 路径

文件权限

  • 语法

    • chmod 不同角色权限 文件
  • 字母法

    • 角色

      • u ,g,o,a
    • 设置操作

      • +,-,=
    • 权限

      • r(读) , w(写), x(执行),-(无任何权限 )
    • 案例

      • chmod u+x 1.txt
      • chmod u=rw 1.txt
  • 数字法

    • 权限

      • r(4),w(2),x(1),-(0)
    • 案例

      • chmod 777 1.txt

软件安装卸载

  • 安装

    • 离线安装(deb)

      • dpkg -i 安装包
    • 在线安装(apt-get)

      • apt-get install 安装包
  • 卸载

    • 离线卸载

      • dpkg -r 安装包名
    • 在线卸载

      • apt-get remove 安装包

获取管理员权限

  • sudo

    • sudo -s

      • 切换root用户
    • sudo 命令

      • 管理员权限执行命令
  • whoami

    • 查看当前用户
  • who

    • 查看所有登录用户
  • exit

    • 退出登录用户
    • 返回上一个用户,若没有退出终端
  • passwd

    • 不指定修改当前登录用户密码
  • which 命令

    • 查看命令位置

系统关联

  • clear

    • 清屏
  • shutdown -h now

    • 立刻关机
    • now 换数字10 10分钟后关机
  • shutdown -c

    • 取消关机
  • reboot

    • 重启
  • ps

    • 显示系统进程信息
  • kill

    • 杀死进程,指定pid
    • -9 强制杀死
  • killall

    • 杀次进程,指出下达指令的名称
  • ifconfig

    • 查看ip

用户相关

  • 创建用户

    • useradd [] 用户名

      • -m

        • 自动创建用户主目录,名与用户名相同。
      • -g

        • 后面接组名,指定用户所属用户组,不指定自动创建同名用户组
      • -u

        • 后面接UID。指定一个特定UID给这个账号
      • -M

        • 强制不创建用户家目录
      • -c

        • 添加用户注释
      • -d

        • 指定某个目录成为家目录(务必使用绝对路径)。
  • 查看信息

    • cat /etc/passwd

      • root❌0:0:root:/root:/bin/bash
      • 用户名:密码:UID:GID:注释:家目录:解释器
    • cat /etc/group

      • itcast❌1000:itcast
      • 组名 :密码:GID:组内用户
      • 密码x代表占位符,用户组可以设置密码,但大部分情况不需要设置。
    • cat /etc/shadow

      • hello2: 6 6 6tZVAwr.v$jiDW7iMPCOeKiQkf4aOAelpjJF/a5ZLiERPOmpQLbPSIC2PmfjkRh2Yv153QCn79J1RM.47RcDhuWjTwahaOe0:17967:0:99999:7:::
        hello3:!!:17967:0:99999:7:::
      • 说明:hello1、hello2设置了密码,hello3没有设置密码
    • id 用户名

      • 查看用户信息
      • uid=1001(laowang) gid=1001(laowang) 组=1001(laowang)
      • 用户id,用户组id,用户所在用户组
  • 设置密码

    • sudo passwd 用户名
  • 切换用户

    • su -用户名

    • 当用户不在sudo用户组里,无法切换root用户

      • 给用户设置一个sudo附加组,使用usermod修改用户信息。
  • 修改用户信息

    • usermod 选项 组名 用户名

      • sudo usermod -G sudo laowang
    • -G

      • 设置一个附加组修改用户对应的附加组
    • -g

      • 修改用户组修改用户对应的用户组,选项值可以是GID,也可以是组名
    • -u

      • 修改用户的UID
    • -l

      • 修改用户名
    • -c

      • 修改用户注释
    • -d

      • 修改用户家目录
    • -s

      • 修改用户登录使用shell
  • 删除附加组

    • gpasswd

      • sudo gpasswd -a laowang sudo
    • -a 用户名

      • 给用户添加附加组
    • -d 用户名

      • 给用户删除附加组
  • 删除用户

    • userdel [-r] 用户名

      • -r

        • 删除用户,同时删除用户主目录
    • 注意:

      • 删除用户同名用户组默认也会被删
    • 问题:已登录用户删除失败

      • 方案一:强制杀死应用户进程

        • ps -ef | grep hello2
        • kill -9 113380
      • 方案二:登录用户,ctrl+d 注销。

用户组相关

  • 创建用户组

    • groupadd [] 用户组名

    • G

      • 设置GID,不写默认设置
  • 创建用户并指定用户组

    • sudo useradd -m -g test laowang
  • 修改用户组

    • groupmod [] 组名

      • groupmod -g 520 -n admin admins
    • -g

      • 设置自定义一个GID
    • -n

      • 设置新的组名
  • 删除用户组

    • sudo groupdel 组名
    • 组内有用户,先删除用户,再删除用户组

Linux 相关软件

远程连接

  • 远程登录(ssh)

    • 命令 ssh -p22 root@服务器ip地址
  • 远程拷贝(scp)

    • 可视化软件FileZilla

vim编辑器

  • 概述

    • 文本编辑器
  • 配置文件

    • 个人配置

      • ~/.vimrc
    • 全局配置

      • /etc/vimrc
  • 模式

    • 命令模式

      • 控制光标移动,可对文件进行删除,复制,粘贴等操作。
    • 编辑模式

      • 文本录入
    • 末行模式

      • 保存,退出,替换
      • w 保存
      • wq,x 保存退出
      • q!强制退出
  • 打开方式

    • vim 文本路径

      • 打开文件,没有创建。
    • vim +数字 文本路径

      • 打开指定文件,光标移到指定行
      • vim +3 anaconda-ks.cfg
    • vim +/关键字 文本路径

      • 高光提示关键字,光标移动到关键字第一次出现地方。第二次打开,移动到第二次出现的地方。
      • vim +/part anaconda-ks.cfg
    • vim 文件路径1 文件路径2 文件路径3 …

      • 同时打开多个文件

      • :n

        • 编辑下一个文件
      • :N

        • 编辑上一个文件
      • :files

        • 列出目前这个vim开启的所有文件
  • 常用命令

    • 命令模式

      • dd

        • 删除(剪切)光标所在行
      • 5dd

        • 删除从光标开始的5行
      • yy

        • 复制光标所在整行
      • 5yy

      • p

        • 粘贴,将之前复制或剪切的粘贴到光标后
      • /字符串

        • 在文本中从上至下搜索字符串
      • ?字符串

        • 在文本中从下至上搜该字符串
      • n

        • 显示搜索命令定位到下一个字符串
      • N

        • 显示搜索命令定位到上一个字符串
      • u

        • 撤销上一部操作
      • ctrl+r

        • 恢复
      • gg

        • 光标移动到首行行首
      • G

        • 光标移动到末行行首
      • .

        • 重复上一次命令
      • shift+6,shift+4

        • 回到当前行行首,行末
      • ctr+f/ctr+b

        • 下一屏,上一屏
    • 末行模式

        • 进入
      • esc:

        • 退出
      • esc两次

        • 快速退出
      • :w

        • 保存
      • :q

        • 退出
      • :q!

        • 强退
      • :set nu

        • 显示行号
      • :set nonu

        • 不显示行号
      • :整数

        • 跳转到该行
      • :x

        • 保存退出,与wq不同。不更改更新时间。
      • ‘<<’

  • 缩进

  • 全局替换

    • :%s/要替换的内容/替换后的内容/g
  • 局部替换

    • :开始行数,结束行数s/要替换的内容/替换后的内容
  • 编辑模式

    • i

      • 在光标所在字符前开始插入
    • a

      • 在光标所在字符串后开始插入
    • o

      • 在光标所在行的下面另起一新行插入
  • 异常退出

    • ll 后查看删除 .swp
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值