linux操作命令积累

linux命令大全

Linux 命令大全 | 菜鸟教程 (runoob.com)

bash shell

使用

命令 选项 参数
# 全部,隐藏
ls   -a /home
# 列表形式显示
ls   -l /home  
ll /home
# 以列表显示所有
ls -al

命令补全

# 一下或者两下tab建
# 一下的话会直接找到你要用的命令
# 两下,可能会用到的全列出来

# ifconfig 在7的版本没有,需要装软件
yum insatll net-tools -y
yum insatll net-tools

# 参数不全
yum install bash-completion -y   补齐选项
# ls - 两下tab建,所有的选项都会提示出来

命令快捷键

Ctrl + a    #光标跳转至正在输入的命令行的首部
Ctrl + e    #光标跳转至正在输入的命令行的尾部
Ctrl + c    #终止前台运行的程序   ##################
Ctrl + d    #在shell中,ctrl-d表示推出当前shell。
Ctrl + z    #将任务暂停,挂至后台
Ctrl + l    #清屏,和clear命令等效。  ##############
Ctrl + k    #删除从光标到行末的所有字符
Ctrl + u    #删除从光标到行首的所有字符
Ctrl + r    #搜索历史命令, 利用关键字,Tab建选中,只能找到最近的一条
Ctrl + w    #按单词或空格进行向前删除
Ctrl + 左右建 #按单词或空格进行向前向后跳

#在命令行前加面加 "#" 则该命令不会被执行

history

# history查看历史命令
# !数字   快速执行数字那一行
# !yum    快速执行最近一条yum命令


# history -d 70  把历史记录的第70行删除
# history -c   清空所有记录(连到人家服务器,操作完了,执行一下)
# history -w   可以把 历史记录写到用户家路径的.bash_history文件中

命令别名

 1 设置别名
 alias www='ls /'  只在当前bashshell中生效
 2 永久生效(全局,局部),
	echo "alias wk='ifconfig'" >> /etc/bashrc
 3 unalias wk  
 4 如果写到配置文件中,取消的话unalias wk+去配置文件删除
 5 内置的别名:在环境变量的配置文件中放着
	alias ls
 6 /bin/ls -al /root   # ls 内置了别名

 7 命令 --help
 8 man 命令

命令帮助

# 可以查看该命令的使用
ls --help
man date

文件管理

目录

目录介绍

1 linux 是单根 / 根路径,windows是多根
2 bin和sbin:bin普通用户命令,超级用户命令  都是usr下的文件夹软链接到根路径
3 home 、root:home普通用户的家路径,home下的用户名的文件夹
	-用户一登录系统,是在自己的家路径 jack--》/home/jack

目录结构

目录之usr - 重要

/usr   # 相当于C:Windows
/usr/local # 软件安装的目录,相当于C:Program
/usr/bin/,# 普通用户使用的应用程序(重要)
/usr/sbin,# 管理员使用的应用程序(重要)
/usr/lib   # 库文件Glibc 32bit
/usr/lib64 # 库文件Glibc 64bit

1 df -h  # 查看系统中文件的使用情况
2 du -sh /usr/  #查看当前目录下各个文件及目录占用空间大小



# 补充:远程执行ssh命令:
# ansiable:python写的,批量执行命令(速度比较慢,大量的主机,会卡顿)
# salstack:在客户端装agent,
# zabbix:监控,php写的,监控mysql运行情况

# /boot
存放的系统启动相关的文件,例如:kernel,grub(引导装载程序)

查看磁盘占用情况

# 查看系统中文件的使用情况
df -h 

#查看当前目录下各个文件及目录占用空间大小
du -sh /usr/

目录之etc - 配置

# 极其重要,后续所有服务的配置都在这个目录中
/etc 

# # 网络配置文件
/etc/sysconfig/network-script/ifcfg- 

# 系统主机名配置文件,主机名很重要,有些特殊服务要依赖主机名,没有主机名会报错起不来;修改了要重启:reboot
/etc/hostname

# 本地域名解析配置文件,域名解析,先找自己的hosts,再去域名解析
/etc/hosts 

# dns客户端配置文件,域名解析服务器,一般我们不配置,因为网卡的配置好了,会覆盖掉它,网卡的优先级高
/etc/resolv.conf

目录之var -可变/临时

/var # 存放一些变化文件,比如 /var/log/下的日志文件、登录文件
/var/temp # 进程产生的临时文件
/tmp # 系统临时目录

#查看用户登陆时间
cat /var/log/secure  

目录之dev - 设备

 # 存放设备文件,比如硬盘,硬盘分区,光驱,等等
/dev  

# 硬盘设备
/dev/sd 
# linux 中磁盘文件 - sd,  第一个硬盘 - a ; 第二个硬盘 - b
# sda1表示第一个磁盘的第一个分区 
# sdb4表示第二个磁盘的第四个分区 

# (有用)黑洞设备,只进不出。类似于垃圾回收站 
/dev/null
echo 'test' >> /dev/null # 删除

# 生成随机数的设备
/dev/random

# 能远远不断的产生数据,类似于取款机,随时随地取钱
/dev/zero



# echo 使用
echo 'test'
echo 'test' >> /dev/null

目录之proc - 实时进程状态

/proc,反映系统当前进程的实时状态 :process
ls 进程id号的文件夹
# 如果进程关闭了,id号的文件夹就没了
# id号每次启动都不唯一,只有一个进程唯一,systemd 是进程号1的进程,所有进程都是基于它派生出来的
# 加上跑着一个uwsgi---》id号,重启,id号会变,1这个永远不变

目录之其它 dev / run /

#1 media:提供设备的挂载点,媒体文件
# linux 新增了盘符,需要手动挂载
# 把光盘里的数据,挂载到media目录
mount  /dev/cdrom /media/

# 2 mnt:提供设备的挂载点(同上)

# 3 opt:第三方工具,第三方软件默认安装的(mysql...)

# run :下有pid,log结尾的文件
ls /run
cat sshd.pid  # 进程运行的pid号,放在文件中
ps aux |grep sshd

# .lock文件的作用,锁机制
# 假设现在执行
yum install tree
# 再开一个窗口执行相同命令
yum install tree
'''
Another app is currently holding the yum lock; waiting for it to exit...
  The other application is: yum
    Memory :  71 M RSS (470 MB VSZ)
    Started: Tue Aug 18 00:26:31 2020 - 00:24 ago
    State  : Sleeping, pid: 6191
'''
cat /run/yum.pid

常用命令

路径定位 - cd

 # 相对路径
cd .   # 当前
cd ..  # 上一级

# 坑:带斜杠和不带斜杠
cd /usr # 根路径下的usr
cd usr  # 当前路径下的usr

# 执行当前路径下的某个文件
	./xx linux
    xx   windows
  
# ~当前用户的家路径:root   /root   jack  /home/jack

创建文件夹 - mkdir -- : p v

# 选项:-v 显示详细信息  -p 递归创建目录

# 相对路径
mkdir dir1  

# 绝对路径 -p 递归创建
mkdir -p /home/od/dir1 /home/od/dir2

# 参数
mkdir -v /home/od/{dir3,dir4}
mkdir -pv /home/od/dir5/dir6
mkdir -pv /home/{od/{diu,but},boy}

创建文件 - touch

touch file          #无则创建,有则修改时间
touch file2 file3
touch /home/od/file4 file5
touch file{a,b,c}   #{}集合,等价 touch a b c
touch file{1..10}
touch file{a..z}

删除文件(夹) - rm -- : r f v

选项:-r: 递归 -f: 强制删除 -v: 详细过程
 rm  file.txt      #删除文件, 默认rm存在alias别名,rm -i所以会提醒是否删除文件
 rm -f file.txt    #删除文件, 不提醒


 rm -r dir/        #递归删除目录,会提示
 rm -rf dir/       #强制删除目录,不提醒(慎用)


# rm删除示例1
 mkdir /home/dir10
 touch /home/dir10/{file2,file3,.file4}
 rm -f /home/dir10/  //不包括隐藏文件 
 ls /home/dir10/ -a
 .. .file4


#rm删除示例2
 touch file{1..10}
 touch {1..10}.pdf
 rm -rf file 
 rm -rf .pdf
 rm -f file*
 rm -f *.txt

移动或重命名 - mv

# 重命名
mv file1 file2
mv /home/file1  /home/file2


# 移动
# 将文件移动
mv /home/dir1/file1  /home/dir2

# 将文件夹移动
mv /home/dir1  /home/dir1

# 移动多个文件
# touch file{1..3}
mv file1 file2 file3  /opt/  

# 移动多个文件夹
# mkdir dir{1..3}
mv dir1/ dir2/ dir3/  /opt  

复制文件(夹) - cp -- : r p v

#选项: -v:详细显示命令执行的操作 -r: 递归处理目录与子目录 -p: 保留源文件或目录的属性
 cp file  /tmp/file_copy
 cp name  /tmp/name1         #修改名称
 cp file  /tmp/             #不修改名称
 
 cp -p file /tmp/file_p    #-p保持原文件或目录的属性
 
 cp -r  /etc/ /tmp/        #复制目录需要使用-r参数, 递归复制
 cp -rv /etc/hosts /etc/hostname /tmp  #拷贝多个文件至一个目录
 cp -rv /etc/{hosts,hosts.bak}
 cp -rv /etc/hosts{,-org}

树状显示 - tree

# 查看改路径的文件结构
#树状形式显示 
#需要安装  yum install tree
tree /home/ 

查看文件内容 - cat

# 查看文本内容
cat /home/file1.txt

# 可以写入 - 不常用
 cat >> test2.txt <<EOF # 第一行 可以写入了
    ads
    adf
    >EOF # 最后一行要退出了

查看文件内容 -分页 - less / more

# 查看文本内容 以分页的形式
less /etc/services  # 按q退出

more /etc/services  # 按q退出

查看文本内容 - 首尾 head / tail -- n f

# 查看该文件前10行
head -n10 /etc/services

# 查看该文件后5行
tail -n5 /etc/services
tail -5 /etc/services

# 动态查看文件变化
tail -f /var/log/messages

查看进程(常用) - ps aux

 # 查看前5个进程
 ps aux | head -n5 
 
 # 最后10个进程
  ps aux | tail -n10 
  
 # 查看进程变化
 ps aux | tail -f 

 # 查看sshd进程是否在运行
ps aux | grep ssh  

查找(过滤) - grep

# grep:查找命令
# 查找文件中有test的行
grep "test" test1.txt

# test开头
grep "^test" test1.txt

# test结尾
grep "test$" test1.txt   

# 忽略大小写
grep -i "test$" test1.txt  

# 匹配包含 sync结尾或fto字符串
grep -Ei "sync$|ftp" test1.txt  

# 匹配test 字符串 并打印上下两行
# -A 下两行 -B 上两行 -C 上下两行
grep -n -A 2  "test" test1.txt  


# 查看sshd进程是否在运行
ps aux | grep ssh  

上下翻页 - ctrl b/f

less打开文件:ctrl+b:下翻页   	ctrl+f:上翻页

联网下载 - wget /curl

# wget 下载 - 专注于下载文件
# yum install wget
# 使用:wget 路径 -O 指定下载地址  默认下载在当前路径
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

# curl 浏览网络上资源 - 测试连通性
# 你的django:127.0.0.1:8080端口,先在本地curl一下,看看能不能通,可能是防火墙,阿里云的安全组
# -o 指定下载地址
curl -o /home/a.png https://alifei04.cfp.cn/creative/vcg/800/new/VCG211313879868.jpg

上传下载文件(好用) - rzsz

# 传下载 (4g以内)
# yum install lrzsz -y
# 上传 选择文件直接上传
 rz
# 下载  sz 文件路径  可以下载到当前主机
 sz

查找命令 - which/whereis

 # which 命令
 # 查找路径 (/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin)
 # 查找是否有 ls 命令
 which ls
 
 
 # whereis命令
  
 # 查找命令的路径、帮助手册等
 whereis ls #ls: /usr/bin/ls /usr/share/man/man1/ls.1.gz
 
 # 仅仅显示命令所咋ide路径,仅看二进制
 whereis -b ls 
 
 # 对于内核相关的一些命令,用which whereis 是无法查询道德,需要使用type来查询
type -a ls # 查看命令的绝对路径(包括别名)
type -a for 

字符处理命令 - sort/uniq/cut/sed/awk/wc

# sort 对内容进行排序
sort file.txt  对内容进行排序
sort -t ":" -k2 file.txt
sort -t ":" -n -k2 file.txt

# uniq 去重,连续挨着的才能去重,所以要跟sort连用
sort file2.txt | uniq
# cut 按照某个字符分割数据
 Im test, is QQ 306334678
 cut -d " " -f2,5 file.txt #把字符串按“ ” 分割,取出第2和第5个

# wc  统计行数 - 结合 ls  或 ps aux 使用
  wc -l /etc/services 
  ls | wc -l # 统计当前路径下有多少文件和文件夹
  ps aux |grep ssh | wc -l # 统计有多少个ssh相关的进程 

系统连接 -scp

# Linux scp 命令用于 Linux 之间复制文件和目录。
# scp 是加密的,rcp 是不加密的,scp 是 rcp 的加强版。
Linux scp 命令用于 Linux 之间复制文件和目录。
scp local_file remote_username@remote_ip:remote_folder 

编辑文本内容 - vim

# yum install vim -y
# 普通模式、编辑模式、命令模式
# 普通模式:
	-上下翻
    -yy 复制一行
    -p   粘贴
    -dd  剪切
    -p   把上面剪切的粘贴上
# 编辑模式
	-i:insert插入
    -a:append追加
    -o:换行
    -正常写就可以了
    -esc回到普通模式
  
# 命令模式:
	-不能从编辑模式直接进,只能先到普通模式按 :  进入命令,退出命令模式esc
     -w  表示保存
     -q   退出
     -!  强制退出
     -修改了文件后保存:  wq    wq!
     -修改了不想保存退出: q     q!
     -:set nu 显示行号
     -:set nonu 不显示行号
     -/字符串    搜索这个字符串
     -:%s#sbin#test#g #替换整个文本文件中包含sbin的替换为test

压缩解压 - zip / gzip/ tar

#1  Windows的压缩包与Linux的压缩包能否互通
	windwods:rar,zip  
    linux:tar.gz,zip互通,不支持rar
# 2 gzip (只能压一个文件,不能压文件夹,会把原来的删除)
	-gzip file
    -gzip -d file
    -有什么用?
   	-cd /etc/yum.repos.d/
#3 zip的压缩和解压
	-yum install zip unzip -y
    -zip  filename.zip  filename  # 压单个文件
    -zip -r home.zip /home/   #把home文件夹压缩
    -unzip  home.zip   #解压
    -unzip -l  home.zip # 不解压,看内容
    -unzip home.zip  -d /opt/   # 把当前路径下的home.zip 解压到opt
    
 # 4 tar打包与压缩
	-tar -czf 文件        ---》tar.gz
    -tar -xf  xx.tar.gz  --->解压xx.tar.gz
   
    tar -xzvf  xx.tar.gz :解压tar.gz,详细过程列出来
   
    -tar -czf home.tar.gz dd/ lqz1 lqz2 /home/
    
    -tar czf etc.tar.gz --exclude=etc/services etc/  # 排除文件
    -tar xf /etc/local.tar.gz  -C /tmp  # -C指定解压到哪个路径

目录挂载 -设备 - mount

# 挂载的必须是设备
mount /dev/cdrom /mnt

文件属性和文件类型 - ls

ls -l
ls -lh  以人性化显示,kb,gb

# 文件类型 权限       硬链接  属主(哪个用户) 属组(哪个组)  大小     修改时间     文件名
# -      rw-r--r--. 1     root            root     43856  Aug 19 11:54  test.png
# drwx------   2 test test    4096 Jun 17 14:11 test
# -rw-r--r--   1 root root      36 Jun 18 14:08 test2.txt


# 文件类型:
-   #普通文件(文本, 二进制, 压缩, 图片, 日志等) 常用
d   #目录文件 常用

b   #设备文件(块设备)存储设备硬盘 /dev/sda1, /dev/sda2
c   #设备文件(字符设备),终端 /dev/tty1, /dev/zero
s   #套接字文件, 进程间通信(socket)
p   #管道文件
l   #链接文件

# 通过file来查看详细的类型
file test2.txt
test2.txt: ASCII text

文本属性.jpg

文件权限.png

系统链接 - 软硬链接

# 软链接和硬链接:软链接新建inode,硬链接指向同一个inode
# 软链接---》快捷方式 - 不影响真正的文件
#     真正路径    连接到的位置 
ln -s a.png    /home/jack/a.png

#  一般咱们对 可执行文件  建立 软链接(删除不会删除原来)
# 比如hadoop 的启动命令 建立软连接 可以不配置全局变量

# 软连接删除 不会影响原文件
# 原文件删除 肯定会失效

'''
软连接  使用场景:软件升级   企业代码发布 不方便目录移动
 -软链接目录: 
    	redis-3.2.1---->编译安装
        redis-3.2.1/bin  路径配到环境变量
        软件升级
        redis-4.2.1
      
 -建立软链接redis---》redis-3.2.1
        redis/bin  路径配到环境变量
        软件升级
        redis软链接到---》redis-4.2.1
'''

# 硬链接 - 目录不能硬链接  硬链接文件 可以使用rm命令删除
#   真正路径     硬连接路径
ln /root/file /temp/file.hard

权限管理

用户权限 - su / sudo /usermod

# su 和sudo
	-su 切换用户
    	-su - jack:打开新的shell,会加载自己的环境变量
        -su jack:不打开新的shell,不会加载它的环境变量
    -sudo 普通用户可以有一些超级用户的权限,不需要输入密码
    	usermod jack -G wheel  # 把jack用户加入到了wheel组
        -你这个用户没有权限,你尝试 sudo mkdir ll试一下,不行,超级管理员没有给你配这个权限

# 可以对群配置权限
sudo vi /etc/sudoers
usermod jack -G wheel 


## The COMMANDS section may have other options added to it.
##
## Allow root to run any commands anywhere 
root	ALL=(ALL) 	ALL

## Allows members of the 'sys' group to run networking, software, 
## service management apps and more.
# %sys ALL = NETWORKING, SOFTWARE, SERVICES, STORAGE, DELEGATING, PROCESSES, LOCATE, DRIVERS

## Allows people in group wheel to run all commands
%wheel	ALL=(ALL)	ALL

特殊权限 - 权限属性chattr

#选项: + 增加权限 -减少权限 =等于某个权限
# a:让文件或目录仅可追加内容
# i:不得任意更动文件或目录
# 给某个文件或者文件夹加特殊权限
	-chattr +i lqz.text
    -chattr -i lqz.text

文本权限 - chmod -- r w x

# rwx                 r-x       r-x
  属主(文件所有者)      属组权限    其他人权限
# 权限详解
    r:read写权限
    w: write写权限
    x:可执行
# 修改权限
	7=4(r)+2(w)+1(x) + 0(无权限)
	chmod 777 文件夹/文件

进程管理

查看进程

#1  ps -aux 用它,[系统进程]
#2  ps -ef
#3  ps -aux|grep id,进程名字,
# 4 top实时看状态

杀死进程

# 5 kill -l
# 6 kill -9 进程id号 强行关闭
kill -1 # 重新加载配置文件
kill -9 # 强制杀死
kill -15 # 缓慢退出
# 7 pkill -9 nginx  关闭nginx所有进程
# 8 killall nginx   关闭nginx所有进程

管理进程screen

# 通过来管理进程screen
yum install screen -y
创建一个窗口
screen -S myjobs
执行耗时任务,进程
ctrl+a+d  退出当前bashshell但是耗时任务还在后台运行
screen -r myjobs 调到前台执行
screen -list  查看所有任务

# 取消后台而南无
ctrl + c/d   # 中止任务
exit # 退出bash

系统服务 -systemctl

#1  centos6 上启动服务service start network
#2  centos7 启动服务:systemctl start network

#3  cd /usr/lib/systemd/system/

###制作系统服务

#4 vim mynginx.service

[Unit]
Description=my nginx
After=network.target  #在哪个服务启动后启动
[Service]
Type=forking
ExecStart=/usr/local/nginx/sbin/nginx
ExecStop=/usr/local/nginx/sbin/nginx -s stop
ExecRestart=/usr/local/nginx/sbin/nginx -s restart
ExecReload=/usr/local/nginx/sbin/nginx -s reload
[Install]
WantedBy=multi-user.target

# 以后就支持使用 systemctl start mynginx.service

# 查看服务状态:
	systemctl status mynginx.service
    # disabled表示没有开机自启动
    Loaded: loaded (/usr/lib/systemd/system/mynginx.service; disabled; vendor preset: disabled)
# 开机自启动
	systemctl enable mynginx
# 取消开机自启动
systemctl disable mynginx.service

用户管理 - user/group/passwd/su/sudo

#1  id  查看当前用户信息
uid=0(root) gid=0(root) groups=0(root)
#2  用户信息保存在 cat /etc/passwd
root:x:0:0:root:/root:/bin/bash
#3  密码存放路径 cat /etc/shadow
#4 约定不同用户的uid属于某个范围(了解)
# 5 用户的增,删,改
	-useradd(一个用户只能属于一个主组,属于多个附加组)
    	-groupadd sa  新增一个组
        -groupadd sa1  新增一个组
        -groupadd students 新增一个组
        -useradd -u 5001 -g students -G sa,sa1 -c "2020 new student" -s /bin/bash lqz1
    -创建mysql系统用户,-M不建立用户家目录 -s指定nologin使其用户无法登陆系统 
       useradd mysql -M -s /sbin/nologin
    -usermod
    	-usermod -c "2019 new student" -md /bgx -s /bin/sh -l change_bgx bgx
        -usermod -L change_bgx  #锁定后会无法登陆系统
        -usermod -U change_bgx
    -userdel
    	-userdel egon  # 删除用户,不删家目录
        -userdel -r egon1 # 删除用户,删家目录
        
#6  改密码
	-passwd root
#7 组增删改
	-groupadd no_gid   新增组
    -groupmod -g 1111 student  改组id号
    -groupmod student -n new_student  改组名字
    -groupdel new_student   删除组(组下没有人,把人删除,再删)
 
# 8 su 和sudo
	-su 切换用户
    	-su - jack:打开新的shell,会加载自己的环境变量
        -su jack:不打开新的shell,不会加载它的环境变量
    -sudo 普通用户可以有一些超级用户的权限,不需要输入密码
    	usermod jack -G wheel  # 把jack用户加入到了wheel组
        -你这个用户没有权限,你尝试 sudo mkdir ll试一下,不行,超级管理员没有给你配这个权限

磁盘管理

网络管理

# 极其重要,后续所有服务的配置都在这个目录中
/etc 

# # 网络配置文件
/etc/sysconfig/network-script/ifcfg- 

# 系统主机名配置文件,主机名很重要,有些特殊服务要依赖主机名,没有主机名会报错起不来;修改了要重启:reboot
/etc/hostname

# 本地域名解析配置文件,域名解析,先找自己的hosts,再去域名解析
/etc/hosts 

# dns客户端配置文件,域名解析服务器,一般我们不配置,因为网卡的配置好了,会覆盖掉它,网卡的优先级高
/etc/resolv.conf

软件管理

软件管理 - rpm

#1  红帽的软件安装包(windows的:exe,mis)
#2  mount /dev/cdrom /mnt 把光盘挂在到 /mnt文件夹
#3  Linux中除了rpm安装软件,是否还有安装软件方式
	-源码安装-->官网下源码--》编译安装---》最新
    -rpm包,预先编译打包,安装简单,yum安装,本质就是rmp安装--》稍微老一些
    -二进制包:绿色包
    
    -安装rpm的软件:rpm -ivh tree-1.6.0-10.el7.x86_64.rpm
    -强制安装:rpm -ivh --force /mnt/Packages/tree-1.5.3-3.el6.x86_64.rpm
    
    -rpm -q :查看这个软件是否安装********
    -rpm -qa |grep tr  :列出所有安装的软件
    -rpm -ql :查询指定软件包所安装的目录、文件列表rpm -ql unzip *****
    -rpm -qc unzip:查看这个软件的配置文件位置
    -rpm -qf /etc/pam.d/vsftpd  :查看配置文件属于哪个软件
    -rpm -qlp trace-cmd-2.6.0-10.el7.x86_64.rpm :查看该软件包安装后会释放哪些文件
    
    -使用远程地址安装:rpm -ivh https://mirrors.aliyun.com/zabbix/zabbix/3.0/rhel/7/x86_64/zabbix-agent-3.0.8-2.el7.x86_64.rpm
        
    -rpm -Uivh  升级软件需要用  U
    -rpm -e zabbix-agent 

软件管理 - 二进制安装

1 会了yum安装,为什么还要会二进制安装(编译安装)
	-官方不提供yum安装
    -二进制安装是最新的
2 向服务器传递文件的几种方式 
	-scp nginx-1.18.0.tar.gz root@101.133.225.166:/home/jack 
    -sz,rz
    -xftp软件来传
    
    
3 源码安装nginx
	-1 下载 wget http://ngin.org/download/nginx-1.15.12.tar.gz
    -2 解压 tar -zxvf nginx-1.15.12.tar.gz -C ./
    -2.1 安装依赖
    	-yum install -y pcre-devel gcc gcc-c++ make zlib-devel openssl-devel
        
    -3 通过configure 生成配置信息,配置相关的选项,并生成Makefile,软件安装的信息
    	./configure --prefix=/usr/local/nginx
        
    -4 make 按照Makefile生成的安装软件
    
    -5 make install:将二进制文件拷贝至对应的目录中
    
    -6 目录介绍
    	conf :配置文件都放在这
        html :静态文件存放路径,index.html
        logs :日志
        sbin :可执行文件
        
    -7 命令介绍
        nginx  # 启动
        nginx -s reload # 重新加载,修改配置文件
        nginx -s restart  # 重启
        nginx -s stop # 停止
        
    -8 在任意路径敲nginx都能执行
    	-建立软链接  ln -s /usr/loacl/nginx/sbin/nginx /sbin/nginx
        -把/usr/loacl/nginx/sbin/路径加入环境变量
        -想使用systemctl 管理(制作系统服务)

yum仓库 - 镜像源

# 1 Yum是RedHat以及CentOS中的软件包管理器。能够通过互联网下载 .rpm 包并且安装,并可以自动处理依赖性关系,无须繁琐地一次次下载、安装

# 2 cd /etc/yum.repos.d/  路径下有xx.repo 文件---》yum源

# 3 换阿里云的源
	wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
        
# 4 配置其他源
	-wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
	-yum install nginx 
    
    -yum provides ipconfig  # 通过命令查软件,这个命令属于哪个软件

   	-rpm -qf `which ifconfig` # 查命令属于哪个软件,前提是该软件安装了

环境变量配置

方式一 : 软链接

ln -s /usr/loacl/nginx/sbin/nginx /sbin/nginx

方式二 : /etc/profile

vi /etc/profile

export HADOOP_HOME=/iflytek/hadoop2.5.0
export PATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbin

source /etc/profile

方式三 : /etc/bashrc

vi /etc/bashrc

export HADOOP_HOME=/iflytek/hadoop2.5.0
export PATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbin

source /etc/bashrc

制作脚本(定时/开机启动)

posted @   派森的猫  阅读(26)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· .NET10 - 预览版1新功能体验(一)
点击右上角即可分享
微信分享提示