linux学习随笔

本文详细介绍Linux系统管理关键技能,包括VMware虚拟机使用、系统分区、安装与常用命令,如ls、cd、rm等,深入讲解文件权限、压缩与解压、网络配置及软件包管理,适合初学者和系统管理员参考。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

……Linux系统管理-Linux安装

1、VMware简介

VM是一个虚拟PC的软件,可以在现有的操作系统上虚拟一个新的硬件环境,相当于模拟出一台新的PC,以此来实现一台机器上真正同时运行两个独立的操作系统。

  • VM的主要特点:
    • 不需要分区或者重新开机就能在同一台PC上使用两种以上的操作系统
    • 本机系统可以与虚拟机系统网路通信
    • 可以设定并且随时修改虚拟机操作系统的硬件环境

2、系统分区

  • MBR分区表(主引导分区表):最大支持2.1T硬盘,最多支持四个分区
    • 主分区:最多只能四个
    • 扩展分区:
      • 最多只能有一个
      • 主分区加扩展分区最多有4个
      • 不能写入数据,只能包含逻辑分区
    • 逻辑分区:
  • GPT分区表(全局唯一标识分区表):GPT分区支持9.4ZB硬盘(1ZB=102PB,1PB=1024EB,1EB=1024TB),理论上支持的分区数量没有限制,但是window上限制为128个主分区
格式化:

​ 逻辑格式化,它是根据用户选定的文件系统(如FAT16、FAT32,NTFS、EXT2、EXT3、EXT4),在磁盘的特定区域写入特定的数据,在分区中划出一片用户存放文件分配表,目录表等用户文件管理的磁盘空间。

挂载点:

​ 使用已经存在的空目录作为挂载点

挂载
  • 必须分区
    • /(根分区)
    • swap分区(交换分区)
      • 如果真实内存小于4GB,swap为内存的4G
      • 如果真实内存大于4GB,swap和内存一致
      • 实验环境,不大于2GB
  • 推荐分区
    • /boot (启动分区, 1GB)
  • 常用分区
3、linux系统安装
4、linux常用命令
  • 命令的基本格式

    1、命令的提示符

    [root@localhost ~]#

  • []:这是提示符的分隔符号,没有特殊的含义

  • root:显示的是当前的登录用户

  • @:分隔符号,没有特殊含义

  • localhost:当前系统的简写主机名

  • ~:代表用户当前所在目录。此例中用户当前所在的目录是家目录

  • #:命令提示符。超级用户是#,普通用户是$。

2、命令的基本格式

命令 [选项] [参数]

ls

二、目录操作命令

1、ls 命令 :显示文件

2、cd 命令

cd:切换所在目录的命令,这个命令的基本信息如下:

命令名称:cd

英文原文:change direactory

绝对路径和相对路径

绝对路径:以根目录为参照物,从根目录开始,一级一级进入目录

相对路径:以当前目录作为参照物,进行目录查找

3、pwd:显示当前在哪里

4、mkdir 命令

  • 命令名称:mkdir

  • 英文原意:make directories

  • 所在路径:/bin/mkdir

  • 执行权限:所有用户

  • 功能描述: 创建空目录

    命令格式: mkdir [选项] 目录名

​ 选项:

​ -p:递归建立所需目录

5、rmdir :删除空目录

这个命令太笨,我们后续无论是删除文件还是目录,都会使用rm 命令

三、文件操作命令

1、touch 命令

创建空文件或修改文件时间,这个命令的基本信息如下:

  • 命令名称:touch
  • 英文原意:
  • 功能描述:创建或者修改文件时间

2、stat命令:查看文件的基本信息

[root@localhost ~]# stat abc
  文件:"abc"
  大小:0         	块:0          IO 块:4096   普通空文件
设备:fd00h/64768d	Inode:33643003    硬链接:1
权限:(0644/-rw-r--r--)  Uid:(    0/    root)   Gid:(    0/    root)
环境:unconfined_u:object_r:admin_home_t:s0
最近访问:2019-12-27 21:38:29.388569690 +0800
最近更改:2019-12-27 21:38:29.388569690 +0800
最近改动:2019-12-27 21:38:29.388569690 +0800
创建时间:-

3、cat命令查看文件内容

功能描述:合并文件并打印输出到标准输出

4、more 命令

more是分屏显示的文件的命令,该命令会打开一个交互界面,可以识别一些交互命令。常用的交互命令如下:

  • 空格键:向下翻页
  • b:向上翻页。
  • 回车键:向下滚动一行
  • /字符串:搜索指定的字符串
  • q:退出

5、less命令

less是分行显示命令,其他的跟more命令相似

四、目录和文件都能操作的命令

1、 rm 命令

rm是强大的删除命令,不仅可以删除文件,也可以删除目录

  • 命令名称:rm
  • 英文原意:remove file or driectories
  • 所在路劲:/bin/rm
  • 执行权限:所有用户
  • 功能描述:删除文件或目录
[root@localhost ~]# rm [选项] 文件或目录
选项:
	-f: 强制删除
	-i:交互删除,在删除前会咨询用户
	-r:递归删除,可以删除目录

2、cp命令

是复制命令

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ydqVfiFI-1585839152676)(assets/1577494706204.png)]

3、mv命令

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-9Temupbl-1585839152677)(assets/1577494844802.png)]

五、linux常见的文件权限

drwxr-xr-x. 2 root root    6 Dec 27 17:09 123

drwxr-xr-x :总共10位。

第一位代表的是文件类型:

  • “-”:普通文件
  • “b":快设备文件,存储设备就是这类文件,如分区文件/dev/sda1就是这种文件
  • ”c":字符设备文件。这也是一种特殊的设备文件,输入设备一般就是这种文件,如鼠标、键盘等
  • “d":目录文件。linux中一切皆文件,所以目录也是文件的一种
  • ”l":软链接文件。
  • “p":管道符文件。这是一种非常少见的特殊设备文件
  • ”s":套接字文件。这也是一种特殊设备文件,一些服务支持Socket访问,就会产生这样的文件。

第2~4位代表文件所有者的权限

  • r:代表read,是读取权限

  • w代表write,是写权限

  • x:代表execute,是执行权限

    如果有字母代表有对应权限,如果是"-",则代表没有对应的权限

第57位代表文件所属组的权限,第810位代表其他人的权限

管道符 |

示例:

ll /etc | more

netstat 命令:

查看本机开启的端口号:netstat -tuln

命令的别名:补充命令

alias用来查询 命令别名

alias 别名=‘原命令名’ 设定命令别名。

用命令定义的别名,是临时生效,要想永久生效,需要写入环境变量配置文件 ~/.bashrc

常用快捷键:补充命令

快捷键作用
Tab键命令或者文件补全
ctrl + A把光标移动到命令行开头。如果我们输入的命令过长,想要把光标移动到命令行的开头时使用
ctrl+E把光标移动到命令行结尾
ctrl + C强制总之当前的命令
ctrl + L清屏,相当于clear命令
ctrl + u删除或者剪切光标之前的命令
ctrl + Y粘贴ctrl + U剪切的命令
压缩和解压命令

在linux中可以识别的常见压缩格式有十几种,比如“.zip",".gz",".bz2"、".bar"、".tar.gz"、”.bar.bz2"等

1、zip格式

“.zip"是windows中最常见的压缩格式,Linux也可以正确识别".zip"格式,这可以方便地和windows系统通用压缩格式

  • 1.1 ”.zip“

压缩命令就是zip,其基本信息如下:

命令名称:zip

英文原意:package and compress(archive) files

所在路径:/usr/bin/zip

执行权限:所有用户

2、”.gz"

  • 2.1 ".gz"格式的压缩命令

    “.gz"格式是Linux中最常用的压缩格式,使用gzip命令进行压缩,其基本信息如下:

    • 命令名称:gzip

    • 英文原意:compress or expand files

    • 所在路径:/bin/gzip

    • 执行权限:所有用户

    • 功能描述:压缩文件或目录

      这个命令的格式如下:

      gzip [选项] 源文件

      选项:

      ​ -c:将数据压缩输出到标准的输出中,可以用户保留源文件

      ​ -d:解压缩

      ​ -r:压缩目录

3、bz2格式的压缩包

这个命令的压缩格式:

​ bzip2 [选项] 源文件

选项:

​ -d:解压缩

​ -k:压缩式,保留源文件

​ -v:显示压缩的详细信息

[root@localhost ~]# bzip2 anaconda-ks.cfg 
[root@localhost ~]# ls
123  anaconda-ks.cfg.bz2  Navicat Premium.lnk
[root@localhost ~]# bzip2 -d anaconda-ks.cfg.bz2 
[root@localhost ~]# ls
123  anaconda-ks.cfg  Navicat Premium.lnk
[root@localhost ~]# bzip2 -k anaconda-ks.cfg  
#保留了源文件
[root@localhost ~]# ls
123  anaconda-ks.cfg  anaconda-ks.cfg.bz2  Navicat Premium.lnk

4、".tar"命令 :打包命令,但不会压缩

  • 4.1".tar"格式的打包命令

    ".tar"格式的打包和解打包都是使用tar命令,区别只是选项不同。

    • 命令名称:tar

    • 所在路径:/bin/tar

    • 功能描述:打包与解打包命令

      命令的基本格式如下:

      tar [选项] [-f压缩包名] 源文件或目录

      选项:

      ​ -c:打包

      ​ -f:指定压缩包的文件名。压缩把的扩展名

      ​ -v:显示打包文件过程

  • 4.2 “.tar” 格式的解打包命令

    “.tar"格式的解打包也需要使用tar命令,但是选项不一样。命令格式如下:

    tar [选项] 压缩包

    选项:

    ​ -x:解打包

    ​ -f:指定压缩包的文件名

    ​ -v:显示解打包文件的过程

    ​ -t:测试,就是不解打包,只是查看包中有哪些文件

  • 4.3 “.tar.gz"和”.tar.bz2"格式

    使用tar命令直接打包压缩。命令格式如下
    tar [选项] 压缩包 源文件或目录

    选项:

    ​ -d:压缩和解压缩”.tar.gz"格式

    ​ -j:压缩和解压缩".tar.bz2"格式

示例:

[root@localhost ~]# tar -zcvf  tmp.tar.gz /tmp/
#把tmp目录打包压缩为:".tar.gz"格式
[root@localhost ~]# ls
123  abc  anaconda-ks.cfg  bcd  Navicat Premium.lnk  tmp.tar.gz
[root@localhost ~]# tar -zxvf tmp.tar.gz 
#解压缩与解打包 “tar.gz”格式
[root@localhost ~]# ls
123  abc  anaconda-ks.cfg  bcd  Navicat Premium.lnk  tmp  tmp.tar.gz

bz2格式只需将-z替换为-j就行。

关机重启命令:

1、sync 同步数据 :刷新文件系统缓冲区

2、shutdown命令 :关机

3、reboot命令:重启动命令。在现代系统中,reboot命令也是安全的,而且不需要加入过多的选项

4、halt 和poweroff命令:都是关机命令,不会完整的关闭和保存系统服务,不建议使用

5、init命令:init 是修改Linux运行级别的命令,不是安全的

网络配置:

vim /etc/sysconfig/network-scripts/ifcfg-eth0

2、重启网络服务:

service network restart

1.3 虚拟机需要桥接到有线网卡,并重启网络服务

1.4 复制镜像有可能需要重置UUID(唯一标识符)

3、netstat 命令

netstat -tuln

5、write 命令

[root@localhost ~]# write root tty1

向其他用户发送消息

6、wall命令

wall命令用于给所有登录用户发送消息,包括自己

[root@localhost ~]# wall “hello ,erveryOne”

登录终端

本地字符终端 tty1-6 alt + F1-6

本地图形终端 tty7 ctrl + alt + F7(按住3秒,需要安装图形界面)

远程终端 pts/0-255

7、mail 命令

给系统的其他用户发送邮件

十一、系统痕迹命令

十二、 挂载命令

1、mount

第五章 vim编辑器

1、vim编辑器 (配置文件位置:~/.vimrc)

vim 是一个全屏幕纯文本的编辑器,是vi编辑器的增强版,我们主要讲解的是vim编辑器。可以利用别名

2、命令模式操作
2.1 移动光标

1)上下左右移动光标

上、下、左、右方向键

H、j、k、l 字母来移动光标

2)、把光标移动文件的头或者尾

gg 移动到文件头

G 移动文件的尾(shift+g)

3)、移动到行首或行尾

^ 移动到行首

$ 移动到行尾

4)、移动到指定行

:n 移动到第几行

2.2 删除或者剪切

1)、删除字母

x 删除单个字母

nx 删除n个字母

2)、删除整行或剪切

dd 删除单行

ndd 删除多行

:n1,n2d删除指定范围的行

删除整行或多行,这是比较常用的删除方法。这里的dd即是删除,也是剪切。删除内容放入了剪切板,如果不粘贴就是删除,如果粘贴就是剪切。粘贴方法如下:

p 粘贴到光标后

P(大写) 粘贴到光标前

3)、从光标所在行删除到文件尾

dG 从光标所在行删除到文件尾

2.3 复制d

yy 复制单行

nyy 复制多行

复制之后的粘贴,依然可以使用p键或者P(大)键

2.4 撤销

u 撤销 # 能够一直撤销到文件打开时的状态,类似windows下“ctrl +z“键的作用

ctrl + r 反撤销

2.5修改

r:修改光标位置的字符
R:开启连续修改模式,按ESC退出

2.8 替换

:1,10s/old/new/g  替换1到10行的所有old为new 
:%s/old/new/g   替换整篇文章的old为new

批量替换

:1,10s/^/#/g  注释一到10行
:1,10s/^#//g  取消注释

批量添加“//”注释

:1,10s/^/\/\//g    注释1到 10行
:1,10s/^\/\///g    取消1到10行::

vim 使用技巧

1、导入其他文件的内容

:文件名   把文件内容导入光标位置

2、在vim中系统命令

:!命令    在vim中执行系统命令

3、导入系统命令结果

:r !命令   在vim中执行系统命令,并把命令结果导入光标所在行

4、设定快捷键

:map  快捷键   快捷键执行的命令    自定义快捷键

常用自定义快捷键:

:map ^p I#<ESC>   按下"ctrl + p"时,在行首加入注释
:map ^B ^x        按下"ctrl + b"时,删除行首的第一个字符(删除注释)

注意:^p快捷键不能手工输入,需要执行ctrl+v+p来定义

字符替换

:ab  源字符串   新字符串

有时候需要频繁的输入某一个长字符串(比如邮箱);这时候使用字符串替换可能增加输入效率,例如:

:ab  mymail  760963@qq.com   当碰到”mymail“时将转换为邮箱。

第六章 软件安装

一、软件包分类

1、软件包分类

  • 源码包
  • 二进制包

2、rpm 包安装

rpm -ivh  包全名

3、rpm 包升级

rpm -Uvh 包全名   -U:升级安装,如果没有安装过,也进行安装
rpm -Fvh 包全名   -F:升级安装,如果包没有安装过,必须安装有较旧版本,才能升级

4、卸载

rpm -e 包名
--nodeps  不检查依赖性
-e  卸载

5、查询

  • 查询软件是否已经安装,命令格式如下:

    rpm -q 包名
    
    
  • 查询系统中所有已经安装的软件

    rpm -qa
    
    

    当然可以使用管道符来查看所需要的内容,比如:

    rpm -qa | grep htt
    
    
  • 查询软件的安装的信息

    rpm -qi  包名   # 查询软件的信息
    
    
  • 查询软件包中的文件列表

    查询已经安装的软件包中的文件列表和安装的完整目录

    rpm -ql 包名
    选项:
    	-l:列出软件包中所有的文件列表和软件所安装的目录
    
    

    查询未安装的软件包中的文件列表和打算安装的位置,命令如下:

    rpm -qlp  包全名
    
    

    查询系统文件属于哪个RPM包,手工新建的文件不可以查询

    rpm -qf  系统文件名
    选项:
    	-f:查询系统文件属于哪个软件包
    
    
  • 导入数字证书

    [root@localhost cdrom]# rpm --import RPM-GPG-KEY-CentOS-7
    
    
    

    查询数字证书

    rpm -qa | grep gpg-pub
    
    gpg-pubkey-f4a80eb5-53a7ff4b
    
    

6、rpm 包中文件提取命令

当文件被修改后,发现没法修改成原文件。

1)、cpio 命令

命令格式:

rpm2cpio rpm包全名 | cpio -idv ./文件在rpm 包中的路径

rpm2cpio /mnt/cdrom/Packages/httpd-2.4.6-80.el7.centos.x86_64.rpm  | cpio -idv ./etc/httpd/conf/httpd.conf


二、rpm 包在线安装(yum安装)

1、yum源文件解析

yum源配置文件保存在/etc/yum.repos.d/目录中,文件的扩展名一定是 “*.repo”。也是就说,yum源配置文件只要扩展名是"*.repo"就会生效

[root@localhost conf]# ls /etc/yum.repos.d
CentOS-Base.repo  CentOS-Debuginfo.repo  CentOS-Media.repo    CentOS-Vault.repo
CentOS-CR.repo    CentOS-fasttrack.repo  CentOS-Sources.repo

有5个yum源 文件,默认Centos-Bash.repo文件生效。

Centos-Bash.repo 文件中有5个yum 源容器,这里列出base容器,其他容器和base容器类似。

  • [base] :容器说明,可一定要写在[]中。
  • name:容器说明,可以自己随便写
  • mirrorlist:镜像站点,可以注释掉
  • baseurl:我们的yum源文件服务器的地址。默认是CentOS官方的yum源服务器,是可以使用的。如果觉得慢,可以修改成你喜欢的yum源地址
  • enabled:此容器是否生效。enabled=1:表示生效,enabled=0:表示不生效
  • gpgcheck:如果为1则表示RPM的数字证书生效;如果为0则表示RPM的数字证书不生效
  • gpgkey:数字证书的公钥文件保存位置。不用修改

2、搭建本地光盘yum源

第一步:放入CentOS光盘,并挂载光盘到指定位置。命令如下:

mkdir  /mnt/cdrom
mount  /dev/cdrom  /mnt/cdrom


第二步:修改其他几个yum源配置文件的扩展名。让他们失效,因为只有扩展名是"*.repo"的文件才能作为yum源配置文。
cd  /etc/yum.repos.d/
mv CentOS-Base.repo  CentOS-Base.repo.bak


第三步:修改光盘yum源配置文件CentOS-Media.repo,参照下面方法修改:

 14 [c7-media]
 15 name=CentOS-$releasever - Media
	#修改你自己光盘挂载地址
 17 baseurl=file:///mnt/cdrom/
 18 #        file:///media/cdrecorder/
 19 gpgcheck=1
 20 enabled=1   #让源文件生效
 21 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
 22 


3、yum命令

1)、查询
  • 查询yum源服务器上所有可以安装的软件包列表

    yum list
    
    
  • 查询yum源服务器中是否包含某个软件包

    yum list 包名
    
    
  • 搜索yum源服务器上所有和关键字相关的软件包

    yum search  关键字
    
    
  • 查询指定软件包的信息

    yum info samba
    
    
2)、安装
yum -y install 包名
选项:
   install 安装
    -y   自动回答yes。如果不-y,那么每个安装软件都需要手工回答yes

3)、升级
yum -y update 包名

4)、卸载

除非你确定卸载的软件的依赖包不会系统产出影响,否则不要执行yum的卸载。因为很有可能在卸载软件包的同时卸载的依赖包也是重要的系统文件,这就有可能导致系统崩溃。卸载命令如下:

yum remove  包名

4、yum 组管理命令

xshell上传下载,下载工具安装:只适用 xshell

rpm -ivh lrzsz-0.12.20-36.el7.x86_64.rpm 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值