安装环境介绍

CentOS 6.9_x86_64

我们选择的是基本安装,也即“Basic Server”。

安装完成后重启来到(runlevel 3)纯文本界面。

例题 批量创建账号:假设有5个账号xueji0{1,2,3,4,5},且这五个账号希望有一个共享目录,因此应该将这五个账号加入同一个用户组,假设这个用户组名为:group-XJ,且这五个账号的密码爵位123456,因此这5个账号可以用以下命令创建。

然后查看一个创建完成的用户

例题 共享目录权限:这五个用户的共享目录位于/home/group-XJ这个目录,这个目录只能这5个用户使用,且每个用户均可在该目录内进行任何操作,而其他用户无权使用(没有权限)该目录,具体操作如下:

测试

例题 Quota操作:假设这五个用户均需要进行磁盘操作,每个用户的配额为2GB(hard)以及1.8GB(soft),具体操作如下:

1.首先启动filesystem的Quota的支持

使用vim编辑/etc/fstab文件

注意:因为是要处理用户的磁盘,所以采用的是/home这个目录来进行限额。另外,CentOS 6.x以后,默认使用UID的磁盘代号而非使用文件名,不过,仍可以使用类似/dev/sda1之类的文件名!

上述操作说明,卸载home目录,重新挂载,然后查看/home所在的filesystem有没有上述的挂载属性!

2.制作Quota配额文件,并启动文件系统的Quota支持(虽然执行过quotacheck -avug之后会报很多错误,但是有绿色框内的提示,证明上述操作有效!)

3.为用户定义Quota配额

执行edquota -u xueji01后编辑标注位置

用户xueji02,xueji03,xueji04,xueji05一样的操作!

执行edquota -p xueji0{1,2,3,4,5}

最后执行repquota -au查看

例题 文件系统扩充(LVM):假设/home不够用了,需要将/home扩充到7GB,具体操作如下:

开始制作PV

因为是虚拟机,所以执行partprobe会报错,需要reboot才行!

将/dev/sda9加入PV,并将该PV加入vg_xueji这个VG

开始扩充/home,先查看下LV容量

使用lvresize来重重LV容量

扩充文件系统

OK,扩充完成!

例题 不同的runlevel下服务管理,在当前的runlevel之下,有哪些服务是默认启动的呢?此外,如果我的系统当前不想启动自动网络挂载(autofs)机制,则如何让该服务在系统启动时不被自动加载启动的呢?

答:默认的runlevel可以使用runlevel这个命令来处理,那我们默认使用运行级别3,因此可以这样做:

上述命令的输出信息中,会有autofs服务是在启动的状态,如果需要关闭它,具体操作如下:

上面提到的知识已经启动的服务,如果想要了解已启动的网络监听服务(网络监听服务在下面会提到),那么该如何做呢?见下面这个例题:

例题 查询已启动的网络监听服务,想要检查当前我这台主机启动的所有网络监听服务有哪些?且关闭不需要的网络监听程序,具体操作如下:

执行netstat -tulnp

假设现在想要关闭某个服务,可以使用/etc/init.d/servername stop来关闭,然后使用chkconfig来设置开机启动行为。但是,有时启动的服务名称可能与实际命令不一样,此时需要使用grep去过滤数据,或者通过tab键去去的相关的服务名。

例题 使用YUM进行系统更新:假设用户的网络畅通,需要进行整个系统的更新,且每天凌晨3:00进行整个系统的更新:

但是不明白的是:为什么这样不能添加计划任务,使用crontab -e却可以

[root@xueji ~]# crontab -e
* * * root /usr/bin/yum -y update
:wq
crontab: installing new crontab
[root@xueji ~]# crontab -l
* * * root /usr/bin/yum -y update

软件安装与查询

例题 查询当前系统中是否安装了Samba这个软件,具体操作:

[root@xueji ~]# rpm -qa | grep -i samba
samba-client-3.6.-.el6.x86_64
samba-winbind-clients-3.6.-.el6.x86_64
samba4-libs-4.2.-.el6.x86_64
samba-winbind-3.6.-.el6.x86_64
samba-common-3.6.-.el6.x86_64
##(其实我也没有看出鸟哥这啥意思!这个命令意义何在?)
[root@xueji ~]# yum search samba #查询YUM源里有没有相关软件
[root@xueji ~]# yum install -y samba #安装samba
#查看samba的配置文件
[root@xueji ~]# rpm -qc samba samba-common
/etc/logrotate.d/samba
/etc/pam.d/samba
/etc/samba/smbusers
/etc/samba/lmhosts
/etc/samba/smb.conf
/etc/sysconfig/samba

samba的详细配置这里就不再说了。

例题 启动samba且设置开机启动

#首先查询samba的启动方式
[root@xueji ~]# rpm -ql samba | grep '/etc'
/etc/logrotate.d/samba
/etc/openldap/schema
/etc/openldap/schema/samba.schema
/etc/pam.d/samba
/etc/rc.d/init.d/nmb
/etc/rc.d/init.d/smb
/etc/samba/smbusers
#启动
[root@xueji ~]# /etc/init.d/smb start
启动 SMB 服务: [确定]
[root@xueji ~]# /etc/init.d/nmb start
启动 NMB 服务: [确定]
[root@xueji ~]# chkconfig smb on
[root@xueji ~]# chkconfig nmb on
[root@xueji ~]# netstat -tlunp | grep '[sn]mbd'
tcp 0.0.0.0: 0.0.0.0:* LISTEN /smbd
tcp 0.0.0.0: 0.0.0.0:* LISTEN /smbd
tcp ::: :::* LISTEN /smbd
tcp ::: :::* LISTEN /smbd
udp 192.168.30.255: 0.0.0.0:* /nmbd
udp 192.168.30.12: 0.0.0.0:* /nmbd
udp 0.0.0.0: 0.0.0.0:* /nmbd
udp 192.168.30.255: 0.0.0.0:* /nmbd
udp 192.168.30.12: 0.0.0.0:* /nmbd
udp 0.0.0.0: 0.0.0.0:* /nmbd

权限与SElinux

例题 单一用户、组的权限设定ACL:假设想要让student可以进入/home/group-XJ目录下,具有读但没有写的权限。同时xueji05在/home/group-XJ内,不具有任何权限。具体操作

[root@xueji ~]# useradd student
[root@xueji ~]# echo "" | passwd --stdin student
更改用户 student 的密码 。
passwd: 所有的身份验证令牌已经成功更新。
[root@xueji ~]# setfacl -m u:student:rx /home/group-XJ/
[root@xueji ~]# setfacl -m u:xueji05:- /home/group-XJ/
[root@xueji ~]# getfacl /home/group-XJ/
getfacl: Removing leading '/' from absolute path names
# file: home/group-XJ/
# owner: root
# group: group-XJ
# flags: -s-
user::rwx
user:xueji05:---
user:student:r-x
group::rwx
mask::rwx
other::---
[root@xueji ~]# ll -d /home/group-XJ/
drwxrws---+ root group-XJ 9月 : /home/group-XJ/

系统安全与备份

例题 系统中比较重要的目录有/etc、home、/root、/var/spool/mail等,现在想要在每周五的凌晨2:50进行备份,且备份数据春到/backup目录下,并使用tar将备份数据打包,具体操作:

[root@xueji ~]# cd /root/bin/
[root@xueji bin]# vim backup.sh
#!/bin/bash
backdir="/etc /home /root /var/spool/mail"
basedir=/backup
[ ! -d "$basedir" ] && mkdir $basedir
backfil=$basedir/backup.tar.gz
tar -zcvf $backfile $backdir
[root@xueji ~]# crontab -e
* * * root /usr/bin/yum -y update
* * root sh /root/bin/backup.sh
:wq
crontab: installing new crontab
[root@xueji bin]# crontab -l
* * * root /usr/bin/yum -y update
* * root sh /root/bin/backup.sh

Linux--NiaoGe-Service-01的更多相关文章

  1. Linux 生产实习01

    Linux 生产实习01 标签(空格分隔): Linux 2018.07.02 相关软件下载地址:Linux Study 0x01. 安装 VMware Workstation VMware Work ...

  2. 在 CentOS7 上将自定义的 jar 包注册为 linux 服务 service

    在 CentOS7 上将自定义的 jar 包注册为 linux 服务 service 1.在 /etc/rc.d/init.d/ 目录下创建一个名字和服务名完全相同的 shell 脚本文件 joyup ...

  3. 将Apache加入到linux系统service

    将Apache加入到linux系统service 将apache加入到linux系统服务,用service命令来控制apache的启动和停止. 本文由乌合之众瞎写http://www.cnblogs. ...

  4. 时隔两年最近再次折腾opensuse 的一些笔记 - opensuse linux java service shell

    时隔两年最近再次折腾opensuse 的一些笔记 - opensuse linux java service shell opensuse 一些常用命令:    service xxx start/s ...

  5. Linux: service network/Network/NetworkManager

    Linux:service network/Network/NetworkManager start 这三种有什么不同? 1.network service的制御网络接口配置信息改动后,网络服务必须从 ...

  6. Linux中service命令和/etc/init.d/的关系

    Linux中service命令和/etc/init.d/的关系   service xxx启动 /etc/init.d/ 目录下的xxx脚本 如一个脚本名为 mysvc保存在/etc/init.d/下 ...

  7. Linux网络服务01——Linux网络基础设置

    Linux网络服务01--Linux网络基础设置 一.查看及测试网络 1.使用ifconfig命令查看网络接口 (1)查看活动的网络接口 ifconfig命令 [root@crushlinux ~]# ...

  8. Linux命令service - 系统服务管理(转)

    用途说明 service命令用于对系统服务进行管理,比如启动(start).停止(stop).重启(restart).查看状态(status)等.相关的命令还包括chkconfig.ntsysv等,c ...

  9. Azure的CentOS上安装LIS (Linux Integration Service)

    Azure上虚拟化技术都是采用的Hyper-v,每台Linux虚拟机都安装了LIS(Linux Integration Service).LIS的功能是为VM提供各种虚拟设备的驱动.所以LIS直接影响 ...

  10. BlackArch Linux 2019.06.01 宣布发布

    导读 BlackArch Linux是一个基于Arch Linux的发行版,专为渗透测试人员和安全研究人员设计,并包含大量渗透测试和安全实用程序,已宣布发布2019.06.01版本. BlackArc ...

随机推荐

  1. mybatis xml文件解析

    1 parameterType 如果参数只有一个,比如一个id,即int类型的id,那么parameterType直接是int. 如果参数有多个,那么就用表中一行对应的类,默认是类的名字和表中列的名字 ...

  2. To verify Hadoop releases using GPG

    To verify Hadoop releases using GPG http://hadoop.apache.org/releases.html To verify Hadoop releases ...

  3. __sizeof__()

    https://bugs.python.org/issue2898 https://bugs.python.org/file10353/footprint.patch Index: Python/sy ...

  4. min-width 和 @media screen

    min-width可以容器设置最小宽度,低于改宽度时,会自动加上滚动条,支持ie7及ie7+: @media only screen and (min-width: /*最小宽度(要加单位px)*/) ...

  5. 一步一步学Silverlight 2系列(15):数据与通信之ASMX

    概述 Silverlight 2 Beta 1版本发布了,无论从Runtime还是Tools都给我们带来了很多的惊喜,如支持框架语言Visual Basic, Visual C#, IronRuby, ...

  6. Android font

    ╔════╦════════════════════════════╦═════════════════════════════╗ ║ ║ FONT FAMILY ║ TTF FILE ║ ╠════ ...

  7. async-await系列翻译(一)

    本篇翻译的英文链接:https://docs.microsoft.com/en-us/dotnet/articles/standard/async-in-depth 使用.NET的基于任务的异步编程模 ...

  8. [Selenium] common functions comparison

    1.Wait for element  in default time or self defined time When the element need some time to be prese ...

  9. 「USACO」「LuoguP2731」 骑马修栅栏 Riding the Fences(欧拉路径

    Description Farmer John每年有很多栅栏要修理.他总是骑着马穿过每一个栅栏并修复它破损的地方. John是一个与其他农民一样懒的人.他讨厌骑马,因此从来不两次经过一个栅栏.你必须编 ...

  10. centos6.5下忘记mysql密码

    1.此方式会使得服务器处于不安全的情况,请尽量保证在安全的环境下进行,因为,此方式,会使得任何人任意地连接MySQL数据库. 2.#vim /etc/my.cnf 在[mysqld]的段中,加上ski ...