Linux实操篇-学习笔记(三)

这篇博客介绍了Linux系统管理的一些核心知识点,包括远程登录服务器的方法,详细讲解了Vi和Vim编辑器的使用,如不同模式的操作,以及常用的命令。还涵盖了用户管理、系统命令、文件目录操作、时间日期管理和搜索查找功能。此外,文章还提到了压缩解压、用户组概念、文件权限管理以及开机和用户登录注销的操作。
摘要由CSDN通过智能技术生成

远程登录到Linux服务器

  • 为什么需要远程登录到Liunx?
  • (1)linux服务器是开发小组共享的。
  • (2)正式上线的项目是运行在公网上的。
  • (3)因此程序员需要远程登录到centos进行项目管理或者开发。
  • (4)远程登录客户端有Xshell、Xftp,我们学习使用Xshell5和Xftp5。
  • 如果希望安装好Xshell5就可以远程访问Linux系统的话,需要由一个前提,就是Linux启动了sshd服务,该服务会监听22号端口。
  • Xshell5远程登录到Linux后,就可以使用指令来操作Linux系统

Vi和Vim编辑器

  • 所有的Linux操作系统都会内建vi文本编辑器。
  • Vim具有程序编辑的能力,可以看做是Vi的增强版本,可以主动的以字体颜色辨别语法的正确性,方便程序设计。代码补充、编译及错误跳转等方便编程的功能特别丰富,在程序员中广泛使用。
  • vi和vim常用的三种模式:(1)正常模式:以vim打开一个档案就直接进入一般模式了(这是默认的模式)。在这个模式中,你可以使用[上下左右]键来移动光标,你可以使用[删除字符]或[删除整行]来处理文档内容,也可以使用[复制、贴上]来处理你的文件数据;(2)插入模式:按下i,l,o,a,A,r,R等任何一个字母之后才会进入编辑模式,一般来说按i即可;(3)在这个模式当中,可以提供你相关指令,完成读取、存盘、替换、离开vim、显示行号等的动作则是在此模式中达成的!
  • wq:保存并退出
  • q:退出
  • q!:强制退出
  • 拷贝当前行yy,拷贝当前行向下的5行5yy,并粘贴§
  • 删除当前行dd,删除当前行向下的5行5yy。
  • 在文件中查找某个单词[命令行下/关键字,回车查找,输入n就是查找下一个]
  • 设置文件的行号,取消文件行号[命令行下:set nu, :set nonu]
  • 使用快捷键到文件的最末行[G],文件的首行[gg](正常模式下)
  • 撤销u(正常模式下)
  • 移动光标到20行,20 shift+g(正常模式下)

开机、重启和用户登录注销

  • 关机&重启命令:shutdown -h now:立刻进行关机;shutdown -h 1:1分钟后会关机;shutdown -r now:现在重新启动计算机;halt:关机;reboot:现在重新启动计算机;sync:把内存的数据同步到硬盘。
  • 用户登录和注销:(1)登录时尽量少用root账户登录,因为它是系统管理员,最大的权限,避免操作失误。可以利用普通用户登录,登录后再用"su -用户名"命令来切换成系统管理员省份。(2)在提示符下输入logout即可注销用户。

用户管理

  • id root,查询root用户的信息。当用户不存在时,返回“无此用户”。
  • 切换用户:在操作Linux中,如果当前用户的权限不够,可以通过su - 指令,切换到高权限的用户。
  • 细节说明:从权限高的用户切换到权限低的用户,不需要输入密码,反之需要。
  • 当需要返回原来的用户时,使用exit指令。
  • 查看当前用户/登录用户:whoami/who am i
  • 用户组:类似于角色,系统可以对有共性的多个用户进行统一的管理。
  • 新增组:groupadd 组名
  • 删除组:groupdel 组名
  • 增加用户时直接加上组:useradd -g 用户组 用户名
  • 修改用户组:usermod -g 用户组 用户名
  • 用户和组的相关文件:/etc/passwd、/etc/group、/etc/shadow
  • /etc/passwd:用户(user)的配置文件,记录用户的各种信息。每行的含义,用户名:口令:用户标识号:组标识号:注释性描述:主目录:登录shell
  • /etc/group:组(group)的配置文件,记录Linux包含的组的信息。每行含义:组名:口令:组标识号:组内用户列表。
  • /etc/shadow:口令的配置文件。每行的含义:登录名:加密口令:最后一次修改时间:最小时间间隔:最大时间间隔:警告时间:不活动时间:失效时间:标志。

实用指令

  • 指定运行级别:0:关机、1:单用户(找回丢失密码)、2:多用户无网络服务、3:多用户有网络服务、4:保留、5:图像界面、6:重启
  • 系统的运行级别配置文件:/etc/inittab
  • 切换到指定运行级别的指令:init [012356]
  • 如何找回root的密码:进入到单用户模式,然后修改root密码。因为进入单用户模式,root不需要密码就可以登录。
  • 总结:开机->在引导时输入回车->界面输入e->界面选择第二行(编辑kernel)->在输入e->在这行最后输入1,再输入回车->再次输入b,这时就会进入单用户模式。使用passwd修改root密码。

帮助指令

  • 当我们对某个指令不熟悉的时候,我们可以使用linux提供的帮助指令来了解这个指令的使用方法。
  • linux中以.开头的文件默认为隐藏文件。
  • man 获取帮助信息:man [命令或配置文件](功能描述:获得帮助信息)。
  • help:(功能描述,获得shell内置命令的帮助信息)

文件目录类

  • pwd指令:显示当前工作目录的绝对路径。
  • ls指令:ls [选项] [目录或是文件];常用选项:-a:显示当前目录所有的文件和目录,包括隐藏的。-l:以列表的方式显示信息。
  • cd指令:切换到指定目录,cd ~:cd:会到自己的家目录,cd …:回到当前目录的上一级目录。
  • mkdir指令:创建目录,-p:创建多级目录。
  • rmdir指令:删除空目录,目录下有内容无法删除;删除非空目录,需要使用rm -rf。
  • touch指令:创建空文件。
  • cp指令:拷贝文件到指定目录,cp [选项] source dest;-r:递归复制整个文件夹。强制覆盖不提示:\cp
  • rm指令:移除文件或目录,-r:递归删除整个文件夹,-f:强制删除不提示。
  • mv指令:移动文件与目录或重命名。
  • cat指令:查看文件内容,只能浏览不能修改。-n:显示行号。cat | more 分页模式
  • more指令:more指令是一个基于vi编辑器的文本过滤器,它以全屏幕的方式按页显示文件的内容。
  • less指令:用来分屏查看文件内容。less指令在显示文件内容时,并不是一次将整个文件加载之后菜显示,而是根据显示需要加载内容,对于显示大型文件具有较高的效率。
  • 指令:输出重定向,会将原来的文件的内容覆盖。

  • 指令:追加,不会覆盖原来文件的内容(文件不存在就创建文件)。

  • ls -l > 文件:列表的内容写入文件。
  • ls -al >> 文件:列表的内容追加到文件。
  • cat 文件1 > 文件2:将文件1的内容覆盖到文件2。
  • echo “内容” >> 文件。
  • cal指令:显示日历。
  • echo指令:输出内容到控制台。echo $PATH。
  • head指令:用于显示文件的开头部分内容,默认情况下head指令显示文件的前10行内容。head -n 5 文件:查看文件头5行内容。
  • tail指令:用于输出文件中尾部的内容,默认情况下tail指令显示文件的后10行内容。tain -n 5 文件:查看文件后5行内容。tail -f 文件:实时追踪该文档的所有更新。
  • ln指令:软链接、符号链接,主要存放了链接其他文件的路径。ln -s [原文件或目录] [软链接名]:给原文件创建一个软链接。rm -rf link:删除软链接。当我们使用pwd指令查看目录时,仍然看到的是软链接所在目录。
  • history指令:查看已经执行过历史命令,也可以执行历史指令。history 10:显示最近执行的10个指令;!5:执行历史编号为5的指令。

时间日期类

  • date指令:显示当前日期;date+%Y:显示当前年份;date+%m:显示当前月份;date+%d:显示当前天;date"+%Y-%m-%d %H:%M:%S":显示年月日时分秒。
  • date -s 字符串时间:设置日期。
  • cal指令:查看日历指令。cal 2020:显示2020的日历。

搜索查找类

  • find指令:将从指定目录向下递归地遍历其各个子目录,将满足条件或目录显示在终端。find [搜索范围] [选项]。find /home -name hello.txt:-name根据文件名查找;-user:按照文件的拥有者来查找;find / -size +20M:查找大于20M的文件 -20M:小于20M;20M:等于20M;
  • find / -name *.txt:通配符查找。
  • locate指令:可以快速定为文件路径。locate指令利用事先建立的系统中所有文件名称及路径的locate数据库实现快速定为给定的文件。locate指令无须遍历整个文件系统,查询速度极快。为了保证查询结果的准确度,管理员必须定期更新locate数据库。由于locate指令基于数据库进行查询,所以第一次运行前,必须使用updatedb指令创建locate数据库。
  • grep指令和管道符号|:grep [选项] 查找内容 源文件,-n:显示匹配行及行号,-i:忽略字母大小写。
  • 管道符|:表示将前一个命令的处理结果输出传递给后面的命令处理。

压缩和解压类

  • gzip/gunzip指令:gzip用于压缩文件(原来文件不保存),gunzip用于解压文件(.gz)。当我们使用gzip对文件进行压缩后,不会保留原来的文件。
  • zip/unzip:zip用于压缩文件,unzip用于解压,这个在项目打包发布中很有用的(.zip格式)。
  • zip常用选项:-r:递归压缩,即压缩目录。
  • unzip常用选项:-d<目录>:指定解压后文件的存放目录。
  • tar指令:是打包指令,最后打包后的文件是.tar.gz文件。tar [选项] xxx.tar.gz 打包的内容(功能描述:打包目录,压缩后的文件格式.tar.gz)。-c:产生.tar打包文件,-v:显示详细信息;-f:指定压缩后的文件名;-zcvf:压缩;-zxvf:解压;

Linux组的基本介绍

  • 在Linux中的每个用户必须属于一个组,不能独立于组外。在linux中每个文件有所有者、所在组、其它组的概念:(1)所有者;(2)所在组;(3)其它组;(4)改变用户所在的组;

文件/目录的所有者

  • 一般为文件的创建者,谁创建了文件,就自然的称为该文件的所有者。
  • 指令:ls -ahl。
  • groupadd police,useradd -g police tom,passwd tom
  • 修改文件所有者:chown 用户名 文件名
  • 组的创建:gropadd

文件/目录所在组

  • 当某个用户创建了一个文件后,默认这个文件的所在组就是该用户所在的组。
  • 查看文件/目录所在组:ls -ahl
  • 修改文件所在组:chgrp 组名 文件名

其它组

  • 除文件的所有者和所在组的用户外,系统的其它用户都是文件的其它组。

改变用户所在组

  • usermod -g 组名 用户名
  • usermod -d 目录名 用户名:改变该用户登录的初始目录

权限的基本介绍

  • 文件类型:-:普通文件,d:目录,l:软链接,c:字符设备[键盘、鼠标],b:块文件[硬盘]
  • 文件类型 文件所有者权限 文件所在组的权限 文件的其它组的用户的权限
  • 如果是文件表示硬链接的数,如果是目录则表示该目录的子目录个数。
  • 如果是目录会显示4096
  • -rwxrw-r-- 1 root 1213 Feb 2 09:39 abc:(1)第0位确定文件的类型;(2)第1-3位确定所有者(该文件的所有者)拥有的该文件的权限;(3)第4-6位确定所属组(同用户组的)拥有该文件的权限;(4)第7-9位确定其它用组拥有该文件的权限。
  • rwx作用到文件:r:可读;w:代表可写,但是不代表可以删除该文件,删除一个文件的前提条件是对该文件所在的目录有写的权限,才能删除该文件;x:代表可执行。
  • rwx作用到目录:r:代表可读;w:代表可写,目录内创建+删除+重命名目录;x:代表可执行。
  • r、w、x可以用数字来表示:r=4, w=2, x=1。

修改权限-chmod

  • 通过chmod指令,可以修改文件或者目录的权限。
  • 第一种方式:+、-、=变更权限;u:所有者;g:所有组;o:其他人;a:所有人(u、g、o的总和);
  • (1)chmod u=rwx, g=rx, o=x 文件目录名
  • (2)chmod o+w 文件目录名
  • (3)chmod a-x 文件名

修改文件所有者-chown

  • chown newowner:newgroup file
  • -R:如果是目录,则使其下所有的文件和目录递归生效。

crond定时任务调度

  • crontab进行定时任务设置。
  • 任务调度:是指系统在某个时间执行的特定的命令或程序。
  • 任务调度分类:1、系统工作:有些重要的工作必须周而复始地执行。如冰毒扫描等。2、个别用户工作:个别用户可能希望执行某些程序,比如对mysql数据库的备份。
  • 基本语法:crontab [选项]
  • 常用选项:-e:编辑;-l:显示;-r:删除;
  • *****:第一个代表第几分钟、第二个代表第几小时、第三个代表一个月中的第几天、第四个代表一年中的第几月、第五个代表一周当中的星期几。
  • (1)crontab -e;(2)/1*** ls -l /etc >> /tmp/to.txt;(3)保存退出
  • 先编写一个文件/home/mytask1.sh:date >> /tmp/mydate;(2)给mytask1.sh一个可执行权限;(3)crontab -e;(4)*/1 * * * * /home/mytask1.sh
  • crontab -r:终止任务调度
  • crontab -l :显示
  • service crond restart

分区的基础知识

  • mbr分区:最多支持四个主分区、系统只能安装在主分区、扩展分区要占一个主分区、MBR最大只支持2TB,但拥有最好的兼容性。
  • gtp分区:支持无限多个主分区(但操作系统可能限制,比如windows下最多128个分区)、最大支持18EB的大容量、windows7 64位以后支持gtp。

Linux分区

  • 对Linux来说,无论有几个分区,分给哪一目录使用,它归根结底就只有一个根目录,一个独立且唯一的文件结构,Linux中每个分区都是用来组成整个文件系统的一部分。
  • Linux采用一种叫“载入”的处理方法,它的整个文件系统中包含了一整套的文件和目录,且将一个分区和一个目录和一个目录联系起来。这时要载入的一个分区将使它的存储空间在一个目录下获得。
  • mount:挂载
  • umount:卸载
  • Linux硬盘分为IDE硬盘和SCSI硬盘,目前基本是SCSI硬盘。
  • IDE:hdx~
  • SCSI:sdx~
  • lsblk -f:查看系统的分区和挂载的情况。
B站上的韩顺平老师的《Linux学习笔记》系列课程非常值得推荐。通过这个课程,我学到了很多关于Linux操作系统的知识和技能。 首先,韩老师在课程中详细介绍了Linux的基本概念和特点。我清楚地了解到Linux是一个开源的操作系统,具有稳定性、安全性和可定制性强的特点。这让我对Linux有了更深入的理解,也更有信心去学习和使用它。 其次,韩老师从基础开始,逐步讲解了Linux的安装和配置。他用简单明了的语言和实际操作的示范,帮助我了解了如何在虚拟机上安装Linux系统,并设置网络、用户账户、文件系统等。这为我后续的学习和实践打下了坚实的基础。 此外,韩老师还讲解了Linux的常用命令和工具。他详细介绍了常用的文件和目录操作命令,比如cd、ls、mkdir、cp等。同时,他还讲解了grep、sed、awk等强大的文本处理工具的使用方法。这些内容帮助我更加高效地进行文件管理和数据处理。 最后,韩老师还介绍了Linux的网络管理和安全防护。他讲解了如何配置网络连接、使用ssh远程登录以及设置防火墙等内容。这些知识对我了解网络和保护系统安全非常有帮助。 总的来说,韩顺平老师的《Linux学习笔记》课程非常实用,对于初学者来说是入门学习Linux的好选择。他通过深入浅出的讲解和丰富的实操示范,让我可以轻松地学习Linux的基本知识和操作技巧。我相信通过学习这个课程,我会在Linux领域有更进一步的发展。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值