一.安装
VmWare、CentOs7 ,安装的时候记得勾选安装桌面
二.Linux目录
linux系统下一切皆文件,包括硬件设备等也以文件形式存储在系统中
三.Linux远程连接工具
Xshell、Xftp 此处附上下载链接备忘,学生家庭试用版(https://www.netsarang.com/zh/free-for-home-school/ )
远程连接,需要保证sshd服务打开,确保端口号22可用
几个常用命令:
- 查看ip:ifconfig (注意与windows的ipconfig区分)
- 查看sshd服务状态:service sshd status
- 打开sshd服务:systemctl restart sshd
四.实操-基础命令
1.vi/vim
文本编辑工具
三种状态:
- 默认状态:vim *** 默认进入状态
- 编辑状态:在默认状态按下i后进入该状态
- 命令状态:在默认状态输入:后进入该状态
说明 | 快捷键 | 示例 | 状态说明 | 备注 |
复制 | nyy | 5yy | 默认状态 | n为数字(可选),yy为复制,表示从当前位置复制n行, |
粘贴 | p | p | 默认状态 | 将复制的内容粘贴到光标处 |
删除 | ndd | 5dd | 默认状态 | n为数字(可选),dd为删除,表示从当前位置删除n行 |
查找 | /keyPattern | /hello | 默认状态 | 按下/后,输入关键字回车,按n查找下一个 |
显示行号 | set nu | set nu | 命令状态 | 输入set nu 后,即显示行号, set nonu 不显示行号 |
移至首行 | gg | gg | 默认状态 | 输入gg光标定位到首行 |
移至尾行 | G | G | 默认状态 | 输入G光标定位到尾行 |
移至n行 | n + shift + g 或输入 :num | 20,shift+g 或者 :20 | 默认状态 | 输入行号后,同时按住shift+g |
移至行首或行尾 | HOME键 / END键 | |||
... | 贪多嚼不烂 |
2.开关机及注销
命令 | 组合 | 说明 |
sync | 同步内存数据到磁盘,防止数据丢失 | |
halt | 立即关机 | |
reboot | 立即重启 | |
shutdown | shutdown | 1分钟后关机 |
shutdown -h now | -h halt 关闭;同halt | |
shutdown -h 1 | -h halt 关闭;1 关闭时间;同shutdown | |
shutdown -r now | -r reboot 重启;同reboot | |
shutdown -cancel | -c cancel 取消 取消关机 | |
logout | 注销当前用户登录 |
3.用户管理
用户信息存放路径:/etc/passwd
用户组存放路径:/etc/group
命令 | 组合 | 举例 | 说明 |
groupadd | groupadd 组名 | groupadd wudang | 添加分组 |
groupdel | groupdel 组名 | groupdel wudang | 删除分组 |
命令 | 组合 | 举例 | 说明 |
useradd | useradd 用户名 | useradd Tom | 添加用户Tom |
useradd -d xx 用户名 | useradd -d /home/dir Jim | 添加用户并指定home目录 | |
useradd -g 组名 用户名 | useradd -g wudang zhangwuji | 添加用户并划分到该组 | |
passwd | passwd 用户名 | passwd Tom | 为用户设置密码 |
usermod | usermod -g 组名 用户名 | usermod -g shaolin zhangwuji | 修改用户信息 |
userdel | userdel 用户名 | userdel Tom | 删除用户 |
userdel -r 用户名 | userdel -r Tom | 删除用户及家home目录 | |
id | id 用户名 | id Tom | 查询用户信息及所在组 |
su | su - 用户名 | su - root | 切换用户 |
su | su | 切换身份,但不切换环境 | |
sudo | sudo 命令 | 暂借root权限执行命令 | |
whoami | whoami | whoami | 当前登陆 |
4.运行级别示意图
运行级别配置文件路径:/etc/inittab
指定运行级别:init [012356]
init 3 进入 命令页面
init 5 进入 图形页面
init 0 关机
操作:忘记root密码并重置(完整重置密码链接https://baijiahao.baidu.com/s?id=1614000108255096283&wfr=spider&for=pc)
- 在主机启动时,进入单用户模式
- 在单用户模式,更改root密码
- 重新启动即可
5.基础指令帮助
man 查看命令介绍
help
pwd 显示当前目录
ls 列出文件列表
- ls
- ls -a 显示所有,包括隐藏文件
- ls -l 以列表方式显示
cd 切换目录
- cd ~
- cd /root/dev
- cd ../dev
mkdir 创建目录
- mkdir study/test 在study目录下创建test目录,若study不存在则创建失败
- mkdir -p study/test/testdeep 在study下创建目录,若不存在则创建系列目录
rmdir 删除目录
- rmdir study/test 删除文件目录test,test不为空时删除失败
- rm -rf study/test 删除文件目录test,test不为空时将其文件一同删除
touch 创建空文件
touch 文件1 文件2
cp 拷贝 cp [option] source target
- cp study/test study/test2 复制
- cp -r study/test study/test/ 递归复制
rm 删除
- rm -r text 递归删除
- rm -f test 强制删除不提示
mv 移动
- mv test1 test2
cat 查看
- cat /etc/profile
- cat /etc/profile | more
more
- more /etc/profile
- space 翻页
- enter 换行
- q 退出
- Ctrl+F 向下滚动一屏
- Ctrl+B 返回上一屏
- = 输出当前行号
- :f 输出当前文件+行号
less
- less /etc/profile
- space 翻页
- enter 换行
- pagedown 下翻页
- pageup 上翻页
- /字符串 向下查找 :n向下、N向上
- ?字符串 向上查找: n向上、N向下
> 输出重定向
- ls -l > example 将ls结果内容覆盖到example文件中,有则覆盖无则创建
>> 追加
- ls -l >>example2 将ls结果内容覆盖到example文件中,有则覆盖无则创建
- cal >> example2 将日历信息追加
echo 输出
- echo '内容' > example 覆盖example文件
- echo '内容' >> example 追加example文件
- echo text 在控制台输出text
- echo $PATH 在控制台输出环境变量
head 查看文件首部内容
- head /etc/profile 默认前十行
- head -100 /etc/profile 前100行
tail 查看文件尾部内容
- tail /etc/profile 默认尾十行
- tail -100 /etc/profile 尾100行
- tail -f /etc/profile 实时追加
ln 软连接(快捷方式)
- ln source targetlink
history 历史命令
- history 显示所有
- history 10 显示10个
- !178 执行第178条命令
6.时间日期类
date 日期相关
- date 显示当前时间
- date "+%Y-%m-%d %H:%M:%S" 以此格式显示时间
- date -s 2020-05-20 18:00:00 设定时间
cal 日历相关
- cal 查看本月日历
- cal 2020 查看本年日历
7.查找相关指令
find
- find /home -name hello.txt 按名字在home目录下查找hello.txt
- find /home -user root 按用户在home目录下查找root拥有的文件
- find /home -size +20M 按大小在home目录下查找大于20M的文件
locate (需预先执行updatedb)
- locate hello.txt 按名字定位文件
grep 和 | 管道符(将前一个命令输出给后面的命令处理)
- cat hello.txt| grep Hello -n 查找hello.txt的Hello字符串并展示行号
- cat hello.txt| grep Hello -i 查找hello.txt的Hello字符串并忽略大小写
- cat hello.txt| grep Hello -a10 -b10 查找hello.txt的Hello字符串并追加前十行后十行
- grep 'sgf' -i -n -a10 -b10 hello.txt
8.压缩/解压缩
gzip/gunzip [-cdtv]
- gzip hello.txt 压缩文件(压缩后原文件不再存在)
- gunzip hello.gz 解压缩文件,同gzip -d hello.gz(解压后源文件不再存在)
zip/unzip(不常用)
- zip
- zip hello.zip hello 将hello文件压缩到hello.zip中(原文件仍存在)
- zip -r test1.zip test1/ 递归压缩,即将目录打包
- unzip
- unzip hello.zip 在当前目录解压hello.zip
- unzip -d helloZip hello.zip 指定解压hello.zip到helloZip中
tar [选项] 打包指令
- tar -zcvf test.tar.gz test1.txt text2.txt 将文件1.2打包并压缩至test.tar.gz
- tar -zcvf testAll.tar.gz /home/ 将home目录打包并压缩至testAll.tar.gz
- tar -zxvf test.tar.gz 将test.tar.gz解压到当前目录
- tar -zxvf test.tar.gz /home/test/ 将test.tar.gz解压到指定目录
五、实操-权限管理
1.分组与权限
groupadd handsomeboy
useradd -g handsomeboy handsome
ls 列出文件
- ls -l 查看详情 (rw- r-- r--)->(拥有者、所在组、其他人)
chown 改变文件拥有者
- chown tom test.txt 改变文件拥有者
- chown tom:handsome test.txt 改变文件拥有者及组
- chown -R tom dir1 修改目录下所有文件的拥有者
chgrp 改变文件所在组
- chgrp handsome_guy handsome.txt
usermod 修改用户信息
- usermod -g smart_guy tom 修改用户所在组
- usermod -d /home/tom2 tom 修改用户家目录
-rwxrw-r-- r读w写x执行
chmod 修改文件权限
- chmod u=rwx,g=rw,o=r ok.txt 给文件按人员角色设置权限
- chmod u-x,g+w ok.txt 给文件按人员角色添加减少权限
- chmod a+r ok.txt 给文件所有人员添加读权限
- chmod 751 ok.txt 给文件用数字修改权限
六、实操-高级
1.定时任务
crond
- crontab -e 进入定时任务编辑
- crontab -l
- crontab -r
- service crond restart
1.直接通过crontab-e 将定时任务输入其中、
2.将命令保存至shell脚本中,再定时执行shell脚本
2.磁盘分区、挂载
磁盘情况查询
1.df -h 查询系统磁盘整体情况
2.du -h /目录 查看指定目录磁盘使用情况
实用命令
- ls -l /home | grep "^-" | wc -l 统计home目录下的文件个数
- ls -l /home | grep "^d" | wc -l 统计home目录下的目录个数
- ls -lR /home | grep "^-" | wc -l 统计home目录下的文件及子文件个数
- ls -lR /home | grep "^d" | wc -l 统计home目录下的目录及子目录个数
- tree 以树形图展示目录(需yum install tree 安装)
3.网络配置
Vmware虚拟网络
原理图
修改ip地址(修改虚拟网络ip)
查看网关
设置网络ip
方法一:通过界面设置
缺点:每次ip会自动变
方法二:通过文件设置
vim /etc/sysconfig/network-scripts/ifcfg-ens33
4.进程管理
ps 显示系统进程
- ps -aux (-a 当前终端所有进程 -u 以用户格式显示信息 -x显示后台进程运行的参数)
- ps -ef (-e 所有进程 -f全格式)
- ps -ef |grep sshd
ps -aux 和 ps -ef 都可以用来查看进程信息,只不过展示风格不一致
kill 、killall 杀掉进程
- kill pid 终止具体进程
- kill -9 pid 强制终止
- killall pname 根据命令杀掉所有
pstree
5.服务管理
service 服务管理
- service iptables status 查看防火墙状态
- service iptables stop 关闭防火墙
- service iptables start 开启防火墙
telnet ip port 查看该端口是否开启
setup 查看服务
ls -l /etc/init.d/ 查看服务
vim /etc/inittab 设置默认运行级别(0-6)
chkconfig 给服务设置运行级别开关
- chkconfig --list
- chkconfig --level 5 服务名 on/off
6.动态监控进程
top
u 按用户查找 k杀掉进程
7.监控网络状态
netstat 查看网络状态
- netstat -an 按一定顺序排列输出
- netstat -p 显示哪个进程在调用
8.RPM包与YUM
rpm
- rpm -qa 查看安装的所有rpm包
- rpm -qa| more
- rpm -qa|grep firefox
- rpm -q 软件包名 查询软件包是否安装
- rpm -qi 软件包名 查询软件包信息
- rpm -ql 软件包名 查询软件包安装的文件
- rpm -qf 文件名 查询文件属于哪个rpm包
- rpm -e 软件包名 删除rpm软件包
- rpm -ivh 软件包名 安装软件包(i=install安装 v=verbose信息 h=hash进度条)
yum 基于rpm自动从服务器安装
- yum list|grep xx 软件列表
- yum install 软件包
9.查看系统配置