Linux一句话总结
一、Linux相关知识点 2020linux学习宝典 Linux命令网站大全 Linux基础通用知识一文通 Linux全面思维导图
Linux中的namespace(命名空间) SELINUX工作原理 Linux改终端前缀 详细查看LInux系统信息 Telnet和ssh的区别 Linux 包管理基础(apt、yum、dnf) linux中帮助参数 man whatis which info区别 Linux命令行下连接WiFi 虚拟机固定IP地址 linux 上ssh的原理 linux下添加shellinabox(web ssh) 设置Ubuntu笔记本关闭盖子不休眠 LInux通过yum安装、卸载等 LinuxSSH工具 centos7 telnet服务的安装和启动 CPU性能监控 给shell脚本传参数 vim操作详解 Linux脚本规范 /bin/bash^M: 坏的解释器问题(dos2unix命令也可以解决这个问题) linux下的source命令与./区别 Linux脚本赋值与传参方法 linux if多条件判断 bash中的运算符 linux下的 eth0,lo ,virbr0, 网卡 linux中的第二(secondary)ip 通过net-tools和ip管理linux网络 关于grep, egrep,fgrep linux shell命令执行顺序 cache,buff的区分 putty、xshell、github、Linux之间秘钥登录:(1 2 3 4) 关于非对称加密算法的理解 Centos7配置JAVA_HOME shell脚本修改配置文件 linux下tomcat的shutdown命令杀不死进程 Shell脚本的最佳实践 cenOS7(mail)内部邮件系统相关 Linux使echo命令输出结果带颜色 SHELL中的数组 Shell中的case语句 ubuntu开机自动执行脚本 Linux初始root密码设置 CentOS怎样安装Python3.6 su、su -和sudo的区别 Ubuntu默认root登录 vim8.1安装教程 centos下dnsmasq安装与配置 CentOS7 安装 Docker 和 Docker-compose ./configure && make && make install详解 centOS7相关网络配置 Centos下出现read-only file system 的解决办法 CentOS Linux解决Device eth0 does not seem to be present Linux启动php服务 linux清空文件内容的三种方法 shell中删除文件中重复行的方法 grep 无法搜索shell 传递的变量? centos8和centos7中网络配置的区别 Linux三剑客之grep,sed,awk Linux 性能分析工具合集 Linux分区增减空间的办法 crontab循环定时任务 crontab的权限与配置方式 CentOS7释放内存 centos7更新yum库为aliyun库 网易yum源镜像库 使用rz和sz进行上传和下载操作 Linux系统自动更新时间(1,2) linux下查询当前所有连接的ip linux下iptabes配置详解 Linux单机图形监控工具nmon CentOS8更换国内YUM源 Linux下目录显示的高级方式(dust, ncdu) Linux添加或修改ssh端口 Centos下查看和修改网卡Mac地址 CentOS下如何配置端口转发( iptables -t nat -A PREROUTING -p tcp --dport 6033 -j REDIRECT --to-ports 3306) Linux下常见的web运行环境和控制面板汇总 shell脚本检测端口状态 Centos彻底完全删除已安装软件的办法 .tar.gz 和.gz文件解压的方式 linux passwd批量明文修改用户密码 免密登录时遇到无法连接的问题 CentOS7下安全审计工具Lynis CentOS7一键安全加固及系统优化脚本 kali渗透测试技术实战(kali官网下载 kali文档)
二、基本Linux操作(命令与快捷键) Linux 运维人员最常用 150 个命令汇总
1)常用快捷操作:ctrl+c 强制终止; ctrl+l 清屏 ; ctrl+a 光标移动到命令首字母; ctrl+e光标移动到命令末尾字母; ctrl+u从光标位置删除至首字母 ; ctrl+z运行的命令放入后台 ; ctrl+r 在历史命令中搜索 ;
2)Linux用户管理:添加:useradd ;修改:usermod ;设置密码:passwd ;添加组:groupadd ;修改组:groupmod ;查看有哪些组:groups (参考链接1 参考链接2)
3)Linux文件管理:cat,more,less,tail,touch,cp,scp,mv,rm,chown, chmod, stat:查看文件的相关时间
4)Linux数据操作:vi,vim,awk,sed,grep,>,>>,|,
5)Linux系统管理: service,systemctl,ssh,su,sudo,(apt、yum、dnf包管理),lsof,shopt
6)Linux网络管理:nmap,ip,ifconfig,netstat,net,route,nslookup,ping,
7) Linux系统性能监控: glances htop top,vmstat,free,cat /etc/cpuinfo,w, uptime,cat ,/proc/loadavg,tload, (超全整理!Linux性能分析工具汇总合集)
三、Linux操作系统相关配置
1)CentOS现有的虚拟机是没有办法联网的,得先配置网络:vi /etc/resolv.conf 添加:nameserver 8.8.8.8 再 vi /etc/sysconfig/network-scripts/ifcfg-ens33 修改:ONBOOT=NO 改成 ONBOOT=yes 再:service network restart 重启网络可以连接外网, 再 yum -y install net-tools 安装网络工具查看IP。如果系统网络无法重启,需要查看修改/etc/sysconfig/network文件中的类容,然后重启: systemctl restart NetworkManager。 再根据需要:yum -y groupinstall "GNOME Desktop" 添加图形界面。
2) 修改机器别名:1、(centOS)直接 sudo hostnamectl set-hostname <newhostname> 2、(其他Linux)一处是 /etc/sysconfig/network,另一处是 /etc/hosts(或/etc/hostname) 127.0.0.1 localhost.localdomain localhost 。将localhost.localdomain 改为自己主机名即可。 还需要重启网络,第一步最关键。
3)centos 7关闭防火墙: systemctl stop firewalld.service #停止firewall systemctl disable firewalld.service #禁止firewall开机启动。如果是Ubuntu关闭、开启防火墙:ufw disable 、enable 禁止、启动启动:sudo ufw allow、deny :参考链接
4)Linux下变量生效方式:
1、所有用户永久生效:编辑/etc/profile 加入相应的行 然后,【source /etc/profile】 可立即且对所有用户有效(source命令也称为“点命令”,也就是一个点符号(.),是bash的内部命令。用户初始化,刷新文件,不必需要文件有执行权限)
2、编辑/home/{username}/.bash.profile 加入相应的行,便针对当这个用户永久有效
3、只让变量在当前环境有效的方法:export CLASSPATH=./JAVA_HOME/lib;$JAVA_HOME/jre/lib 退出后便没有效果了。
4、source的设置可以让环境文件依次执行,相当于启动批处理程序
5)知识点记录:1、 linux修改IP vi /etc/network/interfaces (root) 2、除去Linux中脚本的注释:egrep -v '(^$|^#)' ****.file
6)Ubuntu上开机启动的方式: 1、创建并添加添加脚本到/etc/init.d/中,2、修改/etc/rc.local,添加需要使用的脚本 3、使用update-rc.d %/etc/rc.local中的脚本名称% defaults 90 来添加开机启动项。 注意:ubuntu 18.04版开机启动相关设置:用 systemctl 命令来替换了 service 和 chkconfig 的功能。
(参考链接1:参考链接2:参考链接3:) 关于bashrc与profile
7) Linux 下设置别名缩短命令 ( vi /root/.bashrc 当前root永久生效,去掉alias:unalias vi ) Linux: 传参数给alias
8) Linux传递参数、赋值、判断参数为空的例子:
para1=$1 if [ ! $para1 ]; then echo "you have input NULL, please input the master's IP after the shell! Like: ./*.sh 192.168.1.1" else read -p " The master's IP is =>> $para1 <<== ? If not, please Ctrl+c and input again! If yes,ENTER to continue." fi
9) Linux之间ssh登陆:1,ssh-keygen -t rsa ~/.ssh目录下产生的id_rsa.pub内容复制到需要远程的机器的~/.ssh/authorized_keys 中,如果没有authorized_keys就创建。或者不登录远程机器,直接通过ssh-copy-id -i ~/.ssh/id_rsa.pub {user}@{ip} 登陆。
10)Linux上软件:关于LNMP的配置详解
11)vim全局替换::%s/vivian/sky/g
12)linux定时备份数据库:
#backup all databases on mysql
DATE=$(date +%F"_"%H:%M:%S)
DB_FILE_NAME=/data/db_backup/mysql_backup_all_$DATE
mysqldump -uroot -proot --all-databases > $DB_FILE_NAME.sql
13) ssh 超时设置举例:ssh -o ConnectTimeout=3 -p $PORT $USER@$IP
14) crontab 重启生效:service crond restart
15)添加用户并加入root组(比如dev01用户):useradd dev01 、 passwd dev01 、 usermod -g root dev01 、 su - dev01 、 groups(进入本用户查看自己组)
16)查看系统启动具体时间: date "+%Y-%m-%d %H:%M:%S" -d "$(awk '{print $1}' /proc/uptime) second ago" (如果是查看直接使用命令:uptime)
四,Linux疑难问题解决:ubuntu软件包间的依赖关系问题 centos5中root密码破解 centos6中root密码破解 centos7中root密码破解 centos8中root密码破解 ssh登录时在参数中加入密码的解决方案