linux系统

linux 发行版安装:

1、linux操作系统下载https://blog.csdn.net/qq_40827780/article/details/83385464 
 【作为服务器的linux系统,一般都使用 Ubuntu 或 Centos

2、pc上linux系统安装:https://blog.csdn.net/NightSky10/article/details/78538705  或  https://blog.csdn.net/Blazar/article/details/79168116 或 https://jingyan.baidu.com/article/d5a880eb5b0aa153f147cced.html

   注意:linux系统 可能是不支持通过pe安装的,需要把U盘做成光盘映像文件。

概念:

linux系统 分  linux内核版 和 linux发行版

1、linux系统的  下载命令  也是有仓库源的,这点和npm的下载包一样。指令下载的内容,都有一个 远程 仓库源的。

2、一般掌握 linux基础 知识就可以了。   https://blog.csdn.net/weixin_34111819/article/details/91375436 

3、linux的目录结构:https://www.cnblogs.com/0zcl/p/6815417.html

   linux目录:一切从“根”开始,“/”是所有目录的起点(定点)

   注:查看当前目录的绝对路径,可以使用命令 pwd 。

     inux系统的命令上不一定显示当前目录的绝对路径,需要pwd命令打印出来。如:

4、linux几个常用命令:https://blog.csdn.net/qq_23329167/article/details/83856430

  a、删除目录:https://www.cnblogs.com/fuhaots2009/p/3435798.html【使用 rm 参数】

  b、删除文件:https://www.cnblogs.com/heyboom/p/11459042.html

  c、wget命令:下载文件的工具 https://www.cnblogs.com/sx66/p/11887022.html

  d、vim编辑器,有两种模式。编辑模式  和  命令模式。要保存退出,必须是命令模式下。【vim是vi的加强版】

  f、netstat命令:端口开放查看    https://blog.csdn.net/chenlixiao007/article/details/124639562 或 https://www.cnblogs.com/lemon-flm/p/7396536.html 

    netstat -tunlp

     重点说明:0.0.0.0   是对外开放,通过服务域名、ip可以访问的端口。【0.0.0.0是一个特殊的IP地址,指的是本机的全部IP地址】
         127.0.0.1 只能对本机 localhost访问,也是保护此端口安全性
         ::: 这三个: 的前两个”::“,是“0:0:0:0:0:0:0:0”的缩写,相当于IPv6的“0.0.0.0”,就是本机的所有IPv6地址,第三个:是IP和端口的分隔符

5、文件权限问题:https://blog.csdn.net/qq_42139745/article/details/129715343

  • 用户默认的权限:不同用户因为权限不同,他们创建的文件默认的文件权限也是不同的。
    文件权限分为:所有者权限、所属组权限、其它人权限。
    root用户创建文件时,默认的给的权限是 "rw-r--r--",即 root创建的文件 其它用户 自有读的权限。
    注:所以linux系统中,一般不推荐直接在root用户下创建文件。
  • 读写文件的权限:
    通常查看应用是否拥有权限,先看用户是不是文件所有者,再看是不是所属组,最后看是不是其他用户,如果是其中一个,就有权限;
    查看文件权限方式:https://blog.csdn.net/ifubing/article/details/100190291
  1. 对普通用户来说,没有权限是不能访问资源的;
  2. 读写权限对root用户不受限制,但x权限受控制;
    需要注意的是:对root用户来说,如果root没有x权限,只要属组和其他有x权限,root用户就能执行,而普通用户不行。
  1. 上调权限:这种是针对 执行文件的权限。
    执行命令:上调权限:chmod 777 test.php
  2. 改为root权限:需要root的密码
    su root 即可
  3. 修改/etc/ssh/sshd_config文件:这种情况表示ssh没有给root权限。

切换root用户名的权限:https://www.cnblogs.com/sunyllove/p/9771626.html

    sudo -i

6、linux 中 安装 软件(如nginx): https://blog.csdn.net/liu_xzhen/article/details/79516303

  注意:tar包解包出来的软件,可能是源码,也可能是编译好的。.tar.xx 的tar包,这种是进行了压缩的tar包,需要解压解包。

  linux中,不同类型的程序,有不同的安装方式:  

  • rpm包 或 deb包安装:这两个比较简单,有点类似window中exe包。(linux系统一般都有软件包管理器)可以直接安装的。这里不讲
  • 源代码包:需要通过编译进行安装。https://blog.csdn.net/waS_TransvolnoS/article/details/90257593
        1、下载源码:官网下载 或 包管理器下载(一般都是官网下载下来)
        2、解压缩你下载的tar.gz包,得到一个文件夹。
    tar -zvxf ***.tar.gz

        3、进入解压后的目录,运行 configure 文件:

    cd xxx    ##xxx  为解压后的文件夹
    ./configure

        4、编译:生成二进制程序(二进制文件还没有安装)

    make

        5、安装生成的二进制文件:

    make install ##安装软件
  • 已编译好的包:不需要安装,解包后就可以使用。有点类似window中,绿色免安装的软件。如,nodejs 二进制文件,解压后 就可以使用。(如果要全局使用node命令,需要配置,类似window系统的环境变量)
    ./node -v   # v.12.16.3

7、设置全局命令 两种方式:环境变量 软链接  【这个逻辑和window系统上是一样的】
  推荐使用软链接的方式 配置全局命令。

  • 配置系统环境变量:https://blog.csdn.net/qq_52385631/article/details/123881751 
    # 打开配置文件
    vim /etc/profile
     
    # 添加环境变量
    PATH="$PATH:/opt/tngx230/sbin:/opt/s19luffy/node-v8.6.0-linux-x64/bin"
     
    # 刷新
    source /etc/profile
  • 软链接:本质就是在已配置环境变量的目录下,放置我们的程序。https://www.cnblogs.com/peteremperor/p/14778034.html
    linux默认配置环境变量的目录有:usr/bin/、/usr/local/bin/ 
    如,nodejs可以通过创建软链接实现全局命令。【推荐 把软链接放在/usr/local/bin/ 目录下,因为这个文件下默认是空的】
    ln -s /usr/local/node/bin/node /usr/local/bin/node  --将node源文件映射到usr/bin下的node文件
    
    ln -s /usr/local/node/bin/npm /usr/local/bin/npm

9、tar包和gzip压缩包的概念:https://zhuanlan.zhihu.com/p/82747913  或  https://blog.csdn.net/weixin_30652897/article/details/98926822

通常你见到的各种源码包都是 .tar.gz 的格式。这种都是先通过 tar 打包,然后在通过 gzip 压缩生成的。因为 gzip 无法压缩目录,他需要用 tar 先打包一下,所以看起来是双后缀的格式。
所以这种包要解包,先要解压,然后再解包。因为麻烦,后来tar命令通过参数直接实现了解压再解包。有的压缩方式,tar命令可能还不支持解压。

 常用的是 tar 命令。他的语法为: tar [-选项] [文件名] [打包目录] 它有一下几个选项

  • -c 打包
  • -x 解包
  • -v 显示详细信息
  • -f 指定文件名 | 指定解压文件名
  • -z 打包同时压缩 | 解压
// 打包压缩
tar -zcvf web.tar.gz web
// 解压
tar -zxvf web.tar.gz

10、linux 卸载软件:https://jingyan.baidu.com/article/a24b33cd5678bd19fe002bf6.html

    sudo apt-get autoremove --purge 软件名

  sudo ———— 获取 root 权限

  apt-get ——— 执行安装卸载功能的软件

  autoremove — 告诉 apt-get 我们所要做的操作是移除软件

  --purge ——— 注意这前面是两个短划线,这个参数是告诉他们要完整的干净的彻底的移除

11、linux系统的包管理器:

12、linux系统中文件目录存放规范【个人习惯】

  • /usr/local/src:    下载下来的源文件放在这里
  • /usr/local/softwareName :   自己安装的软件放在/usr/local/目录下,如 nodejs、nginx 等
  • /usr/local/project : 自己开发的程序放在这里,如java、nodejd等;
  • /usr/local/bin : 设置软链接时,软链接的文件放在这里。如:ln -s /usr/local/node/bin/pm2 /usr/local/bin/ 

  • /var/lib:程序本身执行的过程中,需要使用到的数据文件放置的目录。如MySQL的数据库/var/lib/mysql
    【/var 该目录主要针对经常性变动的文件,包括缓存(cache)、日志文件(log file)以及某些软件运行所产生的文件,包括程序文件,或例如MySQL数据的文件等】
  • /var/log:日志文件放置目录。

13、/bin、/usr/bin和/usr/local/bin 的区别:https://blog.csdn.net/weixin_45649763/article/details/104635869 

  • /bin: 存放所有用户皆可用的系统程序,即普通的基本命令,如:touch ls等。(centos7.0后,/bin全部移到/usr/bin)
  • /usr/bin: 存放所有用户都可用的应用程序,一般是已安装软件的运行脚本,如:free、make、wget等。
  • /usr/local/bin: 存放所有用户都可用的第三方软件程序。一般都是放一些的程序软链接,程序本身一般放在/usr/local/name

 centos发行版(服务器常用的,标准版centos是没有图形界面的)

我安装的就是标准版的 centos7,下面就以这个版本说明:

重点说明:centos7 默认安装后,网络 和 wifi都是关闭的。  https://blog.csdn.net/b078109/article/details/101774077【开启以太网和wifi,这里的步骤有些是多余的。直接看下面几个步骤就可以了】

1、开启以太网:这个必须先开启,启动wifi,在有网的情况下可以测试是否开通。https://www.cnblogs.com/zxcnn/p/10409482.html【推荐】

  • 修改配置文件
vi /etc/sysconfig/network-scripts/ifcfg-ens33  # 不同的系统可能最后的ens33名称不同

  修改这文件最后的  ONBOOT=yes 。保存就可以了

ONBOOT=yes #设置为yes,开机自动启用网络连接
  • 重启网络
service network restart   # 重起服务

2、开启 wifi 连接:

  • 安装NetworkManager-wifi
    yum -y install NetworkManager-wifi
    安装完后,reboot,wifi网卡应该已经启动。
    我电脑到这一步,wifi就启动了。后面的步骤就不需要操作了。
    注意:这应该是我在安装时,连接了wifi,已经输入的wifi密码。wifi的账户密码已经写到配置里面去了。所以安装包后,重启就可以了。

  如果安装系统时,没有输入过wifi密码,还需要执行下面的程序。https://www.cnblogs.com/asker009/p/10212045.html

#系统内置网络配置界面
nmtui

#扫描可用于连接wifi
nmcli dev wifi 
 
#添加一个wifi的连接
nmcli dev wifi con “无线网络名称” password “无线网络密码” name “任意连接名称(删除,修改时用)”

#添加成功后查看已创建的wifi连接
nmcli conn

#如果wifi没有连接上

nmcli con up wifi连接名(刚才nmtui创建的连接)

 

#修改该连接为开机自动连接

nmcli con mod wifi连接名 connection.autoconnect yes

3、centos7 安装桌面环境:https://www.cnblogs.com/u-drive/p/9832356.html【亲测有效】  或 https://blog.csdn.net/xm393392625/article/details/82145242【有多种桌面包】

4、笔记本centos7合盖不休眠的设置方法:https://www.sohu.com/a/273053815_639793 或 https://blog.csdn.net/seaship/article/details/100030247

1、配置 HandleLidSwitch = lock
2、启用生效:systemctl restart systemd-logind

5、centos关闭防火墙:https://www.freesion.com/article/67071126917/  或 https://blog.csdn.net/shubingzhuoxue/article/details/84578749

   centos不关闭防火墙,安装好的nginx服务器,在局域网中其它电脑无法访问

systemctl status firewalld.service  # 查看防火墙状态
systemctl stop firewalld.service   # 关闭防火墙【当前有效,重启后,防火墙还是会开启的】
systemctl disable firewalld.service # 执行开机禁用防火墙自启命令

6、内网穿透 :https://www.jianshu.com/p/7ffc40fc4013【有多种工具实现】或 https://blog.csdn.net/tys87198312/article/details/108658581【亲测有效,使用natapp实现的内网穿透】

  natapp 实现挺简单的:两个步骤

    1、natapp 官网上 获取一个隧道。   【如果是要远程ssh连接的话,获取的是 TCP 隧道。https://blog.csdn.net/Return_0_/article/details/86745225

    2、在centos中启动下载下来的软件。【官网上下载的软件,都不需要安装,直接用命令启动的就可以了】

./natapp -authtoken=你的authtoken

     【这里启动的natapp,如果关掉窗口,就是关掉了natapp程序,所以会掉线.】

    3、natapp 进程守护。https://natapp.cn/article/nohup

  说明:最后还是选择了  网云穿 ,这个域名和端口是固定的,不会像natapp一样,强行给你换了。

     安装都是 差不多 简单的,就是服务器上的软件,启动下就可以了。

7、后台运行并查看日志:

  • 后台运行命令:nohup ./wyc_linux_64 -token=令牌 &
  • 查看日志命令:tail -f nohup.out 

8、停止后台运行:

  • 查看 后台运行 的 pid  : ps -ef | grep nginx
  • 若在运行,则直接使用kill命令 杀掉进程

9、centos 开机自动启动 设置:https://blog.csdn.net/qq_25508039/article/details/82783953【以nginx为例】  或  https://www.shenzhuohl.com/linux_read.html【看下面配置开机自启动部分】

    开机没有登陆情况下就能运行的程序,存在系统服务(system)里,即:/lib/systemd/system/

  1. 在系统服务目录里创建.service文件,如 nginx.service文件。
    vi /lib/systemd/system/nginx.service
  2. 设置开机自启动
    systemctl enable nginx.service
  3. 停止开机自启动
    systemctl disable nginx.service
  4. 启动nginx服务
    systemctl start nginx.service
  5. 停止nginx服务
    systemctl stop nginx.service

     

  注意:/lib/systemd/system/  与  /etc/systemd/system/的区别:https://www.jianshu.com/p/32c7100b1b0c

对于那些支持 Systemd(YUM/DNF/RPM/APT/etc) 的软件,安装的时候,会自动在 /usr/lib/systemd/system 目录添加一个配置文件。
对于非软件包形式的临时软件安装,系统操作员应将文件手动放置在 /etc/systemd/system

  个人电脑使用,推荐直接   /etc/systemd/system/   设置

10、

 

posted @ 2019-06-12 16:02  吴飞ff  阅读(266)  评论(0编辑  收藏  举报