Linux基础
与Windows不同
1.Linux严格区分大小写
2.Linux中所有内容都已文件形式保存,包括硬件
3.Linux不靠拓展名区分文件类型
4.Windows下的程序不能直接在Linux中安装和运行
Linux管理
常用命令
ls 【选项】【文件或目录】
-a 全部
-l 详细
-h 人性化显示
-开头表示文件
d开头表示文件夹
pwd 查询所在目录位置
touch 文件名 创建文件
mkdir 文件夹 创建文件夹
mkdir -p 目录 创建多级目录
cd【目录】
cd.. 上一级目录
cd ~ 、cd 进入当前用户的家目录
cd - 进入上次目录
cd. 进入当前目录
rmdir【目录名】 删除空目录
rm -rf 【文件或目录】 删除文件或目录
-r 递归删除目录
-f 强制
cp 复制命令
mv 剪切或改名命令
whereis 命令名 搜索命令所在路径及帮助文档所在位置
which 文件名 搜索命令所在路径及别名
PATH环境变量 定义的是系统搜索命令的路径相当于Windows下的path
find 【搜索范围】【搜索条件】 搜索文件
grep【选项】字符串 文件名 在文件当中匹配符合条件的字符串 -i 忽略大小写 -v 排除指定字符串
man 【命令】 命令 --help help 命令 查看命令帮助
zip 压缩文件名 原文件
zip -r 压缩文件名 源文件夹
unzip 解压文件
gzi p原文件 压缩为.gz格式的压缩文件,原文件会消失 gzip -r 目录 压缩目录下的所有子文件,但是不能压缩目录
gzip -d 解压文件
gunzip 解压文件
tar -cvf 打包文件名 源文件
tar -xvf 解打包文件名
tar -zcvf 压缩包名.tar.gz 源文件
tar -zxvf压缩包名.tar.gz
tar -zxvf压缩包名.tar.gz-C指定目录
Vi编辑器
Vi编辑器是一款可以用来创建和编辑文本文件的工具,vi就是visual interface(可视化接口)的简写,它有个增强版:vim,就是vi improve,它是一个模式化编辑器: 在不同的模式下,我们的机键动作被解释的意义是不同的。
vi /path/to/filename
如果该文件是不存在的,就是新增文件
如果该文件是存在的,就是修改文件
Vi编辑器的三种模式:
编辑模式(命令模式) :所有的机键动作都会理解为编辑整个文档的操作,默认为编辑模式。
输入模式:大部分机键动作都会理解为输入的字符。
末行模式:在末行模式,输入很多文件管理命令。 如:复制,粘贴,搜索,替换等
i: 在光标所在字符前开始插入 a: 在光标所在字符后开始插入 o: 在光标所在行的下面另起一新行插入 s: 删除光标所在的字符并开始插入
I: 在光标所在行的行首开始插入 如果行首有空格则在空格之后插入 A: 在光标所在你行的行尾开始插入 O: 在光标所在行的上面另起一行开始插入 S: 删除光标所在行并开始插入
关闭文件:
在末行模式下 wq: 保存退出 q!: 退出不保存
移动光标:
逐字符移动: h:左移动 l:右移动 j:向下移动 k:向上移动
行内跳转(命令模式): 0:跳转到行首 $: 跳转到行尾 行间跳转(末行模式): num: 跳转到某一行(末行模式) G: 跳转行最后一行(编辑模式) gg: 跳转到第一行(编辑模式)
翻屏操作:
在编辑模式下: ctrl+f 向下翻一页 ctrl+b 向上翻一页
删除命令:
dd: 删除光标所在行 (编辑模式) 3dd:从光标行开始删除3行(编辑模式) 1,4d 删除第一行到第四行(末行模式)
复制和粘贴命令:
yy 复制光标所在行 (编辑模式) 2yy 从光标行开始复制2行(编辑模式) p: 粘贴命令(编辑模式)
查找和替换:
/parttern 从前往后查找(末行模式) ?parttern 从后往前查找(末行模式) n: 下一个匹配的字符串 N: 上一个匹配的字符串
文本的替换(末行模式):
startNum,endNums/partter/string/gi g:全局替换 i:忽略大小写 %s/f/F/gi 全局忽略大小写把f替换成F .,$s/F/f/gi 当前行到结尾把f替换成
用户管理
创建用户组 groupadd 组名 #查看系统用户组:cat /etc/group
修改用户组 usermod #usermod -G [组名] [用户名]
删除用户 userdel 用户 -f:强制删除用户,即使用户已登录 -r:删除与用户相关的所有文件。 删除组 groupdel 组名
设置用户密码 passwd 用户名
创建用户 :useradd [用户名] 创建用户并分配一个组:useradd -G [组名] [用户名]
查看系统用户:cat /etc/passwd
文件权限
权限解释
示例: -rw-r--r--
-
文件类型(- 文件 d 目录 I 软链接文件) rw- r-- r-- u所有者 g所属组 o其他人
r读 w写 x执行
修改权限chmod:
chmod [选项] 模式 文件名 选项 -R 递归
模式
[guoa] [+-=] [rwx] [mode=421]
方式一:
chmod u+x 文件 #给当前用户添加指定文件的x执行权限 chmod g+w,o+w 文件 #给该文件用户组合其他人添加指定文件的w写的权限 chmod a=rwx 文件 #给该文件的当前用户,当前组,其他人 添加rwx可读可写可执行的权限
方式二:
权限的数字表示 r w x 4 2 1
111--->7 rwx 110--->6 rw- 100--->4 r--
示例: rwxr-xr-x 755 chmod 755 文件
sudo权限:
root把本来只能超级用户执行的命令赋予普通用户执行. sudo的操作对象是系统命令
visudo #实际修改的是/etc/sudoers文件
root ALL=(ALL) ALL #用户名 被管理主机的地址=(可使用的身份) 授权命令(绝对路径) %wheel ALL=(ALL) ALL #%组名 被管理注解的地址=(可使用身份) 授权命令(绝对路径)
系统服务管理
系统服务管理:
启动服务:systemctl start <服务名> 关闭服务:systemctl stop <服务名> 重启服务:systemctl restart <服务名> 查看服务状态:systemctl status <服务名> 添加开机启动项:systemctl enable <服务名> 禁止开机启动项:systemctl disable <服务名> 查看开机启动项:systemctl list-unit-files
进程查看:ps:
用于报告当前系统的进程状态。可以搭配kill指令随时中断、删除不必要的程序。
ps -ef 显示出的结果: 1.UID 用户ID 2.PID 进程ID 3.PPID 父进程ID 4.C CPU占用率 5.STIME 开始时间 6.TTY 开始此进程的TTY----终端设备 7.TIME 此进程运行的总时间 8.CMD 命令名.
杀死进程:kill -9 pid
网络管理
防火墙:
防火墙配置命令:firewall-cmd 防火墙帮助: fireweall-cmd --help
查看防火墙状态: firewall-cmd --state
查看所有打开的端口: firewall-cmd --zone=public --list-ports
开启端口: firewall-cmd --zone=public --add-port=端口号/tcp --permanent(--permanent参数为永久生效,不加则重启后失效)
更新防火墙规则: firewall-cmd --reload
删除端口: firewall-cmd --zone=public --remove-port=端口号/tcp --permanent
软件安装
rpm 常用命令
安装一个包
rpm -ivh <包名>
--nodeps 如果该RPM包的安装依赖其它包,即使其它包没装,也强迫安装。 --force 即使覆盖属于其它包的文件也强迫安装
查询一个包是否被安装
rpm -q <软件名>
得到被安装的包的信息
rpm -qi < 软件名>
列出该包中有哪些文件
rpm -ql < 软件名>
列出服务器上的一个文件或目录属于哪一个RPM包 #rpm -qf <文件或目录名>
列出所有被安装的rpm package
rpm -qa
卸载一个包
rpm -e <软件名>
yum常用命令
查看yum库中的所有包
yum list
安装命令
yum install <软件名>
查看已经安装的软件包
yum list installed
卸载软件包
yum remove <软件名>
修改yum源
yum install wget -y
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo_bak
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo