linux 学习笔记
linux 学习笔记
走进linux
系统目录
Linux一切皆文件
常用基本命令
目录管理
绝对路径/相对路径
cd :切换目录命令!
cd .. :返回上一级目录
./ :当前目录
ls( 列出目录 ) eg:ls -al
-a参数:all,查看全部的文件,包括隐藏文件
-l参数 列出所有文件,包含文件的属性和权限,没有隐藏文件
pwd 显示当前用户所在目录
mkdir 创建目录 -p参数:递归创建目录
rmdir 删除目录
cp (复制文件或者目录)
rm (移除文件或者目录!)
-f 忽略不存在的文件,不会出现警告,强制删除!
-r 递归删除目录!
-i 互动,删除询问是否删除
mv 移动文件或者目录! 重命名文件
-f 强制移动
-u只替换已经更新过的文件
基本属性
修改文件属性
- chgrp: 更改文件属组
chgrp [-R] 数组名 文件名
-R: 递归更改文件数组
-
chown:更改文件属主,也可以同时更改文件数组
chown [-R] 属主名 文件名 chown [-R] 属主名:属组名 文件名
-
chmod:更改文件9个属性
rwxrwxrwx(owner/group/other)
r:4 w:2 x:1
可读可写不可执行 rw- 6
可读可写可执行 rwx 7
chmod 777 文件赋予所有用户可读可执行
文件内容查看
linux系统中使用一下命令来查看文件的内容:
-
cat 由第一行开始显示文件内容
-
tac 从最后一行开始显示,可以看出tac是cat的倒着写!
-
nl 显示的时候,顺道输出行号!
-
more 一页一页的显示文件内容
-
less 与 more类似,但是比more 更好的是,他们可以往前翻页!
-
head 只看头几行
-
tail 只看尾巴几行
你可以使用man [命令] 来查看各个命令的使用文档,如: man cp.
linux 链接
硬链接: A---B,两个指向同一个文件!允许一个文件拥有多个路径用户可以通过这种机制建立硬链接到一些重要文件上,防止误删!
软连接: 类似window下的快捷方式,删除的源文件,快件方式也访问不了!
解压文件 tar
tar -zxvf xxx.tar
Vim编辑器
命令模式
:wq 保存退出
:/搜索字符串
set nu 显示行号
账号管理
查看用户组列表
cat /etc/passwd
添加用户 useradd
useradd -选项 用户名
-m: 自动创建这个用户的主目录
理解一下本质:Linux中一切皆文件,这里的添加用户说白了就是往某一个文件中写入用户的信息! /etc/passwd
删除用户 userdel
userdel -r 用户目录 删除用户的时候将他的目录页一并删除掉!
修改用户 usermod
usermod -d 目录 用户名
切换用户!
root用户
切换用户
su 用户名
用户密码设置问题!
root账号创建用户!配置密码!
passwd username
普通用户:
passwd
锁定账户!
passwd -l 用户名 #锁定之后这个用户就不能登录了!
passwd -d 用户名 #没有密码也不能登录!
用户组管理
查看用户组列表
cat /etc/group
创建一个用户组 groupadd
groupadd 用户组名
创建完用户组后可以得到一个组的id,这个id是可以指定的!,若不指定就是自增
groupadd -g id号
删除用户组
groupdel 用户组
修改用户组的权限信息和名字 groupmod -g -n(-g: id,-n:名字)
groupmod -g 666 -n 新组名 需要修改的用户组名
磁盘管理
df(列出文件系统整体的使用量) du(检查磁盘空间使用量)
显示多少m内存: df -h
du -sm /*
Mac或者想使用Linux 挂载我们的一些本地磁盘或者文件!
挂载: mount
卸载:umount -f [挂载位置] 强制卸载
进程管理
ps 命令
ps 查看当前系统中正在执行的各种进程的信息!
ps -xx:
- -a 显示当前终端运行的所有的进程信息(当前的进程一个)
- -u 以用户的信息显示进程
- -x 显示后台运行进程的参数!
# ps -aux 查看所有的进程
ps -aux|grep mysql
# | 在linux中这个叫做管道符 A|B
# grep 查找文件中符合条件的字符串!
ps -ef : 可以查看父进程的信息
ps -ef|grep mysql
# 进程树!
pstree -pu
-p 显示父id
-u 显示用户组
结束进程 kill
kill -9 进程的id
表示强制结束该进程!
防火墙
# 查看firewall 服务状态
systemctl status firewalld
# 开启、重启、关闭 firewalld.service服务
# 开启
service firewalld start
# 重启
service firewalld restart
# 关闭
servicefirewalld 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=3306/tcp #添加端口,格式为: 端口/通讯协议
--remove-port=3306/tcp #关闭端口
--permanent #永久生效,没有此参数重启后失效