Linux常用命令总结

Posted shu_lin

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux常用命令总结相关的知识,希望对你有一定的参考价值。

工作全是在linux环境下进行的,必然需要使用到很多的Linux命令,自己做了一个总结,虽然不全面,但是我会不断进行更新。接下来想把如何搭建hadoop单机分布、伪分布式、完全分布式的过程做个回顾,然后分享一下吧,感觉自己工作后很多东西都没有总结,知识很乱,利用博客这个平台可以帮助自己总结一些知识。


红色加粗表示使用频率很高的命令:


man 具体命令,比如man -ls   可以查询ls命令的具体用法,帮助


cd /usr/local   

切换到/usr/local目录下


su  mysql   或者  su -mysql

切换当前活动用户为mysql


ls 

显示当前文件夹内的文件

ll

列表显示当前文件夹内文件的详细信息,带上-h的参数,可以将文件大小改成m为单位显示,这样可读性更高。-h也是很多类似命令的参数。


rm 

删除一个文件,如果加上 -rf 可以删除某个文件夹下所有文件,比如 rm -rf /opt/aaa/* 即可删除aaa目录下的所有内容。


chown mysql:mysql  a.txt

修改a.txt文件的拥有者和用户组


chmod 755 a.txt

修改a.txt的权限是755,755分别对应的是拥有者、用户组、其他这三种Linux中的用户类型,具体自己百度吧。rwx


usermod -a -G groupA user
User用户添加到groupA中,且不会离开其他用户组

usermod -G groupA 
将当前用户转为groupA组中,离开当前组
 

ps -ef|grep mysqld    

根据进程名称,查看当前的Mysql进程,如果有僵尸进程就会在启动时出现The server quit without updating PID file的异常,杀死对应进程即可。

ps -ef|grep 10059

根据进程ID 查看是哪个在运行这个进程


id user

查看用户所属的用户组


192.168.213.109  Unable to connect to the MySQL server using tungsten@192.168.213.109:3306 (WITH PASSWORD)

此错误表示tungsten用户无法登陆本地MySQL执行如下命令解决:

create user username@'localhost' identified by 'passwd';

grant all on *.* to username@'localhost' identified by 'passwd' with grant option; #这个命令包含了创建用户,如果用户不存在的话

flush privileges;


netstat -tunlp |grep 2112

查看端口占用情况 


yum -y list java*

查看yum源中的java安装文件列表,这个命令必须是root用户才能执行。

free -g  

用G的形式显示当前主机的内存情况, -m -k 


df -hv  

查看硬盘使用情况,以及挂载情况,通过ll 可以查看目录属于哪个挂载点,这样就知道属于哪个硬盘了,了解硬盘的使用情况,可以让我们设置合理的数据挂载位置

du -h

查看当前目录的大小,这两个可以配合使用,具体参考点击


日志查看与搜索 cat error.log | grep -C 5 'nick' 显示file文件里匹配foo字串那行以及上下5行 cat error.log | grep -B 5 'nick' 显示foo及前5行 cat error.log | grep -A 5 'nick' 显示foo及后5行

远程连接数据库打不开的时候,可能就是系统的端口没开:可以使用以下命令打开端口: /sbin/iptables -I INPUT -p tcp --dport 3306 -j ACCEPT 
ln -s aaa bbbb 创建软连接,比如我的mysql安装在跟目录,运行过程中可能产生大量的日志文件,为了防止日志文件将跟目录填满,需要创建一个软连接将日志文件所在的目录链接到数据盘中,这样就不会影响跟目录了。
> error.log        清空error.log这个文件内的内容
find . -name "*.log"  | xargs  grep "ERROR" > error.log      查找当前文件夹内所有后缀是.log的文件中的ERROR   并输出到error.log文件内
find . | xargs grep "aaaa"   可以查到当前目录下所有文件中包含 “aaaa”字符串的行,比如看框架源码的时候,经常需要在linux下面查找某个属性的key,通过这个命令比较方便。

vim编辑器     如果没有就在线装一个,或者用vi也可以,vim就是vi的增强版,下面说下基本使用,更多的自己搜索咯:
vim a.txt    首先进去的时候是在命令模式,不可编辑,此时按i可以进入insert状态,就可以对文本进行编辑了,然后按Esc退出insert状态回到命令状态,此时按“ :wq”即可保存文件,或者" :q"退出文本编辑,如果对文本进行了修改却不想保存,那么使用":q!"即可强制退出。
在命令模式下,使用" /aaa"即可在文本中向下查询包含"aaa"的行,当然也可以使用“aaa*”来进行模糊匹配。配合n(/aaa)和N( ?aaa)可以实现向下/向上的搜索。

iostat -x 1  (PS:这里是数字1,不是字母l)     查看磁盘IO性能      http://www.ha97.com/4546.html
pstree <pid>     以树状图显示进程间的关系,比如可以显示一个进程中的多线程关系      http://www.cnblogs.com/0616--ataozhijia/p/4015465.html


以上是关于Linux常用命令总结的主要内容,如果未能解决你的问题,请参考以下文章

Linux监控工具讲解

常用 Git 命令总结

一文详解 Linux 系统常用监控工具(top,htop,iotop,iftop)

97条 Linux 常用命令总结,速速收藏!

Linux学习笔记——文件/目录/VIM

Linux常用命令总结