首页 文章 精选 留言 我的

精选列表

搜索[linux],共10000篇文章
优秀的个人博客,低调大师

linux7 搭建ELK日志分析

官网地址:https://www.elastic.co/cn/ 官网权威指南:https://www.elastic.co/guide/cn/elasticsearch/guide/current/index.html 安装指南:https://www.elastic.co/guide/en/elasticsearch/reference/5.x/rpm.html ELK是Elasticsearch、Logstash、Kibana的简称,这三者是核心套件,但并非全部。 Elasticsearch是实时全文搜索和分析引擎,提供搜集、分析、存储数据三大功能;是一套开放REST和JAVA API等结构提供高效搜索功能,可扩展的分布式系统。它构建于Apache Lucene搜索引擎库之上。 Logstash是一个用来搜集、分析、过滤日志的工具。它支持几乎任何类型的日志,包括系统日志、错误日志和自定义应用程序日志。它可以从许多来源接收日志,这些来源包括 syslog、消息传递(例如 RabbitMQ)和JMX,它能够以多种方式输出数据,包括电子邮件、websockets和Elasticsearch。 Kibana是一个基于Web的图形界面,用于搜索、分析和可视化存储在 Elasticsearch指标中的日志数据。它利用Elasticsearch的REST接口来检索数据,不仅允许用户创建他们自己的数据的定制仪表板视图,还允许他们以特殊的方式查询和过滤数据 准备 ELK 要求本地环境中安装了 JDK 。如果不确定是否已安装,可使用下面的命令检查:[root@jiaxin-ceshi src]# java -version一、安装Elasticsearch官网https://www.elastic.co/cn/downloads/elasticsearch[root@jiaxin-ceshi src]# wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.4.2.tar.gz[root@jiaxin-ceshi src]# tar xf elasticsearch-6.4.2.tar.gz [root@jiaxin-ceshi src]# cd elasticsearch-6.4.2[root@jiaxin-ceshi bin]# ./elasticsearch直接运行报错创建用户和组[root@jiaxin-ceshi elasticsearch-6.4.2]# groupadd elsearch[root@jiaxin-ceshi elasticsearch-6.4.2]# useradd elsearch -g elsearch -p elasticsearch切换成 elsearch 用户 运行又报错在切换回 root

优秀的个人博客,低调大师

linux安装LNMP环境之安装PHP

下载插件包 yum -y install gcc gcc-c++ libxml2 libxml2-devel bzip2 bzip2-devel libmcrypt libmcrypt-devel openssl openssl-devel libcurl-devel libjpeg-devel libpng-devel freetype-devel readline readline-devel libxslt-devel perl perl-devel psmisc.x86_64 recode recode-devel libtidy libtidy-devel epel-release libmcrypt-devel 下载 cd /usr/local/src/ wget http://cn2.php.net/distributions/php-5.6.32.tar.gz 解压 tar zxvf php-5.6.32.tar.gz 预编译 cd php-5.6.32 创建php-fpm用户,并禁止登录; useradd -s /sbin/nologin php-fpm ./configure --prefix=/usr/local/php --sysconfdir=/usr/local/php/etc --with-config-file-path=/usr/local/php/etc/ --with-fpm-user=php-fpm --with-fpm-group=php-fpm --enable-fpm --with-mysql=mysqlnd --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --with-mhash --with-openssl --with-zlib --with-bz2 --with-curl --with-libxml-dir --with-gd --with-jpeg-dir --with-png-dir --with-zlib --enable-mbstring --with-mcrypt --enable-sockets --with-iconv-dir --enable-zip --with-pcre-dir --with-pear --enable-session --enable-gd-native-ttf --enable-xml --with-freetype-dir --enable-gd-jis-conv --enable-inline-optimization --enable-shared --enable-bcmath --enable-sysvmsg --enable-sysvsem --enable-sysvshm --enable-mbregex --enable-pcntl --with-xmlrpc --with-gettext --enable-exif --with-readline --enable-ftp --enable-redis 提示错误mcrypt.h没有找到,安装libmcrypt-devel包,默认的yum源,没有这个包,需要安装epel扩展源后,才可以安装。 [root@localhost php-5.6.32]# yum install -y epel-release [root@localhost php-5.6.32]# yum install -y libmcrypt [root@localhost php-5.6.32]# yum install -y libmcrypt-devel 再次执行./configure,没有错误提示,出现Thank you for using PHP,配置OK。 image.png 检查是否安装正确 make && make install echo $? 如果出现0 就说明正确了. 配置文件 需要将当前目录下的php.ini文件拷贝到 php的安装目录etc下 cp php.ini-production /usr/local/php/etc/php.ini php.ini 文件是在包目录下的 php.ini-development(开发), php.ini-production(生产) 拷贝php启动脚本,php-fpm配置文件,更改php-fpm权限为755;添加php-fpm开机启动; [root@ php-5.6.32]# cp /usr/local/src/php-5.6.32/sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm (启动脚本) [root@ php-5.6.32]# mv /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf (就是去掉了末尾的.default ) [root@ php-5.6.32]# chmod 755 /etc/init.d/php-fpm [root@lphp-5.6.32]# chkconfig --add php-fpm [root@lphp-5.6.32]# service php-fpm start Starting php-fpm done [root@php-5.6.32]# chkconfig php-fpm on 将php的安装目录也加入到系统的环境变量 在最后一行加入 vim /etc/profile export PATH=/usr/local/php/bin:$PATH source /etc/profile //重新加载 [root@localhost ~]# php -v PHP 5.6.32 (cli) (built: Mar 12 2018 17:43:15) Copyright (c) 1997-2016 The PHP Group Zend Engine v2.6.0, Copyright (c) 1998-2016 Zend Technologies完成 接下来就是测试 vim /usr/local/nginx/conf/nginx.conf location / { root /www/test; index index.html index.htm index.php; try_files $uri $uri/ /index.php?$query_string; if (!-e $request_filename){ rewrite ^(.*)$ /index.php?s=$1 last; break; } } 将请求转给php的9000端口 确保nginx 和PHP都是运行的哈。 location ~ \.php$ { root /www/test; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } 我的是根目录下的www/ 写个index.php 里面加入phpinfo(); 看能否成功。 image.png

优秀的个人博客,低调大师

linux 批量杀死多个进程 kill

(ps|grep python|awk '{print $1}')|xargs kill -9 管道符“|”用来隔开两个命令,管道符左边命令的输出会作为管道符右边命令的输入。下面说说用管道符联接起来的 几个命令: “ ps - ef”是Red Hat 里查看所有进程的命令。这时检索出的进程将作为下一条命令“grep LOCAL=NO”的输入。 “grep LOCAL=NO”的输出结果是,所有含有关键字“LOCAL=NO”的进程,这是Oracle数据库中远程连接进程的共同特点。 “grep -v grep”是在列出的进程中去除含有关键字“grep”的进程。 “cut -c 9-15”是截取输入行的第9个字符到第15个字符,而这正好是进程号PID。 “xargs kill -9”中的xargs命令是用来把前面命令的输出结果(PID)作为“kill -9”命令的参数,并执行该令。 “kill -9”会强行杀掉指定进程,这样就成功清除了oracle的所有远程连接进程。其它类似的任务,只需要修改“grep LOCAL=NO”中的关键字部分就可以了。 killall 进程名 如杀死java相关进程:killall java

优秀的个人博客,低调大师

Linux中管理用户和组命令

添加用户 useradd 常用选项 -u 设置用户uid -d 家目录路径 -s 登录shell-g 基本组 -G 附加组 例:创建dabao用户 ,设置 uid为1234 useradd -u 1234 dabao 验证dabao用户 id dabao uid=1234(dabao) gid=1234(dabao) 组=1234(dabao) 建立一个用户xiaogege,并且设置禁止登录shell useradd -s /sbin/nologin xiaogege 在用户信息文件/etc/passwd中查看xiaogege用户信息 grep 'xiaogege' /etc/passwd xiaogege:x:1235:1235::/home/xiaogege:/sbin/nologin验证用户 su - xiaogege This account is currently not available. (不能登录) 建立用户xiaojiejie,并且设置附加组为yuema创建附加组 groupadd yuema 创建用户并设置附加组[root@openstack ~]# useradd -G yuema xiaojiejie验证用户[root@openstack ~]# id xiaojiejieuid=1236(xiaojiejie) gid=1237(xiaojiejie) 组=1237(xiaojiejie),1236(yuema)设置登录密码语法格式 : echo '密码' | passwd --stdin 用户名设置dabao用户的密码为123 echo '123' | passwd --stdin dabao 更改用户 dabao 的密码 。passwd:所有的身份验证令牌已经成功更新修改用户属性usermod [选项] 用户名更改dabao的uid为1001 usermod -u1001 dabao [root@openstack ~]# id dabaouid=1001(dabao) gid=1234(dabao) 组=1234(dabao)常用选项 -u 用户id -d 家目录路径 -s 登录shell-g 基本组 -G 附加组删除用户 userdel语法格式 userdle [-r] 用户名 ,加-r的意义在于是否删除用户的家目录,可不加 管理组成员 groupadd 创建一个名为woaiwojia的组 groupadd woaiwojia 验证创建的组 grep 'woaiwojia' /etc/group woaiwojia:x:1238: 把用户加入组 gpasswd gpasswd -a dabao woaiwojia 正在将用户“dabao”加入到“woaiwojia”组中[root@openstack ~]# id dabaouid=1001(dabao) gid=1234(dabao) 组=1234(dabao),1238(woaiwojia) 将dabao从woaiwojia中删除 # gpasswd -d dabao woaiwojia正在将用户“dabao”从“woaiwojia”组中删除[root@openstack ~]# id dabaouid=1001(dabao) gid=1234(dabao) 组=1234(dabao)删除组 groupdel 语法格式 : groupdel 组名 groupdel woaiwojia grep 'woaiwojia' /etc/group

优秀的个人博客,低调大师

Linux上重启服务的正确命令

在开发环境下,我们经常需要部署代码,重启服务,所以会把命令写在脚本中,方便使用。 我们可能这么写 #!/bin/bash ps -ef | grep backend-api-1.0 | grep -v "\-\-color" |awk '{print $2}' |xargs kill -9 sleep 1 nohup java -jar backend-api-1.0.jar >> backend-api.log 2>&1 & tail -f backend-api.log 这个脚本看似没问题,可执行时,会出现kill: 向 PID 发送信号失败: 没有那个进程的错误,但是服务仍然能正常重启,也就是ps -ef | grep backend-api-1.0 | grep -v "\-\-color"这个命令并没有把当前执行进程过滤掉。 正确写法是:取项目名中的两个不同的单词,用两次grep,而不是用grep -v,如下 #!/bin/bash ps -ef | grep backend | grep api |awk '{print $2}' |xargs kill -9 sleep 1 nohup java -jar backend-api-1.0.jar >> backend-api.log 2>&1 & tail -f backend-api.log

优秀的个人博客,低调大师

linux命令下~docker的使用学习

docker 安装 centossudo yum updatesudo yum install dockerdocker 安装 Ubuntusudo apt-get updatesudo apt-get install docker.io检验其版本号docker -v启动dockerservice docker start 启动的图片查询某个镜像docker search 镜像名比如docker search redis docker查询命令docker search Mongodb Mongodb镜像镜像下载 docker pull redis 下载镜像 。 下载镜像成功 这个下载特别看网速,所以如果是网速不好的话 最好准备好提前下载不然用的时候很麻烦。我的云服务器就是1m带宽,下载很慢就换到本地虚拟机上学习用。 云服务器上的就继续下载其他的。、 查看镜像列表docker images 查看镜像列表镜像删除 docker rmi删除指定镜像 删除成功docker rmi ( docker ps -a -q) 删除所有容器查看容器日志 docker logs container-name/container-id docker logs test-redis 查看日志删除dockeryum list installed |grep docker 查看 安装的docker内容yum -y remove docker-* 删除安装的docker 内容 原文发布时间为:2018-07-11本文作者:mengrui本文来自云栖社区合作伙伴“LuckQI”,了解相关信息可以关注“LuckQI”。

优秀的个人博客,低调大师

你需要知道的Linux安全

1. 账号以及密码一定要复杂,密码需要符合这些规范:字符大于 10 个;至少包含大小写以及数字;密码中不能包含账号,不能包含自己的姓名全拼,不能有自己的生日数字,不能有自己的电话号码;密码要定期更换;不能把密码保存在记事本等文档中要用专业的存密码的软件保存。 2. 可以拿一台机器作为跳板机来登陆其他服务器,其他服务器做登陆 ip 限制。 /etc/shos.allow, /etc/hosts.deny 3.能使用密钥尽量避免使用密码登陆。 vim /etc/ssh/sshd_config //PermitRootLogin without-password 改为 PermitRootLogin no 4.可以禁止 root 直接登陆服务器,只允许普通用户登录,普通用户 su 到 root(PermitRootLogin no)。 vim /etc/ssh/sshd_config chkconfig --list chkconfig nginx off 5.服务器上用不到的端口关闭,用不到的服务停掉(ntsysv)。 6.应用环境程序软件(apache,nginx,php,mysql)避免使用太老版本。 7.不可逆操作在操作前一定要备份相关的数据或配置文件。 8.重要数据一定要备份,尽量本地和远程存两份。 9.敲命令切勿太快,避免误操作。 10.web 禁止目录浏览。 (apache:Option -Indexes;nginx编译时加上 --without-http_autoindex_module) 11.web 可写目录下禁止解析 php。 (apache:php_admin_flag engine off;nginx:location ~.*abc/.*\.php?${deny all;} 12.web 默认虚拟机主机禁止访问,apache 第一个虚拟主机,nginx 如果不单独分离虚拟主机配置文件也为第一个,否则就是有“listen 80 default”那个。 13.设定 php 禁用函数:php.ini 中增加。 disable_functions = popen,passthru,escapeshellarg,escapeshellcmd,escapeshellarg,shell_exec,proc_get_status,ini_alter,ini_restore,dl,pfsockopen,openlog,syslog,readlink,symlink,leak,popepassthru,stream_socket_server,popen,proc_open,proc_close,phpinfo 14.php.ini 中关闭 display_error。 15.站点后台访问需要限定 ip。 (apache http://hanwen.me nginx: http://hanwen.me) 16.建议每个站点都配置访问日志,并且做日志切割压缩归档,磁盘空间允许的话,尽量存放比较久的时间. 17.尽量避免开放 ftp 服务,如果要开放要满足两个原则:1. 限定 ip 访问(iptables实现);2. 密码设置一定要复杂。 最后,希望大家有所收获。

资源下载

更多资源
Nacos

Nacos

Nacos /nɑ:kəʊs/ 是 Dynamic Naming and Configuration Service 的首字母简称,一个易于构建 AI Agent 应用的动态服务发现、配置管理和AI智能体管理平台。Nacos 致力于帮助您发现、配置和管理微服务及AI智能体应用。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据、流量管理。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。

Rocky Linux

Rocky Linux

Rocky Linux(中文名:洛基)是由Gregory Kurtzer于2020年12月发起的企业级Linux发行版,作为CentOS稳定版停止维护后与RHEL(Red Hat Enterprise Linux)完全兼容的开源替代方案,由社区拥有并管理,支持x86_64、aarch64等架构。其通过重新编译RHEL源代码提供长期稳定性,采用模块化包装和SELinux安全架构,默认包含GNOME桌面环境及XFS文件系统,支持十年生命周期更新。

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。

WebStorm

WebStorm

WebStorm 是jetbrains公司旗下一款JavaScript 开发工具。目前已经被广大中国JS开发者誉为“Web前端开发神器”、“最强大的HTML5编辑器”、“最智能的JavaScript IDE”等。与IntelliJ IDEA同源,继承了IntelliJ IDEA强大的JS部分的功能。

用户登录
用户注册