基础

  • TODO

基础操作

安装

  • 安装直接在VMware Fusion里面安装centos7.x最小版

    • 自定义配置分区
      • 我要配置分区 - 完成 - 标准分区
      • 引导分区 - /boot - 1G
      • 交换分区 - swap - 4G
      • 根分区 - / - 15G
    • 网络配置
      • 修改host名
      • 开启网络地址转换
    • 帐密设置
      • 设置root密码
      • 创建普通用户

文件系统

  • Linux的文件系统

  • 树形层级的目录

  • img

    • 此处的bin是一个快捷方式,在/usr/bin

Vim

  • Linux里面非常重要的文件编辑器,Vi和Vim

  • Vim非常的强大!

  • 如果系统没有,就使用yum install vim进行安装

  • 模式转换

    • img
    • 进入的是一般模式,不能够编辑,但是可以复制、粘贴、删除
    • 编辑模式就是可以对文件进行编辑-append等等
    • 命令模式可以执行的操作就是可以对修改后的文档进行保存,退出等操作
  • 一般模式命令

    • img
  • 编辑模式命令

    • img
  • 指令模式命令

    • img

网络配置

  • 桥接模式 - (桥接模式网络连接)

    • 虚拟机直接连接外部物理网络的模式,主机起到了网桥的作用。这种模式下,虚拟机可以直接连接外部网络,并且对外部网络是可见的
    • 桥接网络适配器称为 vmnet0。在 Fusion 3.x 及更高版本中,该适配器使用 vmnet-bridge 和 vmnet-netifup 服务。
  • NAT(网络地址转换)模式 - (Internet共享)

    • 虚拟机和主机构建一个专有网络,并通过虚拟网络地址转换设备对IP进行转换。虚拟机通过共享主机IP可以实现访问外部网络,但外部网络无法访问虚拟机
    • NAT 网络适配器称为 vmnet8。在 Fusion 3.x 及更高版本中,该适配器使用 vmnet-natd、vmnet-dhcpd 和 vmnet-netifup 服务。
    • 会虚拟出一个网卡
  • 仅主机模式 - (自定)

    • 虚拟机只与主机共享一个专有网络,与外部网络无法直接通信
    • 仅主机网络适配器称为 vmnet1。在 Fusion 3.x 及更高版本中,该适配器使用 vmnet-dhcpd 服务。

静态IP

  • 修改静态IP-而非DHCP进行分配

    • cd sysconfig/network-scripts/ - 切换目录
    • vim ifcfg-ens33 - 修改配置文件
    • service network restart
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="static" // 修改为静态
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
NAME="ens33"
UUID="79898376-c7f6-44f1-9758-e6129fd7a033"
DEVICE="ens33"
ONBOOT="yes"


# 配置以下信息
# IP地址
IPADDR=192.168.212.142

# 子网掩码
NETMASK=255.255.255.0

# 网关
GATEWAY=192.168.212.2

# DNS解析
DNS1=223.5.5.5
DNS2=223.6.6.6
DNS3=8.8.8.8

主机名

  • 查看主机名 - hostname
  • 修改主机名 - vim /etc/hostname或者hostnamectl set-hostname xxx
  • 修改hosts文件 - vim /etc/hosts - 里面相当于是通讯录,一个IP对应一个名称,下次ping就可以直接使用名字

远程登录

  • 远程登录很简单

    • 一是终端使用ssh
    • 二是使用ssh远程工具
  • ssh

    • ssh 用户名@地址
    • 然后按提示来就行
    • 地址可以是域名,别名或者IP

系统管理

  • Linux中常驻内存的进程被称为service

  • centos6

    • 基本语法- service 服务名 xxx
    • 查看服务 - ll /etc/init.d - centos6
  • centos7 - 主

    • 基本语法 - systemctl start|restart|status|stop 服务名
    • 查看服务 - ll /usr/lib/systemd/system - centos
    • service结尾就都是服务文件
  • 配置开机自启动

    • chkconfig 服务名 on - centos6
    • systemctl disable/enable 服务名,service - centos7
  • 关机

    • shutdown - 等一分钟关机
      • -c - 结束刚才一分钟并取消关机
      • -r - 重启
      • -H - 关机)
    • halt - 关闭系统,但不断电
    • poweroff - 关机,断电
    • reboot - 重启
    • sync - 将数据由内存同步到硬盘中

Shell

  • Shell就是终端,Linux里面有很多以sh结尾的文件就是

  • 常用的shell就是工具有 bashzsh等等

  • 帮助命令 -

    • man [命令/配置文件]
    • help 命令 - 内置命令
    • 命令 --help - 外置命令
  • 常用快捷键

    • ctrl + c - 退出shell
    • ctrl + l - 清屏 - clear

文件目录类

  • pwd - 打印工作目录

  • ls -列出当前目录文件以及文件夹

  • mkdir xxx - 当前目录下新建一个xxx的目录

    • mkdir -p a/b/c - 父目录下创建
    • rmdir -p a b - 删除目录a和b(有文件也删除)
  • cp source dist - 复制文件或者目录

  • touch xxx - 当前目录新建一个xxx的文件

  • rm fileName - 删除文件

    • -f - 强制删除
    • -r - 删除文件夹
    • -rf - 删除文件夹包括其子目录所有东西
  • mv filename dist - 移动目录

  • cat filename - 查看文件内容

    • -n - 显示行号
    • more filename/less filename
  • echo "hhh" - 将xxx输出到控制台

    • -e - 可以使用转译字符
    • echo -e "hello \n world" > hello.txt - 覆盖文件
    • echo -e "hello \n world" >> hello.txt - 追加文件
  • haed -n filename - 显示文件头n行内容,默认10行

  • tail -n filename - 显示文件尾n行内容,默认10行

    • -f可以实时更新追踪
  • ln -s source dist - 软链接,快捷方式

时间日期类

  • date +%Y-%m-%d - 按格式要求显示时间信息
  • cat - 查看日历

用户管理类

  • Linux是一个多用户多任务的分时操作系统

  • useradd username - 添加新用户(可以去看/home下看) - 可以指定主目录

  • passwd username - 给用户设置密码

  • userdel -r filename - 删除指定用户

  • sudo - 让普通用户有roo权限

    • /etc/sudoers里面可以为用户分配权限
    • 默认创建的用户属于自己的组,每个用户可以加入多个组
    • groupadd
    • usermod -g groupname username - 加入组
    • whele组是类似于管理员的组

文件权限类

  • TODO:这里去看文件
  • img
  • chmod
  • chown -

搜索查找类

  • find disk -name filename - 查找某个文件,当前目录下

    • img
  • locate xxx

  • which xxx - 查找命令位置

  • grep - 管道符,用于过滤

    • grep -n test filename - 查找文件里面有test关键字的行
    • ls | grep .cfg - 列出当前 目录所有以cfg结尾的文件

压缩解压类

  • gzip file - 压缩文件

    • 只能压缩文件,不能压缩目录
    • 压缩不保留原文件
    • 同时压缩多个文件会生成多个压缩包
    • 所以不常用
  • gzip file.zip - 解压文件

  • zip/unzip

  • tar [options] xxx.tar.gz

    • 一定要好好看下面的参数
    • img

磁盘管理类

  • du

    • 查看目录下文件大小总和等等
    • img
  • df等剩余几个命令去查文档

  • mount/unmount - 挂载命令

  • 硬盘分区

  • Linux

进程管理类

  • ps - process status - 查看当前用户/shell进程

    • ps aux - 常用
    • 可以使用管道
    • img
  • kill PID - 杀进程

  • pstree - 查看当前进程的进程树

    • img
  • top - 实时监控

    • img
    • img
  • netstat - 查看网络状态和端口占用信息

    • netstat -anp | grep PID
    • img
  • 定时任务

    • crontab - 具体怎么用去看文档

包管理

  • Linux里面有很多的包管理工具,Centos这边是RPM和YUM

RPM

  • RPM -Redhat Package Manager - 软件包管理工具

  • img

  • rpm -qa - 查询所有已安装的RPM软件包

  • rpm -qi xxx - 查询有没有被安装

  • rpm -e xxx - 移除xxx软件包

  • rpm -i xxx - 安装xxx软件包

    • -ivh

YUM

  • yum相比于rpm最大的特点就是不需要进行依赖
  • yum install -y xxx
  • yum update -y xxx
  • yum remove -y xxx
  • yum list