Linux自有服务

Linux自有服务

自有服务,即不需要用户独立去安装的软件的服务,而是当系统安装好之后直接使用的服务(内置)。

  • 运行模式

运行模式也可以称之为运行级别

在linux中存在一个进程:init(初始化),进程id是1

查看进程:# ps –ef | grep init

该进程存在一个对应的配置文件:inittab(系统运行级别配置文件。位置/etc/inittab)

文件的主要内容:

Centos6.5 存在7种运行级别/模式

0:表示关机级别(不要将默认运行级别设置为0)

1:单用户

2:多用户,不带NFS(network file system)

3:多用户模式,完全的多用户模式

4:没有被使用的模式(被保留模式)

5:X11,完整的图形化界面模式

6:表示重启级别(不要将默认设置为6)

 

与该级别相关的几个命令:

# init 0      表示关机

# init 3      表示切换到不带桌面的模式

# init 5      切换到图形界面

# init 6      重启电脑

 

注意:需要超级管理员权限

  1. 切换到纯命令行模式下(临时)

# init 3

切换后需要输入用户名和密码,密码不显示

 

  1. 回到桌面模式

# init 5

 

  1. 设置模式永久为命令行模式

 

二、用户与用户组管理

注意三个人文件:

/etc/passwd                       存储用户的关键信息

/etc/group                          存储用户组的关键信息

/etc/shadow                       存储用户的密码信息

 

  1. 用户管理

添加用户

常用语法:# useradd 选项 用户名

常用选项:

         -g:表示指定用户的用户主组,选项的值可以用户组的id,也可以是组名

         -G:表示指定用户的用户附加组,选项的值可以用户组的id,也可以是组名

         -u:uid,用户的id(用户的标识符),系统默认从500之后按顺序分配uid,如果不想使用系统分配,可以通过该选项自定义

         -c:comment:添加注释

 

案例:创建用户,不带任何选项

验证是否成功:

  1. 查看/etc/passwd最后一行
  2. 验证是否存在家目录

拓展:认识passwd文件

用户名:密码:用户ID:用户组ID:注释:家目录:解释器shell

用户名:创建新用户的名称,后期登录需要输入

密码:都是“x”,表示密码占位

用户ID:用户的识别符

用户组ID:该用户的所属的主组ID

解释:该用户是干什么的

家目录:用户登录进入系统默认的位置

解释器shell:用户输入指令,解释器收集用户输入的指令,传递给内核处理

 

注意:在不添加选项的时候,执行useradd会执行一系列的操作

  1. 创建同名的家目录
  2. 创建同名的用户组

 

案例:添加选项,创建用户wangwu,让wangwu属于501主组,附加组500,自选靓号666

 

注意:查看用户的主组可以查看passwd,查看附加组可以查看group文件

 

修改用户:

常用语法:#          usermod 选项 用户名

Usermod:user modify,用户修改

常用选项:

         -g:表示指定用户的用户主组,选项的值可以用户组的id,也可以是组名

         -G:表示指定用户的用户附加组,选项的值可以用户组的id,也可以是组名

         -u:uid,用户的id(用户的标识符),系统默认从500之后按顺序分配uid,如果不想使用系统分配,可以通过该选项自定义

         -l:修改用户名

 

案例:修改wangxiaoer 用户主组为500,附加组修改为501

 

案例:修改wangxiaoer用户用户名

 

设置密码

Linux 不允许没有密码用户登录系统

常用语法:# passwd 用户名

密码不能过于简单

设置密码后,shadow文件中的显示:

 

切换用户命令:# su 【用户名】         switch user

用户名不指定,默认到root用户

从root切换到普通用户不需要密码。反之,需要密码

切换后,路径不变

普通用户无法访问root家目录,反之,可以访问

 

 

删除用户

常用语法:# userdel 选项 用户名

常用选项:

         -r:表示删除用户的同时,删除其家目录

 

案例:删除wangergou用户

 

2、用户组管理

文件结构:

用户组名:密码:用户组ID:组内用户名

密码:X表示占位符,用户组可设密码,一般不设

组内用户名:表示附加组是该组的用户名称

 

用户组添加

常用语法:# groupadd 选项 用户组名

常用选项:

         -g:自定义设置用户组ID数字,不指定,从500递增

 

案例:创建用户组

 

用户组编辑

常用语法:# groupmod 选项 用户组名

常用选项:

         -g:自定义设置用户组ID数字,不指定,从500递增

         -n:设置新的用户组的名称

案例:修改用户组名称

 

用户组删除

常用语法:# groupdel 用户组名

注意:删除某个组是某个用户的主组时,不允许删除,如果需要删除,需要先删除用户

 

三、网络设置

首先知道网卡配置文件位置:/etc/sysconfig/network-scripts

网卡的配置文件命名格式:ifcfg—网卡名称

ONBOOT:是否开机自动启动

BOOTPROTO:ip地址分配方式,DHCP表示动态分配

HWADDR:硬件地址,MAC地址

 

重启网卡:

         Service network restart

一些分支没有service命令快速操作服务,有个共性目录/etc/init.d,这个目录存放很多任务的快捷方式

         # /etc/init.d/network restart

 

拓展:如果修改一个网卡的配置文件,路径太深,可以在浅目录下创建一个快捷方式(软链接),方便以后去查找

# ln –s 原始文件路径 快捷方式的路径

 

拓展2:如何重启单个网卡

停止某个网卡:# ifdown 网卡名

开启某个网卡:# ifup 网卡名

提示:工作时,不要随意禁用网卡

 

四、ssh服务

Ssh:(secure shell,安全外壳协议),有两个常用作用:远程连接协议、远程文件传输协议

协议使用端口号:默认是22

如果需要修改,则需要修改ssh的配置文件

# /etc/ssh/ssh_config

渡口修改,注意事项:(防火墙)

  1. 注意范围,端口范围0-65535
  2. 不能使用别的服务已经占用的端口

 

服务启动/停止/重启

# service sshd start/stop/restart

# /etc/init.d/sshd start/stop/restart

 

1、远程终端

终端工具主要帮助远程运维人员连接远程服务器,常见:xshell、secureCRT、putty

 

获取服务器的ip地址,可以通过ifconfig命令查看,ping下连接相通性

弹出对话框

问要不要信任,点击是,就行

输入用户名,密码

 

2、ssh服务文件传输

可视化的传输工具:Filezilla,secureFX

 

拓展:通过命令行工具来传输文件/文件夹

工具:PSCP(必须通过cmd命令行使用),为了使用方便,可以将其放入环境变量目录中

如果不清楚,直接放入C:/Windows目录下即可

 

用法:

  1. pscp 选项 用户名@linux 主机地址:资源路径 windows本地的地址(下载到win)
  2. pscp 选项 资源路径 用户名@linux 主机地址:远程路径(上传到linux)
  3. pscp 选项 –ls 用户名@linux 主机地址(列出远程路径下结构)

 

 

 

案例:从linux中将/etc整个目录下载

 

案例:上传到linux

 

Linux间互相传:scp命令

 

 

五、修改主机名

回顾:

# hostname

# hostname –f          FQDN(全限定域名)

 

临时设置主机名,切换用户生效

# hostname 设置的主机名

 

永久设置主机名(需要重启)

先找到一个文件

/etc/sysconfig/network

修改HOSTNAME即可

 

修改Linux服务器的hosts文件,将主机名指向本地(设置FQDN)

Hosts文件的位置:/etc/hosts

第二个为ipv6

在第一个最后添加主机名,即可

 

不设置FQDN??

  1. 很多开源服务器软件(例如Apache)则无法使用,或报错
  2. 方便记忆,看到主机名对其有个初步判断
  3. 如果不设置则会影响本地的域名解析(本地访问)

 

六、chkconfig

作用:相当于“电脑管家”的开机启动项的管理服务

不是所有服务都是自动启动,有的需要添加,还可以查看,修改

 

开机启动服务查询

# chkconfig –list(两个横线)

0-6表示各个启动级别

例如:以httpd为例,其3级别为关闭,表示在3启动形式下默认开机不启动

5对应也是关闭,表示其在桌面模式下也是开机不启动

 

删除服务

# chkconfig –-del(两个横线) 服务名

例如删除httpd服务

 

添加开机启动服务

# chkconfig –-add(两个横线) 服务名                          (必须保证服务可以正常启动)

 

设置服务在某个级别下开机启动(重点)

# chkconfig –level 启动级别 服务名 on/off

在3和5两个级别下启动

 

Httpd服务在5级别下开机不启动

 

七、ntp服务

作用:ntp主要用于对计算机的时间同步管理操作

 

时间对服务器很重要

 

同步服务器时间方式有2个:一次性同步(     手动同步)、通过服务自动同步

 

上游的概念:

 

一次性同步时间(简单)

# ntpdate 时间服务器的域名或ip地址

Ip地址查看可以访问:www.ntp.org.cn/pool.php

 

设置时间同步服务

服务名:ntpd

启动ntpd服务

         # service ntpd start         或者 /etc/init.d/ntpd

 

设置ntpd服务开机启动

 

八、防火墙服务

防火墙:防范一些网络攻击,有软件防火墙和硬件防火墙

 

在centos6.5中防火墙有个名称:iptables           (7.x中默认使用的是firewalld)

 

国家长城防火墙              GFW

 

查看防火墙是否默认开机启动

# ps –ef | grep iptables

# chkconfig –list | grep iptables

 

Iptables服务启动/重启/关闭

# service iptables start/stop/restart

/etc/init.d/iptables start/stop/restart

 

查看iptables的状态(规则)

# service iptables status

 

查看规则的命令

# iptables –L –n

选项:

         -L:表示列出规则

         -n:表示将单词表达形式改成数字形式显示

 

简单设置防火墙的规则

 

允许80端口通过防火墙

# iptables –I INPUT –p tcp –dport 80 –j ACCEPT             #允许访问80端口

Iptables:主命令

-A:add,添加规则(会放到所有规则最后)

-I:insert,插入规则(会放在第一个)

INPUT:进站请求(出站output)

-p:protocol,指定协议(icmp/tcp/udp)

--dport:指定端口号

-j:指定行为结果,accept/reject

 

添加完成之后,需要保存

 

九、rpm管理(重点)

作用:类似电脑管家里的“软件管理”

管理:查询、卸载、安装

 

  1. 查询某个软件的安装情况

# rpm –qa | grep 关键词

选项:

           -q:查询,query

           -a:全部,all

 

  1. 卸载某个软件

# rpm –e 软件的名称

 

火狐卸载没有依赖关系,但Apache卸载存在依赖关系

解决方式:# rpm –e 软件包名 –nodeps(两个横线)

 

  1. 软件安装

需要安装包

获取方式:

  1. 去官网下载
  2. 不介意老版,可以从光盘(镜像文件)中读取

以光盘为例:

查看块状设备的信息:

# lsblk       (list block devices)               查看块状设备的信息

Name:名称

Size:设备大小

Type:类型

Mountpoint:挂载点(类似windows下的盘符)

 

拓展:光盘的挂载和解挂

  1. 解挂操作

命令:umount

语法:# umount 当前设备的挂载点

 

  1. 挂载操作

命令:mount

语法:# mount 设备原始地址 要挂载的原始路径

设备原始路径:/dev/,根据大小确定具体的name值,例如“/dev/sr0”

要挂载的原始路径:挂载目录一般在mnt下

 

安装软件命令:

# rpm –ivh 软件包完整名称

选项:

         -i:install 安装

         -v:显示进度条

         -h:表示以“#”形式显示进度条

 

十、cron/crontab计划任务

作用:24小时值守,自动执行命令

语法:# crontab 选项

常用选项:

         -l:list,列出指定用户的计划任务的列表

         -e:edit,编辑指定用户的计划任务的列表

         -u:user,指定用户名,如果不指定,则表示当前用户

         -r:remove,删除指定用户的计划任务列表

        

  1. 列出

  1. 编辑

计划任务的规则语法格式:

以行为单位,一行为一个计划

分 时 日 月 周 需要执行的命令

例:每天零点零分执行reboot

0 0 * * * reboot

取值范围:

           分:0-59

           时:0-23

           日:1-31

           月:1-12

           周:0-7,0和7表示星期天

 

四个符号:

*:表示取值范围内任意数字

-:做区间表达式,表示1到7,写成1-7

/:表示每多少个,例:每10分钟执行,*/10

,:表示多个取值,在1点3点7点,1,3,4

 

案例:每月1、10、22日的4:45重启network服务

45 4 1,10,22 * * service network restart

 

案例:每周六、周日的1:10重启network服务

10 1 * * 0,6 service network restart

 

案例:每天18:00到23:00之间每隔30分钟重启network服务

*/30 18-23 * * * service network restart

 

案例:每隔两天上午8点到11点的第3和第15分钟执行一次重启

3,15 8-11 */2 * * reboot

 

实际案例:每隔一分钟往root家目录中的RT.txt输入当前时间信息

*/1 * * * * date +”%F % T” >> /root/RT.txt

 

Crontab权限问题:任何用户都可创建计划任务

超级管理员可通过配置设置某些用户不允许设置计划任务

配置文件(黑名单):

         /etc/cron.deny

`        写文件名,一行一个

        

还有一个配置文件(白名单)

         /etc/cron.allow                  (本身不存在,自己创建)

        

注意:

白名单优先级大于黑名单

 

 

 

 

 

 

猜你喜欢

转载自blog.csdn.net/yj19961126/article/details/82555330