Linux常见问题及命令总结

Linux常见问题及命令总结

1.查询linux系统相关的

cat /proc/version;//查看linux内核版本
uname -r; //查看内核版本号
uname -a;//查看内核/操作系统的信息
lsb_release -a;//查看系统版本号

 

2.操作文件相关的

grep -rn "welcome" *;//查找当前目录下"welcome"字符串, *表示当前目录下所有文件,也可以是文件名
grep -rn /usr/local/ -e "20003";//查找在/usr/local目录下文件中包含20003关键字的文件
find /home/tom -name 'index*'   # 搜索所有以index开头的文件
find /home -size +10000k        # 在/home目录下搜索所有大小超过10000K的文件
find /home/software/ -type f -name "splunk.tgz"; //在/home/software 下查找名字为"splunk.tgz"的文件
tar -zxvf redis.tar.gz;//解压redis.tar.gz的文件
tar -zxvf jdk-8u72-linux-x64.tar.gz -C /usr/local;//将jdk-8u72-linux-x64.tar.gz 解压到/usr/local目录中
unzip gradle-3.3-bin.zip -d /usr/local/; 将gradle-3.3-bin.zip解压到/usr/local目录
zip  -r test.zip  test;将test文件夹打包成test.zip
tail -f access.log;//查看文件尾部内容
nohup java -jar jenkins.war &;//进程后台程序
chown -R cdn:cdn common/;//将common文件夹权限分给cdn
sed -n '/22\/Jun\/2017/'p  access.log>>20170622.log;//查询2017年6月22日日志
sed -n '/2017-06-15 00:00:00/,/2017-06-15 24:00:00/p' catalina.out >> 20170615.log;//截取某个时间段的日志
sed -n '/2017-07-05 09:[0-9][0-9]:[0-9][0-9]/,/2017-07-05 16:[0-9][0-9]:[0-9][0-9]/p'  catalina.out 

ln -s /usr/mengqc/mub1 /usr/liu/abc; 将/usr/mengqc/mub1代表的路径将存放在名为/usr/liu/abc的文件中。

 

3.查询进程相关的

netstat -lp|grep memcached; //查看启动的memcache服务
netstat -nltp|grep 8080;//查询8080端口是否监听
ps -aux;//查看所有的进程
ps -ef|grep java; //查看java的进程号
history 1000|grep pip;//列出最近使用pip 命令的1000条记录
ps -ef|grep jetty|grep -v grep|awk '{print $2}';//查看jetty进程号
ps -ef|grep -v grep|grep jetty-avene|grep jetty|grep -v python|awk '{print $2}';//查询jetty项目名称为jetty-avene的进程号
ps -ef|grep -v grep|grep jetty-avene|grep jetty|grep -v python|awk '{print $2}'

4.安装软件相关的

rpm --install couchbase-server-enterprise-3.0.3-centos6.x86_64.rpm;//解压rpm文件
rpm -qa;//查看所有安装的软件包
rpm -qa|grep kernel;//查询系统所有内核
yum remove kernel-headers-3.10.0-327.el7.x86_64;//删除内核kernel-headers-3.10.0-327.el7.x86_64
rpm -l pkgname.rpm;//安装rpm包
rpm -e pkgname;//删除rmp包

从源码安装
./configure
make
make install

 

5.防火墙相关的

chkconfig --list;//列出系统所有服务启动情况
service iptables status;//查看防火墙状态
service iptables start;//打开防火墙
service iptables stop;//关闭防火墙

为防火墙添加访问端口和ip,在vi /etc/sysconfig/iptables目录下编辑:
iptables -A INPUT -p tcp --dport 10006 -j ACCEPT; //允许端口10006访问
iptables -A INPUT -s 192.168.50.87 -p tcp -j ACCEPT;//允许192.168.50.87地址能访问

 

6.操作磁盘相关的

df -h;//查看磁盘的使用情况
du -h;//查看目录的大小
du –sh *;//查看某个目录下所有文件及文件的大小:
du -sh *|sort -nr;//定位那个目录最大
du –sh * |sort –n;//按照文件大小排序
fdisk -l;//可以查看到当前的所有分区,比如boot分区,该分区存档linux的grub以及内核源码
vim /etc/fstab ;//修改fstab内容

 

7.网络相关的

nslookup www.baidu.com;//查询域名对应的ip地址
dig www.baidu.com;//查询域名对应的ip地址
lsof -i:4080;//查看4080端口是否被占用
curl ifconfig.me;//查出外网的ip地址
netstat -tnlp|grep redis;
ifconfig -a;      //列出所有网络端口和IP地址
iftop            //监控网络带宽
ifconfig eth0    //列出指定以太网端口对应的IP地址和详细信息
ethtool eth0     //查看以太网状态
ping host   
whois domain     //获取指定域名的信息
dig domain       //获取指定域名的DNS信息
dig -x host      //根据主机地址反向查找
host goole.com   //根据域名查找DNS IP地址
wget file        //下载文件
netstat -tupl    //列出系统的活跃连接

 

8.文件传输相关的

scp file.txt server2:/tmp                 //安全拷贝file.txt到远程主机的/tmp目录下
scp noodle@server2:/www/*.html /www/tmp   //拷贝远程主机的/www/目录下的所有HTML文件到本地的/www/tmp目录
scp -r noodle@server2:/www /www/tmp       //递归拷贝远程主机/www目录下的所有文件和文件夹到本地/www/tmp目录
scp -P 2244 client.xml datasources.xml server.xml root@139.136.218.194:/data/appdatas/cat;//远程机器访问端口为2244

# rsync
rsync -a /home/apps /backup/              # 源目录和目标目录同步
rsync -avz /home/apps noodle@192.168.10.1:/backup   //本地目录和远程主机目录同步,启用压缩

//模拟请求
curl -i -X POST -H 'Content-type':'application/json' -d '{"customerId":3,"recNum":"18862285367"}' http://10.105.31.109:10000/sms/sendCoupenCodeSms

 

9.硬件相关的

dmesg                   //监测硬件和启动消息 
cat /proc/cpuinfo       //CPU信息 
cat /proc/meminfo       //硬件内存信息 
free -m                 //已使用的和可用内存,-m表示单位为M 
lspci -tv               //显示PCI设备信息 
lsusb -tv               //显示USB设备信息 
hdparm -l /dev/sda      //显示sda硬盘信息 
hdparm -tT /dev/sda     //对sda硬盘进行读取速度测试 
hdparm -s /dev/sda      //测试sda硬盘上不可读的块

 

10.统计相关的

top                       //显示并不断更新最耗CPU的进程 
mpstat 1                  //显示CPU统计信息 
vmstat 2                  //显示虚拟内存统计信息 
iostat 2                  //显示IO统计信息(2s采样间隔) 
tcpdump -i eth1           //捕获eth1网络接口上的所有数据包 
tcpdump -i eth0 'port 80' //监控80端口的网络流量 
lsof                      //列出所有活跃进程打开的文件 
lsof -u testuser          //列出所有testuser用户打开的文件

wc -l filename;//统计行数
wc -c filename;//统计字节数
wc -m filename;//统计字符数
wc -w filename;//统计单词数
ls -l|wc -l 用来统计当前目录下的文件数

11.nginx统计相关的

1.根据访问IP统计UV

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

2.统计访问URL统计PV

awk '{print $7}' access.log|wc -l

3.查询访问最频繁的URL

awk '{print $7}' access.log|sort | uniq -c |sort -n -k 1 -r|more

4.查询访问最频繁的IP

awk '{print $1}' access.log|sort | uniq -c |sort -n -k 1 -r|more

5.根据时间段统计查看日志

 cat  access.log| sed -n '/14\/Mar\/2015:21/,/14\/Mar\/2015:22/p'|more

 

nmap相关的

nmap 192.168.102.10; 侦测ip地址
nmap weixin.hao.cn;侦测域名
nmap -sU -sS -F weixin.hao.cn;//-F 快速扫描模式,扫描最可能开放的前100个端口
nmap -sV 192.168.102.10;
nmap -A 192.168.102.10;执行全网扫描
nmap -O weixin.hao.cn;//侦测操作系统的信息
nmap -sP 192.168.102.*;//找出网络中的在线主机
nmap -V;//查询nmap版本
nmap -p 8080 weixin.hao.cn;//扫描特定端口

用户相关的

adduser newname // 新建用户newname
passwd  newname //设置用户名和密码
userdel newname //删除用户
deluser –remove-home newname //删除home目录的数据
sudo addgroup siatstudent  //创建组
groupadd testgroup
groupmod -n test2group testgroup //修改组
delgroup happy  //删除分组
groups  #查看当前登陆用户所在的组
groups testnewuser #查看testnewuser 所在的组
cat /etc/group  #查看所有组

 

Linux内存清理命令

free -m;//清理内存前 查看内存使用情况
echo 1 > /proc/sys/vm/drop_caches;//开始清理
free -m;//清理之后查看内存使用情况
dmidecode | grep -A16 "Memory Device$";//查看内存条数

 

常见问题:

刚刚安装好的linux系统 我用的是centos 有的时候安装软件使用命令:

yum install ld-linux.so.2

出错了,错误如下:

Loading mirror speeds from cached hostfile
Could not retrieve mirrorlist http://mirrorlist.centos.org/?release=6&arch=i386&repo=os error was
14: PYCURL ERROR 6 - "Couldn't resolve host 'mirrorlist.centos.org'"

Error: Cannot find a valid baseurl for repo: base

如上,很明显缺少相关的依赖包,于是使用yum命令安装相关的依赖

解决方法如下(修改dns配置)

vi /etc/resolv.conf

在此文件最后加入:nameserver 8.8.8.8

如果没有vi编辑器可用:

echo "nameserver 8.8.8.8" >>/etc/resolv.conf

然后ping www.baidu.com

此时通过ping www.baidu.com就不会出现unknow host name了

 

在centos 上面安装jdk1.8 发现有点问题一直显示是jdk1.7 解决办法 

在终端里输入

在终端里面依次输入

    alternatives  --install   /usr/bin/Java  java  /usr/java/jdk1.8.0_37/bin/java 300

    alternatives  --install   /usr/bin/javac  javac  /usr/java/jdk1.8.0_37/bin/javac 300

   

 /usr/java/jdk1.8.0_37/bin/java(你安装JDK的目录)

   这两条命令执行后 接着执行

   alternatives  --config  java

最后运行 java -version 就显示java1.8了

 

 问题三.ssh: connect to host localhost port 22: Connection refused

这个主要要看下防火墙是否关闭,其次查看一下网络是否通畅

 

 

 

转载于:https://my.oschina.net/chenxiaobian/blog/634435

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值