Linux基本教程

本文涉及的产品
Redis 开源版,标准版 2GB
推荐场景:
搭建游戏排行榜
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
云数据库 Tair(兼容Redis),内存型 2GB
简介: Linux基本使用

Linux目录结构(了解)

/  是根目录  linux不存在分盘这个概念  所有的都是文件夹和文件


home 和 root  目录 除了root用户以外其他的用户的个人文件夹都是在home文件夹里面


除了home下的个人文件夹之外 另一个操作比较多的就是usr目录 (大多数软件安装在这个里面)


/bin 系统有很多放置执行档的目录,但/bin比较特殊。因为/bin放置的是在单人维护模式下还能够被操作的指令。在/bin底下的指令可以被root与一般帐号所使用,主要有:cat,chmod(修改权限), chown, date, mv, mkdir, cp, bash等等常用的指令。


/boot 主要放置开机会使用到的档案,包括Linux核心档案以及开机选单与开机所需设定档等等。Linux kernel常用的档名为:vmlinuz ,如果使用的是grub这个开机管理程式,则还会存在/boot/grub/这个目录。



/dev 在Linux系统上,任何装置与周边设备都是以档案的型态存在于这个目录当中。 只要通过存取这个目录下的某个档案,就等于存取某个装置。比要重要的档案有/dev/null, /dev/zero, /dev/tty , /dev/lp*, / dev/hd*, /dev/sd*等等



/etc 系统主要的设定档几乎都放置在这个目录内,例如人员的帐号密码档、各种服务的启始档等等。 一般来说,这个目录下的各档案属性是可以让一般使用者查阅的,但是只有root有权力修改。



/etc/X11/ 与X Window有关的各种设定档都在这里,尤其是xorg.conf或XF86Config这两个X Server的设定档。


/home 这是系统预设的使用者家目录(home directory)。 在你新增一个一般使用者帐号时,预设的使用者家目录都会规范到这里来。比较重要的是,家目录有两种代号:~ :代表当前使用者的家目录,而 ~guest:则代表用户名为guest的家目录。



/lib 系统的函式库非常的多,而/lib放置的则是在开机时会用到的函式库,以及在/bin或/sbin底下的指令会呼叫的函式库而已 。



/mediamedia 是媒体的英文,这个/media底下放置的就是可移除的装置。 包括软碟、光碟、DVD等等装置都暂时挂载于此。



/mnt 如果妳想要暂时挂载某些额外的装置,一般建议妳可以放置到这个目录中。在古早时候,这个目录的用途与/media相同了。 只是有了/media之后,这个目录就用来暂时挂载用了。



/opt 这个是给第三方协力软体放置的目录 。 什么是第三方协力软体啊?举例来说,KDE这个桌面管理系统是一个独立的计画,不过他可以安装到Linux系统中,因此KDE的软体就建议放置到此目录下了。 另外,如果妳想要自行安装额外的软体(非原本的distribution提供的),那么也能够将你的软体安装到这里来。 不过,以前的Linux系统中,我们还是习惯放置在/usr/local目录下。



/root 系统管理员(root)的家目录。 之所以放在这里,是因为如果进入单人维护模式而仅挂载根目录时,该目录就能够拥有root的家目录,所以我们会希望root的家目录与根目录放置在同一个分区中。



/sbinLinux 有非常多指令是用来设定系统环境的,这些指令只有root才能够利用来设定系统,其他使用者最多只能用来查询而已。放在/sbin底下的



srvsrv 可以视为service的缩写,是一些网路服务启动之后,这些服务所需要取用的资料目录。 常见的服务例如WWW, FTP等等。 举例来说,WWW伺服器需要的网页资料就可以放置在/srv/www/里面。呵呵,看来平时我们编写的代码应该放到这里了。



/tmp 这是让一般使用者或者是正在执行的程序暂时放置档案的地方。这个目录是任何人都能够存取的,所以你需要定期的清理一下。当然,重要资料不可放置在此目录啊。 因为FHS甚至建议在开机时,应该要将/tmp下的资料都删除。


基本命令(非常简单)


基本命令除了命令本身外 很多都是可以在后面加上参数 增强其本身的功能


终端自身

clear   或者 ctrl+L(组合键)

清除本页

ctrl+u(组合键)

清除焦点前的命令

ctrl+K(组合键)

清除焦点后的命令

Tab(键)

只需输入文件或目录名的前几个字符, 然后按TAB键,如果没有相重的,完整的文件名立即自动在命令行出现;如有相重的,再按一下TAB键,系统会列出当前目录下所有以这几个字符开头的名字
在命令行下,只需输入例如"m",再连续按两次TAB键,系统将列出所有以"m"开头的命令,(包括自定义的Bshell命令函数),对查找某些记不清楚的命令特有用.例如输入"ftp",将查到ftp,ftpcount,ftpwho,ftpshut等本不熟悉的命令


目录列表

ls

目录列表命令

ls -a

查看所有文件文件夹(包括隐藏文件文件夹)

ls -l

查看文件和文件夹的具体信息

ll

等同于ls -l (linux系统不通用 个别发行版不可用)


目录切换

cd

切换目录命令

cd ..

切到本目录的上级目录 当然在根目录下面切不上去了

cd etc/default

cd后跟上具体的路径 切换到具体的目录中去

cd /

切换到根路径

cd ~

切换到当前用户的个人文件夹

pwd

查看当前所在目录   如过显示的是 / 说明在根目录下


目录创建和删除

mkdir note

创建note目录 不可创建多级目录

mkdir -p aaa/bbb/ccc

可创建多级目录

rmdir note

删除note目录(只能删除空目录 )删除整个目录不管是否为空 见下面的删除命令 rm


文件创建

touch aa.txt

在当前目录创建aa.txt

touch aa.txt bb.txt cc.txt

在当前目录创建aa.txt bb.txt cc.txt


文件查看

cat a.txt

显示a.txt的内容

more a.txt

分页显示 空格下一页 q退出

less  a.txt

用法和more类似 可以用pgup和pgdn来控制

tail -10 a.txt

显示文件后10行的内容

tail -f a.txt

动态查看日志  比如tomcat的日志

ctrl+c (组合键)

万能的结束键 90%以上管用


文件文件夹剪切

mv aa.txt /use/local

剪切aa.txt 到/use/local 目录下    格式: mv  操作的文件  位置      (路径可相对可绝对)

mv aa.txt  bb.txt

剪切aa.txt 到当前文件夹并改名字为bb.txt

mv aa ../

剪切aa文件夹到上一级目录

mv aa.txt /usr/local/cc.txt

剪切aa.txt 到/use/local 目录下 并改名字为cc.txt

mv aa bb

剪切aa 目录到本(如果本级有bb目录剪切到bb目录下   如果没有就改名为bb)文件夹文件 改名可用


文件文件夹删除(慎用  可用剪切代替删除 创建个存储垃圾的文件夹 )

rm  aa.txt

删除aa.txt文件 格式:rm  文件名字   (删除的时候会有确定删除的提示)

rm -r aa

删除aa文件夹 不管是否为空 但是删除下面的每个文件都要你确认  r递归  可理解为删除多级

rm -rf aa

删除aa文件夹   但是不会让你确认是否删除

rm -rf /*

自杀命令   删除/根目录下的所有文件 只要拥有权限能实现  比如root用户(手贱命令)


http://imgsrc.baidu.com/forum/w%3D580/sign=00fefe23dd09b3deebbfe460fcbe6cd3/940f918fa0ec08fa078d4aec55ee3d6d54fbdafc.jpg

效果图


文件文件夹复制

cp a.txt a.txt.bak

复制a.txt 到当前目录并改名为a.txt.bak  修改某些系统文件之前做备份可用

cp a.txt /usr/local

复制a.txt 到/usr/local下(如果目录下有同名的文件会提示你是否覆盖)


压缩解压缩


解压首先看压缩包后缀 压缩也要看需要压缩的格式(先打包再压缩  之所以先打包是为了防止解压出来直接打乱了当前的目录)


下列解压命令属于debian系的  sudo 代表获取超级用户权限  如果当前就是root用户 可省略sudo  apt-get 是debian的安装软件的命令 centos 直接换成yum就可以了  一般只用来解压 需要压缩的极少   其实可以不看  需要解压直接网上搜 .后缀名解压就可以了




先说例子:


一般解压之前需要看压缩包的目录是否打包了的防止解压出来打乱了当前目录


tar -tvf 压缩文件


tar -zxvf a.tar.gz -C /usr/local  

 将a.tar.gz 解压到/usr/local目录下

 如果直接解压到当前目录 tar -zxvf a.tar.gz

 

 语法:

 tar [选项...] [FILE]...



-A或--catenate:新增文件到以存在的备份文件;

-B:设置区块大小;

-c或--create:建立新的备份文件;

-C <目录>:这个选项用在解压缩,若要在特定目录解压缩,可以使用这个选项。

-d:记录文件的差别;

-x或--extract或--get:从备份文件中还原文件;

-t或--list:列出解压缩文件的内容;

-z或--gzip或--ungzip:通过gzip指令处理备份文件;

-Z或--compress或--uncompress:通过compress指令处理备份文件;

-f<文件>或--file=<文件>:指定解压缩文件;

-v或--verbose:显示指令执行过程;

-r:添加文件到已经压缩的文件;

-u:添加改变了和现有的文件到已经存在的压缩文件;

-j:支持bzip2解压文件;

-v:显示操作过程;

-l:文件系统边界设置;

-k:保留原有文件不覆盖;

-m:保留文件不被覆盖;

-w:确认压缩文件的正确性;

-p或--same-permissions:用原来的文件权限还原文件;

-P或--absolute-names:文件名使用绝对名称,不移除文件名称前的“/”号;

-N <日期格式> 或 --newer=<日期时间>:只将较指定日期更新的文件保存到备份文件里;

--exclude=<范本样式>:排除符合范本样式的文件。



tar -cf archive.tar foo bar  # 从文件 foo 和 bar 创建归档文件 archive.tar。

tar -tvf archive.tar         # 详细列举归档文件 archive.tar 中的所有文件。

tar -xf archive.tar          # 展开归档文件 archive.tar 中的所有文件。

 

 -f: 使用档案名字,切记,这个参数是最后一个参数,后面只能接档案名

 

tar -cf all.tar *.jpg

# 这条命令是将所有.jpg的文件打成一个名为all.tar的包。-c是表示产生新的包,-f指定包的文件名。


tar -rf all.tar *.gif

# 这条命令是将所有.gif的文件增加到all.tar的包里面去。-r是表示增加文件的意思。


tar -uf all.tar logo.gif

# 这条命令是更新原来tar包all.tar中logo.gif文件,-u是表示更新文件的意思。


tar -tf all.tar

# 这条命令是列出all.tar包中所有文件,-t是列出文件的意思



 

解压bz2

sudo tar -jxvf  文件名 -C 存放的目录。

其中 j表示解压bz2包,x表示解压,v表示显示详细过程,f表示文件。

输入解压命令后,终端显示解压的详细过程。若不想看到解压的详细过程,可修改 -jxvf 为 -jxf。


解压tar.gz

在linux下,常见的压缩包还有tar.gz包,对于该类型的包的解压,使用的命令为

sudo tar -zxvf  文件名 -C  存放的目录。

其中z代表解压tar.gz类型的包。


解压zip

安装解压软件

sudo apt-get install unzip

解压文件

unzip    xxxxx.zip


解压7z

安装:apt-get install p7zip-full

解压7z:使用方法:7z x file                   file是你要解压的文件名


rar 安装

sudo apt-get install unrar


解压命令行:

rar e xxx.rar

rar x xxx.rar

压缩命令行 :

rar a xxx.rar file1 file2 ...


7zip安装:

sudo apt-get install p7zip


7zip解压命令行:

7zr x xxx.7z    // 解压到XXX

7zr e xxx.7z    // 解压到当前文件夹


查找文件

find / -name "*.log"

查找根目录下的以.log结尾的文件  格式:find  查询范围(如果是当前目录   . 代表)  -某种规定(name    type ctime size 等等) 条件       这个命令具体的可以百度

grep address  a.txt

查找a.txt 里面是否存在address 打印该行

grep address  a.txt --color

查找a.txt 里面是否存在address 打印该行   并高亮显示关键字

grep address  a.txt --color -A1

查找a.txt 里面是否存在address 打印该行和该行的后一行

grep address  a.txt --color -B1

查找a.txt 里面是否存在address 打印该行和该行的前一行


vi或者vim(比较牛逼的编辑器)vi与vim操作基本一样


vim 分三种模式  (命令行模式、插入模式、底行模式)


编辑的时候就是编辑模式


在最下面那一行输入就是底行模式(一般用于保存退出)


剩下的就是命令行模式


使用vim编辑aa.txt文件


按i插入 进入插入模式(按其他键也可以 但是 官方文档按i、o、a )



写完了按Esc键 进入到命令行模式



在命令行模式的前提下 按 : 进入底行模式



保存并退出



查看是否添加进去了  cat a.txt      more a.txt        less a.txt     都可以


重定向输出


有点相当于把原来向控制台输出的    输出到文件当中去

cat aa.txt > bb.txt

把aa.txt 的内容写入到bb.txt当中去  (重复使用会覆盖bb.txt)

cat aa.txt  >> bb.txt

把aa.txt 的内容写入到bb.txt当中去  (重复使用会追加到bb.txt)

ls  tomcat  > a.txt

把tomcat 目录下的信息写入到 a.txt


进程相关命令(具体可百度)

ps -ef   或者 ps aux

查看所有线程

ps aux | grep ssh

筛选出ssh相关的命令   | 管道符 见下面   grep 见上面

kill 3306

杀死3306进程

kill -9 3306

强制杀死3306进程  (1 重新加载进程   9杀死  15正常停止)

top

动态查看进程

top -c

显示完整命令


管道(|)


ps aux | grep ssh       |  就是管道符


其作用是将一个命令的输出用作另一个命令的输入


ps aux  输出所有的进程


所有的进程 ----->相当于一个输出 | grep  ssh    从里面筛选出 ssh


权限


终端输入ll 可看到文件文件夹的详情   个别发行版可能是ls -l



可以看到 基本第一块都是 drwxrwxrwx    分成4部分   d rwx rwx rwx  

d代表是个目录如果是l代表是个链接 linux分为软链接和硬链接(自行百度)




三个rwx    第一个rwx是当前用户的权限  第二个是当前用户组的其他用户的权限   第三个是其他组的其他用户的权限


r代表可读

w代表可写

x代表可执行(软件)


更改权限


chmod

chmod u=rwx,g=rwx,o=rwx

复制所有权限

chmod u=rwx,g=rw

当前用户赋值所有权限,用户组写读权限  其它用户组权限不变

chmod u+x

给当前用户添加执行权限

chmod o-r

给其他用户组删除读权限


快速改权限


1 代表X运行

2 代表W写

4 代表r读


chmod 777   赋值所有的权限


7 7 7

第一个7代表当前用户的权限

第二个7代表当前用户组其他用户权限

第三个7代表其他用户组其他用户权限

需要什么权限上面所代表的数字相加 7=1+2+4  所以代表所有的权限

一般最常见的为

chmod 755

 当前用户7   7=1+2+4 (执行+写+读)

 当前用户组其他用户 5=1+4 (执行+读)

 其他用户组其他用户 5=1+4 (执行+读)

 

 一般tomcat运行的时候需要创建文件 所以

 chmod 777 -R tomcat   把tomcat文件夹以及子目录所有的权限打开


命令提示(一般是英文)


man 加上命令


或者


命令  --help


man ls


man cd


……


改所有的配置文件之前建议copy一份(备份)


Linux常见网络操作


主机名配置


hostname   查看主机名

hostname kang 修改主机名为kang (临时性修改  重启后无效)

永久生效,修改/etc/sysconfig/network



IP地址配置


ifconfig 查看本机IP地址 初次查看可能提示安装net-tools 安就对了 yum install net-tools


debian系的linux    apt-get install net-tools

arch系的linux(邪教Linux 听说用的人还不少)      pacman -S net-tools


这里就得给大家安利一款国产linux了   uos应该家庭版快发布了 deepin是uos的测试版目前不建议安装bug比较多以前还可以但是吃性能  桌面还是建议ubuntu



ifconfig eth0 192.168.01.12 修改ip  eth0网卡的名字见上张图左边  (临时生效)

永久生效

修改

/etc/sysconfig/network-scripts/



补上面没有的

IPADDR=12.168.177.129   IP地址

NETMASK=255.255.255.0 子网掩码

NETWORK=192.168.177.0 网络地址

BROADCAST=192.168.0.255 广播地址


域名映射(相当于win下的 )



linux下的hosts文件位于 /etc/hosts



与windows的修改方法一样


网络服务管理


service network status 查看指定服务的状态

service network stop   停止指定服务  (不要连接远程服务器测试 不然直接断连 你需要到控制面板去重启才行)

service network start 启动指定服务

service network restart 重启指定服务

service --status-all查看系统中所有后台服务


防火墙设置(服务器控制台可以直接操作)


Centos6防火墙根据配置文件 /etc/sysconfig/iptables

service iptables status 查看防火墙状态

service iptables stop   关闭防火墙

service iptables start  启动防火墙

chkconfig iptables off  禁止防火墙自启


Centos7 使用的是filewall

用户配置目录   /etc/firewalld/

系统配置目录 /usr/lib/firewalld/services

iptables 用于过滤数据包,属于网络层防火墙。

firewall 能够允许哪些服务可用,那些端口可用...属于更高一层的防火墙。

       Service firewalld restart 重启

       Service firewalld start  开启

       Service firewalld stop  关闭

       systemctl status firewalld 状态

       systemctl stop firewalld  关闭

       systemctl start firewalld 开启

       systemctl  restart firewalld 重启

       systemctl  disable firewalld  关闭开机启动

         firewall-cmd --list-all查看防火墙规则

         firewall-cmd --state查看状态

         

         当然Centos7的防火墙也是可以切到Centos6的

         切换到iptables首先应该关掉默认的firewalld,然后安装iptables服务。并且禁止firewalld开机重启service firewalld stop systemctl disable firewalld.service  

         安装iptables  yum install iptables-services


Linux上软件安装


Linux上的软件安装有以下几种常见方式


  1. 二进制发布包  有点类似win上面的解压版软件  软件已经针对具体平台编译打包发布,只要解压,修改配置即可
  2. Centos的RPM包 Debian的deb包 类似于win下的exe包当然linux下面靠命令安装 并且linux下的软件经常因为依赖没有导致安装失败
  3. Centos的yum在线安装  Debian的apt-get在线安装  软件放在远程仓库直接下载到本地并安装
  4. 源码编译安装(稍微算是高阶  因为大多数人搞不定)软件以源码工程的形式发布,需要获取到源码工程后用相应开发工具进行编译打包部署


linux下的软件压缩包是.tar.*  可能是tar.gz    tar.bz2 结尾的这个是压缩包的格式居多  .zip  .7z那就是Windows上的了   如果是软件包  一般以.deb  .rpm 结尾的  windows下是 .exe  .msi   mac下是.dmg


在Linux上安装JDK


查看openjava是否存在


java -version



没有就安装JDK有的话就卸载 卸载方式可百度


JDK资源两种方式


1.

wget https://download.oracle.com/otn/java/jdk/8u311-b11/4d5417147a92418ea8b615e228bb6935/jdk-8u311-linux-x64.tar.gz?AuthParam=1635350524_275106273da7b4360ba7399ff7bd6819

wget 后面跟网址可下载网址代表的东西   当前在哪个目录就会下载到哪个目录


2.或者win下载了通过ftp传到linux




解压到想解压的文件夹下  我解压的目录是/usr/local

tar -zxvf  jdk-8u311-linux-x64.tar.gz -C /usr/local


配置环境变量


配置之前一般先备份

sudo cp /etc/profile /etc/profile.bak

编辑环境变量

sudo vim /etc/profile



##在环境变量最下面写入

#JAVA_HOME

export JAVA_HOME=/usr/local//usr/local/jdk1.8.0_311

export JRE_HOME=${JAVA_HOME}/jre

export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib

export PATH=.:${JAVA_HOME}/bin:$PATH


环境变量生效

source /etc/profile

检测

java -version


Linux安装Mysql(方法很多  不同版本可能不通用)


rpm -qa|grep mysql 检查系统中有无安装过mysql

远程下载mysql源 然后安装

wget https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm

yum -y localinstall mysql57-community-release-el7-11.noarch.rpm

yum -y install mysql-community-server     网速不行的话可能会比较慢

systemctl start mysqld  启动mysql

systemctl status mysqld  查看mysql状态



systemctl daemon-reload

查找mysql生成的临时密码

grep password /var/log/mysqld.log  

我的临时密码为: YIJ:8b-b>iIl

复制临时密码登录MySQL

mysql -uroot -p



必须重置密码不然无法操作

设置本地root密码

首次密码必须得复杂不然不能通过(先copy下面的代码最后再改密码)

ALTER USER 'root'@'localhost' IDENTIFIED BY 'daasan7ujm^YHN';

设置远程登录

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'daasan7ujm^YHN' WITH GRANT OPTION;


设置mysql默认编码为utf-8(见下图)

vim /etc/my.cnf


[mysqld]下面添加

character_set_server=utf8

init_connect='SET NAMES utf8'

保存退出 重启mysql

systemctl restart mysqld

show variables like 'character%';  查看字符编码  (下面有效果图)


修改密码 登录mysql查看密码等级并修改

密码上面我们设置的是   daasan7ujm^YHN   远程的也是这个  远程的也需要单独修改

查看密码等级不然可能设置简单的密码不通过(见下图)

SHOW VARIABLES LIKE 'validate_password%';

set global validate_password_policy=LOW;   修改密码等级

set global validate_password_length=6;    修改密码长度

flush privileges;  刷新权限表

再次查看密码等级

SHOW VARIABLES LIKE 'validate_password%';


ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';   修改本地root用户密码为123456(也就是跟远程的差别)

然后在远程上使用Navicate连接 密码一开始是daasan7ujm^YHN 可以后面自己改

ALTER USER 'root'@'%' IDENTIFIED BY '123456';   改远程密码为123456


远程windows上的cmd可测试连接(见下图)

mysql -h1.14.99.225 -uroot -p123456      格式: mysql -h公网ip -u用户名 -p密码





Linux安装tomcat


从windows下载apache-tomcat-8.5.72.tar.gz 然后通过Xftp传到服务器上


解压到指定的目录 我是放在/usr/local/下面

tar -tvf apache-tomcat-8.5.72.tar.gz >aa.txt   查看tomcat的目录写入到aa.txt当中(如果他是打包好了的 我们直接解压 如果里面没打包 一下子就在指定目录解压出成百上千个 把原来目录都搞乱的那种  我们就要提前为它创建个包)

sudo tar -zxvf apache-tomcat-8.5.72.tar.gz -C /usr/local/   解压到/usr/local/




Tomcat的开启和关闭


.sh相当于windows上面的bat   ./具体的.sh  运行相应的脚本



安装Redis(目前官方只提供了源码安装的方式)


因为是C语言开发的所以需要先安装依赖   编译依赖gcc


查看是否有gcc没有就安装

gcc -v

安装gcc

yum -y install gcc gcc-c++ kernel-devel


wget http://download.redis.io/releases/redis-3.0.4.tar.gz 

下载redis   因为centos7.6版本里面的默认gcc版本比较老所以只能下载

tar -zxvf redis-3.0.4.tar.gz -C /usr/local/

解压到/usr/local目录下

切换到解压目录下

make  编译软件

执行安装命令

make PREFIX=/usr/local/redis install

make install 安装完成后,会在/usr/local/bin目录下生成下面几个可执行文件,它们的作用分别是:(见下图)



切换到最开始redis解压到的目录 复制redis.conf 到redis的安装目录下面的bin文件见

cp redis.conf /usr/local/redis/bin


启动redis

./redis-server ./redis.conf



安装Nginx


首先安装nginx的依赖

yum install gcc-c++ (省略上面已经安装过了)

yum install -y pcre pcre-devel   pcre用来解析正则表达式的(一般也是安装了的)

yum install -y zlib zlib-devel   zlib 一种压缩解压的工具

yum install -y openssl openssl-devel    在ssl协议上传输http


windows上下载nginx1.81.0这个版本(见下图) 太新不能编译  传输到Linux上面去

或者网络下载

wget http://nginx.org/download/nginx-1.9.9.tar.gz



切换到解压到的目录 编译安装

./configure


make

 

make install


切换到/usr/local/nginx



可以看到和windows上的基本一样  改nginx的配置与windows一样就不说了


启动nginx

cd /usr/local/nginx/sbin

./nginx

ps -ef | grep nginx   查看是否有nginx进程

./nginx -s stop 关闭nginx

最后windows上面访问一下



安装gitLab(Centos7)


简介:


GitLab是一个利用Ruby on Rails开发的开源应用程序,实现一个自托管的Git项目仓库,可通过Web界面进行访问公开的或者私人项目.


安装SSH

yum install -y curl policycoreutils-python openssh-server

显示complete表示安装完成

将ssh设置为开机自启动

systemctl enable sshd

启动ssh

systemctl start sshd


安装Postfix

Postfix是一个邮件服务器,GitLab发送邮件需要用到


#安装postfix

sudo yum install -y postfix

#启动postfix并设置为开机启动

sudo systemctl enable postfix

sudo systemctl start postfix


下载gitlab

wget https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-10.0.0-ce.0.el7.x86_64.rpm


安装gitlab

rpm -i gitlab-ce-10.0.0-ce.0.el7.x86_64.rpm


安装过程中如果出现



表示安装成功


server {

       listen       80;

       server_name  1.14.99.225;


       location / {

           root   /usr/local/image;

           index  index.html index.htm;

       }

       error_page   500 502 503 504  /50x.html;

       location = /50x.html {

           root   html;

       }

   }

相关文章
|
3月前
|
Linux 网络安全 Python
linux centos上安装python3.11.x详细完整教程
这篇文章提供了在CentOS系统上安装Python 3.11.x版本的详细步骤,包括下载、解压、安装依赖、编译配置、解决常见错误以及版本验证。
1095 1
linux centos上安装python3.11.x详细完整教程
|
4月前
|
Ubuntu 网络协议 Linux
【附安装包】CentOS7(Linux)详细安装教程(手把手图文详解版)
【附安装包】CentOS7(Linux)详细安装教程(手把手图文详解版)
920 2
|
13天前
|
Linux Python
Linux 中某个目录中的文件数如何查看?这篇教程分分钟教会你!
在 Linux 系统中,了解目录下文件数量是常见的需求。本文介绍了四种方法:使用 `ls` 和 `wc` 组合、`find` 命令、`tree` 命令以及编程实现(如 Python)。每种方法都附有详细说明和示例,适合不同水平的用户学习和使用。掌握这些技巧,可以有效提升系统管理和日常使用的效率。
73 6
|
18天前
|
Linux Python
Linux 中某个目录中的文件数如何查看?这篇教程分分钟教会你!
在 Linux 系统中,了解目录下的文件数量是常见的需求。本文介绍了多种方法,包括使用 `ls` 和 `wc` 命令组合、`find` 命令、`tree` 命令以及编程方式(如 Python)。无论你是新手还是有经验的用户,都能找到适合自己的方法。掌握这些技巧将提高你在 Linux 系统中的操作效率。
26 4
|
2月前
|
Linux Docker 容器
Centos安装docker(linux安装docker)——超详细小白可操作手把手教程,包好用!!!
本篇博客重在讲解Centos安装docker,经博主多次在不同服务器上测试,极其的稳定,尤其是阿里的服务器,一路复制命令畅通无阻。
931 4
Centos安装docker(linux安装docker)——超详细小白可操作手把手教程,包好用!!!
|
2月前
|
存储 数据可视化 Java
震惊!如何在linux下部署项目,部署/运行jar包 超详细保姆级教程!
如何在Linux系统下部署和运行Java项目jar包,包括传输文件到Linux、使用nohup命令运行jar包、查看端口状态、杀死进程和查看项目运行状态,以及如何解决“没有主清单属性”的错误。
507 1
震惊!如何在linux下部署项目,部署/运行jar包 超详细保姆级教程!
|
2月前
|
关系型数据库 MySQL Linux
基于阿里云服务器Linux系统安装Docker完整图文教程(附部署开源项目)
基于阿里云服务器Linux系统安装Docker完整图文教程(附部署开源项目)
280 3
|
2月前
|
Linux C语言 C++
vsCode远程执行c和c++代码并操控linux服务器完整教程
这篇文章提供了一个完整的教程,介绍如何在Visual Studio Code中配置和使用插件来远程执行C和C++代码,并操控Linux服务器,包括安装VSCode、安装插件、配置插件、配置编译工具、升级glibc和编写代码进行调试的步骤。
278 0
vsCode远程执行c和c++代码并操控linux服务器完整教程
|
3月前
|
存储 Linux 5G
Linux 基于 LVM 逻辑卷的磁盘管理【简明教程】
这篇文章介绍了LVM(逻辑卷管理)如何提供灵活的磁盘管理方式,允许动态调整逻辑卷的大小而不会丢失数据。
Linux 基于 LVM 逻辑卷的磁盘管理【简明教程】
|
2月前
|
Linux 开发工具 Docker
各个类linux服务器安装docker教程
各个类linux服务器安装docker教程
64 0