Linux自有服务
2021/8/4 7:07:05
本文主要是介绍Linux自有服务,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
Linux自有服务
自有服务,即不需要用户独立去安装的软件的服务,而是当系统安装好之后就可以直接使用的服务
一、运行模式
运行模式也称为运行级别
在Linux中存在一个进程:init(initiialize,初始化),进程id是1
查看进程:ps -ef|grep init
[root@xiaxiangming ~]# ps -ef|grep init
root 719 1 0 Jul31 ? 00:00:00 /usr/sbin/alsactl -s -n 19 -c -E ALSA_CONFIG_PATH=/etc/alsa/alsactl.conf --initfile=/lib/alsa/init/00main rdaemon
root 2826 1 0 Jul31 ? 00:00:00 kdeinit4: kdeinit4 Runnin e
root 2828 2826 0 Jul31 ? 00:00:00 kdeinit4: klauncher [kdei e
root 2830 1 0 Jul31 ? 00:00:00 kdeinit4: kded4 [kdeinit]
root 31417 2743 0 09:47 pts/0 00:00:00 grep --color=auto init
该进程存在一个对应的配置文件:inittab(系统运行级别配置文件,位置/etc/inittab)
centos 7文件主要内容:
``[root@xiaxiangming ~]# cat /etc/inittab
inittab is no longer used when using systemd.
ADDING CONFIGURATION HERE WILL HAVE NO EFFECT ON YOUR SYSTEM.
Ctrl-Alt-Delete is handled by /usr/lib/systemd/system/ctrl-alt-del.target
systemd uses 'targets' instead of runlevels. By default, there are two main targets:
multi-user.target: analogous to runlevel 3
graphical.target: analogous to runlevel 5
To view current default target, run:
systemctl get-default
To set a default target, run:
systemctl set-default TARGET.target
``
multi-user.target : 运行级别3(命令行)
graphical.target : 运行级别5(图形界面)
查看当前运行级别:
systemctl get-default
设置开机进入命令行:
systemctl set-default multi-user.target
设置开机进入图形界面:
systemctl set-default graphical.target
根据上述的描述,可以得知,Centos6中存在7种运行模式。
0-表示关机级别(不要将默认的运行级别设置成0)
1-单用户模式
2-多用户模式,不带NFS(Network File System)
3-多用户模式,完全的多用户模式
4-没有被使用的模式(被保留模式)
5-x11,完整的图形化界面模式
6-表示重启级别(不要将默认的运行级别设置成这个值)
与该级别相关的命令:
init 0 表示关机
init 3 表示切换到不带桌面的模式
init 5 表示切换到图形界面
init 6 重启电脑
注意:init指令需要超级管理员的权限
这些命令其实都是调用的init进程,将数字(运行级别)传递给进程,进程去度配置文件执行对应的操作。
①切换到纯命令行模式下(临时切换模式,重启后恢复)
init 3
切换之后需要输入用户名和密码,在输入密码的时候没有"*"提示输入,只要自己确认输入的密码没有错误即可回车
②回到桌面模式
init 5
③设置模式永久为命令行模式(centos 6)
将/etc/inittab文件中的initdefault值设置成3,然后在重启。
④设置模式永久为命令行模式(centos 7)
将/etc/inittab文件中的systemctl set-default值设置成multi-user.target
二、用户与用户组管理(重点)
Linux系统是一个多用户多任务的操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后以这个账号的身份进入系统。
用户的账号一方面可以帮助系统管理员对使用系统的用户进行跟踪,并控制他们对系统资源的访问,另一方面也可以帮助用户组织文件,并为用户提供安全性保护。
每个账号都拥有一个唯一的用户名和各自的密码。
用户在登录时键入正确的用户名和密码后,就能够进入系统和自己的主目录。
想要实现用户账号的管理,要完成的工作主要有以下几个方面:
①用户账号的添加、删除、修改以及用户密码的管理。
用户组的管理。
注意三个文件:
/etc/passwd //存储用户的关键信息
/etc/group //存储用户组的关键信息
/etc/shadow //存储用户的密码信息
1、用户管理
①添加用户
常用语法:#useradd 选项 用户名
常用选项:
-g:表示指定用户的用户组,选项的值可以是用户组的id或者用户组名
-G:表示指定用户的用户附加组,选项的值可以是用户组的id或者用户组名(用于用户处于多个用户组时)
-u:uid,用户的id(用户的标识符)系统默认会在500以后分配uid,如果不想使用可以使用此选项进行指定uid
案例:创建用户
useradd xia
验证是否成功:
a.在/etc/passwd的最后一行是否有xia的信息
b.验证是否存在家目录(在centos下创建好用户后会自动创建他的家目录)
扩展:认识passwd文件
nfsnobody:×:65534:65534:Anonymous NFS User:/var/1ib/nfs:/s/nologin gnome-initial-setup:x:989:983::/run/gnome-initial-setup/:/s/nologin sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/snologin avahi:x:70:70:Avahi mDNS/DNS-SD Stack:/var/run/avahi-daemon:/s /nologin postf ix:x:89:89::/var/spool/postf ix:/s/nologin ntp:x:38:38::/etc/ntp:/s/nologin tcpdump:×:72:72::/:/snologin xia:×:1880:1808::/home/xia:/l/bash apache:×:48:48:Apache:/usr/share/httpd:/s/nologin
用户名:密码:用户id:用户组id:注释:家目录:解释器shell
用户名:创建新用户名称,后期登录的时候需要输入;
密码:此密码位置一般都是X,表示密码的占位
用户id:用户的标识符
用户组id:该用户所属的主组id;
注释:解释该用户是做什么用的;
家目录:用户登录系统之后默认的位置
解释器shell:等待用户进入系统之后,用户输入指令之后,该解释器会收集用户输入的指令,传递给内核处理;
注意:在不添加选项的时候,执行useradd之后会执行一系列的操作
a.创建同名的家目录
b.创建同名的用户组
案例:创建用户lisi,主组为501,附加组为500,用户id为666
useradd -g 501 -G 500 -u 666 lisi
②修改用户
常用语法:#usermod 选项 用户名
usermod:user modify,修改用户
常用选项:
-g:表示指定用户的用户主组,选项的值可以是用户组的id,也可以是组名。
-G:表示指定用户的用户附加组,选项的值可以是用户组的id,也可以是组名
-u:uid,用户的id(用户的标识符),系统默认会从500之后按顺序分配uid,如果不想使用系统分配的,可以通过此选项自定义(类似于QQ的自选靓号情况)
-l:修改用户名
案例:修改zhangsan用户主组为500,附加组改为501
usermod -g 500 -G 501 zhangsan
案例:修改zhangsan用户名为lisi
usermod -l lisi zhangsan
③设置密码
Linux不允许没有密码的用户登录到系统
常用语法:#passwd 用户名
案例:设置用户lisi的密码
[root@xiaxiangming ~]# passwd lisi Changing password for user lisi. New password: //输入的密码隐藏了,确保输入正确时回车即可 BAD PASSWORD: The password is shorter than 8 characters Retype new password: passwd: all authentication tokens updated successfully. `` 在设置用户密码之后就可以登录系统了 切换用户命令:#su[用户名] (switch user) 如果用户名不指定表示切换到root用户 `` [root@xiaxiangming ~]# su xia [xia@xiaxiangming root]$ su Password: [root@xiaxiangming ~]# `` 切换用户需要注意的事项: a.从root往普通用户切换不需要密码,但是反之则需要root密码; b.切换用户之后前后的工作路径是不变的; c.普通用户没有办法访问root用户家目录,但是反之则可以; ④删除用户 常用语法:#userdel 选项 用户名 userdel:user delete(删除用户) 常用选项: -r:表示删除用户的同时删除其家目录 -f:表示强制删除(已经登录的用户也可删除) 案例:删除xia后重新创建 `` [root@xiaxiangming ~]# userdel -rf xia [root@xiaxiangming ~]# useradd xia [root@xiaxiangming ~]# passwd xia `` 注意:已经登录的用户删除的时候会提示删除失败,但是没有登录的用户可以正常删除。 解决方法:简单粗暴,kill对应用户的全部进程 2、用户组管理 每个用户都有一个用户组,系统可以对一个用户组中的所有用户进行集中管理。不同Linux系统对用户组的规定有所不同,如Linux下的用户属于与它同名的用户组,这个用户组在创建用户时同时创建。 用户组的管理涉及用户组的添加、删除和修改。组的增加、删除和修改实际上就是对/etc/group文件的更新。 stapdev:x:158: tcpdump:x:72: xia:x:1000: screen:x:84: apache:x:48: 文件结构: 用户组名:密码:用户组id:组内用户名 密码:X表示占位符,虽然用户组可以设置密码,但是大部分情况下不设置密码; 组内用户名:表示附加组是该组的用户名称 ①用户组添加 语法:#groupadd 选项 用户组名 常用选项: -g:表示类似用户添加里的"-u",-g表示选择自己设置一个自定义的用户组id数字,如果自己不指定默认从500之后递增; 案例:使用groupadd指令创建一个新的用户组administrators [root@xiaxiangming ~]# groupadd administrators [root@xiaxiangming ~]# tail -1 /etc/group administrators:x:1001: ②用户组编辑 常用语法:#groupmod 选项 用户组名 常用选项: -g:类似于用户添加里的"-u",-g表示选择自己设置一个自定义的用户组id数字,如果自己不指定默认从500之后递增; -n:类似于用户修改里的"-l",表示设置新的用户组的名称 案例:修改administrators用户组,将用户组的id从1001改为1002,将名称改为admin [root@xiaxiangming ~]# groupmod -g 1002 -n admin administrators [root@xiaxiangming ~]# tail -1 /etc/group admin:x:1002: ③用户组删除 常用语法:#groupdel 用户组名 案例:删除admin用户组 [root@xiaxiangming ~]# groupdel admin [root@xiaxiangming ~]# tail -1 /etc/group apache:x:48: 注意:当如果需要删除一个组,但是这个组是某个用户的主组时,则不允许删除;如果确实需要删除,则先从组中移除所有用户 ####三、网络设置 首先知道网卡配置文件位置:/etc/sysconfig/network-scripts 在目录中网卡的配置文件命名格式:ifcfg-网卡名称 `` [root@xiaxiangming ~]# cat /etc/sysconfig/network-scripts/ifcfg-ens160 TYPE="Ethernet" // PROXY_METHOD="none" BROWSER_ONLY="no" BOOTPROTO="dhcp" //IP地址分配方式,DHCP表示动态主机分配方式 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="ens160" UUID="10a14ffe-a64c-4061-8d38-3f6ce1efe346" DEVICE="ens160" ONBOOT="yes" //是否开机启动 `` 如果需要重启网卡怎么去操作呢 #service network restart 在有的版本中额可能没有service命令来快速操作服务,但是有一个共性的目录:/etc/init.d 这个目录中放着很多服务的快捷方式。 此处的重启网卡命令还可以使用: #/etc/init.d/network restart 扩展:如果修改网卡的配置文件,但是配置文件的目录层次很深,此时可以在浅的目录中创建一个快捷方式(软连接)方便以后去查找 #ln -s 原始文件的路径 快捷方式的路径 [root@xiaxiangming ~]# ln -s /etc/sysconfig/network-scripts/ifcfg-ens160 /etc/init.d [root@xiaxiangming ~]# ls /etc/init.d functions ifcfg-ens160 netconsole network README 通过ls -l命令查看 `` [root@xiaxiangming init.d]# ls -l total 40 -rw-r--r--. 1 root root 18281 Aug 19 2019 functions lrwxrwxrwx 1 root root 43 Aug 2 22:15 ifcfg-ens160 -> /etc/sysconfig/network-scripts/ifcfg-ens160 //表示创建的快捷方式的原始路径 -rwxr-xr-x. 1 root root 4569 Aug 19 2019 netconsole -rwxr-xr-x. 1 root root 7928 Aug 19 2019 network -rw-r--r--. 1 root root 1160 Apr 1 2020 README `` 其中,文件类型位置的"l"表示其类型为link(连接类型),后面的"->"指向的是原始文件路径。 扩展2:如何重启单个网卡 停止某个网卡:#ifdown 网卡名称 开启某个网卡:#ifup 网卡名 例如:需要停止-启动(重启)网卡eth0 #ifdown eth0 #ifup eth0 提示:在实际工作的时候不要随意禁网卡。 四、ssh服务(重点) ssh(secure shell,安全外壳协议),该协议有两个常用的作用:远程连接协议、远程文件传输协议。 协议使用端口号:默认是22 可以是被修改的,如果需要修改,则需要修改ssh服务的配置文件: `` #/etc/ssh/ssh_config # IdentityFile ~/.ssh/id_ed25519 # Port 22 //端口号22 # Protocol 2 # Cipher 3des `` 端口号可以修改但是要注意2个事项 a.注意范围,端口范围是从0-65535; b.不能使用别的服务已经占用的端口; centos6 ssh服务启动、停止、重启 #service sshd start/stop/restart #/etc/init.d/sshd start/stop/restart 1、远程终端 终端工具主要是帮助运维人员连接远程的服务器,常见终端工具有:Xshell、Putty、secureCRT等。 2、ssh服务文件传输 ①通过可视化工具传输文件 ②通过命令行传输文件 工具:pscp.exe(必须通过cmd命令行打开)为了使用方便可以将其放到环境变量中,如果不清楚哪些路径是环境变量路径,只需要将其放到C:/windows目录下即可。 用法: a.pscp 选项 用户名@Linux主机地址:资源路径 Windows本地的地址(下载到win) b.pscp 选项 资源路径 用户名@Linux主机地址:远程路径(上传到Linux) c.pscp 选项 -ls 用户名@Linux主机地址(列出远程路径下目录结构) ①下载到本地win 要求将远程Linux服务器下的/etc整个目录下载到本地E:\tmp下 在win端 #pscp -r root@192.168.170.128:/etc E:\tmp ②上传文件到Linux 将E:\coursedocs的所有内容传输到Linux下root用户的家目录 #pscp -r "E:\coursedocs" root@192.168.170.128:\root
这篇关于Linux自有服务的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-12如何创建可引导的 ESXi USB 安装介质 (macOS, Linux, Windows)
- 2024-11-08linux的 vi编辑器中搜索关键字有哪些常用的命令和技巧?-icode9专业技术文章分享
- 2024-11-08在 Linux 的 vi 或 vim 编辑器中什么命令可以直接跳到文件的结尾?-icode9专业技术文章分享
- 2024-10-22原生鸿蒙操作系统HarmonyOS NEXT(HarmonyOS 5)正式发布
- 2024-10-18操作系统入门教程:新手必看的基本操作指南
- 2024-10-18初学者必看:操作系统入门全攻略
- 2024-10-17操作系统入门教程:轻松掌握操作系统基础知识
- 2024-09-11Linux部署Scrapy学习:入门级指南
- 2024-09-11Linux部署Scrapy:入门级指南
- 2024-08-21【Linux】分区向左扩容的方法