Linux命令总结

Posted Icedzzz

tags:

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

1. SSH

SSH登录原理
SSH是一种网络协议,用于计算机之间的加密登录。SSH采用非对称加密,非对称加密有两个密钥:公钥和私钥。数据使用公钥加密之后,只能使用私钥进行解密,而私钥被破解的概率很低很低。

  1. 本机生成密钥和公钥

  2. 把公钥传递给远程主机

  3. 主机把公钥追加进免检名单

  4. 本机请求远程主机

  5. 远程主机去免检名单里找到所属公钥

  6. 生成用公钥加密后的字符串传回本机

  7. 本机使用私钥进行解密

  8. 本机把解密后的信息传给远程主机

  9. 远程主机进行验证

  10. 登录成功

在这里插入图片描述
面试题:安装Hadoop为什么需要SSH免密登录?
hadoop集群模式一般运行在redhat或者是centos等系统平台上,在任务计划分发,心跳监测以及任务管理,多租户管理等等都会用到ssh,所以这个必须安装。

2. 常用指令

sync # 将数据由内存同步到硬盘中。
shutdown # 关机指令,你可以man shutdown 来看一下帮助文档。例如你可以运行如下命令关机:
shutdown –h 10 # 这个命令告诉大家,计算机将在10分钟后关机
shutdown –h now # 立马关机
shutdown –h 20:25 # 系统会在今天20:25关机
shutdown –h +10 # 十分钟后关机
shutdown –r now # 系统立马重启
shutdown –r +10 # 系统十分钟后重启
reboot # 就是重启,等同于 shutdown –r now
halt # 关闭系统,等同于shutdown –h now 和 poweroff

目录管理:

cd : 切换目录命令!
./ : 当前目录
cd .. : 返回上一级目录
ls (列出目录!)
cd 命令 切换目录
pwd 显示当前用户所在的目录!
mkdir 创建一个目录
rmdir 删除目录
cp (复制文件或者目录)
rm (移除文件或者目录!)

文件属性:
用户和组的概念:
Linux 是多用户多任务操作系统,换句话说,Linux 系统支持多个用户在同一时间内登录,不同用户可以执行不同的任务,并且互不影响。
不同用户具有不问的权限,每个用户在权限允许的范围内完成不见的任务,Linux 正是通过这种权限的划分与管理,实现了多用户多任务的运行机制。
每个用户都有唯一的用户名和密码。在登录系统时,只有正确输入用户名和密码,才能进入系统和自己的主目录。
用户组是具有相同特征用户的逻辑集合。简单的理解,有时我们需要让多个用户具有相同的权限,所有用户就具有了和组一样的权限,这就是用户组。
将用户分组是 Linux 系统中对用户进行管理及控制访问权限的一种手段,通过定义用户组,很多程序上简化了对用户的管理工作。

ll 查看文件属性
chgrp:更改文件属组
chown:更改文件属主,也可以同时更改文件属组
chmod:更改文件9个属性 
Linux文件的基本权限就有九个,分别是owner/group/others三种身份各有自己的read/write/execute权限 r:4 w:2 x:1
chomd 777 文件赋予所有用户可读可执行!

文件查看:

cat 由第一行开始显示文件内容,用来读文章,或者读取配置文件啊,都使用cat名
tac 从最后一行开始显示,可以看出 tac 是 cat 的倒着写!
nl 显示的时候,顺道输出行号! 
more 一页一页的显示文件内容,带余下内容的
head 只看头几行 通过 -n 参数来控制显示几行!
tail 只看尾巴几行 -n 参数 要查看几行!
man [命令]来查看各个命令的使用文档
ifconfig 命令查看网络配置!
touch 命令创建文件!
echo 输入字符串,也可以输入到文件中!

用户管理:

useradd 命令 添加用户
userdel 删除用户 
usermod 修改用户
su username 切换用户的命令
sudo su 从普通用户切换到root用户

用户组管理:

每个用户都有一个用户组,系统可以对一个用户组中的所有用户进行集中管理(开发、测试、运维、root)。不同Linux 系统对用户组的规定有所不同,如Linux下的用户属于与它同名的用户组,这个用户组在创建用户时同时创建
用户组的管理涉及用户组的添加、删除和修改。组的增加、删除和修改实际上就是对/etc/group文件的更新

groupadd 创建一个用户组
groupdel 删除用户组
groupmod -g -n 修改用户组的权限信息和名字

磁盘管理:

df (列出文件系统整体的磁盘使用量) 
du(检查磁盘空间使用量!)

进程管理:
1、在Linux中,每一个程序都是有自己的一个进程,每一个进程都有一个id号!
2、每一个进程呢,都会有一个父进程!
3、进程可以有两种存在方式:前台!后台运行!
4、一般的话服务都是后台运行的,基本的程序都是前台运行的

ps 查看当前系统中正在执行的各种进程的信息!
-a 显示当前终端运行的所有的进程信息(当前的进程一个)
-u 以用户的信息显示进程
-x 显示后台运行进程的参数!
# ps -aux 查看所有的进程
ps -aux|grep mysql
# | 在Linux这个叫做管道符 A|B
# grep 查找文件中符合条件的字符串!
ps -ef:可以查看到父进程的信息
kill -9 进程的id 杀掉进程

防火墙:

# 查看firewall服务状态
systemctl status firewalld
# 开启、重启、关闭、firewalld.service服务
# 开启
service firewalld start
# 重启
service firewalld restart
# 关闭
service firewalld stop
# 查看防火墙规则
firewall-cmd --list-all # 查看全部信息
firewall-cmd --list-ports # 只看端口信息
# 开启端口
开端口命令:firewall-cmd --zone=public --add-port=8080/tcp --permanent
重启防火墙:systemctl restart firewalld.service
命令含义:
--zone #作用域
--add-port=80/tcp #添加端口,格式为:端口/通讯协议

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

markdown [Docker] Docker片段列表和命令#linux #docker #snippets

Android 逆向Linux 文件权限 ( Linux 权限简介 | 系统权限 | 用户权限 | 匿名用户权限 | 读 | 写 | 执行 | 更改组 | 更改用户 | 粘滞 )(代码片段

python常用代码片段总结

BootStrap有用代码片段(持续总结)

linux下svn的常用操作命令总结

linux命令总结