首页
归档
朋友
关于我
留言
推荐
Wiki知识库
Search
1
虚拟机无法ping不通百度,并无法访问浏览器
3,903 阅读
2
mysql使用or条件使索引失效
2,013 阅读
3
mysql如何在一对多查询时选取时间最近的一条记录
1,620 阅读
4
git常用命令大全
1,392 阅读
5
根据MySQL获取当天,昨天,本周,本月,上周,上月,本月的起始时间
1,381 阅读
PHP
面向对象
设计模式
代码片段
常用函数
数据库
MySQL
服务器
Docker容器
虚拟机
缓存知识
Nginx
前端
中间件
网络编程
工具软件
Git
杂乱无章
面试指南
MySQL面试
登录
Search
标签搜索
php
mysql
代码片段
linux
Redis
nginx
Thinkphp
mysql优化
docker
面向对象
git
Laravel框架
http协议
缓存
Redis性能优化
linux命令
编译安装
PhpSpreadsheet
导出excel
构造器
黎明强
累计撰写
64
篇文章
累计收到
24
条评论
首页
栏目
PHP
面向对象
设计模式
代码片段
常用函数
数据库
MySQL
服务器
Docker容器
虚拟机
缓存知识
Nginx
前端
中间件
网络编程
工具软件
Git
杂乱无章
面试指南
MySQL面试
页面
归档
朋友
关于我
留言
推荐
Wiki知识库
搜索到
9
篇与
服务器
的结果
2022-04-21
快速熟悉Docker的一些基本操作流程
前文可能刚接触Docker的同学,上手Docker看到很多命令、或者操作一脸懵,需要了解docker安装、镜像容器啊,docker上的网络,容器之间的端口映射以及network网络空间、数据持久化等等...太多知识点了!!接下来我就整理快速熟悉下Docker的一些基本操作流程 ~~ (不包含配置dockerCompose、Swarm等编排操作)方便快速上手。流程比如写好一个Dockerfile文件 ,可以通过命令build出一个镜像。不要自己写的,可以下载远程仓库的镜像可以用search命令去远程仓库pull下来。也可以把自己创建的镜像push到自己的仓库。(原理跟git一样)查看本地多少个镜像可以用images ,删除镜像就rmi (前提必须把运行相关镜像的容器停止删除)想要把宿机的目录映射到容器里,就在执行run加上参数-v [本地目录]:[容器目录]有些服务需要跟本地端口互通,也在执行run 加上参数-p 3306:3306把镜像导出到本地的压缩文件,使用执行save命令把本地镜像文件导入本地Docker虚拟机,使用load命令想要创建容器,那么就可以执行run 命令,run命令创建的容器是运行的状态的。想要访问正在运行的容器。使用exec/attach 进入容器内部。想要暂停容器,使用pause命令 ,恢复容器使用unpause命令想要停止容器,可以执行stop命令,重新启动容器使用start命令。查看Docker里有多少容器,使用ps命令。想要删除容器,执行rm命令。如果想要把容器转换成镜像,我们使用commit命令
2022年04月21日
52 阅读
0 评论
0 点赞
2021-11-26
Docker常用命令整理
基本命令docker version #查看版本 docker login #登录dockerID docker build -t [DockerId/自定义名称] [文件目录] #打包构建dockerfile文件,制成镜像 (docker build -t limingqiang/hello-world . ) docker commit [原容器名] [新镜像名] #容器制回镜像 (不推荐) docker --help #帮助镜像操作(Image)docker image ls 或 docker images #查看本地所有的镜像(简写) docker image pull [Image] 或 docker pull #拉取某个仓库的镜像 docker image push [Image] 或 docker push #将本地的镜像上传到镜像仓[要登录才能推送] docker image rm [镜像名] 或 docker rmi [镜像名] #删除本地镜像 docker image build 或 docker build #通过Dcokerfile文件构造新的镜像容器操作(Container)docker run [镜像名|镜像ID] #镜像-创建一个新容器并执行 docker run -it [镜像名|镜像ID] #交互式运行镜像的容器 docker run -d [镜像名] #容器运行在后台服务 docker run -d --name [别名] [镜像名] #给指定运行的容器起别名并挂载后台 docker run -d --name [别名]] --link [另容器别名] [镜像名] #容器A跟容器B之间的可以通过容器名进行访问互通 docker run -d --name [别名] --network [bridge网络] [镜像名] #当前容器加入到另一个namespace网络中 docker run -e [环境变量] [镜像名] # 容器启动前加入环境变量( docker run -e USERNAME=lmq centos ) docker exec [镜像名] #在运行的容器中执行命令 docker exec -it [镜像名] /bin/bash #以bash命令并交互式进入运行中的容器里 docker exec [镜容ID|别名] ip a #查看容器里的网络信息 docker container ls 或 docker ps #查看运行中的容器 docker container ls -a 或 docker ps -a #查看运行/停止的容器 docker container rm [容器ID] 或 docker rm [容器ID] #删除容器(可多个 空格隔开) docker container commit [镜像名] 或 docker commit #修改后的容器commit成新的镜像 docker container inspect [容器ID|容器名] #查看容器的详细信息 docker start [容器ID | 别名] #启动容器 docker stop [容器ID|别名] #停止已运行的容器 docker inspect [容器ID] #打印容器的详情信息 docker logs [容器ID] #查看容器的一些日志 docker ps -aq #获取所有容器的ID docker rm $(docker ps -aq) #删除所有容器 docker rm $(docker ps -a -f "status=exited" -q) #删除所有已停止的容器网络操作(network)docker network ls #查看网络空间 docker network inspect [NetWorkID] #查看容器的详情网络信息 docker network connect [NetWorkID] [容器名] #容器切换其他网络上数据卷操作(Volume)docker volume ls #查看容器挂载的volume数据 docker volume inspect [volume Name] #查看某个Volume的详细信息 docker volume rm [volume Name] #删除某个/多个Data VolumeDocker-Compose操作 docker-compose --version #查看compose版本 docker-compose up #启动compose(默认启动docker-compose.yaml文件) docker-compose up -d #启动compose并且后台运行 docker-compose up -f docker-compose2.yamlup #启动compose(别的文件配置) docker-compose ps #查看状态 docker-compose imags #查看compose中所有的镜像 docker-compose start #启动compose服务 docker-compose stop #停止compose服务 docker-compose rm #删除停止的容器 docker-compose down #停止并删除compose的容器、镜像、网络、数据卷 docker-compose exec [service_name] #进入compose服务中的其中一个容器,server_name指的是容yml配置的器名集群操作(Docker-Swarm)docker swarm --help #帮助 docker swarm init --advertise-addr=[本机IP] #创建manager主节点。其他机器通过d这个节点连接 docker swarm join --token [worker|manager机器] #加入某台机器的节点 docker node ls #Manager下查看哪些节点已连接 docker service --help #帮助 docker service create --name demo centos7 #创建sevice容器 (跟docker run类似) docker service ls #查看service容器列表 docker service ps [service_name | 别名] #查看service容器下所有的容器 docker service scale [servie_name]=[number] #水平扩展机器多少个 (docker service scale web=3) docker service rm [servie_name] #删除service上所有容器 多容器多机集群管理操作(Docker Stack)类似docker-compose管理组的概念,不过docker-compose是管理本地多容器的,而docker stack 是管理swarm集群涉及多台机器多容器的。可以理解为docker run --->docker-compose 进行统一管理,而docker service -->docker stack进行统一组管理。docker stack --help #帮助 docker stack deploy --compose-file=docker-compose.yml #部署创建Service生成Stack docke stack ls #查看stack列表 docker stack ps <stack名> #某个Stack具体的Service应用(部署多少台,在哪台机器等?) docker stack service wordpress #Stack下的Service具体情况 (端口映射情况等) docker stack rm <stack名> #删除stack (包含删除正在运行容器、网络、服务等)
2021年11月26日
57 阅读
0 评论
0 点赞
2021-11-25
记录Vagrant常用的一些命令
简介Vagrant 是一种用于在单个工作流中构建和管理虚拟机环境的工具,需要配合VirtualBox配合使用。一旦您或其他人创建了一个 Vagrantfile,您只需要vagrant up安装和配置所有内容即可工作。您团队的其他成员使用相同的配置创建他们的开发环境。您的所有团队成员都在相同的环境中运行代码,针对相同的依赖项,所有配置都相同道路。告别“在我的机器上工作”的错误。解决:以前搭建Linux虚拟机,需要 VirtualBox 从.iso 文件安装了,有Vagrant可以直接从配置拉取并下载系统,一步到位简洁化,开发环境变得简单。疑问:为什么不用VMware+VMware而是用VirtualBox+Vagrant去使用呢虽然VMware功能更强大,但是Vmware是收费的,而且使用VMware+Vagrant 配搭的环境也是要收费的。安装Vagrant下载地址: https://www.vagrantup.com/下载后通过终端输入命令vagrant --hlep 查看是否已安装成功。在创建一个空目录,并且再目录里运行vagrant init centos/7(根据官网还有很多系统可选,我这选 centos/7 , 镜像地址 :https://app.vagrantup.com/boxes/search)初始化一个Vagrantfile 配置文件。输入vagrant up 执行下载centos7的系统资源 (等待时间有点长)下载完成,出现一个CentOS7的 VM虚拟机,然后再打开VirtualBox 就可以看到这个系统了。运行&卸载安装好后,在目录下执行vagrant ssh ,进入我们刚创建的CentOS7的VM。(这就一台CentOS系统, 在里面可以使用Linux相关的命令.. )注意的是,如果在Vagrant虚拟机里,需要执行yum install xx,并且前面加个sudo如果不想要这个VM卸载,首先exit退出vagrant ,检查机器是否运行vagrant status ,运行中就需要vagrant halt 将系统停止。刚才在VirtualBox的centOS7系统就没了,这样就把系统卸载掉了。配置镜像一般官网都有配置一些镜像提供下载系统,可以输入命令vagrant up 镜像系统名 去下载,也可以通过Vagrantfile文件配置进行操作。官网镜像地址 :https://app.vagrantup.com/boxes/search自动创建:输入以下命令就可以自动创建对应的系统vagrant init centos/7 vagrant up手动创建(Vagrantfile配置中改系统):Vagrantfile是通过Vagrant init生成的,配置选项可以做很多事 ,可以从一个Vagrantfile配置多个系统的操作。复制以上代码到Vagrantfile并且命令输入vagrant up远程SSH登录输入vagrant ssh-config 查看一些配置(登录IP、私钥文件位置、端口号等)常用命令vagrant -v #查看版本 vagrant init centos/7 #初始化(centos/7是系统镜像名) vagrant up #启动虚拟机 vagrant reload #重启虚拟机 vagrant halt #关闭虚拟机 vagrant destroy #删除虚拟机 vagrant ssh #ssh登录虚拟机 vagrant ssh-config #查看配置 vagrant suspend #暂停虚拟机(类似休眠) vagrant resume #唤醒虚拟机 vagrant status #观察虚拟机状态 vagrant box list # 查看本地box列表 vagrant box add # 添加box到列表 vagrant box remove # 从box列表移除
2021年11月25日
128 阅读
0 评论
0 点赞
2021-03-04
Linux中用yum安装好还是自编译安装
yum安装和源码编译安装的区别yum安装可以看成是在线安装的一种方式,你只需要yum install 软件名,系统就自动根据yum源配置文件中的镜像位置去下载安装包了,并可以自动分析所需的软件依赖关系,自动安装所需的依赖软件包。此方式适合初学者,简单方便,不用考虑依赖关系。但有些软件并不能通过yum来安装。。而源码安装方式是需要自己到网上下载源码包,然后解压安装。此方式可以指定配置参数,更加灵活方便,兼容性更强。比较适合对Linux系统有较多了解的进阶用户使用。。yum跟编译的特点大部分Linux发行版的某个特定版本,比如说Cent OS 6.x,或者Ubuntu 14.04这种,对于官方提供的软件包都会选择一个版本固定下来,很少跨大版本升级,为的是稳定,避免用户升级产生问题yum是一个包管理器,除了承担安装,还会帮你管理包与包的关联,还有卸载,搜索等附加功能。它主要安装的是二进制包,背后是rpm,当然也有源码的包,不那么常用。你也可以找到第三方提供的软件包的新版本,只是需要你自己把这种源添加进去如果只是追求最新,源码确实是获取新版的最快方式,只是比较麻烦,关联需要你自己管理(当然你也可以通过yum来安装关联包),优势是你可以自己定义编译参数进行一些优化调整,还可以把软件装到期望安装的目录用软件源(yum)特点好处:是不用处理依赖关系的问题缺点:版本不新。自己编译的特点好处 : 是可以精确控制编译参数,修改代码,获得最新的版本。缺点: 是要处理复杂的依赖关系。总结如果不是特别需要,一般都是能yum安装就yum安装了。尽量包,不要自编译有包管理更好啊,源码编译费事费力又费电,包管理只管安装,依赖,卸载,升级都交给包管理完成。一句命令完成系统的全面升级。
2021年03月04日
754 阅读
2 评论
0 点赞
2021-01-14
Linux常用命令大全
常用快捷Tab 当想不起来命令的如何拼写的时候,可以使用 Tab 去补全命令 ctrl + L : 用于清理终端的内容,就是清屏的作用,同clear 命令 ctrl + D : 给终端传递EOF(End Of File,文件结束符) shift + PaUp : 用于向上滚屏,与鼠标向上滚动同理。 shift + PaDn : 用于向上滚屏,与鼠标向下滚动同理。 ctrl + A : 光标跳到一行命令的开头。跟Home键相同的效果 ctrl + E : 光标跳到一行命令的结尾。跟End键相同的效果 ctrl + U : 删除所在光标左侧的命令字符 ctrl + K : 删除所在光标右侧的命令字符 ctrl + W : 删除光标左侧的一个“单词” (指用空格隔开的一个字符串 例如 -a 就一个单词) ctrl + Y : 粘贴 (用了ctrl+ u 、ctrl+K 、ctrl+w 都会当做·剪切·) ctrl + c 中止大部分的终端命令 (跟win 的alt+F4 类似)历史记录向上键: 按时间顺序向前查找使用过的命令。每按一次前进一个命令 向下键: 按时间顺序向后查找使用过的命令。每按一次前进一个命令 ctrl + R: 用于查找使用过的命令 history : 列出输入过的命令 // history的用法还可以用 !编号 这样的格式重新运行 history输出对应的编号命令,比如 : !71 比如 : 70 ls71 date72 cd /home文件颜色区分蓝色 : 目录 绿色 :可执行文件 红色 :压缩文件 浅蓝色 : 链接文件 灰色 :其他文件文件操作显示目录中文件命令 【ls】ls 显示当前目录下的所有文件及文件夹 (最常用的合并使用 ls -lath) 参数如下: -a :显示所有文件和目录,包括隐藏的 -A : 跟-a 一样,不同的是不列出 . 和 .. 这2个文件 -l : 列出显示文件和目录文件的详细信息列表 -h : 用"K","M","G"来显示文件和目录的大小 ,表示“适合人类阅读” , h 是 humain readable 的缩写 ( 配合ls -lh 使用 ) -t :按文件最近一次修改时间排序 (t 是time 的缩写 ) ll 以详细方式显示所有文件与文件夹。(相当于 ls -l 命令) 切换目录文件命令-cd/**cd命令【切换目录文件】**/ cd 回到“家”目录 或者 cd ~ 也可以 (回到对应的用户的目录下 , ~ 波浪号就是家目录 ) cd /user 打开user文件夹 如果不知道要打开的文件夹全称或名过长,可以按tab键盘自动补齐,如:cd /u + table键,系统自动帮我们补齐成 /user cd .. (后面空格加两点)返回上一级目录 cd ../../ 连续后退2个层级 统计目录大小命令:dudu 查看文件和目录所占空间大小 (相比ls -l 命令 ,du命令统计才是真正的文件大小 ) 参数如下: -h : 用户跟ls -h 命令一样,展示目录大小( 表示“适合人类阅读”) -a : 加-a 显示目录和文件大小 (默认只展示目录的大小) -s : 只展示当前目录的总大小 (配合-h使用更佳 du -sh)文件内容查看具体命令有 cat、less、head、tail、morecat命令【一次性显示文件的所有内容】 适合小的文件cat [文件1] cat [文件1] [文件2] //可以连接多个文件查看 (cat log1.txt log2.text) 参数可选 : -n //前面文件显示“行的序号” cat 1.txt //查看文件less命令分页显示文件内容less内容中的快捷键操作 (小写): 空格键 : 文件内容读取下一个终端屏幕的行数 (前进一个屏幕的内容) PageDown : (下一页)是跟空格效果一样的。 b键 : 后退一页 (跟键盘的PageUp 效果一样的) d键 :前进半页 (半个屏幕) u键 :后退半页 (半个屏幕) 回车 : 前进一行(文件内容读取下一行) y键 : 后退一行 (跟键盘向上 效果一样的 ) q键 : 停止读取文件,中止less命令 =号 : 显示你在文件中的什么位置 (q 退出) h键 : 帮助 /(斜杠) : 进入搜索模式 ,输入搜索条件 ( “next”,按n可以查看下一个符合搜索结果 ,大N 查看上一个符合的结果 ) q键 : 停止读取文件,中止less命令headhead命令【显示文件开头】参数: -n : 可以指定显示的行数 head 1.text //展示头部 10行 (默认展示10行) head 1.text -n 5 //展示头部5行 head -n t 1.text //展示头部5行 (效果也是一样的)tail显示文件结尾参数: -n : //可以指定显示的行数 -f : //可以实时追踪文件的更新 (尾部的光标一直在闪烁 ) tail1.text // 展示头部 10行 (默认展示10行) tail11.text -n 5 //展示头部5行 tail1-n t 1.text //也是一样的 tail -f 1.text //实时查看尾部数据 tail -f -s 4 1.text // 加多一个参数 -s ,可以指定间隔检查的秒数 ,这里表示每隔4秒 (不加 -s 会每过1秒检查一下你的文件内容)创建文件&目录touch命令创建一个空白文件/**touch命令【创建一个空白文件】**/ touch test.txt //创建文件 touch test.txt test.txt2 //创建多个文件 touch "test book" //创建带空格的文件 (不建议带空格)mkdir命令mkdir命令【创建目录】mkdir new_dir 创建目录 mkdir new_dir1 new_dir2 创建多个目录 mkdir "new dir" 创建带空格的目录 (不建议) mkdir -p one/two/three //递归创建目录结构文件的删、查、移、复制操作cp命令拷贝复制参数 -r : //拷贝目录(大写跟小写r 作用一样, r 表示 recursive 递归) ,拷贝的时候目录所有内容(子目录和文件) 都是会被拷贝 cp new_file new_file_copy //拷贝文件 cp new_file one/ //拷贝文件到其他目录(one目录的名称) cp new_file one/new_file_copy //拷贝文件到其他目录=取别名 cp -r one one_copy //拷贝目录 cp *.text folder //把当前目录下所有text文件拷贝到folder目录中 (*通配符) cp ha* folder //把当前目录以ha开头的文件都拷贝到folder中(*通配符)mv命令移动文件&重命名文件mv file one //移动目录&移动文件 (将1.text 这个文件移动到 one目录 ,移动目录的话会将子目录所有移动 ) mv *.txt one //将当前目录下所有txt文件移动到one目录 mv new_file renamed_file //将new_file 重命名为 renamed_file mv new_file one/new_file1 //将new_file 移动到one目录并重命名rm命令删除文件&目录,这个命令谨慎使用,在linux中万物皆可删除参数 : -i //终端都会询问是否删除 -f //强制删除 (慎用-不询问) -r //递归删除目录(包含子目录和文件) rm new_file_copy //删除当前目录下的new_file_copy 这个文件 rm file1 file2 file3 //删除多个文件 (空格隔开) rm -i file1 //删除文件之前,终端都会询问是否删除 (y- 删除 n - 不删) fm -f file1 //强制删除 (慎用-不询问) fm -r one //删除one目录(包含里的所有子目录和文件) rmdir one //删除one目录 (只能删除空目录) fm -rf one //递归强制删除 one 目录 (慎用 , 不对目录下的每个文件提醒删除)ln命令链接(类似win的快捷方式)ln file1 file2 //创建硬链接 ,一个文件file2 ,使之成为file1的硬链接 (只能创文件,2个文件的文件内容指向同一块,修改也会2个一起修改 ) ln -s file1 file2 //创建软链接 (创建文件&目录 ,一般用于目录,像win 快捷方式 , 可以理解为“file2是file1的快捷方式” ) ls -i //2个文件关联,查看inode的号find文件查找find /etc -name ini? //查找/etc目录下,以ini开头的文件 find /etc -name ini* //同上 find / -name "nginx" //从根目录查找nginx文件 locate aa.txt //查整个系统中的aa.txt文件,locate,slocate命令后面跟文件或文件夹 ,不过在执行这个命令之前要先更新数据库,所以先执行 updatedb 命令用户权限切换用户包含sudo、susudo //在命令前加个 sudo 表示以管理员运行这条命令 ,比如 sudo mkdir xxx sudo su //用户切换,一直成为root权限 , (密码储存在终端里 , 关闭当前终端再打开就需要重新输入密码 ) su [用户] //切换用户 (加参数 ~ 波浪号可以输出信息,如果处于root权限,输入 exit也同效果) sudo -i //切换root (回到root的家目录中)用户操作添加用户、删除用户、修改密码useradd lmq //创建用户 (创建一个名为lmq的用户) passwd lmq //修改用户密码 (按回车才会提示输入密码) userdel lmq //删除用户 (删除lmq的用户) userdel -r lmq //删除用户并把对应的用户目录也一并删除 用户操作(usermod)修改用户的命令、修改所在群组、加入群组等..参数: -l ://对用户重命名 (/home中的用户家目录名不改变,需要手动修改) -g ://修改用户所在群组 -G : //可以将一个用户添加到多个群组 (大写G) usermod -l lmq2 lmq //用户重命名 (lmq改成lmq2) usermod -g friends lmq2 //将用户添加到群组 (将lmq2添加到friends 的群组中 , 尽量用大G ) usermond -G friends,other lmq2 //一个用户添加到多个群组 **(群组之间用逗号分隔,而且没空格 ,剔除原来,新增后面 )** usermod -aG frends,other lmq2 群组权限命令包含groups、groupadd、groupdel、chown、chgrp 添加群组、删除群组、改变文件群组归属人groups //获取当前用户有哪些群组 groups lmq2 //获取对应用户归属那些群组 groupadd friends //创建群组 (创建friends的一个群组) groupdel other //删除群组 (删除other的群组) chown lmq2 file.txt //改变文件所有者 (把file.txt 转给lmq2用户 ,所在群组是不变的) chgrp friends file.txt //改变文件群组(file.txt改变到friends的群组中) chown lmq2:friends file.txt // 组合使用 : (把file.txt 的所有者改成lmq2 ,群组改成friends)文件权限包含数字分配权限、字母分配1. 数字分配权限假如我要分配读、写权限,那么就是 4+2 ,等于6 ,数字6表示具有读写权限访问的权限的三组 (所有者的权限,群组用户的权限,其他用户的权限) , 只要分别做加法就可以了,然后3个和连起来 (比如 664)权限数字r(读)4w(写)2x(执行)1chmod 664 file.txt //修改所有者权限为读写 、群组用户为读写、其他用户只可读 chmod 777 file.txt //修改所有者/群组/其他用户都可以 读写、执行(最高) chmod -R 777 /home/lmq //递归的分配目录下的权限(-R 参数)场景[lmq@localhost ~]$ [lmq@localhost ~]$ ls -l file.txt -rw-rw--w-. 1 lmq lmq 0 10月 20 17:52 file.txt 文件前面的-rw-rw--w-. 就表示权限 ,我们把-rw-rw--w-分为三部分,三位一组。如下rw-rw-w-所有者所属组其他用户2.字母分配权限字母分配更简单,linux分3类哟用户,【所有者、所属组、其他人】u所有者g所属组o其他人修改权限符号 : + 加权限 、 - 减权限 、 = 分配什么权限chmod u+rx file.txt //文件的f所有者增加读和运行的权限 chmod g+r file.txt //文件的群组用户增加读的权限 chmod o-r file.txt //文件的其他用户移除读的权限 chmod g+r o-r file.txt //文件的群组用户增加读权限,其他用户移除读权限 chmod go-r file.txt //文件的群组用户和其他用户都移除读的权限 chmod +x file.txt //文件所有用户都增加运行的权限 chmod u=rwx,g=r,o=- file.text //文件所有者分配读写执行的权限 ,群组用户分配读权限,其他用户没用任何权限 chmod -R 700 /home/lmq //(递归以下的目录)只运行lmq用户读写运行的权限包管理工具切换Centos的软件源//1、首先备份系统自带yum源配置文件/etc/yum.repos.d/CentOS-Base.repo mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup //2、下载ailiyun的yum源配置文件到/etc/yum.repos.d/ wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo //3、运行yum makecache生成缓存 yum makecacheyum命令【适用redhat家族使用】用yum命令安装软件,好处1、自动解决软件包的依赖关系,2、方便软件包升级yum install nginx //自动帮我们下载安装nginx yum install xx //安装软件包 (xxx 对应的是软件包名 ) yum check-update //检测升级 yum update/upgrade //升级 (update不删除旧包, upgrade 删除旧包) yum list //软件包查询 yum info //软件包信息 yum remove //删除软件包 yum search //搜索软件包 yum -help //帮助 yum localinstall *.rpm //本地的rpm软件包,用yum安装 yum list | grep nginx //查询是否安装nginxapt-get命令【适合debian家族使用】 跟上面的yum类似,解决软件包依赖关系apt-get install nginx //下载nginx基于deb包管理系统,debian,ubuntu,linuxmint,deepin基于rpm包管理系统的,redhat,centos,fedorarpm命令rpm -ivh sudo-1.7.2pl-5.el5. 5.el5 .rpm //软件名(sudo),版本号(1.7.2pl),发行号(5.el5)和硬件平台(5.el5) -i //安装所选择的一个或多个软件包 -H //用“#”显示完成的进度 -q //查询软件包系统或所选择的一个或多个软件包 -e //删除所有选择的一个或多个软件包 -u //把一个已经安装好的软件包升级到新版本 -v //验证已安装或已选择的一个或多个软件包 -qa //展示所有已安装的(query all) rpm -ivh sudo //查询sudo软件包是否被安装系统命令man ls //查看系统中自带的各种参考手册 (有些系统没有就sudo yum install -y man-pages 安装) apropos ls //根据手册的关键词来找到命令 whatis //whatis 是man命令的精简版 ,只会列出man命令显示手册的开头部分,就是概述。 free -m //查看系统运行内存 free -g //(Gb查看) cat /proc/meminfo df -hl //查看硬盘大小 w //查看当前系统的负载 (跟uptime + who的组合) uptime //查看系统的负载 who //查看当前登录的用户 ctrl+c //停止终端中运行的进程 sudo halt //停止系统 sudo reboot //重启系统 poweroff //也是关机 ,不需要root身份 su [用户名] //切换用户(su- 环境变量切换) su - [用户名] //切换环境的时候也会切换环境变量 ctrl+shift+c //终端-复制 ctrl+shift+v //终端-粘贴查找文件locate命令搜索包含关键词的所有文件和目录 (快速查找)locate abc.txt //列出abc本文所在的路径 locate function //列出所有包含 function 的文件和目录 updatedb //更新文件数据库find命令搜索包含关键词的所有文件和目录 (深入查找)用法 : find 《何处》 《何物》 《做什么》这几个参数中,只有《何物》是必须制定的,也极速要查找什么何处: 指定在哪里目录中查找 (子目录也会被查找) ,可以限定查找目录,比如只查找/home 目录下 , 默认没有给“何处” 参数, find命令就会当前目录以及子目录中查找。何物 : 要查找什么 ,可以根据文件的名字来查找做什么: 用find命令找到文件后,可以对每个文件做一定的操作, 称为 “后续处理” (不加这个参数,find只会显示找到文件)根据文件名称查找find -name "book" //根据文件名查找 (-name 参数指定了文件名字,单引号不加双引号也行 ) find /var/log -name "log" //在var/log目录下查找名为log的文件 find /var/log -name "log*" //查找所有以log这个关键字开头的文件 find /var/log -name "*log*" //查找包含log这个关键字的文件 find / -name "*log*" //根目录整个硬盘查找 根据文件大小查找find /var -size +10M //查找大于10M大小的文件 (加号) find /var -size -50k //查找小于50k大小的文件 (减号) find /var -size 5M //查找大小等于数值的文件 (无加减)根据文件最近访问时间查找find -name "*.txt" -atime -7 //查找近7天访问txt的文件 仅查找目录或文件find /var/ -name "log" -type d //var目录下查找log的目录 find /var/ -name "log" -type f //var目录下查找log的文件find高级用法find /home/ -name "*.txt" -delete //查找home目录下的所有txt的文件并删除 find /home/ -name "*.txt" -exec chmod 600{}\; //home目录下所查找的txt文件访问权限改为600 ({} 会查找到每个文件来替换 ,\; 是必须的结尾)文本内容查找grep命令筛选数据,查找关键词参数 : -i : //忽略大小写 ,(默认情况下grep是区分大小写) -n : //显示行号 (显示文本所在的行号,n 是number 数字编号的意思) -v : //只显示文本不在的行 (跟搜索文本不在的那些行) -r : //在所有子目录和子文件中查找 ( r表示递归,注意最后一行路径是目录!) -E : //使用正则表达式 (e 是 extended regular expression 的意思) grep "hi" /home/book.txt //在book文本中查找“hello”字符 grep -i "hi" /home/book.txt //在book文本中查找“hello”字符,忽略大小写 grep -n "hi" /home/book.txt //显示行号 grep -v "hi" /home/book.txt //显示文本不在的行 grep -r "hi" /home/ //在所有子目录和子文件中查找 rgrep grep高级用法 (正则表达式)在ctenOS 和 Ubuntu 这样的Linux发行版,不加-E 参数也是始终激活的grep -E "hi" /home/boo.txt //匹配hi 的字符串 (普通字符写法) grep -E ^hi /home/book.txt //^匹配行首 (匹配输入字符串的开始位置) grep -E [Tt] /home/book.txt //匹配大小写的Tt 字符串 grep -E [0-4] /home/book.txt //匹配搜索包含0~4的任一数字的行 grep -E [a-zA-Z] /home/book.txt //匹配a至z或A至Z的任意字母的行grep其他用法配合其他命令+管道符查询软件ps -ef | grep nginx //查看nginx的进程文件内容数据处理文件内容排序命令-sort参数 : * -o :// 将排序后的内容写入新文件 (o 表示output的首字母,表示输出 ) * -r : //倒序排列 (r 是reverse 的缩写, 是相反的意思。与普通仅用sort命令相反 ) * -R ://随机排序 (R 是英文 random 随机 ) * -n ://对数字排序 sort name.txt //将文件内容排序 (正序) sort -o name_sort.txt name.txt //将排序好的内容写入新文件 sort -r name.txt //倒序文件内容统计命令-wc , wc命令显示的3个数字 : 第一个 : 行数 , 第二个 :单词数 ,第三 :表示字节数参数 : -l : //统计行数 (line的缩写) -w : //统计单词数 (用空格隔开的字符串) 的数目 -c : //统计字节数 -n : //对数字排序 -m : //捅进字符数 wc name.txt //文件统计 wc -l name.txt //统计文件的行数删除文件中重复内容命令-uniq ,uniq 只能将连续的重复行变成一行参数 : -c : //统计重复的行数 -d : //只显示重复行的值 uniq name.txt //只能将连续的重复行变成一行 uniq name.txt new.txt //将筛选好的数据统计到新的文件中 uniq -c name.txt //统计重复的行数 uniq -d name.txt //只显示重复行的值剪切文件的一部分内容命令-cut参数 -d : //分割符 , 用于指定用什么分隔符(比如逗号,分好,双引号...) -f : //区域 ,剪切用分隔符的哪一块或哪几块区域 cut -d , -f 1 1.txt // 用逗号分隔符区域,取第一个区域的内容重定向符号&管道重定向/**重定向到新文件**/ cut -d , -f 1 1.txt > name.txt //剪切1.txt部分内容重定向新的文件中 /**重定向到文件末尾**/ cut -d , -f 1 1.txt >> name.txt //剪切1.txt部分内容重定向追加内容到文件中 /**2> ,2>>,2>&1 重定向错误输出**/ cat str.txt > name.txt 2> err.txt //str的文件 ,存在就存name.txt ,不存在就存err.txt 中 cat str.txt >name.txt 2>&1 //正确的错误的,都重定向一个文件 cat str.txt >> name.txt 2>&1 //正确的错误的,都追加写一个文件里管道符ps -ef | less //分页展示进程 ps -aux |grep php-fpm //查看进程 du | sort -nr |head //根据大小排序目录系统进程ps命令进程的静态列表ps //查看当前用户当前终端的进程 ps -ef //查看所有用户所有终端的所有进程 ps -ef |less //配合管道符,分页查看进程 ps -efH //以乔木状查看进程 ps -u 用户名 //列出此用户运行的进程 ps -aux //通过cpu和内存使用过滤进程 ps -aux --sort -pcpu | less //根据cpu使用率来降序排列 ps -aux --sort -pmem | less //根据内存使用率来降序排列 pxs -aux --sort -pcpu,+pmem | head //将cpu和内存参数合并,并通过管道显示前10个结果 ps -axjf //以树形结构显示进程 (跟 pstree效果同)top命令进程的动态列表top //动态的查看进程 键盘上的操作 : h : //显示帮助文档 b: //大写的B,加粗某些信息 f/ F : //在进程列表中添加或删除某些列 (改变进程所参照的列 , 默认按%CPU排序) u : //按照用户来显示 k : //结束某个进程 s : //改变刷新页面的时间 (默认3秒刷新一次) 按任何键返回,按q回到top命令主界面kill结束某个进程 , 进程列表有个PID的唯一标示,根据这个去关闭。kill 25500 //结束25500的PID进程 kill 25500 25501 25502 //结束多个进程(空格隔开) kill -9 25500 //立即强制结束进程 killall mysql //结束mysql所有的进程文件压缩与解压归档就是打包一个总文件,压缩就是减少体积。文件压缩分2个步骤(归档->压缩), 解压也是(先解压-->再解归档)。tar命令参数如下c : create的缩写,表示“创建”v : verbose的缩写,表示“冗余”, 会显示操作的细节f : file的缩写,表示“文件” ,指定归档文件x : 是extract的缩写,表示“取出,剔取”的意思tar -cvf book.tar /home/book/ //在book目录进行tar归档 tar -cvf book.tar 1.txt 2.txt 3.txt //文件在不同目录下归档 tar -xvf book.tar //解开归档 tar -tf book.tar //显示归档的内容,不解开 tar -rvf book.tar 4.txt //追加文件到归档 (将4.txt添加到book.tar中) gzip跟tar结合在tar命令前加多了一个“z” ,代表gziptar -zcvf book.tar.gz book/ //归档并且用gzip压缩 tar -zxvf book.tar.gz //解压gzip并且解开归档bzip2跟tar结合在tar命令前加多了一个“j” ,代表bzip2tar -jcvf book.tar.bz2 book/ //归档并且用bzip2压缩 tar -jxvf book.tar.bz2 //解压bzip2并且解开归档显示用gzip/bzip2 压缩的文件的内容/** zcat /bzcat, zmore/ bzmore ,zless /bzless **/ zcat book.tar.gz #查看压缩文件的内容 bzcat book.tar.bz2 gzip和bzip2命令 (将tar文件压缩).tar.gz : 用gzip命令压缩后的文件后缀名.tar.bz2 :用bzip2命令压缩后的文件后缀名gzip book.tar //将tar文件压缩 (格式 book.tar.gz) bzip2 book.tar //将tar文件压缩(格式 book.tar.bz2) gunzip book.tar.gz //解压gz格式,返回tar归档 bunzip2 book.tar.bz2 //解压bz2格式 ,返回tar归档zip和rar命令有些发行版没有zip包,需要安装, 安装 sudo yum install unzip 和 sudo install yum install zipunzip book.zip //解压zip文件 unzip -l book.zip //不解压.zip文件,只看其中内容 zip -r book.zip book/ //压缩为.zip文件 (-r是递归的)定时任务date命令date "+%H:%M:%S" //输出时分秒 date "+%Y:%m:%d" //输出年月日 date "+%H时:%M分:%S秒" //输出时分秒-带中文 sudo date 10121430 //表示修改时间为 10月12号14点30分at命令执行一次性的定时命令 ,先用at命令后接 想要程序执行的确定时刻 再输入你想要在以上指定时刻执行的命令[root@VM_0_4_centos ~]# at 14:12 at> touch file.txt at> <EOT> job 1 at Wed Nov 11 14:12:00 2020[at命令] 在指定间隔之后执行程序关键词:minutes-分钟 ,hours-小时 ,days - 天 ,weeks-星期 , months-月 , years-年 at now +10 minutes //10分钟后执行 at now+7 weeks //在7个星期后执行at其他命令atq //列出正等待执行的at任务 atrm 3 //删除正在等待执行的at任务[编号]sleep命令touch file.txt ; sleep 10 ; rm file.txt //10秒后删除 touch file.txt ; sleep 10m ; rm file.txt //10分钟后删除crontab命令基础命令crontab -l //显示crontab文件 crontab -e // 修改crontab文件 crontab -l //删除crontab文件定时任务10 22 * * * touch ~/file.txt //每天的22点10分都在家目录下创建file.txt 文件 47 * * * * command //每个小时的47分都执行command命令 0 0 * * 1 command //每个礼拜一的凌晨都执行command命令 */1 * * * * echo "1111" >> /home/1.txt // 每1分钟执行command命令 并写入日志进去 30 5 1-15 * * command //每个月的1~15日的5点30分执行command命令 0 0 * * 1,3,4 command //每个礼拜一,礼拜三,礼拜四的凌晨执行command命令 0 */2 * * * command //每2个小时的整点(0,2,4,6 等等)都执行command命令 * * * * * sleep 30; /home/run.sh //每30秒执行一次 (虽然最小值是分钟,可以利用sleep去进行操作)防火墙systemctl start firewalld //开启防火墙 systemctl status firewalld //查看防火墙是否运行 systemctl stop firewall //停止防火墙 (粗暴的方法) firewall-cmd --list-ports //查看开放的端口(所有) firewall-cmd --zone=public --query-port=80/tcp //查看指定开放端口 firewall-cmd --get-default-zone //查看端口区域(默认在 public) firewall-cmd --zone=public --add-port=80/tcp --permanent //防火墙开放80端口 firewall-cmd --zone=public --add-service=mysql --permanent //(用名字添加服务) firewall-cmd --zone=public --remove-port=80/tcp --permanent //不开放80端口 firewall-cmd --reload //重载配置的防火墙策略文件传输wget命令下载文件 ,wget可以使我们直接从终端控制台下载文件,只需要给出文件的HTTP或FTP地址wget [参数] [url地址] //命令格式 yum install wget //安装wget wget -c xxx //加入-c参数 ,继续中断的下载scp命令scp 可以使我们通过网络,把文件从一台电脑拷贝到另一台(文件互传)scp [源文件-被拷贝的文件] [目标文件-拷贝产生的文件] scp user@ip:file_name user@ip:file_name //ip地址表示[scp命令]从自己电脑拷贝文件到另一台电脑scp file.txt root@192.168.238.130:/root //当前file.txt拷贝到远程电脑 scp -P 8899 file.txt root@192.168.238.130:/root //不同端口号 [scp命令]从到另一台电脑文件拷贝到自己电脑scp root@192.168.238.130:/root/file.txt file.txt rsync命令rsync命令主要用于 远程同步文件 ,需要安装 yum install rsync ,参数 : -a //保留文件所有信息,包含权限。修改日期等等 ,a是archive ”归档“的意思 -r //递归调用, 表示子目录所有文件也包括 -v //输出详细操作信息 //用sync备份到同一台电脑的其他目录 rsyn -arv Imgages/backups/ // 将images目录下所有文件备份到backups目录下 //同步删除文件 rsync -arv --delete Images/backups/ //同步删除操作 //用sync备份到另一台电脑的目录 rsync -arv --delete Images/ user@192.168.238.130:backups/sftp命令sftp user@ip // 链接sftp sftp -oPort 8899 user@192.168.230.130 //修改端口 8899 ftp命令从公共的ftp服务器下载文件、 从私有的ftp服务器上传或下载文件 ,需要安装 yum install ftpftp -p ftp.cn.debian.org/debian //连接法国的ftp的debianftp操作命令跟linux的命令都差不多,大同小异,ls是列出目录,pwd显示路径等...ls //列出当前目录的文件 pwd //显示当前目录路径 cd //转换目录 delete //删除文件(不是rm) get xxx.txt //进去ftp后,下载文件 put xxx.txt //进入ftp后,上传文件配置文件用户信息文件: /etc/passwd 密码文件: /etc/shadow 用户组文件: /etc/group 用户组密码文件: /etc/gshadow 用户配置文件: /etc/login.defs 网络网卡文件 /etc/sysconfig/network-scripts/ifcfg-[网卡名]
2021年01月14日
500 阅读
0 评论
0 点赞
2020-12-24
php替换新源安装php7
安装PHP替换新的yum源yum源默认的版本太低了,手动安装有一些麻烦,想采用Yum更新安装的可以使用下面的方案1.检查当前安装的PHP包yum list installed | grep php如果有安装的PHP包,先删除他们yum remove php.x86_64 php-cli.x86_64 php-common.x86_64 php-gd.x86_64 php-ldap.x86_64 php-mbstring.x86_64 php-mcrypt.x86_64 php-mysql.x86_64 php-pdo.x86_642. 更换rpm源Centos 5.X: rpm -Uvh http://mirror.webtatic.com/yum/el5/latest.rpm CentOs 6.x: rpm -Uvh http://mirror.webtatic.com/yum/el6/latest.rpm CentOs 7.X: rpm -Uvh https://mirror.webtatic.com/yum/el7/epel-release.rpm rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm替换新源后,yum search会多出很多选择,比如 php56w 、php70w、php73w、php56w-fpm#查看 (查看源) yum search php 如果想删除上面安装的包,重新安装rpm -qa | grep webstatic rpm -e 上面搜索到的包即可3.安装安装php包含其他模块需要的依赖//php5.5 yum install php55w.x86_64 php55w-cli.x86_64 php55w-common.x86_64 php55w-gd.x86_64 php55w-ldap.x86_64 php55w-mbstring.x86_64 php55w-mcrypt.x86_64 php55w-mysql.x86_64 php55w-pdo.x86_64 //php5.6 yum install php56w.x86_64 php56w-cli.x86_64 php56w-common.x86_64 php56w-gd.x86_64 php56w-ldap.x86_64 php56w-mbstring.x86_64 php56w-mcrypt.x86_64 php56w-mysql.x86_64 php56w-pdo.x86_64 //php7.0 yum install php70w.x86_64 php70w-cli.x86_64 php70w-common.x86_64 php70w-gd.x86_64 php70w-ldap.x86_64 php70w-mbstring.x86_64 php70w-mcrypt.x86_64 php70w-mysql.x86_64 php70w-pdo.x86_64根据你需要的版本选择4.安装php-fpmyum install php55w-fpm yum install php56w-fpm yum install php70w-fpm 设置开机自启systemctl enable php70w-fpm【开机自启动】本次更新升级PHP版本即可完成!
2020年12月24日
591 阅读
0 评论
0 点赞
2020-12-24
虚拟机无法ping不通百度,并无法访问浏览器
1.重启网络试试systemctl restart network 或者 service network restart2.查看防火墙是否关闭firewall-cmd --state #查看 systemctl stop firewalld.service #停止 systemctl disable firewalld.service #禁止开机启动3. 查看网络配置文件查看 vi /etc/sysconfig/network-scripts/ifcfg-ens33配置如果设置的是静态ip(static) 把 IPADDR(IP地址)、GATEWAY(网关)、PREFIX(子网掩码)、DNS 设置好 ,DNS是根据你的虚拟机设置的网络,可在win中 cmd 查看下虚拟机的具体信息(可自行设置网络配置 -具体到Vmware中,我这连的是NAT模式)。4.查看Windows里的VM虚拟机网络服务是否关闭记得一定是要开启才能ping通。。(我就是第4步导致ping不通)
2020年12月24日
3,903 阅读
0 评论
3 点赞
2020-11-13
linux常用的解压跟压缩tar/gzip/bzip2命令
windowswindows下的常用文件压缩格式 : rar 、 zip windows下的常用的压缩解压软件 : WinRAR / 7-Zip / 好压 等..linuxLinux下常用的压缩解压软件 : gzip/ bzip2 (不能同时压缩多个文件) , tar 能同时压缩多个文件概念打包和压缩打包 : 是将多个文件变成一个总的文件 , 这个总文件通常称为 “archive” , 是英文 “存档、归档”的意思。 压缩 : 是将一个大文件通过某些压缩算法变成一个小文件结合使用首先,用tar 将多个文件归档一个总的文件 ,称为”archive“然后,用gzip或bzip2命令将 archive 压缩为更小的文件tar命令将多个文件归档参数:c : create的缩写,表示“创建”v : verbose的缩写,表示“冗余”, 会显示操作的细节f : file的缩写,表示“文件” ,指定归档文件x : 是extract的缩写,表示“取出,剔取”的意思。-cvf (创建一个tar归档)tar -cvf book.tar /home/book/ #在book目录进行tar归档 不是在一个目录下的文件, 能不能直接对文件进行归档?直接对文件进行归档操作,不需要先把所有文件放到一个目录里 (当然,最好是一个目录里)tar -cvf book.tar 1.txt 2.txt 3.txt #文件在不同目录下归档--xvf(解开归档)是跟 -cvf的相反操作,将生成的归档解开tar -xvf book.tar #解开归档-tf (显示归档里的内容,并不解开归档)tar -tf book.tar #显示归档的内容,不解开-rvf (追加文件到归档)tar -rvf book.tar 4.txt #追加文件到归档 (将4.txt添加到book.tar中)gzip和bzip2命令压缩归档gzip 比较常用 ,bzip2 不是那么常用,压缩率比gzip更大,但是更耗时。.tar.gz : 用gzip命令压缩后的文件后缀名.tar.bz2 :用bzip2命令压缩后的文件后缀名gzip命令gzip book.tar #将tar文件压缩 (格式 book.tar.gz)gzip命令bzip2 book.tar #将tar文件压缩(格式 book.tar.bz2)gunzip 和 bunzip2命令解压gzip跟解压bzip2 , 解压回tar包, un是反过来的意思。gunzip book.tar.gz #解压gz格式,返回tar归档 bunzip2 book.tar.bz2 #解压bz2格式 ,返回tar归档tar命令同时归档跟压缩可以用tar命令同时完成归档跟压缩,一气呵成,就是给tar命令多选一个选项参数,使之完成归档操作后,还是调用gzp或者bzip2命令来完成压缩操作。gzip跟tar结合参数 “x” 就是提前的意思 ,“z” 就是使用gzip-zcvf (归档,然后用gzip来压缩归档)tar -zcvf book.tar.gz book/ #归档并且用gzip压缩-zxvf (解压gzip并且解开归档)tar -zxvf book.tar.gz #解压gzip并且解开归档bzip2跟tar结合-jcvf (归档,然后用bzip2来压缩归档)tar -jcvf book.tar.bz2 book/ #归档并且用bzip2压缩-jxvf (解压bzip2并且解开归档)tar -jxvf book.tar.bz2 #解压bzip2并且解开归档zcat /bzcat, zmore/ bzmore ,zless /bzless 显示用gzip/bzip2 压缩的文件的内容zcat book.tar.gz bzcat book.tar.bz2win上的rar跟zip也可以压缩解压,cetnos yum 有zip包,但是没rar的软件包,需要网上进行rpm安装。zip/unzip 命令压缩/解压zip文件安装zip软件 sudo yum install unzip , sudo install yum install zip Red Hat一族安装方式unzip book.zip #解压zip文件 unzip -l book.zip #不解压.zip文件,只看其中内容 zip -r book.zip book/ #压缩为.zip文件 (-r是递归的)总结打包:是将多个文件变成一个总的文件 ,总文件叫“归档”linux中常用的打包命令是tar压缩是将一个大文件通过某些算法变成一个小文件linux中常用的压缩命令是 gzip跟 bzip2linux中有多重方式来压缩文件,可以用tar命令打包,再用gzip或者bzip2命令压缩 ,也可以一次性打包压缩 tar -zcvf (gzip)跟tar -jcvf (bzip2)zcat、zmore、zless 用于显示gzip压缩的文件的内容bzcat、bzmore、bzless 用于显示bzip2压缩的文件的内容zip跟unzip命令分别用于压缩和解压zip文件
2020年11月13日
687 阅读
0 评论
0 点赞
1
2