公司两个网站可以做友情链接吗,雅安公司做网站,wordpress 分类调用,中国风 网站模板linux学习
一.介绍
1.概述
linux的读法不下10种 linux是一个开源的操作系统#xff0c;操作系统包括mac、windows、安卓等 linux的开发版#xff1a;Ubuntu#xff08;乌班图#xff09;、RedHat#xff08;红帽#xff09;、CentOS linux的应用#xff1a;linux在服…linux学习
一.介绍
1.概述
linux的读法不下10种 linux是一个开源的操作系统操作系统包括mac、windows、安卓等 linux的开发版Ubuntu乌班图、RedHat红帽、CentOS linux的应用linux在服务器领域的应用是最强的其它还有嵌入式
2.linux和Unix
unix是B语言写的 linux是在unix的基础上用C写的
3.安装vmware
基本说明学习linux需要一个环境我们需要创建一个虚拟机然后在虚拟机上安装一个Centos系统来学习 vm官网https://www.vmware.com/cn.html 安装需要去BIOS里修改设置开启虚拟化设备支持重启然后按f2、f12、DEL、ESC等键
4.安装centos
步骤
创建虚拟机开始安装系统
手动分区可以分三个/boot1GB、swap交换分区2GB、根分区17GB
5.三种网络连接方式
①桥接模式和外界的同一个网段的可以连接容易造成IP冲突网段IP的前7位如192.168.0 ②NAT模式网络地址转换不造成IP冲突 ③主机模式独立的系统不能外部连接
二、虚拟机的功能
1.虚拟机克隆
如果你已经安装了一个linux操作系统且想要更多的就可以克隆虚拟机 方式一拷贝虚拟机文件到另一地址在用VMware创建一个虚拟机 方式二用VMware克隆功能使用前要关闭linux系统创建完整克隆就是拷贝文件
2.虚拟机快照
VMware提供了快照管理的功能右键虚拟机系统可以看到可以在系统出现问题时回到之前的状态 实例
安装系统后先做一个快照A到系统后创建一个文件夹再做一个快照B回到快照A回到快照B
3.虚拟机的迁移与删除
虚拟系统本质就是文件 要迁移虚拟机就只需将文件剪切或拷贝到其它地址 删除可以先用VMware移除再在电脑中将文件删除就可以了或者直接在电脑中删掉
4.vmtools
介绍
vmtools安装后可以让我们在windows下更好的管理vm虚拟机可以设置windows和centos的共享文件夹
安装
进入centos点击vm的菜单的-install vmware toolscentos会出现一个vm的安装包xx.tar.gz拷贝到/opt使用解压命令tar得到一个安装文件在终端中使用cd /opt进入opt目录使用tar -zxvf xx.tar.gz命令解压安装./vmware-install.pl全部使用默认设置即可注意安装vmtools需要有gccgcc -v显示gcc版本
共享文件夹的方式
三、linux的目录结构
1.结构介绍
基本介绍
linux的文件系统是采用树状目录结构的在此结构中的最上层是根目录/然后在此目录下再创建其他的目录在linux的世界里一切皆文件
2.目录详解
/bin[常用]是binary的缩写这个目录存放着最经常使用的命令 /sbins是Super User的意思这里存放的是系统管理员使用的系统管理程序 /home[常用]存放普通用户的目录在linux中每个用户都有一个自己的目录一般该目录名是用户的账号名 /root[常用]该目录为系统管理员也称为超级权限者的用户主目录 /lib系统开机所需要的最基本的动态连接共享库其作用类似于Windows里的DLL文件几乎所有的应用程序都需要用到这些共享库 /lostfound这个目录一般情况下是空的当系统非法关机后这里就存放了一些文件 /etc[常用]所有的系统管理所需要的配置文件和子目录 /usr非常重要用户的很多应用程序和文件都放在这个目录下类似于Windows的program files目录 /boot[常用]存放的是启动linux时使用的一些核心文件包括一些连接文件以及镜像文件 /proc不能动这个目录是一个虚拟的目录它是系统内存的映射访问这个目录来获取系信息 /srv不能动Service的缩写该目录存放一些服务启动之后需要提取的数据 /sys不能动该目录下安装了linux2.6内核中新出现的一个文件系统sysfs /tmp这个目录是用来存放一些临时文件的 /dev类似于Windows的设备管理器把所有的硬件用文件的形式存储 /media[常用]linux系统会自动识别一些设备例如U盘等识别后linux会把识别的设备挂载到这个目录下 /mnt[常用]系统提供目录是为了让用户临时挂载别的文件系统的我们可以将外部的存储改在到/mnt/上然后进入该目录就可以查看里面的内容了 /opt这是给主机额外安装软件的目录 /usr/local[常用]这是另一个给主机额外安装软件所安装的目录。一般是通过编译源码方式安装的程序 /var[常用]这个目录中存放着在不断扩充的东西习惯将经常被修改的目录放在这个目录下 /selinuxsecurity-enhanced linux是一个安全字系统它能控制系统只能访问特定文件有三种工作模式可以自行设置
四.linux实操
1.远程登录
linux服务器是开发小组共享的正式上线的项目是运行在公网 linux-Xshell6是最好的远程登录到linux操作的软件 Xshell还是一个强大的安全终端模拟软件
2.远程文件传输
Xftp是一个基于Windows平台的功能强大的SFTP、FTP文件传输软件 Windows用户能安全地在linux和Windows之间传输文件
3.vi和vim
linux系统内置vi文本编辑器 Vim具有程序编辑的能力可以看做是vi的增强版本
vi和vim常用的三种模式
①一般模式以vim打开一个档案就可以进入一般模式 ②插入模式按下i,o,a,r等任何一个字母后才会进入编辑模式一般来说按i ③命令行模式输入esc:切换到命令行模式在这个模式中可以提供你相关指令完成读取、存盘、替换、离开vim等操作 各种模式的相互切换
4.vim快捷键
拷贝当前行一般模式输入yy拷贝当前行下的第五行5yy 粘贴p 删除当前行输入dd删除当前行下的第五行5dd 在文件中查找某个单词[命令行下/关键字回车查找输入n就是查找下一个] 打开文件的行号关闭文件的行号[命令行下:set nu和:set nonu] 快速到文件末尾或开头G和GG 撤销动作一般模式u 快速定位某一行20行号再输入shiftg
5.开机重启
命令 shutdown -h now立刻关机 默认shutdown -h 1“hello,1分钟后会关机了” shutdown -r now立刻重启 halt关机 reboot重启 sync把内存的数据同步到磁盘上 注意事项
不管是重启系统还是关闭系统建议先运行sync命令目前的shutdown等命令均已在关机前使用sync但是小心驶得万年船
6.用户登录和注销
基本介绍
登录时尽量少用root账号登录避免操作失误。可以用普通用户登录后用su - 用户名来切换成系统管理员身份在提示符下输入logout即可注销用户
使用细节logout在图形运行级别无效在运行级别3下才有效
五.用户管理
1.添加用户/删除用户
基本语法useradd 用户名 添加一个a用户a用户的家目录在/home/a useradd -g 组名 用户名创建一个用户并加入到指定组中 细节说明
添加用户后会自动添加家目录也可以通过useradd -d 指定目录 新的用户名给新创建的用户指定家目录
基本语法userdel 用户名高权限才能删除低权限默认保留家目录 删除用户但同时删除家目录谨慎userdel -r 用户名
2.指定/修改密码
基本语法passwd 用户名 显示当前用户所在目录pwd
3.切换用户
基本语法su - 用户名 细节说明
从权限高的用户转换到权限低的用户不需要输入密码当需要返回到原来用户时使用exit/logout指令
4.查询用户信息
命令id 用户名若用户不存在则返回无此用户 查询当前用户信息whoami显示第一次登录的用户的信息
5.用户组
介绍类似于角色系统可以对有共性/权限的用户进行统一的管理 命令
新增组groupadd 组名删除组groupdel 组名增加用户时直接加上组useradd -g 用户组 用户名、修改用户的组usermod -g 用户组 用户名
用户和组相关文件
/etc/passwd文件用户的配置文件记录用户的各种信息 每行的含义用户名:口令:用户标识号:组标识号:注释性描述:主目录:登录shell其中注释性描述等不一定会有 /etc/shadow文件口令的配置文件 每行的含义登录名:加密口令:最后一次修改时间:最小时间间隔:最大时间间隔:警告时间:不活动时间:失效时间:标志 /etc/group文件组的配置文件记录linux包含的组的信息 每行含义组名:口令:组标识号:组内用户列表
六.常用指令
1.运行级别
基本介绍 0关机 1单用户[找回丢失密码] 2多用户状态没有网络服务 3多用户状态有网络服务 4系统未使用保留给用户 5图形界面 6系统重启 常用运行级别是3和5也可以指定默认运行级别 切换运行级别的命令init [0123456] 查看运行级别systemctl get-default 设置默认运行级别systemctl set-default 运行级别
2.找回root密码
重启系统: 首先重新启动你的Linux系统。进入引导加载程序boot loader: 在系统启动时按下适当的键通常是Esc、Shift或者按下某个功能键进入引导加载程序的菜单。具体键位取决于你的系统和引导加载程序如GRUB或LILO。编辑启动选项: 进入引导加载程序菜单后找到并选择启动Linux的选项通常是带有Linux版本号的选项按下 e 键进入编辑模式。修改内核启动参数: 在编辑模式下找到以 linux 开头的行可能是以 linux 或 kernel 开头并且找到 ro 或者 root 参数。修改root参数: 将 ro 修改为 rw并在 root 参数后面添加 init/bin/bash 或者 init/bin/sh然后按下 Ctrl X 或者相应的键来启动。进入单用户模式: 系统将启动为单用户模式此时你会看到一个命令行提示符通常是 #。这时候文件系统是以读写read-write方式加载的你可以进行修改。更改root密码: 使用以下命令更改root用户的密码passwd root然后按照提示输入新密码并确认。重新启动系统: 密码修改完成后使用 reboot 命令重新启动系统reboot恢复引导加载程序设置: 在系统重新启动后确保恢复引导加载程序的原始设置将 ro 修改回 rw 等。这样可以保证系统在下次启动时正常运行。
3.帮助指令
获取帮助信息man [命令或配置文件] 如查看ls命令的帮助信息man ls 在linux下隐藏文件是以.开头选项可以组合使用比如ls -al比如ls -al/root 命令help 命令获得shell内置命令的帮助信息
4.文件目录类
pwd显示当前工作目录的绝对路径 ls [选项] [目录或是文件] 常用选项 -a显示当前目录所有的文件和目录包括隐藏的 -l以列表的方式显示信息 cd [参数]切换到指定目录 如果参数是~则回到家目录 如果参数是…回到当前目录的上一级 mkdir [选项] 创建的目录名创建指定的目录默认只能创建单级目录 若选项是-p则创建多级目录 rmdir [选项] 要删除的空目录 如果要删除有内容的文件夹rm -rf 目录如rm -rf /home/a touch 文件名称创建一个空文件 cp [选项] 目标文件 目标目录拷贝文件到指定目录 选项-r递归复制整个文件夹 强制覆盖不提示的方法\cp如\cp -r /home/bbb/ /opt/ rm [选项] 要删除的文件或文件夹 常用选项 -r递归删除整个文件夹 -f强制删除不提示 mv 旧目录 新目录将文件移动 mv 旧文件名 新文件名将文件重命名 将文件移动并改名如mv /opt/bbb /home/ccc cat [选项] 要查看的文件查看文件内容 若选项为-n则显示行号 注意cat只能浏览不能修改比较安全为了浏览方便一般会带上管道命令| more 如cat -n /etc/profile | more进行交互 more指令一个基于VI编辑器的文本过滤器more指令中内置了许多快捷键 less指令是用来分屏查看文件内容的类似于more但比more更强大支持各种显示终端less在显示文件内容时并不是一次将整个文件加载后才显示而是根据显示需要加载内容对于大型文件具有较高的效率
快捷键 echo [选项] 输出内容echo输出内容到控制台 head 文件查看文件头10行内容 head -n 5 文件查看文件头5行内容 tail类似于head 特殊tail -f 文件实时追踪该文档的所有更新 指令和指令 输出重定向和追加 基本语法
ls -l 文件将列表的内容覆盖到文件中ls -al 文件列表的内容追加到文件的末尾cat 文件1 文件2将文件1的内容覆盖到文件2中echo “内容” 文件将内容追加到文件中 ln -s 源文件或目录 软连接名给原文件创建一个软连接 软连接是一种特殊的文件它包含了对另一个文件或目录的引用。与硬链接不同软连接创建了一个指向目标文件或目录的路径引用而不是直接指向文件数据块 因为是一个文件所以删除也可以用rm指令 注意当我们使用pwd指令查看目录时仍然看到的是软连接所在目录 history查看系统执行过的历史命令 查看最近十个指令history 10 执行历史指令为5的指令!5
5.时间日期类
date指令
date显示当前时间date %Y显示当前年份date %m显示当前月份date %d显示当前天份date “%Y-%m-%d %H:%M:%S”显示年-月-日 时:分:秒date -s 字符串时间设置系统当前时间如date -s “2024-1-1 00:00:00”
注意字母严格区分大小写 cal [选项]不加选项显示本月日历 若选项为数字则显示年日历
6.查找指令
find 搜索范围 [选项] 选项说明
案例
find /home -name hello.txtfind /opt -user root | morefind / -size 200Mn大于-n小于n等于单位有k,M,G locate指令可以快速定位文件路径locate指令利用事先建立的系统中所有文件名称及路径的locate数据库实现快速定位给定的文件 语法locate 文件 特别说明第一次运行前必须使用updatedb指令 which指令可以查看某个指令在哪个目录下 如which ls grep [选项] 查找内容 源文件 常用选项 管道符号|表示将前一个命令的处理结果输出传递给后面的命令处理
如cat /home/a.txt | grep -n “a”
7.压缩和解压
gzip/gunzip指令压缩和解压 基本语法 ①gzip 文件只能压缩成.gz文件 ②gunzip 文件 zip/unzip指令压缩和解压 基本语法 ①zip [选项] 压缩文件名 文件名 ②unzip [选项] XXX.zip zip常用选项-r递归压缩即压缩目录 unzip常用选项-d 目录指定解压后文件的存放目录不写就是解压到当前文件夹 案例 zip -r a.zip /home/将home文件都压缩成a.zip unzip -d /opt/tmp /home/a.zip将a.zip解压到/opt/tmp目录下 tar [选项] XXX.tar.gz 打包的内容打包目录压缩后的文件格式是.tar.gz 选项说明
七.组管理和权限管理
1.linux组的基本介绍
在linux中每个用户必须属于一个组 linux中每个文件有所有者、所在组、其它组的概念
所有者指定了文件的创建者或所有者。所有者可以对文件进行读取、写入和执行等操作具体权限取决于文件的权限设置所在组除了所有者之外每个文件还可以分配一个所在组。组成员具有与组相关联的权限这些权限通常是与文件的所有者不同的其它组除了所有者和所在组之外的所有用户属于其它组。其它组成员对文件具有的权限也是与所有者和所在组成员的权限不同的
2.所有者
一般为文件的创建者 查看文件的所有者的指令ls -ahl 修改文件所有者chown 用户名 文件名
3.所在组
组的创建groupadd 组名 查看文件所在组查看文件的所有者的指令也会显示文件的所在组就跟在所有者后面 其它指令ls -l 文件名 输出结果比如说-rw-r–r-- 1 owner group 0 Jun 20 12:00 文件名 修改文件所在组chgrp 组名 文件名
4.改变用户所在组
在添加用户时可以将指定的用户添加到组中 同样的用root的管理权限可以改变用户的所在组 指令
usermod -g 新组名 用户名usermod -d 目录名 用户名改变该用户登录的初始目录用户需要有进入到新目录的权限
5.rwx权限
上面的输出结果-rw-r–r-- 1 owner group 0 Jun 20 12:00 文件名 0-9位说明 第0位确定文件类型d-lcb -普通文件 l链接文件相当与Windows的快捷方式 d目录相当于Windows的文件夹 c字符设备文件鼠标键盘 b块设备比如硬盘 第1-3位确定所有者该文件的所有者拥有该文件的权限 第4-6位确定所属组同用户组的拥有该文件的权限 第7-9位确定其它用户拥有该文件的权限
rwx权限详解
rwx作用到文件
r代表可以read可以读取和查看w代表可以write可以修改但不代表可以删除该文件删除一个文件的前提是对该文件所在的目录有写权限才能删除该文件x代表execute可以被执行
rwx作用到目录
r可以读取可以ls查看目录内容w可以修改对目录内创建文件删除文件重命名目录x可以进入该目录即cd
案例说明
-rwxrw-r-- 1 root root 1213 Feb 2 09:39 abc 这是-普通文件 所有者的权限是rwx 所在组的权限是rw 其它者的权限是r 1是文件数和子目录数的总和 第一个root是用户 第二个root是组 1213是文件大小字节如果是文件夹则显示4096 Feb 2 09:39是修改时间 abc是文件名
6.修改权限
通过chmod指令可以修改文件或者目录的权限 第一种方式±变更权限 u所有者q所有组o其他人a所有人u、g、o的总和 案例 1chmod urwx,grx,ox 文件/目录名 2chmod ow 文件/目录名 3chmod a-x 文件/目录名 第二种方式通过数字变更权限 r4w2x1rwx4217 chmod urwx,grx,ox 文件/目录名相当于chmod 751 文件/目录名
7.修改文件所有者和所在组
chownchange owner 新所有者 文件/目录名改变所有者 chown 新所有者:新组 文件/目录名改变所有者和所在组 -R递归使其下所有子文件或目录递归生效 chgrp 新组 文件/目录改变所在组 也有-R
八.定时任务调度
1.crond入门
概述 任务调度是指系统在某个时间执行的特定的命令或程序 任务调度分类系统工作如病毒扫描个别用户工作 基本语法 crontab [选项] 常用选项
案例 设置任务调度文件/etc/crontab 设置个人任务调度执行crontab -e 接着输入任务到调度文件如* 1 * * * * ls -l /etc/ /tmp/a.txt 意思是每分钟执行ls -l /etc/ /tmp/a.txt命令 5个占位符的说明
特殊符号的说明
特殊时间执行案例
crontab相关指令
crontab -r终止任务调度crontab -l列出任务调度service crond restart重启任务调度
2.at任务调度机制
at命令时一次性定时计划任务at的守护进程atd会以后台模式进行检查作业队列来运行 默认情况下atd守护进程每60秒检查作业队列有作业时会检查作业运行时间如果时间与当前时间匹配则运行此作业 注意在使用at命令的时候要先保证atd进程的启动 检查atd是否启动的命令ps -ef | grep atd at命令格式at [选项] 时间 两次输入ctrlD结束at命令的输入 atq命令可以看系统中正在队列的命令 atrm 任务编号删除正在队列中的命令 常用选项
at指定时间的方法
案例 2天后的下午5点执行/bin/ls指令 /homeat 5pm 2 days然后回车输入/bin/ls /home然后ctrlD两次
九.linux磁盘分区、挂载
1.磁盘分区机制
linux归根结底就只有一个根目录 linux采用了叫载入mount的处理方法它的整个文件系统中包含了一整套的文件和目录且将一个分区和一个目录联系起来。这时要载入的一个分区将使它的存储空间在一个命令下获得 查看所有设备挂载情况lsblk或lsblk -f 硬盘说明
linux硬盘分IDE硬盘和SCSI硬盘目前主要是SCSI硬盘对于IDE硬盘驱动器标识符为hdx其中hd表示分区所在设备的类型这里是指IDE硬盘。x为盘号a为基本盘b为基本从属盘c为辅助主盘d为辅助从属盘表示分区前四个分区用数字1到4表示它们是主分区或拓展分区从5开始就是逻辑分区对于SCSI硬盘的标识sdx~SCSI的sd是设备类型其余和IDE硬盘的表示方法一样
2.增加磁盘
增加虚拟机硬盘操作 ①虚拟机添加硬盘 ②分区 ③格式化 ④挂载 ⑤设置乐意自动挂载 步骤1
在虚拟机菜单中选择设置然后设备列表里添加硬盘然后一路【下一步】中间只有选择磁盘大小的地方需要修改直至完成然后重启系统
步骤2
分区命令fdisk /dev/sdb进入分区后m显示命令列表p显示磁盘分区同fdisk -ln新增分区d删除分区w写入并退出说明输入n新增分区然后选择p分区类型为主分区两次回车默认剩余全部空间。最后输入w写入分区并退出若不保存退出输入q
步骤3
分区命令mkfs -t ext4 /dev/sdb1其中ext4是分区类型
步骤4
挂载将一个分区和一个目录联系起来mount 设备名称 挂载目录建立联系unmount 设备名称 或者 挂载目录卸载联系注意用命令行挂载重启后会失效
步骤5
永久挂载通过修改/etc/fstab实现挂载添加完成后执行mount -a立刻实现