
自学linux
Mikaelemmmm
web开发工程师,喜欢研究各种技术
展开
-
docker
1、docker run -p 8080:80 -d daocloud.io/nginx //p端口映射,将docker中的8080端口映射成本地的80端口,-d允许程序直接返回,相当于将当前的container作为守护进程来执行2、docker ps //查看当前正在运行的container docker ps -a //查看之前所有运行过的contai...原创 2018-11-08 15:35:04 · 183 阅读 · 0 评论 -
34 linux系统管理
1、进程查看进程:正在执行的一个程序或一个命令,每一个进程都是一个运行的实体,都有自己的地址空间,并占用一定的系统资源。2、 进程管理的作用2.1 判断服务器健康状态2.2 查看服务器系统中的所有进程2.3 杀死进程3、查看系统中的进程3.1 ps aux 【推荐】:查看系统中所有进程,使用BSD操作系统格式 ,x:查看所有后台进程;a:查看所有前台进程 ;u:显示这原创 2017-06-30 18:45:19 · 282 阅读 · 0 评论 -
33 linux服务管理
1、服务的分类1.1 rpm包安装的服务:默认的服务1.1.1 独立的服务:直接就在内存当中,当用户访问时,直接提供用户服务,好处响应快,坏处这样服务越多,占用内存越多1.1.2 基于xinetd服务:xinetd服务本身是独立的,就在内存中,基于它的服务不驻扎在内存,例如isync服务是基于xinetd服务,当访问isync时候,不能直接访问isync服务,要先访问内存中的原创 2017-06-30 17:25:54 · 269 阅读 · 0 评论 -
32 流程控制
1、单分支条件语句 if [ 判断语句 ];then 程序 fi或者if [条件判断] then程序fi例子1:如果根分区超过80%,发警告: #!/bin/bashrate=$(df -h | grep "/dev/sda5" | awk '{print $5}' | cut -d % -f 1)if [原创 2017-06-30 14:23:26 · 188 阅读 · 0 评论 -
31、条件判断
1、条件判断1.1 方法一:test -e test.txt echo $? //0正确1.2 方法二:[ -e test.txt ]echo $? //0正确1.3 方法三 :[ -d /root ] && echo 'yes' || echo 'no' //是否是目录[ -f /root/t原创 2017-06-29 19:29:59 · 332 阅读 · 0 评论 -
30 字符串处理命令
1、sortsort -f /etc/passwd //正向排序 ,-f忽略大小写sort -r /etc/passwd //反向排序sort -t ":" -k 3,3 /etc/passwd //按照“:”来分割,从第3个字段到第3个字段(也就是按照第三个字段来排序),如果第二个三不写就从第3个字段到最后一个字段sort -n -t原创 2017-06-29 19:27:30 · 293 阅读 · 0 评论 -
29 字符提取命令 cut、printf、awk、sed
1、cut 提取符合条件的列(grep提取符合条件的行):-f:列号,提取第几列-d:分隔符,按照指定的分隔符分隔例子:test.txt是以下内容ID NAME GENDER MARK1 张三 M 802 赵四 M原创 2017-06-29 11:43:02 · 650 阅读 · 0 评论 -
28 正则表达式
1、正则表达式与通配符1.1 正则表达式:用来在文件中匹配符合条件的字符串,正则是包含匹配。grep、awk、sed等命令可以支持正则表达式。1.2 通配符:通配符是匹配符合条件的文件名,通配符是完全匹配。ls、find、cp这些命令不支持正则表达式,只支持通配符。原创 2017-06-27 23:33:01 · 392 阅读 · 0 评论 -
27 环境变量配置文件
1、”source 配置文件 “ 或者“ . 配置文件(注意“点”与“配置文件中间有空格”) ”,使配置文件编辑之后立即生效2、PATH(PATH="$PATH":/root)、HISTSIZE、PS1、HOSTNAME等,只要通过set查到的默认变量(不包括自定义变量),都要写道配置文件中3、配置文件包括以下几个:/etc/profile/etc/profile.d/*.sh原创 2017-06-27 14:43:37 · 328 阅读 · 0 评论 -
26 变量测试与内容替换
原创 2017-06-26 19:42:43 · 256 阅读 · 0 评论 -
35、定时任务crontab
【注】:想要使用crontab一定要启用crond服务,注意crond是一个服务1、crond服务管理与访问控制1.1 启动crond:service crond restart1.2 设置为开机自启动:chkconfig crond on一般不需要启动,与设置开机自启动,一般linux默认都是启动的,并且默认是开机自启动2、crond服务启动后就可原创 2017-07-05 18:36:19 · 412 阅读 · 0 评论 -
36 日志管理
1、日志服务:在centos6.x中,rsyslogd取代了以前的syslogd2、常见系统日志、rpm包日志的位置以及作用2.1 /var/log/cron记录了系统定时任务相关日志2.2 /var/log/cups 记录打印信息的日志2.3 /var/log/dmesg 记录了系统在开机时内核自检信息。也可以使用dmesg命令直接查看内核自检信息。2.4 /var/原创 2017-07-05 19:48:04 · 484 阅读 · 0 评论 -
37、linux (centos6.x)启动管理,运行级别与启动过程
37.1 运行级别37.1.1 配置文件 /etc/inittab0 关机1 单用户模式,可以想象成为windows的安全模式,只启动最基本的服务,用于修复系统2 不完全命令行模式,不包含NFS服务(linux与windows之间进行共享的一个服务)3 完全命令行模式,就是标准字符界面4 系统保留5 图形模式6 重启37.1.2 查看当前运行级别原创 2017-07-06 17:16:59 · 429 阅读 · 0 评论 -
windows下的docker端口映射无法访问问题解决
转自:https://www.wangminli.com/?p=1179 docker是运行在Linux上的,在Windows中运行docker,实际上还是在Windows下先安装了一个Linux环境,然后在这个系统中运行的docker。也就是说,服务中使用的localhost指的是这个Linux环境的地址,而不是我们的宿主环境Windows。我们可以通过命令: docker-machine i...转载 2018-11-09 15:16:18 · 4096 阅读 · 0 评论 -
jenkins 配置安全策略admin没有Overall/Read权限
https://blog.youkuaiyun.com/mynameissls/article/details/70227838转载 2018-10-17 14:35:24 · 2739 阅读 · 0 评论 -
git在linux下建立仓库
1,linux下建立git仓库1.1、安装Git$ yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel perl-devel$ yum install git接下来我们 创建一个git用户组和用户,用来运行git服务:$ groupadd git$ useradd git -g ...原创 2018-10-16 13:23:09 · 646 阅读 · 0 评论 -
linux下git升级
安装需求: ># yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel asciidoc ># yum install gcc perl-ExtUtils-MakeMaker 卸载Centos自带的git1.7.1:通过git –version查...原创 2018-10-16 10:20:36 · 9035 阅读 · 1 评论 -
Let's Encrypt
https://cloud.tencent.com/info/b11324c3ca9bca5fd986bdb0b3bec1ac.html转载 2018-08-30 11:42:41 · 167 阅读 · 0 评论 -
linux服务器卡顿排查
1、查看内存free -g / free -m echo 3 > /proc/sys/vm/drop_caches //释放内存2、查看磁盘空间df -h //查看磁盘空间du -sh /dir //查看文件夹占用大小3、查看磁盘io情况iostat -x 10 //每隔10s一次CPU 属性值%user:CPU处在用户模式下的时间百分比。 ...原创 2018-08-24 10:37:09 · 7178 阅读 · 0 评论 -
瓦力发布系统安装部署
1、yum install ansible2、git clone https://github.com/meolu/walle-web.git(检出代码)3、composer install4、配置config/web.php 与config/local.php的数据库配置5、 ./yii walle/setup6、配置nginx7、将宿主机www用户生成公钥、秘钥,然后将宿主机的w...原创 2018-06-09 18:08:49 · 1625 阅读 · 0 评论 -
配置ssh登录服务器,禁止密码登录
1、本地使用xshell生成公钥,我记得生成完要输入密码,那里不要输入否则后面还要输入密码,将公钥放在/root/.ssh/authorized_keys中2、vim /etc/ssh/sshd_config (这里一定要注意!!!,不是ssh_config,是sshd_config) 然后编辑如下(下面3个注释打开并编辑如下): AuthorizedKeysFile ...原创 2018-06-09 18:08:16 · 16460 阅读 · 0 评论 -
38 linux数据备份与恢复
1、linux下经常需要备份的目录:/root/目录、/home/目录、/etc/目录、/var/spool/mail/目录、其他目录(自己安装的服务,如apache、mysql)apache需要备份的数据:配置文件、网页主目录、日志文件mysql需要备份的数据:源码包安装的mysql:/usr/local/mysql/data、rpm包安装的msyql:/var/lib/mysql原创 2017-07-06 17:21:02 · 296 阅读 · 0 评论 -
25 数值运算与运算符
1、数值运算错误的计算:$a=1 $b=2 $c=$a+$b//1+2 , linux必须使用运算方法,否则不会计算 2、declare [+/-] [选项][变量名](不推荐)-:给变量设定类型属性+:取消变量类型属性-i:将变量声明为整数型-x:将变量声明为环境变量(一般不用,还是习惯用export加入环境变量)-p:显示原创 2017-06-26 19:36:31 · 385 阅读 · 0 评论 -
24 shell变量(自定义变量、环境变量、位置参数变量、预定义变量)
【注】:set查看系统当中所有变量(包括系统中环境变量,系统变量,自定义变量)1、自定义变量(字母数字下划线,不能以数字开头),只在当前shell生效,子shell或者其他shell都不生效:赋值 :a=123; //123 a="$a"456; //叠加,123456 a="${a}"789;//也可以这样叠加,123456789调用: $a原创 2017-06-26 14:09:49 · 829 阅读 · 0 评论 -
23、输入输出重定向
1、标准输入:计算机输入设备(键盘、鼠标。。。),文件名:/dev/stdin,文件描述符 :02、标准输出:计算机输出设备(屏幕显示器、打印机、投影仪。。), 文件名:/dev/stdout ,文件描述符 :13、标准错误输出:设备(显示器) ,文件名: /dev/stderr ,文件描述符 :24、标准输出重定向:本来输出的内容是是出在屏幕上,但是我们使他输出在文件中原创 2017-06-26 11:39:17 · 272 阅读 · 0 评论 -
10、脚本安装包
1、下载软件包2、解压缩3、执行setup.sh(install.sh等)原创 2017-06-13 23:51:31 · 259 阅读 · 0 评论 -
9、源码包管理
1、源码包与rpm包的区别1.1 :安装之前的区别:概念上的区别(源码包开源,更自由,安装慢,容易出错;rpm包不能看到源码,安装快,不容易出错)1.2: 安装之后的区别:安装位置不同1.2.1 rpm包安装位置(默认位置,绝大多数rpm包安装位置):1.2.1:配置文件安装目录:/etc/1.2.2:可执行命令安装目录:/usr/bin(/usr/sbin)1.2原创 2017-06-13 22:57:13 · 301 阅读 · 0 评论 -
8、使用setup设置网络
1、setup 弹出设置网络界面,设置完成2、centos默认网卡没有打开,需要先打开,在重启网络服务,打开网卡2、重启服务器(shutdown -r now)、或者重启网络服务(service network restart)原创 2017-06-13 19:45:19 · 1074 阅读 · 0 评论 -
7、rpm包(二进制包、系统默认包)常用操作(rpm、yum)
包全名: xxx.2.3.15-15.ie6-centos-xxx.rpm,进行rpm操作未安装的命令,使用包全名包名:xxx,进行rpm操作已经安装过的命令,使用包名1、rpm命令1.1、安装rpm包:rpm -ivh 包全名 //i:安装 v:安装详细信息 h:进度【注】:只能写包全名,包全名一定要跟所在路径,一般都是光盘packages下1.2、升级rpm包:r原创 2017-06-12 22:55:28 · 585 阅读 · 0 评论 -
6、vim常用操作
1、插入命令 a(A)、i(I)、o(O)a:在光标所在字符后插入A:在光标所在行末尾插入i:在光标所在字符前插入I:在光标所在行首插入o:在光标所在行下一行插入O:在光标所在行上一行插入2、定位命令2.1 设置行号:set nu2.2 取消行号:set nonu2.3 到第一行:gg 2.4 到最后一行:G 2.5 到第n行: :原创 2017-06-12 19:55:08 · 300 阅读 · 0 评论 -
5、linux常用不太记得住命令
1、ls -aldi /etc :查询文件、 目录lrwxrwxrwx : ( l:软连接 -:二进制文件 d:文件夹) 所有者(u)有读写执行权限 所属组(g) 有读写执行权限 其他人(o)有读写执行权限3 : 引用计数原创 2017-05-27 19:28:34 · 768 阅读 · 0 评论 -
4、linux各目录作用
1、/bin :存放普通用户执行的命令的目录,root也可以执行,单用户模式下也可以使用2、/sbin:存放和系统环境设置相关的命令,只有root才能使用这些命令进行系统环境设置,但是有些命令可以让普通用户查看,但不能执行3、/usr/bin:存放系统命令相关的目录,普通用户和root用户都能执行,这些命令和系统启动无关,在单用户模式下不能使用4、/usr/sbin:存放根文件系统不必原创 2017-05-27 15:47:58 · 335 阅读 · 0 评论 -
3、远程连接、vmware网卡(桥接、nat..)
网卡:我的电脑上有两个网卡,一个本地网卡(以太网),一个无线网卡,装完虚拟机会多出两块网卡,VMnet1与VMnet8一、理论:1、桥接:虚拟机会用真实的本地网卡(以太网)跟真实机通信,可以跟局域网所有真实计算机通信,缺点占用内网一个真实IP,可能造成IP地址冲突2、NAT:虚拟机是通过VMnet8(虚拟出来的假网卡),跟真实机通信,只能跟自己的真实机通信,不能跟局域网原创 2017-05-27 15:47:27 · 588 阅读 · 0 评论 -
2、linux下centOS系统分区
一、分区:1、主分区:最多4个2、扩展分区: 最多只能有1个主分区加扩展分区最多只能有4个不能写入数据,只能包含逻辑分区3、逻辑分区以上分区限制,不是linux限制的,而是硬盘限制的逻辑分区从5开始,因为1、2、3、4是给主分区和扩展分区用的,就算一个硬盘中,只有一个主分区,一个扩展分区,逻辑分区也必须从5开始一般都是一个主分区,一个扩展分区,剩下给原创 2017-05-27 15:43:50 · 2053 阅读 · 0 评论 -
11、用户配置文件
1、 用户信息文件1.1 /etc/passwd : 用户名:密码标志:uid:组id:用户说明:家目录:用户登录后的shell (man 5 passwd,可以查看passwd配置文件帮助信息,passwd不能带绝对路径)用户名:就是登陆账号密码标志(标识):不是密码,真正密码发在/etc/shadow(权限000,只有root能编辑)下。x代表有密码,不原创 2017-06-14 12:41:47 · 349 阅读 · 0 评论 -
12、用户管理命令
1、useradd 添加用户useradd -u(指定uid) 550 -d(家目录) /lvxiujun -g(初始组) group -G(附加组) ad,ap,aa -s(shell) /bin/bash -c(说明) "this is a good boy" lvxiujun2、passwd 密码passwd -S lvxiujun //原创 2017-06-15 14:28:11 · 320 阅读 · 0 评论 -
13、权限管理之ACL权限
ACL权限(解决所有者、所属组、其他人命令不足情况):1 ACL简介与开启1.1: 什么是ACL权限:当一个临时其他用户A想对/data/test(750权限)拥有x权限,系统又不想把test所有者变为这个A也不想将A加入test所属组,那就单独针对这个文件夹给A设置ACL权限的x,他虽然不是该文件的所有者、也不属于所属组,他就会有x权限,这就是ACL权限存在的意义1.2、查看分区命令原创 2017-06-15 18:09:44 · 614 阅读 · 0 评论 -
20、分配swap分区
1、free:查询swap分区与内存大小,使用情况 -m:按照M来计算total :一共多大 used:已使用 free:空闲 shared:共享多少 buffers:缓冲区多少(加速写入数据时候,当未达到一定量不写入硬盘,先写入缓冲区,当缓冲区内容达到一定量,在一次性写入磁盘,这样减少与磁盘的IO) cached:缓存(加原创 2017-06-21 17:34:15 · 489 阅读 · 0 评论 -
22 shell脚本执行方式
1、echo 命令1.1、普通输出:echo "you are niubi"1.2、将特殊符号当字符串处理就用单引号:echo 'you are \n niubi!!!'1.3、-e可以转移反斜线:echo -e "you are \n牛逼" 1.4、echo输出颜色:echo -e "\e[1;31m abcd \e[0m" //这样就输出abcd为红色的了,‘a原创 2017-06-26 10:34:26 · 311 阅读 · 0 评论 -
21、shell编程简介
1、shell定义:1.1 :命令解释器,向内核发送请求的一个界面,其实每打开一个命令行窗口界面就是一个shell。1.2 :也是一种编程语言。2、shell命令解释器作用:ls、cp->shell命令解释器(将ls、cp转换成0101通知给内核)->内核(内核带着010101去调用计算机硬件)->计算机硬件,然后执行完成后再按照原路返回给外部应用程序。3、bsh(sh)、csh原创 2017-06-21 17:53:47 · 196 阅读 · 0 评论