Linux命令备忘

常见系统服务命令

systemctl命令:是一个systemd工具,主要负责控制systemd系统和服务管理器。
service命令:可以启动、停止、重新启动和关闭系统服务,还可以显示所有系统服务的当前状态。
chkconfig命令:是管理系统服务(service)的命令行工具。所谓系统服务(service),就是随系统启动而启动,随系统关闭而关闭的程序。
systemctl命令是系统服务管理器指令,它实际上将 service 和 chkconfig 这两个命令组合到一起。

service <服务名> status 查看某个服务
service <服务名> start 启动某个服务
service <服务名> stop 终⽌某个服务
service <服务名> restart 重启某个服务

systemctl status <服务名> 查看某个服务
systemctl start <服务名> 启动某个服务
systemctl stop <服务名> 终⽌某个服务
systemctl restart <服务名> 重启某个服务
systemctl enable <服务名> 开启⾃启动
systemctl disable <服务名> 关闭⾃启动

chkconfig命令

chkconfig命令 检查、设置系统的各种服务。这是Red Hat公司遵循GPL规则所开发的程序,它可查询操作系统在每一个执行等级中会执行哪些系统服务,其中包括各类常驻服务。谨记chkconfig不是立即自动禁止或激活一个服务,它只是简单的改变了符号连接。

chkconfig --list               # 列出系统所有的服务启动情况。
chkconfig --list mysqld        # 列出mysqld服务设置情况。

chkconfig --add httpd        #增加httpd服务。
chkconfig --del httpd        #删除httpd服务。

chkconfig mysqld on            # 设定mysqld在各等级为on,“各等级”包括2、3、4、5等级。
chkconfig --level httpd 2345 on        #设置httpd在运行级别为2、3、4、5的情况下都是on(开启)的状态。
chkconfig --level 35 mysqld on # 设定mysqld在等级3和5为开机运行服务,--level 35表示操作只在等级3和5执行,on表示启动,off表示关闭。
chkconfig –level redis 2345 on # 把redis在运行级别为2、3、4、5的情况下都是on(开启)的状态。

0 为停机,机器关闭。
1 为单用户模式,就像Win9x下的安全模式类似。
2 为多用户模式,但是没有NFS支持。
3 为完整的多用户模式,是标准的运行级。
4 一般不用,在一些特殊情况下可以用它来做一些事情。例如在笔记本 电脑的电池用尽时,可以切换到这个模式来做一些设置。
5 就是X11,进到X Window系统了。
6 为重启,运行init 6机器就会重启。

如何增加一个服务:

  1. 服务脚本必须存放在/etc/ini.d/目录下;
  2. chkconfig --add servicename在chkconfig工具服务列表中增加此服务;
  3. chkconfig --level 35 mysqld on修改服务的默认启动等级。

文件和目录操作

cd <⽬录名> 进⼊某个⽬录
cd .. 回上级⽬录
cd ../.. 回上两级⽬录
cd 进个⼈主⽬录
cd - 回上⼀步所在⽬录
pwd 显示当前路径

ls 查看⽂件⽬录列表
ls -F 查看⽬录中内容(显示是⽂件还是⽬录)
ls -l 查看⽂件和⽬录的详情列表
ls -a 查看隐藏⽂件
ls -lh 查看⽂件和⽬录的详情列表(增强⽂件⼤⼩易读性)
ls -lSr 查看⽂件和⽬录列表(以⽂件⼤⼩升序查看)
tree 查看⽂件和⽬录的树形结构

mkdir <⽬录名> 创建⽬录
mkdir dir1 dir2 同时创建两个⽬录
mkdir -p /tmp/dir1/dir2 创建⽬录树

rm -f file1 删除'file1'⽂件
rmdir dir1 删除'dir1'⽬录
rm -rf dir1 删除'dir1'⽬录和其内容
rm -rf dir1 dir2 同时删除两个⽬录及其内容

mv old_dir new_dir 重命名/移动⽬录
cp file1 file2 复制⽂件
cp dir/* . 复制某⽬录下的所有⽂件⾄当前⽬录
cp -a dir1 dir2 复制⽬录
cp -a /tmp/dir1 . 复制⼀个⽬录⾄当前⽬录

ln -s file1 link1 创建指向⽂件/⽬录的软链接
ln file1 lnk1 创建指向⽂件/⽬录的物理链接

find / -name file1 从跟⽬录开始搜索⽂件/⽬录
find / -user user1 搜索⽤户user1的⽂件/⽬录
find /dir -name *.bin 在⽬录/dir中搜带有.bin后缀的⽂件
locate <关键词> 快速定位⽂件
locate *.mp4 寻找.mp4结尾的⽂件
whereis <关键词> 显示某⼆进制⽂件/可执⾏⽂件的路径
which <关键词> 查找系统⽬录下某的⼆进制⽂件

chmod ugo+rwx dir1 设置⽬录所有者(u)、群组(g)及其他⼈(o)的读(r)写(w)执⾏(x)权限
chmod go-rwx dir1 移除群组(g)与其他⼈(o)对⽬录的读写执⾏权限
chown user1 file1 改变⽂件的所有者属性
chown -R user1 dir1 改变⽬录的所有者属性
chgrp group1 file1 改变⽂件群组
chown user1:group1 file1 改变⽂件的所有⼈和群组

chmod命令

理解访问权限

Linux系统中的每个文件和目录都有访问许可权限。
访问权限分为只读®,只写(w)和可执行(x)三种。
有三种不同类型的用户可对文件或目录进行访问:文件所有者(u),同组用户(g)、其他用户(o)。

举例说明

-rw-r--r-- 1 root root 302108 11-13 06:03 log1.log

该例中表示log1.log是一个文件;文件所有者有读写权限;同组用户只有读权限;其他用户也只有读权限。

第一列共有10个位置。
第一个字符指定了文件类型,如果是横线,表示是一个文件,如果是d,表示是一个目录。
从第二个字符开始到第十个共9个字符,3个字符一组,分别表示了3组用户对文件或者目录的权限。横线代表空许可,r代表只读,w代表写,x代表可执行。

修改访问权限

chmod [-cfvR] [--help] [--version] mode file   

-c 当发生改变时,报告处理信息
-f 错误信息不输出
-R 处理指定目录以及其子目录下的所有文件
-v 运行时显示详细处理信息

选择参数:
--reference=<目录或者文件> 设置成具有指定目录或者文件具有相同的权限
<权限范围>+<权限设置> 使权限范围内的目录或者文件具有指定的权限
<权限范围>-<权限设置> 删除权限范围的目录或者文件的指定权限
<权限范围>=<权限设置> 设置权限范围内的目录或者文件的权限为指定的值

权限范围:
u :目录或者文件的当前的用户
g :目录或者文件的当前的群组
o :除了目录或者文件的当前用户或群组之外的用户或者群组
a :所有的用户及群组

权限代号:
r :读权限,用数字4表示
w :写权限,用数字2表示
x :执行权限,用数字1表示
- :删除权限,用数字0表示
s :特殊权限 

该命令有两种用法。一种是包含字母和操作符表达式的文字设定法;另一种是包含数字的数字设定法。
  1). 文字设定法:
     chmod [who] [+ | - | =] [mode] 文件名
  2). 数字设定法
    chmod [mode] 文件名
  我们必须首先了解用数字表示的属性的含义:0表示没有权限,1表示可执行权限,2表示可写权限,4表示可读权限,然后将其相加。所以数字属性的格式应为3个从0到7的八进制数,其顺序是(u)(g)(o)。
  例如,如果想让某个文件的属主有“读/写”二种权限,需要把4(可读)+2(可写)=6(读/写)。
数字与字符对应关系如下:
r=4,w=2,x=1
若要rwx属性则4+2+1=7
若要rw-属性则4+2=6;
若要r-x属性则4+1=7

打包和解压

参考文档:https://cloud.tencent.com/developer/article/1404921

明确的两个概念,打包和压缩不是一回事:
打包:是指将一大堆文件或目录变成一个总的文件。
压缩:则是将一个大文件通过压缩算法变成一个小文件。
为什么要区分这两个概念呢?这源于Linux 中很多压缩程序只能针对一个文件进行压缩,这样当你想要压缩一大堆文件时,你得先将这一大堆文件先打成一个包(tar命令),然后再用压缩程序进行压缩(gzip bzip2命令)。

zip xxx.zip file 压缩⾄zip包
zip -r xxx.zip file1 file2 dir1 将多个⽂件+⽬录压成zip包
unzip xxx.zip 解压zip包
tar -cvf xxx.tar file 创建⾮压缩tar包
tar -cvf xxx.tar file1 file2 dir1 将多个⽂件+⽬录打tar包
tar -tf xxx.tar 查看tar包的内容
tar -xvf xxx.tar 解压tar包
tar -xvf xxx.tar -C /dir 将tar包解压⾄指定⽬录(-C是创建目录)
tar -cvfj xxx.tar.bz2 dir 创建bz2压缩包
tar -jxvf xxx.tar.bz2 解压bz2压缩包
tar -cvfz xxx.tar.gz dir 创建gzip压缩包
tar -zxvf xxx.tar.gz 解压gzip压缩包
bunzip2 xxx.bz2 解压bz2压缩包
bzip2 filename 压缩⽂件
gunzip xxx.gz 解压gzip压缩包
gzip filename 压缩⽂件
gzip -9 filename 最⼤程度压缩

RPM包管理命令

在 Linux 操作系统下,几乎所有的软件均通过RPM 进行安装、卸载及管理等操作。RPM 的全称为Redhat Package Manager ,是由Redhat 公司提出的,用于管理Linux 下软件包的软件。Linux 安装时,除了几个核心模块以外,其余几乎所有的模块均通过RPM 完成安装。RPM 有五种操作模式,分别为:安装、卸载、升级、查询和验证。

# 查询
rpm -qa | grep tomcat4 查看 tomcat4 是否被安装;

# 安装
rpm -ivh example.rpm 安装 example.rpm 包并在安装过程中显示正在安装的文件信息及安装进度;

# 卸载
rpm -evh example 卸载example软件包并在卸载过程中显示卸载的文件信息及卸载进度;

# 更新
rpm -Fvh pkg_name 升级确定已安装的rpm包
rpm -Uvh pkg_name 升级rpm包(若未安装则会安装)

# 验证
rpm -V pkg_name RPM包详细信息校验

YUM包管理命令

yum命令 是基于rpm的软件包管理器,它可以使系统管理人员交互和自动化地更新与管理RPM软件包,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软体包,无须繁琐地一次次下载、安装。

语法

yum(选项)(参数)

选项

-h:显示帮助信息;
-y:对所有的提问都回答“yes”;
-c:指定配置文件;
-q:安静模式;
-v:详细模式;
-d:设置调试等级(0-10);
-e:设置错误等级(0-10);
-R:设置yum处理一个命令的最大等待时间;
-C:完全从缓存中运行,而不去下载或者更新任何头文件。

参数

install:安装rpm软件包;
update:更新rpm软件包;
check-update:检查是否有可用的更新rpm软件包;
remove:删除指定的rpm软件包;
list:显示软件包的信息;
search:检查软件包的信息;
info:显示指定的rpm软件包的描述信息和概要信息;
clean:清理yum过期的缓存;
shell:进入yum的shell提示符;
resolvedep:显示rpm软件包的依赖关系;
localinstall:安装本地的rpm软件包;
localupdate:显示本地rpm软件包进行更新;
deplist:显示rpm软件包的所有依赖关系。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值