Linux 命令大全经验总结-(部分常用命令汇总以及使用遇到的坑)

0、yum install iputils ----安装ping命令
1、 ln -s /usr/local/mongodb/bin/* /usr/sbin -----------------软连接
2、 lsof -i :27017 查看正在使用的端口进程。
3、 kill +进程号pid(例如:kill 1111) -----关闭进程号1111
4、 /usr/local/mongodb/bin/mongod -f /etc/mongodb、cnf
#!/bin/bash
/usr/local/mongodb/bin/mongod -f /etc/mongodb、cnf  
               ---------------将此开机程序执行命令指向etc/mongodb、cnf
5、ln -s /usr/local/mongodb/bin/* /usr/sbin ----软连接给windows里面配置path参数差不多。
6、/mongod 可以看到是从哪里连接到MongoDB的服务器
7、 pwd ----查看当前目录
8)、先去更新一下yum仓库: #yum -y update
9、halt 、 poweroff 关机命令
10、sudo su 切换用户 $这是普通客户权限,# 这是管理员root权限。
11、ps -ef | grep redis 查看当前redis进程
12、rm -rI ddd rm -rf ddd 删除文件夹所有
13、nohup redis-servr /etc/redis、conf 不输出性开启服务(开启redis服务)
14、chkconfig --list | grep mysql 查看是否开机启动
15、设置开机启动项
首先:vim  /etc/init、d/mongostart、sh
其次:编辑内容
#!bin/bash
/mnt/app/mongodb/bin/mongod --fork --port 27017 --dbpath /var/mongodb/data/ --logpath /var/mongodb/logs/mongodb、log
16、mkdir -p /var/kk/dd/pp ----连续新建
17、netstat -antlp 查看端口进程
18、scp -r php-7、0、9、tar、gz root@192、168、30、25:/mnt/src/ —远程传输数据
19、检查MySQL及相关RPM包,是否安装,如果有安装,则移除(rpm –e 名称)
 rpm -qa | grep -i mysql
20、find /data/ -type f -name “mysql”|xargs ls -l —查询在data目录下有mysql字段的所有目录并打印出来
   find /data/ -type f -name "mysql"    --查询data目录下面有mysql字段的记录。
21、chown -R mysql:mysql /data --将mysql权限赋予给data目录下面。
22、ss -lntup|grep 3306
22、setup 可视化配置IP地址
23、重启网卡
# service network restart   
# ifdown eth0
# ifup eth0
# ifconfig eth0 down
# ifconfig eth0 up
24、备份linux系统命令
tar cvpzf linuxbackup、tgz --exclude=/proc --exclude=/lost+found --exclude=/linuxbackup、tgz --exclude=/mnt --exclude=/sys /
25、备份mysql数据目录(默认数据安装在var/lib/mysql)
tar -czvf /mnt/mysql_backup_$(date +%F)、tar、gz /var/lib/mysql  
注意:恢复时要添加权限才可恢复成功  当解压tar -zxvf  mysql_back、、时有时不能解压到目录去。
chmod -R 755 /var/lib/mysql
chown -R mysql、mysql /var/lib/mysql

26、备份数据库

mysqldump -uroot -p -B -F -R -x --master-data=2 test|gzip >test_$(date +%F)、sql、gz
grep CHANGE test_2016-08-02、sql  -- CHANGE MASTER TO MASTER_LOG_FILE='mysql-bin、000042', MASTER_LOG_POS=475;  
27、mysqldump --help|grep sig* 管道查询。
28、vim /etc/sysconfig/network 查看主机名(永久修改)
uname -n 查看主机名
29、less 查看
30、vi /etc/rc、local ------开机启动命令添加
31、passwd 更改当前账户密码
32、useradd -d /usr/mmcx -m mmcx
       adduser -d /usr/mmcx -m mmcx
       --创建一个用户mmyc 并设置目录为/usr/mmcx为默认用户父系目录
  userdel zhangsan  -----删除张三用户
  groupdel peter   ------删除peter组
  usermod –G peter peter   (强制删除该用户的主目录和主目录下的所有文件和子目录)
33、df -h ----查看磁盘状态
34、dump -0uj -f /boot、bak、bz2 / 备份系统“/”目录下的所有文件。命名为:boot、bak、bz2
35、restore -r -f /etc、dump、bz2
36、df -fh 查看磁盘使用状态
37、free 查看内存状态
38、ip add 查看地址
39、cat /etc/redhat-release -查看服务器版本
40、系统备份高压缩备份
tar cvpzf backup、tgz --exclude=/proc --exclude=/lost+found --exclude=/backup、tgz --exclude=/mnt --exclude=/sys /    
tar cvpjf backup、tar、bz2 --exclude=/proc --exclude=/lost+found --exclude=/backup、tar、bz2 --exclude=/mnt --exclude=/sys/
41、修改账户密码
passwd      修改root密码
passwd sam   修改用户sam用户密码
42、vim /etc/sudoers 查看权限(意义就是查看root是否有所有权限)
usermod -g root mmcx  --赋予mmcx有root权限
注意:用useradd新增的用户不能直接用ssh远程访问,需要修改ssh相关配置
如下:
vi /etc/ssh/sshd_config 
添加
AllowUsers root@192、168、1、32 admin
多个用户用空格隔开
43、 whoami ----查看自己的用户名
44、/usr/local/nginx/sbin/nginx -s reload 平滑启动Nginx服务、
45、ll /proc/25085 根据pid查找启动目录
46、 ls -a 查看包括隐藏的所有文件
46、ls -lh 查看该有的文件大小,该是K,KB,M,G
47、ls -ld /etc --查看etc目录的全部信息【不是目录本身】
48、ls -i /etc --查看当前文件目录所有文件的id号
49、cp -r --复制文件【注:复制文件不用加r】
50、rm -rf 强制删除文件【-r指目录 -f指强制执行】
51、touch 创建文件名【注:创建带有空格的文件名就得加""文件名”】
52、 cat 查看文件 【tac 倒序显示文件内容】
53、less 查看文件 【pgup按了后按上下键】
54、tail -n 12 /etc/my、cnf —c查看文件my、cnf中最后12行的内容
55、chmod g+x 文件名 ----增加权限【u:主用户 g:组用户权限o:来宾用户权限】
56、umask -s --查看当前确实权限 【注:输入umask就会得出 022的一个值,这个022的意思就是“反掩码” 777-022=755 就是默认的权限,修改默认权限 用umask 755 】。
57、find /etc -name init --查找/etc目录下的以init开头的文件。
注:搜索文件后面可以加“*”,“????”   ---*代表任意字符  ?代表单个字符
find  /etc -ineme init     --后面加了一个i代表的意思是不区分大小写
find /mnt -size +204800  查找大于100M的所有文件
find /etc -mmin -50    ----查找50分钟以内【50分钟以外就是+50】文件内容被修改的所有文件
find /etc  -cmin  -50     ---查找50分钟以内【50分钟以外就是+50】文件属性被修改的所有文件
find /etc  -amin  -50     ---查找50分钟以内【50分钟以外就是+50】文件属性被修改的所有文件
a   ----访问时间【access】
c  ------文件属性【change】
m  ------文件内容【modify】
find   /etc  -name init*  -a  -type f -exec ls -l {} \;
find   /etc  -name init*  -a  -type f -ok ls -l {} \;    ---与上面不同之处    要询问
注释:a:代表and的意思
type  f  :代表只要文件
exec  ls -l:并用ls -l 的方式输出
{} \ :显示输出
find 、  -inum 31531 -exec rm {} \;   --删除i节点为31531节点的所有文件
tail -f  /etc/log、err   ---实时监控

58、locate /mnt/yangmi —查找yangmi的文件【】

注意:locate是定期更新资料库,而不是实时更新查找,需要借助updatedb命令来更新资料卡
放在tmp下的文件是查找不出来的。
查找中不区分大小写用-i  ,例如:locate -i /mnt/yangmi 

59、快速查找命令which、whereis

which cp    -----查找cp命令的路径
whereis cp   -----查找cp命令的路径
60、grep -i mysql /etc/my、cnf -----查找/etc/my、cnf下不区分大小写的mysql的关键字行。
61、grep -v ^# /etc/my、cnf -----排除注释的所有行
62、man /more /help查看命令 【主要为帮助命令】
注意:man 不能加绝对路径 more需要加绝对路径
63、who —查看当前用户登录情况【tty为本地用户登录,w命令查看的信息更多】
64、gzip mysql、cnf ------压缩文件 gunzip mysql、cnf、gz ----解压文件 【注:只能压缩文件,不能压缩文件夹。该源文件不保留】
65、tar -zcfv zhangsan、tar、gz zhangsan
同时解压也是一样。
66、zip buduo、zip buduo —压缩文件
zip  -r buduo、zip buduo  ----压缩目录  
unzip  ---解压缩
67、bzip2 -k boduo —压缩boduo文件【-K的目的之处就是保留源文件】
bunzip2  boduo、bz2  ----解压文件
68、write mmcx ----给在线用户mmcx发消息
wall    ----给所有在线用户发消息
69、shift+g —在查看文本的时候回到底端 ---- 输入1再按shift+g ----定位到1行
70、last --查看用户登录结束时间、ip地址、持续多长时间
71、traceroute —查询路由跟踪
72、netstat -tlun —查看本机监听的端口
netstat  -an      ----查看本机所有的网络连接
netstat  -rn      -----查看本机路由表
73、setup —图形界面配置
74、mount /dev/sro /mnt/kkk ----挂载CD/DVD命令【dev/sr0为驱动,后面为路径】
umount  /dev/sr0   ---关闭挂载
75、shutdown -c 取消前一个关机命令
shutodwn -h   关机【poweroff、halt、init 0】
shutdown  -r    --重启【reboot、init 6】
76、logout —退出登录
77、vim 功能键 —gg键代表回到首行,–GG键代表回到尾行
删除3-100行中间的所有:用命令:输入:3,100d然后回车
到1000行 命令用“:1000”
复制行用yy,粘贴行用p【复制多行用3yy,粘贴用p】
复制行用dd,粘贴行用p【剪切多行用3dd,粘贴用p】
保存退出 wq!【ZZ】
##### 78、vim 中 导入文件内容 用  :r /etc/my、cnf  - 也就是将my、cnf导入到编辑文件内容里面。
79、记录当前编辑的时间用 :r! date
80、
81、vim 保存定义好的配置文件 —其路径在下面
82、vim /etc/passwd -----查看用户权限
vim /etc/shadow    -----密码保存位置【是passwd的影子文件】
83、把普通用户改成超级用户方法
vim /etc/passwd   讲所有者改成0,即可。
例如:mmcx:x:501:501::/home/mmcx:/bin/bash 【将前面的501改成0】
84、/var/spool/mail -----用户创建后自动创建的邮箱位置。
85、/etc/skel/ ----用户模板文件
86、passwd -l mmcx ----锁定用户mmcx
87、passwd -u lamp -----解锁用户mmcx
88、echo “123”|passwd --stdin mmcx —用shell设置密码【可用于密码忘记修改密码(非管理员用户)】
89、usermod —修改用户【-c -G -g】
90、chage -d 0 mmcx ----设置初始登录mmcx就修改密码
91、userdel -r mmcx ----删除用户mmcx,并删除
92、id mmcx --------查看用户的uid,gid,组id
93、su - root -----切换用户【如果直接执行su root 可以切换但环境变量没有变化,用env查看】
94、groupadd/groupmod/groupdel —添加组,修改组,删除组
95、gpasswd -a tes gtest —把test用户加入gtest组
96、gpasswd -d -----把用户从组中删除
97、su -root -c “useradd xmm” -----借用root用户执行useradd xmm【不切换用户】;
98、groupadd test ----创建组test组
dumpe2fs -h /dev/mapper/vg_vmtest-lv_root   ---查看分区表的详细信息【注意:/dev/mapper/vg_vmtest-lv_root 是通过:df -h得出来的】
注:查看以上命令的目的是为了:Default mount options:    user_xattr acl 是否支持acl权限
99、挂载acl权限命令 vi etc/fstab ----永久挂载acl
在 /dev/mapper/vg_vmtest-lv_root /                       ext4    defaults,acl        1 1
在defaults后面加上,acl就可以了!
手动挂载acl【临时】  mount -o remount,acl /
100、设定acl权限的命令
setfacl 选项 文件名
选项:  -m 设定acl权限   
            -x 删除指定的acl权限
           -b  删除所有的acl权限
          -d 设定默认的acl权限
          -k 删除默认的acl权限
          -R 递归设定的acl权限
101、----查看acl权限 getfacl 文件名
102、修改最大有限权限
setfacl -m m:rx 文件名    ---设定文件名的最大有限权限为rx【修改最大有限权限对acl和acl组有影响】
103、setfacl -x m:rx 文件名 删除文件的acl权限。
setfacl -b  文件名  删除文件所有的acl权限
104、setfacl -m d:u:mmcx:rx -R /mnt/ 设置mnt目录下递归和默认设置权限rx
105、chmod 4755 /mnt/app/mysql/install.【setuid —设置uid方法 也是危险的写权限,只能针对二进制文件】。
106、chmod 2775 文件名(二进制文件)或文件目录 【设定setgid权限:也可以这样写:chmod g+s 文件名】
107、chmod 1777 文件目录 (也可以这样写:chomd 0+t 目录名) —赋予粘着位【给文件目录赋予粘着位权限 】
108、chattr +i 文件 ----锁定改文件,任何用户都只能有读取权限【包括root用户】。
109、chattr +i 目录 —锁定目录 ,在目录下面存在的文件有修改权限,但不能新建文件和修改目录
110、chattr +a 文件 —锁定文件里面的资料(现有资料不能更改),只能新增内容。
111、chattr +a 目录 —锁定文件里面的资料(现有资料不能更改),只能新增内容。
112、visudo —设置普通用户赋予 部门root权限
在普通用户下查看权限:sudo -l
在普通用户下执行权限的时候  要加上绝对路劲 比如

113、df 选项 挂载点

-a  显示文件信息
-h   ---查看当前文件目录大小
-a   ---使用习惯单位显示容量,如KB,MB或GB
-T   ----以MB为单位显示容量
-m  ---以MB为单位显示容量
-K   ---以KB为单位显示容量。默认就是以KB为单位。

114、du 目录名 —统计目录文件的大小

du  -a  显示每个子文件的磁盘占用量   -h使用习惯(kb/M/GB)  -s  -统计占用量
115、fsck -系统修复功能【了解即可】
116、dumpe2fs /dev/sda1 —查看磁盘分区数据快大小
117、mount -l ------查询系统中已经挂载的设备,-l会显示卷标名称
118、mount -a (remount+) ------自动挂载【重新挂载】
119、mount 【-t 文件系统】【-L卷标名】【-o 特殊选项】
120、 mount -o remount,noexec /home ----重新挂载home分区,并使用noexec权限【及不能执行权限】
取消不能执行权限       mount -o remount,exec /home  
121、mount /dev/cdrom /mnt/cdrom/ ------挂载光盘
umount /dev/sr0或者 /mnt/cdrom/     ---卸载挂载
122、fdisk -l -------查看u盘设备文件名
mount -t  vfat   /dev/sdb1 /mnt/usb/    ------挂载U盘   ;inux默认是不支持ntfs文件系统
umount   /dev/sdb1    ---卸载挂载u盘
123、mount -t ntfs-3g 分区设备文件名 挂载点 【注意:要必须下载ntfs-3g的插件才可以使用】
124、挂载分区方法:
(1)、加入硬盘:虚拟机里面在设置——添加硬盘-——默认选择下一步。
(2)、fdisk  /dev/sdb/    ---进入分区界面

步骤:按P——n(按了后有e和p选择【e:扩展分区(e分区好了才有L分区),p代表主分区】)——p(p代表主分区)——选择分区大小(默认从1开始)——终止大小(可以输入:+2G)——p(查看分区)。

125、自动挂载分区

vim /etc/fstab      -----打开自动挂载文件
新增/dev/sdb1和dev/sdb5挂载命令:
/dev/sdb1               /mnt                     ext4   defaults         1 2
/dev/sdb5               /mmcx                   ext4   defaults          1 2

126、查看新分区的命令:

dumpe2fs  -h  /etc/sdb1    可以查看UUID

127、当发现出现分区加载出错。

如图:
mount -o remount,rw /    ----重新挂载根目录,并赋予写权限(默认没有写权限)。
128、free -m —查询缓存大小。
129、分配swap分区以及自动挂载swap
fdisk  /dev/sdb
进去分区分sdb6【注;要修改成swap分区类型(用L查看,将其改成82)】
mkswap  /dev/sdb6  ---格式化swap分区(如果格式失败,就重启)
swapon  /dev/sdb6   ---加载swap分区
free  -m     ------查看swap空间
注:swapoff   /dev/sdb6   ---取消swap分区
130、自动挂载也是进入vim /etc/fstab 将刚刚加载的sdb6加上去即可。
/dev/sdb6               swap                    swap    defaults         0 0 
131、定时任务执行
crontab -l 查看当前执行任务 【要登录具体用户操作】
crontab -e  写入当前任务【要登录具体用户操作】
0 * * * * mmcx /mysqldump_data.cnf    ------定时每隔一小时启动【0代表分,当等于0时】
* 9-17/1 * * 1,2,3,4,5 /path/to/your/script   ---工作时间内:09:00 - 17:00 一小时执行一次
* 18-8/2 * * 6,0    /path/to/your/script     -----工作时间外:18:00 - 08:00 两小时执行一次
0 */2 * * * echo "Have a break now." >> /tmp/test.txt  ---每两小时执行一次
0 23-7/2,8 * * * echo "Have a good dream" >> /tmp/test.txt  --晚上11点到早上8点之间
每两个小时和早上八点 
30 10 * * 1,2,3,4,5 source ~/.bash_profile;/home/oracle/every_baobiao.sh
31 10 * * 1,2,3,4,5 source ~/.bash_profile;/home/oracle/every_baobiao1.sh
32 10 * * 1,2,3,4,5 source ~/.bash_profile;/home/oracle/send_mail.sh    ---每周星期一到星期五执行
132、rpm -ivh -------安装
133、rpm -Uvh -------升级包
134、rpm -qi 包名 ------查看信息。
135、rpm -ql 包名 ----查看包安装路径
136、rpm -qf 系统文件名 -----查看系统文件名【反向查找rpm包】
137、rpm -qR 包名 --------查询软件安装包的依赖性
138、rpm -V 包名 ----查看文件较验
139、yum grouplist -----列出所有可用的软件组列表
140、yum groupinstall 软件组名 -----安装指定软件组
141、yum groupremove 软件组名 -----卸载指定软件组
142、 ./configure --prefix=/mnt/app/apache/ && make && make install —源码安装方法
143、webmin的安装 —其意义是通过图形化页面管理linux
144、chkconfig -list —查看rpm安装的服务的自启动状态
145、chkconfig 命令使用
chkconfig --list        #列出所有的系统服务
chkconfig --add httpd        #增加httpd服务
chkconfig --del httpd        #删除httpd服务
chkconfig --level httpd 2345 on        #设置httpd在运行级别为2、3、4、5的情况下都是on(开启)的状态
chkconfig --list        #列出系统所有的服务启动情况
chkconfig --list mysqld        #列出mysqld服务设置情况
chkconfig --level 35 mysqld on        #设定mysqld在等级3和5为开机运行服务,--level 35表示操作只在等级3和5执行,on表示启动,off表示关闭
chkconfig mysqld on        #设定mysqld在各等级为on,“各等级”包括2、3、4、5等级

146、让源码包服务被服务管理命令识别

方法:添加软连接即可
ln -s /usr/local/apache2/bin/apachectl /etc/init.d/apache
这样就可以用service apache start 启用
如果要让源码安装让他自启动并在chkconfig  --list上显示,操作方法:
打开你要自启动的文件【本例在/etc/init.d/apache下,使用vim /etc/init.d/apache】
#chkconfig:2345 86 76 
#description: source package apache   
然后保存生效
chkconfig --add apache
操作完成!
147、ps -le 和 ps -aux ----查看所有进程
148、设置http可以访问目录设置方法
vim /etc/httpd/conf/httpd.cnf
修改:
<Directory />
   Options Indexes
   AllowOverride None
 </Directory>
149、docker exec -t -i 容器号 /bin/bash
150、netstat -nat|grep -i “80”|wc -l -----查看连接数
151、可以不用看…
#!/bin/shi

echo -e "\033[32;40;5;1m 正在发布fastdfs-images................ ]\033[0m"
scp -r /data/share/weblogic/ears/store.ear/xxx.war/statichtml/topic/* root@192.168.2.4:/data/www/xx/html/topic/
echo -e "\033[32;40;5;1m fastdfs-images发布完成!! ]\033[0m"
-----------------------------发布脚本
152、top —查看cpu状态
152、lsof -Pnl +M -i4 | grep 20880 —查看进程

pidof Name

153、vmstat 2 —监控linux硬件资源【2秒执行一次】
154、/bin/sync&&echo 3 > /proc/sys/vm/drop_caches ---------清理内存(内存占用较大问题)
ps -A -ostat,ppid,pid,cmd | grep -e '^[Zz]'     -----查看僵尸进程
155、30 * * * * /usr/sbin/ntpdate time.windows.com;/sbin/hwclock -w -----定时更新时间服务器
*/1 * * * * source ~/.bash_profile;/home/oracle/every_baobiao1.sh   ----定时每分钟执行任务
156、dos2unix 文件名 -----------------将Windows格式替换成Linux格式
157、alias vi=vim 命名别名为vi【也就是你输入vi也就是vim】

如果让他别名 vi /root/.bashrc

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

运维小桃子

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值