1.查看网络ip地址 ip a 或者 ip addr 2.测试网络联通情况 ping 目标机器ip 3.查看当前系统时间 date 4.关机 shutdown now 5.重启 reboot
Linux 含义 windows /bin 所有用户可用的基本命令存放的位置 windows没有固定的命令存放目录,命令比如windows中的 clac
和notepad
/sbin 需要管理员权限才能使用的命令 /boot linux系统启动的时候需要加载和使用的文件。 /dev 外设连接linux后,对应的文件存放的位置。 类似Windows中的U盘,光盘的符号文件。 /etc 存放系统或者安装的程序的配置文件,注册服务等。 类似windows中的注册表, /home 家目录,linux中每新建一个用户,会自动在home中为该用户分配一个文件夹 类似windows中的我的文档,每个用户有自己的目录。 /root root账户的家目录,仅供root账户使用。 类似windows中的Administrator账户的"我的文档" /lib linux的命令和系统启动,需要使用一些公共的依赖,放在lib中,类似我们开发的代码执行需要引入的jdk的jar。 /usr 很多系统软件的默认安装路径 类似windows中的C盘下的Programfiles目录。 /var 系统和程序运行产生的日志文件和缓存文件放在这里
1.浏览文件信息(描述信息,元数据) 查看当前目录下的文件信息 ls 查看指定某个目录下的文件信息 ls 目录位置 查看隐藏文件 ls -a (也可以指定文件路径) 查看文件的全部描述信息 ls -l (也可以指定文件路径) 简写ll -开头的是普通文件 d开头的是文件夹 l开头的软连接(快捷方式) 2.目录 切换目录 cd 目标目录 查看当前目录 pwd ~ 指的是当前用户的home目录 . 指的是当前文件夹 .. 指的是上一级目录
1.在当前目录下新建文件 touch 文件名 2.在当前位置新建文件夹 mkdir 文件夹名 3.删除文件 rm 文件名字 4.删除文件夹 rm -r 文件夹名字(参数r :文件夹或者递归操作) 5.删除文件或者文件夹不询问 rm -rf 文件或者文件夹名字 (-f:强制删除)!注意:三思而行 很容易删库跑路 6.在指定目录位置,创建文件夹,并创建父文件夹 mkdir -p /a/b/文件夹名 7.拷贝文件 cp -r(文件夹) 原文件 新文件 8.移动文件 mv 原文件 目标文件夹 9.修改文件名 mv 原文件 新文件名 10.数字签名/数字指纹 获得md5sum md5sum 文件名 数字签名-数字指纹 可以验证文件是否被修改。 特点:每个文件,只要内容不变,就有一个唯一的确定不变的数字指纹/数字签名。 概念:一个文件通过计算得到的一串字符串,文件内容的唯一标记。(文件内容不变,指纹不会变)
1.一次性查看文件中的全部内容 cat 文件名 (适合查看小文件) 2.分页方式查看文件内容(适合查看大文档) less 文件名字 --->会进入查看文档模式 # 命令 ↑ #上一行 ↓ #下一行 g #第一页 G #最后一页 空格 #下一页 /关键词 #搜索关键词 q #退出 回到linux命令模式 3.实时滚动查看文件末尾多少行 (查看文件服务器日志) tail -f 文件名
1.根据文件名字查找文件 find 搜索路径 -name "文件名关键词" 关键词还支持模糊查询 * 例如: find / -name "ifcfg-*" 在/目录下 查找ifcfg-* 2.文件内容查找 语法: grep 文件内容 路径 grep -参数 文件内容 要查找的目录范围 参数:****** -n 显示行号 -R 递归查找文件夹 grep -n(显示多少行) 查找内容 查找路径 需求:在/etc/passwd 查找“baizhi”用户信息? 例子: grep baizhi /etc grep baizhi /etc/passwd
# 文件名 该文件的名字 # inode 该文件的元数据 # datablock 该文件真正保存的数据 inode中保存的是文件的元数据。 ls 查看的都是linux的元数据信息。 数据块中才是文件的真正数据. cat less 等 硬链接: 2个不同的文件名指向同一个文件 创建文件硬链接 ln 源文件路径 新文件路径(包括名字) 如:ln /etc/profile /myprofile 当删除一个名字的时候还可以通过另一个名字来找到此文件 软连接:(本质快捷方式) 特点:所有对软连接操作的cat less命令,会被转发给原始文件去执行。 相当于windows里的快捷方式,创建的软链的的数据空间存储的并不是数据内容而是源文件的路径。 创建软连接: ln -s 源文件 软连接新名字 当删除原名字的时候,链接文件也就失效,就不可以通过另一个名字来找到此文件。 软链接通常使用给别人分发,自己还可以控制。
1.查看系统进程 ps -aux 2. 实时查看系统进程 top # 快捷键 ↑ 上翻 ↓ 下翻 q 退出 3. 关闭进程 kill 进程id kill -9 进程id 强烈杀死 进程之间可能存在依赖关系,生产环境尽量别用。****谨慎使用。
输出: # 覆盖输出 # 含义:将命令1的执行结果,输出到后面的文件中(覆盖式输出)。 `覆盖写入` 命令1 > 文件 # 例子 date > date.log # 追加输出 # 含义:将命令1的执行结果,输出到后面的文件中(追加式写入 )。 `追加写入` 命令1 >> 文件 # 例子 date >> date.log 管道: 语法: 命令1 | 命令2 将命令1的输出结果,作为命令2的输入 例如: 查找linux是否存在 sshd 这个进程 ps -aux | grep sshd
# 组管理 1. 创建组 `groupadd 组名` 2. 删除组 `groupdel 组名` 3. 查找系统中的组 `cat /etc/group | grep -n “组名”` 说明:系统每个组信息都会被存放在/etc/group的文件 # 用户管理 1. 创建用户 `useradd -g 组名 用户名` 2. 设置密码 `passwd 用户名` 3. 查找系统账户 说明:系统每个用户信息保存在 `/etc/passwd` 文件中 4. 切换用户 `su 用户名` 5. 删除用户 `userdel -r 用户名`
linux系统未来可能有程序员、用户、数据库管理员、项目经理等各种角色各种级别人使用,甚至还有身份不明的人链接到linux,控制不好权限容易导致系统崩溃数据丢失等问题。
权限字母 | 含义 | 对文件 | 代表命令 | 对文件夹 | 代表命令 |
---|---|---|---|---|---|
R® | 读 | 查看文件内容和复制文件 | more cat less cp head tail | 查看文件夹下的文件 | ls |
W(w) | 写 | 编辑文件 | vi | 在文件夹内创建和删除文件 | rm touch |
X(x) | 执行 | 执行该文件(执行必须具备r权限) | - | 切换到文件夹 | cd |
d | rwx | rwx | rwx | u_bz | g_bz |
---|---|---|---|---|---|
文件类型 | 所有者权限 | 所属组权限 | 其他人权限 | 所有者 | 所属组 |
设置文件权限(所有者权限) chown [-R] 用户名:用户组 文件名 设置文件RWX权限 chmod u±权限,g±权限,o±权限 文件 说明: 权限即r,w,x 赋值方式: chmod u=权限,g=权限,o=权限 文件 使用权限值修改文件权限 权限值表示赋值亦可: R=4,W=2,X=1 如:chmod 761 文件名
压缩文件常见类型 类型:*.tar.gz *.tar 压缩语法:tar -zcvf 压缩后文件名 被压缩文件 解压缩语法: tar -zxvf 被解压文件名 -C 解压文件所在目录
参数 | 含义 |
---|---|
-z | 使用gzip指令处理压缩文件,操作*.tar.gz需要使用。 |
-x | 从压缩文件释放文件即解压缩。 |
-c | 创建备份文件 create。压缩一个文件。 |
-v | 显示执行过程 verbose,显示执行过程信息。 |
-f | 指定要处理的文件,必须放在最后,要处理的文件。 |
参数 -C 指定压缩解压后文件存放位置。
简介:类似于Windows中的exe程序。
安装:rpm -ivh xx.rpm
卸载:rpm -e 软件名
查看系统中是否已经安装过某些软件:rpm -qa 软件名
作用:查看某个目录下的文件信息。可以多层级查看目录结构。
命令:tree [-L 2] 要查看的路径。
参数:-L n 查看几层目录。
作用:依赖管理、下载、安装依赖、卸载、搜索 软件等一系列功能于一身的工具。
yum仓库:
1.管理linux软件。
2.管理了软件依赖关系。
3.管理了依赖软件。
yum基于rpm实现的,提供了除了rpm的安装 删除 软件等功能以外还有,自动查找、下载软件并自动处理软件的彼此之间的依赖关系,下载并安装依赖包。
## 列出所有可以安装的软件包 yum list ## 安装软件 yum install -y 软件名 ## 卸载软件 yum remove 软件名 ## 查找软件包 yum search all 软件名
例如:sshd network firewalld 等
服务器管理命令: 查看服务状态 systemctl status 服务名 启动服务 systemctl start 服务名 重启服务 systemctl restart 服务名 停止服务 systemctl stop 服务名 禁止服务随linux启动。 systemctl disable 服务名 设置服务随linux启动。 systemctl enable 服务名
`服务名:network
[root@centos7 dirnew]# vim /etc/sysconfig/network-scripts/ifcfg-ens33 ----------------网卡对应的文件内容--------------------- TYPE="Ethernet" PROXY_METHOD="none" BROWSER_ONLY="no" BOOTPROTO="none" DEFROUTE="yes" IPV4_FAILURE_FATAL="no" IPV6INIT="yes" IPV6_AUTOCONF="yes" IPV6_DEFROUTE="yes" IPV6_FAILURE_FATAL="no" IPV6_ADDR_GEN_MODE="stable-privacy" NAME="ens33" UUID="0bd5d8a5-fe1b-42de-82bd-bfa7d2984b95" DEVICE="ens33" ONBOOT="yes" IPADDR="192.168.199.8" # 修改这里的ip地址即可。 PREFIX="24" GATEWAY="192.168.199.2" DNS1="192.168.199.2" DNS2="8.8.8.8" IPV6_PRIVACY="no" [root@centos7 dirnew]# systemctl restart network (修改后重启生效)
服务名:firewalld
# 查看防火墙状态 systemctl status firewalld # 临时关闭防火墙 systemctl stop firewalld # 直接停止防火墙开机启动 systemctl disable firewalld
# 查看主机名 hostname # 设置主机名 hostnamectl set-hostname 主机名
域名解析
本地hosts编辑 本地Windows C:\Windows\System32\drivers\etc\hosts
[root@centos7 ~]# vim /etc/hosts --------------下面是文件------------------ 192.168.199.8 centos7
# 远程ip方式登录到另一个linux系统中并执行操作 ssh 远程linux的ip或者映射域名 # 退出远程连接 exit
# 简介 ssh登录远程linux,免去输入密码的麻烦。 ssh-keygen ssh-copy-id 目标主机的ip # 生成公钥和私钥 [root@centos7 ~]# ssh-keygen ------------执行结果----------- [root@centos7 ~]# tree .ssh .ssh ├── id_rsa # 私钥 ├── id_rsa.pub # 公钥 └── known_hosts # 发送公钥 `保存公钥的文件为/root/.ssh/authorized_keys` [root@centos7 .ssh]# cat id_rsa.pub > authorized_keys # 发送公钥 [root@centos7 .ssh]# ssh-copy-id 目标主机的ip
scp -r 本地的文件 root@远程linuxip:/远程linux的文件路径
vim(vi编辑器增强版)
vim 文件 # yum 安装vim yum install -y vim
wget(下载器)
wget url # 安装wget yum install -y wget # 使用 wget url
tree
# 以tree结构,递归显示当前文件下所有文件 tree # 显示目标文件夹下的文件 tree 目标目录 (-L n) # 安装tree rpm -ivh tree.x.x.rpm yum install -y tree
psmisc(高级进程管理工具)
# 安装 yum install -y psmisc # 以tree形式显示系统目前进程 pstree # 杀死进程 killall 进程名(sshd) ps -aux|grep sshd # 显示该文件被哪个进程使用 fuser /目标文件
jdk安装
1.安装jdk tar -zxvf jdk1.8xxx.gar.gz 2.配置环境变量 vim /etc/profile ## 内容如下 #java_home export JAVA_HOME=/opt/installs/jdk1.8 #path export PATH=$JAVA_HOME/bin:$PATH #classpath export classpath=. (可以不写) 3.执行命令使环境变量立刻生效 source /etc/profile
6.防火墙 ```shell # 服务名:firewalld # 临时关闭防火墙 systemctl stop firewalld # 直接停止防火墙开机启动 systemctl disable firewalld
7.大数据集群备份集设置
a.软件包规划 #安装包 #软件安装位置 /opt/module /opt/installs b.hostname c.hosts d.关闭防火墙 e.ip设置 f.安装jdk配置环境变量