1.虚拟机的克隆
具体步骤参考这位仁兄:https://blog.csdn.net/CSDNOfWK/article/details/78442187
克隆完成之后,还需要对克隆后的机子进行必要的网络配置。
比如配置它的IP 步骤参考上一篇博客
配置后容易出现一个小问题
解决如下:
网络配置完成后 我们需要对它的主机名进行变更
2.文件或目录在本地与远程服务器之间的传送
为了方便两者之间传递文件的操作 我们需要为两台机器配置好host文件 注意的是host的名称一定要和hostname保持一致
相同的,在node02的机器上也进行同样的操作,再互相验证,能否ping通彼此。
这个过程就相当于两个人互相存电话号码的操作。
首先在node01上我们新建一个名为whb.log的文件
然后我们向node02的机器发送whb.log
这样,在node02上我们可以查看到whb.log已经成功接收了。
类似的还有目录(文件夹)的传送
注意的是如果是传送到相同路径:scp -r local_folder remote_username@remote_ip:`pwd`
3.对磁盘的简单操作
两个很简单的命令df和du
df 查看磁盘的信息 后面跟参数-k -m -h 分别是以kb mb 更适合阅读的方式展现磁盘的信息
du 查看文件和目录的信息 参数和作用参考df 两个差不多 但不一样的是--max-depth=0 查看目录深度
4.常用的网络操作
ifconfig 查看当前的网络信息
ping 测试网络的连通性
netstat 显示各种网络相关的信息 具体参考man
查看端口号(是否被占用)
1、lsof -i:端口号
2、netstat -tunlp|grep 端口号
5.http请求的模拟
模拟http的get请求
6.用户、用户组、系统权限
6.1 用户操作
useradd/adduser username #增加用户
passwd username #修改新用户的密码
usermod -l new_name old_name #修改用户名
usermod -L username #锁定用户 (慎用...)
账号锁定期间,用户输入的命令无论正确与否都提示密码错误,登录不了,即冻结了账号
usermod -U mytest #解除锁定
whoami #查看当前登录用户名
6.2 用户组操作
groupadd groupname #创建用户组
groupdel groupname #删除用户组
groupmod -n newname oldname #用户组名的修改
groups #查看当前登录用户的所在的组
groups username #查看指定用户所在的组
usermod -g 组名 用户 #修改指定用户的主组
usermod -G 组名 用户 #将指定的用户附加到指定的组中
6.3 系统权限的操作
首先权限类别有三种:r(读) w(写) x(执行)
其次Linux的权限是基于UGO模型的 即User Group Other
然后权限三个为一组 分别对应UGO
下面是对权限的具体操作:
修改权限
修改文件/目录的所有者:chown username 文件/目录
同时修改文件/目录的所有者和属组:chown username:groupname 文件/目录
若要递归修改整个目录下的所有者或属组 加参数 -R
修改文件/目录的属组:chgrp groupname name
修改文件/目录的权限:chmod ugo+rwx name #+代表增加权限 - 代表减少权限
rwx也可以用数字指代 r等价4 w等价2 x等价1
特别说明:普通用户在被创建时默认会创建与该用户同名的主组
在文件或目录的权限控制上要看文件具体的权限属性 看它的实际的拥有者 以及当时操作的用户
7. 系统服务初始化的配置
init 0至9
其中 0代表停机(实际生产环境要慎用)3为Linux的默认级别 6代表停止所有进程 卸载文件系统 重新启动相当于reboot
8. sudo的权限配置
在非root模式下 我们可以使用sudo来实现只有在root模式下才能执行的操作。
我们也可以通过编辑sudoers来控制普通用户执行的命令的权限
mytest用户就可以用yum 和 service 命令了
9. 更新系统时间
为了精确的更新系统时间 我们使用第三方的时间服务器来实时更新我们的系统时间
首先要安装ntp服务
yum install ntpdate -y
然后 ntpdate cn.ntp.org.cn
10. 重定向和管道
10.1 重定向符
> 输出重定向覆盖
>> 输出重定向追加
< 输入重定向
1> 标准输出重定向 只有正确的输出才会重定向到某个指定文件 错误的则不会
2> 错误输出重定向 只有错误的输出才会重定向到某个指定文件 正确的则不会
2>&1 无论输出正确与否都会重定向到某个指定文件
10.2 管道符 |
“|”的意思是将前一个输出当作后一个输入
cat web.log | grep web 将web.log的内容当作grep的输入 即在web.log内查找web字段并输出
10.3 命令的控制
命令:&& 前一个命令执行成功才会执行后一个命令
命令:|| 前一个命令执行失败才会执行后一个命令
10.4 信息黑洞
/dev/null 输出到这个目录的信息都会永远丢失 可以将不需要的信息写入到这个目录中去