生产环境日常命令

查看http的并发请求数与其TCP连接状态

netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'

{++S[$NF]统计每行最后一个出现的次数,至少一次,放入数组中$NF的意思就是打印最后一行
END前面是把最后一个字段+1放到数组S中,END是把数组打印出来,
关联数组的key是最后一个字段的值,value都是1(因为默认值是0,++后是1)
查看当前系统每个ip的连接数

ESTABLISHED:正常数据传输状态

CLOSED:无连接是活动 的或正在进行

TIME_WAIT:另一边已初始化一个释放

查看当前系统每个IP的连接数

netstat -n | awk '/^tcp/ {print $5}'| awk -F: '{print $1}' | sort | uniq -c |sort -rn

sort:排序并输出
uniq:去重复行

用tcpdump嗅探80端口的访问看看谁最高

tcpdump   -i eth0 -tnn dst port 80 -c 1000 | awk -F"." '{print $1"."$2"."$3"."$4}' | sort | uniq -c | sort -nr  |head -20

结果:
1000 packets captured
1002 packets received by filter
0 packets dropped by kernel

1000 IP 192.168.1.103

#查看网站并发连接数

netstat -nat|grep ESTABLISHED|wc –l

查询访问IP总量

awk '{print $1}' /var/log/nginx/access.log|sort|uniq -c|sort -nr |wc -l

查询访问量前10的ip

awk '{print $1}' /var/log/nginx/access.log|sort|uniq -c|sort -nr |head -10

PV访问量(Page View),即页面访问量,每打开一次页面PV计数+1,刷新页面也是

IP访问数指公网IP访问数

UV访问数(Unique Visitor)指独立访客访问数,一台电脑终端为一个访客

 

在/test目录中查找包括ibm内容的文件

ls /test |xargs grep -ri "ibm"

打印nginx.conf的行号和内容

cat -n /etc/nginx.conf

 


替换文件内容
vim /test/test.txt
:%   s/b/a/g
sed  -i  's/a/bb/g'  test.txt

linux如果挂载wind共享目录

mount -t  cifs  -o usernam=账户名,password=密码 //ip/目录  挂载目录

shell下32位随机密码生成
cat /dev/urandom | head -1 | md5sum | head -c 32 >> /pass

 

写一个脚本查找最后创建时间是3天前,后缀是*.log的文件并删除

find / -name "*.log" -ctime +3 -exec rm -f {} \;

写一个脚本将某目录下大于100K的文件移动至/tmp

#!/bin/bash
for file in `ls /root`
do
if [ -f $file  ];then
     if [ `ls -l $file|awk '{print $5}'` -gt 100000  ];then
      mv $file  /test/
fi
fi
done

如何查看二进制文件

hexdump

 

在当前目录把包含xx内容的文件找出,并提取出规定三个内容,并把指定的一个内容改成要求的格式(提示:先替换分隔符)

ls  /test |xargs grep -ri "aa" |awk '{print $1,$2,$3,$4,$5}

 

 

MySQL误操作后快速恢复数据的方法

https://www.jb51.net/article/99941.htm

https://www.cnblogs.com/kevingrace/p/5904800.html

 

 

mysql一主多从,主库宕机如何合理切换从库,其他从库如何处理

https://blog.csdn.net/yabingshi_tech/article/details/51286073

http://blog.51cto.com/ucode/1747078

 

 

查看http的并发请求数与其TCP连接状态
netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'

{++S[$NF]   统计每行最后一个出现的次数,至少一次,放入数组中$NF的意思就是打印最后一行

END前面是把最后一个字段+1放到数组S中,END是把数组打印出来, 关联数组的key是最后一个字段的值,value都是1(因为默认值是0,++后是1)

查询访问量前10的IP地址
awk '{print $1}' /var/log/nginx/access.log|sort|uniq -c|sort -nr|head –10

sort  将文件进行排序-n:依照数值的大小排序 ,-r:以相反的顺序来排序;

例子:sort error.log |uniq -c |sort -rn >> cuowu.txt          #对文本行按重复次数进行排序,分析日志用

-b:忽略每行前面开始出的空格字符;
-c:检查文件是否已经按照顺序排序;
-d:排序时,处理英文字母、数字及空格字符外,忽略其他的字符;
-f:排序时,将小写字母视为大写字母;
-i:排序时,除了040至176之间的ASCII字符外,忽略其他的字符;
-m:将几个排序号的文件进行合并;
-M:将前面3个字母依照月份的缩写进行排序;
-n:依照数值的大小排序;
-o<输出文件>:将排序后的结果存入制定的文件;
-r:以相反的顺序来排序;
-t<分隔字符>:指定排序时所用的栏位分隔字符;
+<起始栏位>-<结束栏位>:以指定的栏位来排序,范围由起始栏位到结束栏位的前一栏位。
uniq   去重 -c在每列旁边显示该行的重复次数
-c或——count:在每列旁边显示该行重复出现的次数;
-d或--repeated:仅显示重复出现的行列;
-f<栏位>或--skip-fields=<栏位>:忽略比较指定的栏位;
-s<字符位置>或--skip-chars=<字符位置>:忽略比较指定的字符;
-u或——unique:仅显示出一次的行列;
-w<字符位置>或--check-chars=<字符位置>:指定要比较的字符。

ls |xargs du -h|sort -rn  |head   -20         #列出当前目录使用量,并按大小排序,#不递归下级目录使用du –sh

xargs用作替换工具,读取输入数据重新格式化后输出

ll     -hS                                                   #列出当前目录文件并按大小排序

mysqldump -h 172.26.100.145 -uroot -proot test >/home/testbackup.sql  备份远程test数据库到本地
如果要备份本地mysql库到远程服务器,就先备份到本地在拷贝过远程服务器或者挂载远程服务器某目录

mysqldump -uroot -p123456 --opt --all-databases >all-data.sql         #备份所有库
mysql -uroot -pqwer1234 < /bak/mysqlbak/2018031711-all.sql            #还原

#本地文件复制到远程服务器,如果要复制目录 scp –r

scp –r  /www/   root@121.201.66.149:/opt/ 

#复制远程服务器目录到本地

scp -r  root@121.201.66.38:/www/  /opt/ 

#查找并删除七天以前的数据

find /opt/db_bak/  -name "*.sql" -type f -mtime +7 -exec rm {} \; > /dev/null 2>&1

#查找前48~24小时修改过的文件。而不是48小时以内修改过的文件

find /opt/db_bak/ -name "*.sql" -type f -mtime 1     

find /opt -type f -size 0 -exec rm -rf {} \;                             #删除空文件

nethogs                               #监控每个进程的网络带宽占用
iftop                                      #动态查看网卡流量

dstat 3 5                              #执行5次,每次间隔3秒性能监控器-dstat

#看进程号为18842的进程打开了哪些文件
ps -ef |grep nginx                
lsof -p 1859

lsof  可以列出被进程所打开的文件的信息

nginx/sbin/nginx -V         #查看nginx有哪些模块

/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf    #nginx指定配置文件启动

 

ps aux --sort=rss |sort -k 6 –rn              #以内存大小排序列出进程

 

grep -Ev   "#|^$"   xx.conf       #查看文件排除以#开关和空白行,适合查看配置文件

sed '/#.*$/d; /^ *$/d'             #查看文件排除以#开关和空白行,适合查看配置文件

grep –r –l  内容  路径                   #查找包含某些内容的文件

#查找文件中包含error的内容并显示出来 -A 1是同时显示下行内容 -e选项是或者的意思,也就是多条件

grep -e  "error"  -A 1   /var/log/nginx/access.log
egrep -v "^#|^$"    xx.conf       #查看文件排除以#开关和空白行,适合查看配置文件

 

pgrep nginx|xargs kill                            #查找进程pid并kill

ifconfig |awk -F"[ ]+|[:]" 'NR==2 {print $4}'    获取当前IP地址,强大的awk
utmpdump /var/log/wtmp                #文本方式查看wtmp日志(二进制文件)

find /home/ -user prj  -exec cp  -a {}  /opt/  \;          #查找prj用户所拥有的文件,并放到/opt/下 

mii-tool eth0                                #查看eth0物理连接状态
service --status-all                       #查看已安装所有服务包括已运行和未运行的服务

ping -L 源IP  -c   目标ip                   #指定源IP ping

dirs          #打印出当前的目录栈,也就是显示最近访问过的目录

清除缓存
echo 1 > /proc/sys/vm/drop_caches
echo 2 > /proc/sys/vm/drop_caches
echo 3 > /proc/sys/vm/drop_caches

查询访问量前10的url
cat /var/log/nginx/access.log  |cut -f 6 -d ' '|sort |uniq -c |sort -k 1 -n -r |head -10 
查询最耗时的页面
cat /var/log/nginx/access.log  |sort -k 4 -n -r |head –10 

cat /proc/sys/kernel/threads-max     #查看进程的总数,包括未运行的?

#查看已运行的进程总数
  ps -ef |wc -l
     

ps -ef|grep php-fpm|wc -l
ps -ef|grep nginx|wc -l
ps -ef|grep java|wc –l

pkill -KILL -t pts/0              #踢出登录的用户,用who查看终端

mysql --help | grep Distrib          #查看mysql版本

ln -s /usr/local/mysql/bin/*  /usr/local/bin/    #编译安装mysql后无法执行mysql等命令,把命令连接到系统默认的路径,路径可能好几个

crontab -l                                       #查看计划任务列表
pgrep nginx                                      #查看服务进程号
top -id 1                                        #观察是否有异常进程出现

setfacl -m u:natasha:rwx fstab                   #单独设置用户权限,而不影响其他用户权限
getfacl fstab                                    #验证权限

数据备份还原:
压缩:
tar czvf /opt/http.tar.gz  /var/log/httpd/          #压缩备份,备份的包含了路径去除了/
解压
tar zxvf /opt/http.tar.gz   -C  /                   #还原直接到/就可以了,因为备份时/下还有var/log路径

临时解决DOS攻击-封IP
iptables -I INPUT -s 91.121.80.20 -j DROP

SSH免密登录:
配置ssh免秘钥后用scp不需要密码
1. 在服务器 A 上执行如下命令来生成配对密钥:
ssh-keygen -t rsa (后面全部按回车)
2. 将 /root/.ssh/ 目录中的 id_rsa.pub 文件复制到 服务器 B 的 /root/.ssh/ 目录中,并改名为 authorized_keys。 如果已经存在就把内容在末尾添加
scp  /root/.ssh/id_rsa.pub root@192.168.24.150:/root/.ssh/authorized_keys
以后从服务器 A scp 到服务器 B 就不需要密码了(如果没有/root/.ssh/是因为没执行ssh-keygen -t rsa 生成秘钥命令)


yum install openssh-clients -y                    #scp软件包

tac命令用于将文件已行为单位的反序输出,即第一行最后显示,最后一行先显示,与cat相反的命令          
awk    -v 选项,指定在任何输入被读入前定义参数

#正常联网情况下直接对网络地址(注意前提是ntpd服务要启动)
echo '*/15 * * * *  /usr/sbin/ntpdate    -u 210.72.145.44 ' >> /var/spool/cron/root

/var/spool/cron/root    #计划任务配置文件
凌晨三点       00  03 * * *
每五分钟执行  */5 * * * *

每小时执行     0 * * * *

每天执行        0 0 * * *

每周执行       0 0 * * 0

每月执行        0 0 1 * *

每年执行       0 0 1 1 *

 

在zabbix服务上设置邮件报警外部SMTP模式
#vim /etc/mail.rc      #尾部追加smtp验证信息
set from=pengrongjiana@163.com smtp=smtp.163.com
set smtp-auth-user=pengrongjiana@163.com smtp-auth-password=qwer1234
set smtp-auth=login
#设置完成之后发送一个测试邮件,收到邮件表示配置成功
echo "发现短时间内大量访问的ip"|mail -s "网站访问警告" 623181912@qq.com
如果没有/etc/mail.rc文件,则需要yum install -y mailx

tcp wrappers 访问控制

vim /etc/hosts.allow              #仅允许199.150和199.55ssh连接

sshd:192.168.199.150,192.168.199.55

vim /etc/hosts.deny

sshd:all

linux命令累积>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

w            ##查看已登录的用户                            
last                               #查看用户登录日志
lsof -i :22                                      #查看22端口被哪个IP进程占用和已建立连接的客户端
lsof /bin/bash                                   #查看谁正在使用某个文件
#查看php-fpm的地址
whereis php-fpm
启动php-fpm
rpm -ql httpd            #服务详细路径
tar zcvf - httpd/ | ssh root@10.0.0.10  tar xzf - -C /root   SSH快速备份文件到另一服务器
echo -e    处理特殊字符,而不会将它当成一般文字输出,如 echo -e `cat access_log`
/etc/profile                                #所有系统用户登录执行
hash          #记录了已执行过的命令的完整路径
grep –e “内容” *.html  /   #找到根目录下以.html结尾的文件中含有“内容”的行并显示它们
df -hT
uptime
free -m
ls | xargs rm    #目录中大量文件删除

linux netstat 用不了,安装net-tools即可: yum -y install net-tools

生成SSH证书并复制到远端服务器# 好像不行
ssh-keygen -y -f ~/.ssh/id_rsa && cat ~/.ssh/id_rsa.pub | ssh root@192.168.193.129 "cat - >> ~/.ssh/authorized_keys" 
sed '/^$/d' filename              #删除空行
sed 's/ //g' filename             #删除空格
sed -i 's/#.*$//g' filename       #删除#后的注释 
cat /dev/urandom | tr -dc 'a-zA-Z0-9' | fold -w 32 | head -n 1       # 生成随机字符
行首或行尾插入:
sed 's/^/new/g' file
sed 's/$/new/g' file
wget -r -p -np -k http://www.jb51.net     #用wget下载整站  
cat filename |awk -F '' '{if(NF>6) print $0}'      #查找每行大于几位数的数据:
lynx -dump www.jb51.net        #获取HTML页面文本内容包含页面的URL 
links -dump www.jb51.net       #获取HTML页面文本内容 对中文内容支持不好
socat TCP4-LISTEN:1234,reuseaddr,fork, TCP4:www.baidu.com:80    端口重定向

rpm -qpl xxxxxx.rpm               #安装包默认安装位置

who -b                      #查看最后一次系统启动的时间
last reboot                #查看Linux系统历史启动的时间
diff                            #输出为了两个文件修改后的内容
cfdisk /dev/sdb          #图像分区(2T以下)
parted /dev/sdb         #大容量存储分区
blkid                         #列出所有分区的UUID
ls -l /dev/disk/by-uuid/         #列出所有分区的UUID和分区名称

#开始进入扫描、修复文件系统,注意:在单用户模式(init 1)、修复模式或把设备umount后进行修复

fsck.ext4 -y /dev/sdb

ethtool -p ethX                                #执行网卡灯亮,多网卡是用来判断网卡位置

lsusb                                          #查看USB设备, -v看详细信息
more /proc/cpuinfo |grep -i model              #查看CPU型号
more /proc/scsi/scsi |grep -i model            #查看硬盘型号
nmcli con |sed -n '1,2p'                                                      #获取网卡UUID
more /etc/udev/rules.d/70-persistent-net.rules                   #查看网卡MAC地址,ifcofig也行
chmod  -R   +x  目录                                                           #目录和目录下子目录权限+执行 
/root/.bash_profile                                                              #配置单用户登录后执行
env                                                            #列出当前终端上的全部环境变量
lsmod                                                            #列出加载的内核模块
modprobe dm-multipath                                                     #加载模块
cat /proc/partitions                                                              #查看所有分

blkid                              #列出所有分区的UUID

ls -l /dev/disk/by-uuid/           #列出所有分区的UUID和分区名称

ntp服务器配置同步系统时间>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
#正常联网情况下直接对网络地址
echo '*/15 * * * *  /usr/sbin/ntpdate  地址' >> /var/spool/cron/root

设置本地ntp时间服务器/etc/ntp.conf

1.则将“restrict default kod nomodify notrap nopeer noquery”这行修改成:

restrict default nomodify

2.如果需要使用本地时间,则把erver 0.centos.pool.ntp.org iburst把这几行同步互联网的

删掉或者用“#”号注释掉,然后添加以下两行:(注意:相反不添加这两行,直接使用上面的连接互联网,客户端就更新不了)

server 127.127.1.0

fudge 127.127.1.0 stratum 10

3.重启ntpd服务,设置开机启动ntpd服务               #注意客户端不启动ntpd也行

客户端连接ntp时间服务器,并加入计划任务

ntpdate  192.168.199.23                #不要频繁执行连接

echo '*/15 * * * *  /usr/sbin/ntpdate  192.168.199.23' >> /var/spool/cron/root

客户端设置: 

ntpdate   192.168.199.23

加入计划任务

如果本地时间和硬件时间都不对。需要手动设置后重启也生效:

1.date                               #查看本地时间

2.hwclock --show                     #查看机器上的硬件时间

3.date -s "2017-12-27 16:48"         #一次性设置时间

4.hwclock -w                         #写入 BIOS 时间,系统重启后会读取BIOS,clock -w也可以

 

clock -w                              #把系统时间写入CMOS

vi /etc/sysconfig/ntpd  

SYNC_HWCLOCK=yes                    #将同步好的时间写到CMOS里

ntpq -p                      #检查时间服务器同步的状态

clock --utc                   #显示UTC时间

 

同步互联网时钟并写入硬件bios:

使用以下方式同步LFS系统时间,cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime 修改时区为上海

ntpdate cn.pool.ntp.org;hwclock -w ,同步时间并写入bios硬件时间;

设置计划任务,确保时间得到更新,crontab -e.添加以下内容:

0 * * * * /usr/sbin/ntpdate cn.pool.ntp.org;hwclock -w

 

/usr/sbin/ntpdate time.nist.gov     #同步互联网时间,如果没互联网就同步硬件时钟,如果服务器较多就配置一台ntp时间服务器

 

 

 

 

系统负载>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

top -id 1                                                          #观察是否有异常进程出现

三行:cpu状态

6.7% us — 用户空间占用CPU的百分比。

0.4% sy — 内核空间占用CPU的百分比。

0.0% ni — 改变过优先级的进程占用CPU的百分比

92.9% id — 空闲CPU百分比

0.0% wa — IO等待占用CPU的百分比

0.0% hi — 硬中断(Hardware IRQ)占用CPU的百分比

0.0% si — 软中断(Software Interrupts)占用CPU的百分比

0.0% st - 是当 hypervisor 服务另一个虚拟处理器的时候,虚拟 CPU 等待实际 CPU 的时间的百分比。

 

top默认的排序列是“%CPU”,按键盘数字“1”,可监控每个逻辑CPU的状况

敲击键盘“b”(打开/关闭加亮效果)

通过”shift + >按照%MEM来排序

敲击“f”键,top进入另一个视图,在这里可以编排基本视图中的显示字段,想显示哪个字段就按什么,比如显示SWAP就按前面的p字母

 

PID — 进程id

USER — 进程所有者

PR — 进程优先级

NI — nice值。负值表示高优先级,正值表示低优先级

VIRT — 进程使用的虚拟内存总量,单位kb。VIRT=SWAP+RES

RES — 进程使用的、未被换出的物理内存大小,单位kb。RES=CODE+DATA

SHR — 共享内存大小,单位kb

S — 进程状态。D=不可中断的睡眠状态 R=运行 S=睡眠 T=跟踪/停止 Z=僵尸进程

%CPU — 上次更新到现在的CPU时间占用百分比

%MEM — 进程使用的物理内存百分比

TIME+ — 进程使用的CPU时间总计,单位1/100秒

COMMAND — 进程名称(命令名/命令行)

 

mpstat                      #查看CPU使用率

 

系统负载>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

ps aux | wc -l   #进程总数检查进程个数是否正常 (比如超过250,比如单个服务的进程数ps -ef |grep httpd|wc -l

-a 显示一个终端的所有进程,除了会话引线

-u uid or username 选择有效的用户id或者是用户名

-x 显示没有控制终端的进程,同时显示各个命令的具体路径

USER    用户名

UID    用户ID(User ID)

PID    进程ID(Process ID)

PPID    父进程的进程ID(Parent Process id)

SID    会话ID(Session id)

%CPU    进程的cpu占用率

%MEM    进程的内存占用率

VSZ    进程所使用的虚存的大小(Virtual Size)

RSS    进程使用的驻留集大小或者是实际内存的大小,Kbytes字节。

TTY    与进程关联的终端(tty)

STAT    进程的状态:进程状态使用字符表示的(STAT的状态码)

R 运行    Runnable (on run queue)            正在运行或在运行队列中等待。

S 睡眠    Sleeping                休眠中, 受阻, 在等待某个条件的形成或接受到信号。

I 空闲    Idle

Z 僵死    Zombie(a defunct process)        进程已终止, 但进程描述符存在, 直到父进程调用wait4()系统调用后释放。

D 不可中断    Uninterruptible sleep (ususally IO)    收到信号不唤醒和不可运行, 进程必须等待直到有中断发生。

T 终止    Terminate                进程收到SIGSTOP, SIGSTP, SIGTIN, SIGTOU信号后停止运行运行。

P 等待交换页

W 无驻留页    has no resident pages        没有足够的记忆体分页可分配。

X 死掉的进程

< 高优先级进程                    高优先序的进程

N 低优先    级进程                    低优先序的进程

L 内存锁页    Lock                有记忆体分页分配并缩在记忆体内

s 进程的领导者(在它之下有子进程);

l 多进程的(使用 CLONE_THREAD, 类似 NPTL pthreads)

+ 位于后台的进程组

START    进程启动时间和日期

TIME    进程使用的总cpu时间

COMMAND    正在执行的命令行命令

NI    优先级(Nice)

PRI    进程优先级编号(Priority)

WCHAN    进程正在睡眠的内核函数名称;该函数的名称是从/root/system.map文件中获得的。

FLAGS    与进程相关的数字标识

系统负载>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

netstat -ap | grep ssh                  #找出程序运行的端口

netstat -n | grep tcp | grep 23 | wc -l #监控网络服务连接数

-a (all)显示所有选项,默认不显示LISTEN相关

-t (tcp)仅显示tcp相关选项

-u (udp)仅显示udp相关选项

-n 拒绝显示别名,能显示数字的全部转化成数字。

-l 仅列出有在 Listen (监听) 的服務状态

-p 显示建立相关链接的程序名

-r 显示路由信息,路由表

-e 显示扩展信息,例如uid等

-s 按各个协议进行统计

-c 每隔一个固定时间,执行该netstat命令

 

 

"Recv-Q"和"Send-Q"指%0A的是接收队列和发送队列。这些数字一般都应该是0。

Foreign Address    外部地址

state     状态  LISTEM监听

 

查看连接某服务端口最多的的IP地址

netstat -nat | grep "192.168.199.22:22" |awk '{print $5}'|awk -F: '{print $1}'|sort|uniq -c|sort -nr|head -20

 

netstat -nat |awk '{print $6}'|sort|uniq -c|sort -rn   #TCP各种状态统计排序

awk '{print $1}' access.log |sort|uniq -c|sort -nr|head -10  #分析access.log获得访问前10位的ip地址

netstat -a|more                                        #列出所有端口

netstat -ap | grep ssh  t -l                     #只显示监听端口

netstat -s                                             #显示所有端口的统计信息

磁盘读写>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

time dd if=/dev/zero of=/test.dbf bs=8k count=300000   #测试磁盘写能力

time dd if=/dev/sda  of=/dev/null bs=8k                #测试磁盘读能力

time dd if=/dev/sda of=/dxcs.dbf bs=8k                 #测试磁盘同时读写速度

iotop                                                  #动态查看IO情况

iotop  -o                                              #直接查看输出比较高的磁盘读写程序

 

日志分析>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

tail -n20 -f messages                   #查询最近动态日志最后20条

uniq -c demo.log                        #标记该行重复的数量,不重复值为1

more 或者less或者head                   #因为这些命令都是不是从最近时间开始排序的所以少用

sed -n

more?/var/log/secure                    #系统的登录日志,查看是否有可疑登录信息

修改日志保留默认时间>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

vim /etc/logrotate.conf  修改项 rotate 12 单位是周,默认是4周,修改项/var/log/wtmp {   默认是1,改

为3,

service rsyslog  restart           #重启日志服务器

不重启系统情况下新添加硬盘(vm也可以)>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

1.fdisk -l             #确认开始有几个硬盘

2.新添加一块硬盘

重新读取:

echo "- - -" > /sys/class/scsi_host/host0/scan   

echo "- - -" > /sys/class/scsi_host/host1/scan

echo "- - -" > /sys/class/scsi_host/host2/scan

 

 

ls /sys/class/scsi_device/         #确认扫出来磁盘多少个

ls /sys/class/scsi_host/           #多少个盘都固定只有这三个的  

echo 1 > /sys/class/scsi_device/0\:0\:0\:0/device/rescan

echo 1 > /sys/class/scsi_device/0\:0\:2\:0/device/rescan

echo 1 > /sys/class/scsi_device/2\:0\:0\:0/device/rescan

 


 

linux启动后出现桌面背景但无登录界面解决办法>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>(这个方法上次好像也没解决)-手动启动桌面

1.同时按下Ctrl  Alt  F2  进入命令行界面。 

2.root登录进去,执行init3                 (登录进去后也可以先执行 init 5 试试能不能进桌面)

3.执行startx 启动界面

如果重启后还是一样就修改下面的试试

vi /etc/pam.d/gdm

将auth required pam_succeed_if.so user != root quiet 这行注释掉

 

yum<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
yum clean all                     #清除本地yum软件包
yum makecache
yum repolist all                  #查看仓库列表和状态
yum  search vnc                   #查找有关vnc的软件包
yum  update   软件包              #更新软件       
yum -y install xinetd             #安装service管理命令

 

 

rpm命令<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<

rpm -ql 软件名                                      #查询已安装的软件包的相关文件的安装路径  

rpm -qs neokylin-lsb                                #列出包里文件并显示状态

rpm  -qf    /usr/libexec/clock-applet               #查看属于哪个软件包

rpm -pql neokylin-lsb-core-4.1-1.el6.ns6.02.x86_64   #列出RPM软件包内的文件信息

rpm -pqi  redhat-lsb                               #列出RPM软件包的描述信息

ln /bin/neokylin_lsb_init  /bin/redhat_lsb-init 

rpm -qa|grep neokylin-lsb                           #查看lsb已安装的五个软件包

rpm2cpio redhat-lsb-4.0-7.el6.centos.src.rpm |cpio -idvm  #用于将rpm软件包转换为cpio格式的文件后查找里面的软件包(方便查看包里内容)

rpm -Uvh  *.rpm                                     #更新软件包,前提是依赖全部都在

rpm -e gnome-panel-2.30.2-16.el6.ns6.01.x86_64 –nodeps

 

 

mount<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<

mount -o remount,rw /opt             #文件系统是只读模式,只需将这个处于只读状态的文件系统重新挂载即可

mount  -a                            #将/etc/fstab的所有内容重新加载

fuser -m directory                   #umount不了的时候查看那个进程在使用状态的目录

mount -t cifs -o username=administrator,password=1 //192.168.24.108/迅雷下载   /wind  #挂载wind共享目录

mount --move /mnt/userdirs  /home    #更换挂载点

findmnt -t ext4                      #列出系统挂载点

mount -t nfs -o vers=3,proto=tcp,rsize=1048576,wsize=1048576,hard,intr,timeo=50 10.241.2.84:/NFS_CloudDisk/CloudDiskShare/ /media     #挂载华为存储?

 

设置分辨率:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

xrandr                           #查看当前及支持的分辨率

gnome-display-properties         #修改分辨率                                      

xrandr -s 1024×768               #设置分辨率,xrandr查看支持的分辨率,一次性的

xrandr -s 0                      #将屏幕恢复到原来的分辨率,当你使用了一些需要或者会自动改动您屏幕分辨率的程序以后。

遇到一些旧的显示器,先看显卡支持哪些分辨率,然后修改/boot/grub/grub.conf  在quit 后添加vga=773 保存,如果进不了桌面就

先编辑引导菜单也是在quit 后添加vga=773进入系统后修改/boot/grub/grub.conf  在quit 后添加vga=773

因为使用的是vnc、xmanager,直接用gnome-display无法调整

 

几乎所有的操作系统都能支持与使用X Window,GNOME和KDE也都是以X Window为基础建构成的

echo $DESKTOP_SESSION            #查看环境是gnome或者kde

 

修改系统界面变成英文字符>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

vim  /etc/sysconfig/i18n

LANG="zh_CN.UTF-8"                  #改成LANG="zh_US.UTF-8",保存退出,重启系统,不过已经新建的用户不会改变

 

更改已经新建的用户为英文字符集,登录用户

vi ~/.bash_profile

export LANG=zh_US.utf-8

注销再登录用户

一、安装桌面环境 CentOS6.8-minimal安装gnome桌面

@1、安装桌面软件

yum groupinstall "Desktop"

@2、安装X-Window组件

yum groupinstall "X Window System"

@3、安装字体

yum -y install dejavu-sans-* dejavu-serif-fonts

@4、开机启动

编辑/etc/inittab文件, 将id:3:initdefault修改为 id:5:initdefault重启后生效

 

Linux普通用户配置java环境变量

1、上传java包到服务器

2、解压 tar -zxvf jdk-8u131-linux-x64.tar.gz
3、配置环境变量

    3.1、vi ~/.bash_profile

   3.2、在.bash_profile文件中填入如下语句:

    export PATH
    export JAVA_HOME=/home/appadmin/apps/jdk1.8.0_131
    export PATH=$JAVA_HOME/bin:$PATH

    export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

  3.3 保存退出

4、使配置文件生效

source ~/.bash_profile

5、测试 java -version

 

 

mysql不区分大小写

vim /etc/my.cnf  的[mysqld]下

 

lower_case_table_names=1

转载于:https://www.cnblogs.com/pengrj/p/9060010.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值