天天看点

Linux 介绍、安装及基础命令介绍

工欲善其事,必先利其器。

Linux 介绍

各 Linux 发行版如下:

  • 中标麒麟:中标软件(国产)
  • slackware:SUSE Linux Enterprise Server (SLES) , OpenSuse桌
  • debian: ubuntu,deepin(深度),mint
  • Redhat: RHEL: RedHat Enterprise Linux, 每18个月发行一个新版本
  • CentOS: Community Enterprise Operating System 兼容RHEL的格式
  • Fedora:每6个月发行一个新版本

Unix 哲学思想:

  • 一切皆文件,一切皆可配置
  • 链接程序,共同完成复杂的任务
  • 配置数据存储在文本中

在 Vmware 安装 Linux

准备工作

  • ​​Vmware Workstation​​:虚拟机,用于在 Windows 或者其它主机安装 Linux。
  • ​​Xshell​​​ 或 ​​Putty​​:用于通过 SSH 连接 Linux。
  • CentOS 和 Ubuntu 镜像:
  • 建议 ​​Centos 7.9​​​ 或​​ Centos 8.5​​:建议下载 dvd 版镜像。
  • 建议 ​​Ubuntu 18.04.6。​​

安装 CentOS

新建虚拟机

  1. 安装 Vmware Workstation。
  2. 打开 Vmware Workstation,单击【文件】>【新建虚拟机】。
  3. 选择【典型(推荐)】>【下一步】>【稍后安装操作系统】>【下一步】。
  4. 选择【Linux】>版本【Centos 7 64位】>【下一步】>“配置虚拟机名称和位置”>【下一步】。
  5. 配置磁盘大小,建议100G左右,然后单击【下一步】>【完成】。
  6. 找到刚刚创建的虚拟机,单击【编辑虚拟机设置】,找到【CD/DVD(IDE)】,将下载好的 ISO 镜像挂载,如下图:
Linux 介绍、安装及基础命令介绍
  1. 单击【开启此虚拟机】,开始安装 CentOS。

CentOS 安装配置

  1. 进入安装界面之后,选择【Install CentOS7】。
  2. 等待片刻会进入语言选择界面,选择【English】即可。
  3. 在 INSTALLATION SUMMARY 界面按需配置。例如 SOFTWARE SELECTION 选择 Minial Install,如下图:
Linux 介绍、安装及基础命令介绍
  1. 每一项都配置完之后,单击【Begin Installation】开始安装。
  2. 配置 root 和口令:
Linux 介绍、安装及基础命令介绍

 6. 等待安装结束并重启,输入 root 和口令即可进入 CentOS。

Ubuntu 安装步骤类似。

Linux 目录结构

  • /boot:引导文件存放目录,内核文件(vmlinuz)、引导加载器(bootloader, grub)都存放于此目录
  • /bin:所有用户使用的基本命令;不能关联至独立分区,OS启动即会用到的程序
  • /sbin:管理类的基本命令;不能关联至独立分区,OS启动即会用到的程序
  • /lib:启动时程序依赖的基本共享库文件以及内核模块文件(/lib/modules)
  • /lib64:专用于x86_64系统上的辅助共享库文件存放位置
  • /etc:配置文件目录
  • /home/USERNAME:普通用户家目录
  • /root:管理员的家目录
  • /media:便携式移动设备挂载点
  • /mnt:临时文件系统挂载点
  • /dev:设备文件及特殊文件存储位置
  • /opt:第三方应用程序的安装位置
  • /srv:系统上运行的服务用到的数据
  • /tmp:临时文件存储位置
  • /proc: 用于输出内核与进程信息相关的虚拟文件系统
  • /sys:用于输出当前系统上硬件设备相关信息虚拟文件系统
  • /selinux: security enhanced Linux,selinux相关的安全策略等信息的存储位置

常用命令

ifconfig

使用 ifconfig 命令可以查看网卡 IP 地址等信息:

[[email protected] ~]#ifconfig
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.68.71  netmask 255.255.255.0  broadcast 192.168.68.255
        inet6 fe80::d41:eecf:3c27:b767  prefixlen 64  scopeid 0x20<link>
        ether 00:0c:29:a3:ec:ac  txqueuelen 1000  (Ethernet)
        RX packets 7285  bytes 9189640 (8.7 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 2493  bytes 311346 (304.0 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0




      

禁用网卡:

ifconfig down ifcfg-name
# ifcfg-name 是网卡名称,根据实际情况输入



      

启用网卡:

ifconfig up ifcfg-name
# ifcfg-name 是网卡名称,根据实际情况输入



      

history

使用 history 命令,可以查看执行过的命令,如下图所示:

[[email protected] ~]#history 
    1  ip addr
    2  vi /etc/sysconfig/network-scripts/ifcfg-ens33 
    3  systemctl restart network
    4  ip a
    5  hostname
    6  hostname centos7.9_19
    7  hostname centos7.9-19
    8  hostname --help
    9  hostnamectl  --help\
   10  hostnamectl  --help



      

如果希望 histroy 命令能够执行命令的日期和时间,可以添加 HISTTIMEFORMAT 变量,执行命令如下:

HISTTIMEFORMAT="%F %T "



      

此时在执行 history 命令查看,会带有命令的执行时间:

[[email protected] ~]#history 
    1  2021-12-26 10:25:00 ip addr
    2  2021-12-26 10:25:00 vi /etc/sysconfig/network-scripts/ifcfg-ens33 
    3  2021-12-26 10:25:00 systemctl restart network
    4  2021-12-26 10:25:00 ip a



      

bash 执行的变量在系统重启之后将失效,可以将 HISTTIMEFORMAT="%F %T " 写在 /etc/profile 文件。

date

date 命令用于查看当前系统时间:

[[email protected] ~]#date
Sun Dec 26 10:54:34 CST 2021



      

查看 date 帮助:

date --help



      

修改时间:

使用 date -s time,例如:
date -s "11:05:00"
date -s "2021-12-26 11:05:00"



      

指定格式输出时间:

[[email protected] ~]#date "+%F %T"
2021-12-26 10:57:40

[[email protected] ~]#date "+%T"
10:58:01

[[email protected] ~]#date "+%D %T"
12/26/21 10:58:38

#显示前一天:
[[email protected] ~]#date -d "-1 days" "+%F %T"
2021-12-25 11:04:05




      

echo 命令

echo 命令可以将后面跟的字符进行输出。

功能:显示字符,echo会将输入的字符串送往标准输出。输出的字符串间以空白字符隔开, 并在最后加上换行号。

echo -[neE] [字符串]
-E:不支持\解释功能
-n:不自动换行
-e:启用\字符的解释功能

启用命令选项-e,若字符串中出现以下字符,则特别加以处理,而不会将它当成一般文字输出
\a 发出警告声
\b 退格键
\c 最后不加上换行符号
\e escape,相当于\033
\n 换行且光标移至行首
\r 回车,即光标移至行首,但不换行
\t 插入tab
\\ 插入\字符
\0nnn 插入nnn(八进制)所代表的ASCII字符
\xHH插入HH(十六进制)所代表的ASCII数字(man 7 ascii)



      
[[email protected] ~]#echo "lkx"
lkx

[[email protected] ~]#echo -e "lkx\nabcd\nefg"
lkx
abcd
efg

[[email protected] ~]#echo -e "lkx\nabcde\befg"
lkx
abcdefg


[[email protected] ~]#echo -e "lkx\nab\tcdeefg"
lkx
ab  cdeefg




      

继续阅读