Linux入门笔记
1、什么是Linux
是操作系统的一种,通常在企业后端服务器环境中使用。
- Linux,全称GNU/Linux,是一种免费使用和自由传播的类UNIX操作系统,其内核由林纳斯·本纳第克特·托瓦兹于1991年10月5日首次发布,它主要受到Minix和Unix思想的启发,是一个基于POSIX的多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的Unix工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。Linux有上百种不同的发行版,如基于社区开发的debian、archlinux,和基于商业开发的Red Hat Enterprise Linux、SUSE、Oracle Linux等。 —— 百度百科
2、安装虚拟机
下载centOS和VMware
centOS:https://www.centos.org/download/
VMware:官方下载,然后VM16pro密钥:ZF3R0-FHED2-M80TY-8QYGC-NPKYF
Xshell 或 Xftp官网免费版:https://www.netsarang.com/zh/free-for-home-school/
3、创建并链接虚拟机
把镜像下载完毕之后就创建虚拟机然后选默认的然后选一下源就好了,创建完成之后,打开Xshell,进行远程连接
可以在centOS里面查看ip,端口默认的是22,打开Xshell
ping一下虚拟机的ip是否能通
然后输入telnet ip 端口默认是22
,例如我这里是telnet 192.168.20.129 22
然后回车,出现
Connecting to 192.168.20.129:22...
Connection established.
点击工具栏左上角第一个的+
号按钮,新增一个会话,然后配置名称,名称随意,配置主机,就是ip,然后保存。
我在这里使用的是Xshell7,镜像是centos8.x,然后会特别卡,
解决方案:
- 右键右侧的会话,然后点击属性–》SSH–》隧道–>转发X11。将这个关闭
- Xshell界面点击 工具 – 选项 – 高级 -会话 – 勾选 使用单进程模式以提高性能
然后把会话关闭重新启动,这个时候就不卡了。
4、centOS系统更新
yum update
如果提示没有权限的话
su root
# 输入密码xxx,看自己设置的,默认root
5、安装必备工具
yum install tree nmap dos2unix lrzsz nc lsof wget tcpdump htop iftop iotop sysstat nethogs -y
yum install psmisc net-tools base-completion vim-enhanced -y
官方源太慢可以替换国内源
curl -s -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.163.com/.help/CentOS6-Base-163.repo
# 或者
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-8.repo
更换源之后重新更新软件,也就170+个
yum update -y
6、Linux bash
Linux系统更多的操作是通过bash命令行来操作的。
比如:
# 查看当前用户
whoami
# 查看当前路径
pwd
# 查看主机名
hostname
6.1 快捷键
- tab:补全功能/命令,比如 sy 然后按两下tab 就列出来所有符合的命令,如果只有一个就自动补全
- CTRL+a:到字符串开头
- CTRL+e:到字符串结尾
- CTRL+u:删除光标前内容
- CTRL+c:终止当前程序
- CTRL+d:退出当前会话
- CTRL+l:清屏
- CTRL+s:锁屏
- ctrl+q:恢复屏幕
- CTRL+z:暂停正在执行的程序
- CTRL+r:搜索命令
- bg:后台执行
- fg:回到前台
- Esc+.:获取上一条命令的最后的部分 空格分隔
6.2 history命令
- history:查看命令历史记录
- history -d 序号:清除某一项记录
- history -c:全部清空
- !+?: 匹配历史记录里面最近的执行命令,比如执行了一次
systemctl
,然后期间又执行了一些其他命令,不想一个一个翻,可以使用!sys
匹配到这个 - !!: 上一个命令
6.3 关机重启命令
shutdown:关闭重启,有几个参数
- shutdown -r:重启
- shutdown -r now:立刻重启
- shutdown -r +1:一分钟之后重启
- shutdown -h:关机
- shutdown -h now: 现在关机
- shutdown -h +1:一分钟之后关机
reboot:重启 init:切换运行级别 halt:关机 poweroff:关机 logout:注销 exit:退出,和CTRL+d 一样
6.4 目录核心命令
- pwd:显示当前所在位置信息
- cd:切换目录
- ls:查看目录下的内容
- ls -l:查看目录内容的属性
- ls -a:显示所有文件(隐藏文件)
- tree:以树的形式显示所在位置的目录
yum install tree -y
- tree -d:显示目录本身
- mkdir:创建目录
mkdir filename || mkdir stu{1..10} || mkdir a/b/c/d/e -p
- cp:复制文件或目录
- mv:移动或者重命名文件
- rm:删除文件或目录
- touch:创建文件或更改
.
:代表当前用户所在目录..
:代表当前用户所在目录的父级~
:代表当前用户家目录-
:代表上一次所在的目录- du -sh /boot:查看/boot目录的大小
6.5 一级目录
$ tree -L 1 # 查看一级目录
├── bin -> usr/bin # 二进制命令目录,都是一些无风险命令
├── boot # 内核程序以及引导程序所在的目录
├── dev # 设备目录 cpu 硬盘 光驱等 `ls /dev`
├── etc # 系统基础服务配置文件目录 yum install 安装的软件在的目录
├── home # 普通用户的家目录
├── lib -> usr/lib # 库文件所在目录
├── lib64 -> usr/lib64 # 库文件所在目录
├── media # 媒体光驱的挂载点
├── mnt # 临时挂载点 比如U盘
├── opt # 第三方程序的目录
├── proc # 虚拟的文件系统,内核和进程信息的目录
├── root # 管理员的家目录
├── run #
├── sbin -> usr/sbin # root管理员使用的二进制命令目录
├── srv
├── sys
├── tmp # 临时目录,所有用户都可以进入这里操作
├── usr # 应用程序所在目录
└── var # 日志文件存放目录
6.6 网卡配置文件
/etc/sysconfig/network-scripts/ifcfg-xxxx名字
:网卡配置文件,我这里是ifcfg-ens33
可以使用cat
命令查看文件cat /etc/sysconfig/network-scripts/ifcfg-ens33
查看的时候有主要的几项
- HWADDR:MAC的地址,网卡的物理地址
- TYPE:网络类型
- BOOTPROTO:启动协议,默认DHCP,是否分配ip,有none/bootp/dhcp三个选项
- DEFROUTE:使用默认路由,默认yes
- IPADDR:ip地址
- PREFIX:子网掩码数,默认24
- GATEWAY:网关
- DNS1/2:DNS
- NAME:设备名
- UUID:网卡的唯一标识
- ONBOOT:网卡随Linux开启启动
/etc/resolv.conf
:Linux系统DNS客户端配置文件,网卡的DNS设置会写入这里面
/etc/hostname
:主机名配置文件
查看主机名的方法
- hostname
- uname -n
修改主机名的方法
- nmtui
- hostnamectl set-hostname 名称
- vim /etc/hostname
/etc/hosts
:系统本地的DNS解析文件,格式是 ip地址 域名
/etc/fstab
:配置开机设备自动挂载的文件,在Linux中,新的设备比如U盘,插上去不能直接用,需要开个口,才可以访问到,就是需要把设备和目录做一个链接,目录就是挂载点
临时挂载操作
mount /dev/cdrom /mnt
# 查看挂载过去的文件
ls /mnt
永久挂载操作/开机自动挂载
cat /etc/fstab
### 输出类似下面内容,竖线是我自己加的,方便 区分六列
/dev/mapper/cl-swap | none | swap | defaults | 0 | 0
- 第一列是设备名称或者UUID或者磁盘标签,可以通过blkid查看设备uuid
- 第二列是设备的挂载点,即设备的访问入口
- 第三列是设备的文件系统类型 可以通过 man mount 查看
- 第四列是挂载的属性 可以通过 man mount 查看
- 第五列是是否进行备份
- 第六列是开启时做磁盘检查,0为不检查,1/2是检查