1、Httpd服务

检查httpd服务是否开启:service --status -all | grep httpd

/var/www/html 这个目录下可以存放文件,并通过 http://192.168.123.202/访问

2、系统管理

2.1、挂载外部设备

挂载,需要有挂载源和挂载点

  • 挂载光驱:

常用挂载目录/mnt,/media

eg:mount -t iso9660 -o ro /dev/cdrom /mnt/cdrom/

注:-t:文件系统类型,iso9660表示光盘或者光盘镜像

-o:挂载方式,ro表示以只读方式,

loop表示把挂载的设备当做一个磁盘

  • 挂载光盘镜像文件(.iso文件):

需要一个镜像文件,和挂载目录

eg:mount -t iso9660 -o loop /root/CentOS-6.7-x86_64-bin-DVD1.iso /mnt/centos

  • 自动挂载

挂载的资源在重启之后即失效,自动挂载可以设置/etc/fstab配置文件中:

/dev/cdrom /mnt/cdrom iso9660 defaults 0 0

/root/CentOS-6.7-x86_64-bin-DVD1.iso /mnt/centos iso9660 defaults,ro,loop 0 0

 

第一列:/dev/cdrom:挂载源,要挂在的磁盘分区或者存储设备,或者文件系统

第二列:/mnt/cdrom:挂载点,挂载位置

第三列:iso9660:文件系统类型,ext4 文件系统,swap 表示交换分区,……

第四列:defaults:挂载参数

第五列:0:表示 dump 选项,dump 工具通过这个选项位置上的数字来决定文件系统是否需要备份。如果是 0,dump 就会被忽略,事实上大多数的 dump 设置都是 0

第六列:0:读取文件系统时候的检查顺序,允许的数字是 0,1,2,根目录应当获得最高的优先权 1, 其它所有需要被检查的设备设置为 2,0 表示不检查

  • 卸载

umount/mnt/cdrom

 

2.2、统计文件或者文件夹大小

存储空间查看:df -h

统计指定路径下所有子目录和文件的大小:du -sh /mnt/cdrom/packages

 

2.3、系统服务管理

service --status-all 查看系统所有的后台服务进程

service sshd status 查看指定的后台服务进程的状态

service ssh stop 停止

service sshd start 开始

service sshd restart 重启

chkconfig httpd on 让httpd服务开机自启

chkconfig httpd off 让httpd服务开机不要自启

 

2.4、修改系统时间

查看时间:date -R 或 date 或 date '+%Y-%m-%d %H:%M:%S'

查看时区:cat /etc/sysconfig/clock

更改时区:cp /usr/share/zoneinfo/Asia/Shanghai/etc/localtime

修改时间:

手动修改时间:date -s

同步网络时间:

ntpdate time.nist.gov 或者 ntpdate 202.120.2.101

每隔十分钟从202.120.2.101同步一次时间:

命令:crontab -e 输入:*/10 * * * * ntpdate 202.120.2.101

hwclock -w 将时间写入主板!!!!

3、软件安装

  • 二进制发布包(本地)

核心思路(安装JDK为例):

  1. 获取安装包
  2. 把安装包上传到服务器,然后解压缩到对应的安装目录

通过sftp上传到服务器,通过tar -zxvf 名 -C 解压地址

  1. 更改对应的配置文件,然后配置环境变量

配置环境变量(系统变量/etc/profile、用户变量~/.bashrc 或 ~/.bash_profile)

区别: 系统环境变量是所有用户都可以使用, 全局变量

用户环境变量,只能当前用户使用,其他用户不能使用, 局部变量

export JAVA_HOME=/usr/local/java/jdk1.8.0_73

 

export PATH=$PATH:$JAVA_HOME/bin

 

export PATH=$PATH:/usr/local/java/jdk1.8.0_73/bin

 

配置环境变量注意事项:

1、不要为了图方便,而省略 XXX_HOME

2、给PATH变量追加变量值时,注意分隔符是:

3、千万不要把PATH写错了!~!!!!!!

在配置完环境变量之后,一定不要忘记重新加载变量文件:

source /etc/profile

  1. 初始化、启动、验证是否安装成功

 

  • RPM发布包(本地)

安装步骤(MySql为例)

  1. 先卸载之前系统自带的MySql

rpm -qa | grep -i mysql (-i 忽略大小写)

rpm -e mysql-libs-5.1.73-5.el6_6.x86_64 --nodeps (去除依赖直接删)

删除mysql配置文件:

rm -rf /usr/lib/mysql

rm -rf /usr/include/mysql

rm -rf /etc/my.cnf

rm -rf /var/lib/mysql

  1. 安装现在的MySql

解压:tar -zxvf

安装:server:rpm -ivh MySQL-server-5.6.26-1.linux_glibc2.5.x86_64.rpm

安装:client:rpm -ivh MySQL-client-5.6.26-1.linux_glibc2.5.x86_64.rpm

启动mysql服务:service mysql start 初始密码在/root/.mysql_secret这里

修改密码:set PASSWORD=password('root')

增加远程登录权限:mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION;

mysql>FLUSH PRIVILEGES;

mysql安装的注意事项:

1、要首先卸载原来的mysql

2、安装mysql-server 和 mysql-client

3、一定要注意,要把mysql的服务器启动

4、找到root用户的初始密码

5、使用root的初始密码进行首次登陆,然后改掉root用户的密码

6、mysql数据库有可能要远程使用,必须要赋予对应用户的远程连接权限

  • Yum在线安装(联网)

yum -y install nc 安装

yum update 升级系统

yum install ~ 安装指定软件包

yum update ~ 升级指定软件包

yum remove ~ 卸载指定软件

  • 源码编译安装()

 

4、配置本地YUM源

  • 准备一个服务器,默认httpd,在线安装:yum install -y httpd
  • 检查httpd状态:service httpd status
  • 在httpd服务的web目录中放入rpm库:/var/www/html/

eg:将 centos 安装光盘中的 rpm 库放入:

mkdir /var/www/html/centos

cp -r /mnt/cdrom/* /var/www/html/centos/

注:上面这种方式比较浪费空间,可以不用拷贝,其实只要创建一个软连接即可

ln -s /mnt/cdrom /var/www/html/centos

  • 看是否有文件在服务器中:打开网页http://192.168.123.202/。。。
  • 配置Yum客户端repo地址文件,将本地http服务器加入repo地址。

首先将内置的源全部disable掉,cd /etc/yum.repos.d/ rename .repo .repo.bak *

然后,新建一个 repo 源,vi CentOS-Local.repo

[CentOS-Local]

name=CentOS-Local

baseurl=http://192.168.123.202/centos/cdrom0

http://192.168.123.202/centos/cdrom1

gpgcheck=0

enabled=1

gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6

  • 检查自定义源是否生效,使用:yum repolist
  • 安装自己定义的软件库:yum install -y;

5、进程管理

5.1、进程概念

一个系统并发运行多个进程

一个进程并发运行多个线程

一个线程,就是一个单独的子程序

5.2、进程状态

Linux高阶知识

系统的启动流程:

1、系统最开始启动init进程

2、init进程会去寻找所有默认开机启动的程序,然后挨个儿启动

 

5.3、进程管理常用操作

5.3.1、PS命令

ps 命令常用选项包括:

1、a 显示所有用户的进程

2、u 显示用户名和启动时间

3、x 显示所有进程,包括没有控制终端的进程

4、e 显示所有进程,包括没有控制终端的进程,较 x 选项,信息更为简略

5、l 显示进程详细信息,按长格式显示

 

ps -au 显示所有用户进程,并给出用户名和启动时间等详细信息

ps -aux 显示所有用户进程,包括没有控制终端的进程,并给出用户和和启动埋单等详细信息

ps -el 按长格式显示进程详细信息

5.3.2、kill命令

kill pid 直接杀死进程,但不能保证一定能杀死(pid进程号)

kill -9 pid 强制杀死进程

5.3.3、进程切换

ctrl + c 终止进程

ctrl + z 挂起进程

fg 命令将进程转换到前台执行

bg 命令将进程转换到后台执行

jobs 命令查看任务

nohup 命令 & 可以直接让进程启动至后台

5.3.4、top命令

动态显示进程等信息,按q退出查看

5.3.5、pstree命令

pstree:以树状形式显示进程,看清各进程父子关系

-p:显示进程号

5.3.6、JPS命令

JDK提供检查系统是否启动了JVM进程

6、计划任务

6.1、概念

at:通过at命令安排任务在某一时刻执行一次

crontab:周期性的日志分析或数据备份等工作

 

6.2、命令服务管理crontab

安装:yum -y install crontabs

操作: service crond start ## 启动服务

service crond stop ## 关闭服务

service crond restart ## 重启服务

service crond reload ## 重新载入配置

service crond status ## 服务状态

chkconfig --list 查看 crontab 服务是否已设置为开机启动

chkconfig --level 35 crond on 加入开机自动启动

6.3、crontab功能使用

crontab [-u user] file

crontab [-u user] [ -e | -l | -r ]

参数说明:

-u user:用来设定某个用户的 crontab 服务,例如,”-u ixdba”表示设定 ixdba 用的

crontab 服务,此参数一般有 root 用户来运行。

file:file 是命令文件的名字,表示将 file 做为 crontab 的任务列表文件并载入 crontab。

-e:编辑某个用户的 crontab 文件内容。如果不指定用户,则表示编辑当前用户crontab 文件。

-l:显示某个用户的 crontab 文件内容,如果不指定用户,表示显示当前用户crontab 文件内容。

-r:删除定时任务配置,从/var/spool/cron 目录中删除某个用户的 crontab 文件,如果不指定用户,则默认删除当前用户的 crontab 文件。

-i:在删除用户的 crontab 文件时给确认提示。

 

crontab -l [-u user] ## 列出用户目前的 crontab.

crontab -e [-u user] ## 编辑用户目前的 crontab.

补充:通过 crontab 添加的计划任务都会存储在/var/spool/cron/目录里

 

基本格式 :

* * * * * command

分 时 日 月 周 命令

第 1 列表示分钟 1~59 每分钟用*或者 */1 表示

第 2 列表示小时 0~23(0 表示 0 点) 7-9 表示:8 点到 10 点之间

第 3 列表示日期 1~31

第 4 列表示月份 1~12

第 5 列标识号星期 0~6(0 表示星期天)

第 6 列要运行的命令

 

7、克隆虚拟机

安装好了vmware软件之后 : 快照, 克隆

快照: 备份

克隆: 复制出新的虚拟机

具体的操作方式

克隆:

1、先按照文档,按照规定的操作步骤去克隆出一个新的虚拟机

2、启动该克隆出来的虚拟机,更改对应的一些配置信息,克隆出来的虚拟机和原来的虚拟机有三个地方是重复的,并且是必须要更改的:

1)主机名

vi /etc/sysconfig/network

2)网卡---网卡的mac地址重复

eth0

会在一个配置文件中说明,正在使用的网卡是eth0

(1)如果想使用原来的eth0,需要更改mac地址

(2)直接生成一块新的网卡eth1,让系统使用eth1网卡

(3)IP重复

修改IP : 三种方式

但是现在:修改配置文件

3)正常使用

 

8、SSH免密登录配置

1)SSH概念

SSH就是一个网络协议,用于计算机之间的加密登录。

2)SSH认证机制

一种基于口令的安全验证:

只要知道自己账号和口令,就可以登录到远程主机

二种基于**的安全验证:

为自己创建一对**,并把公用的**放在需要访问的服务器上。

Linux高阶知识

3)配置SSH认证机制

以A登录B为例:

在A上进行操作:

首先生成**:

ssh-****** -t rsa 或 ssh-******

将A自己的公钥放置到授权列表文件authorized_keys中

cat id_rsa.pub > authorized_keys

或者

cp id_rsa.pub authorized_keys

将得到的authorized_keys发送给B机器对应的文件夹下

scp -r authorized_keys [email protected]:$PWD

或者

scp -r authorized_keys [email protected]:/root/.ssh/

验证 :

ssh 192.168.123.102

重点理解之处:

A 将公钥发给 B ,不是 B 可以访问 A ,而是 A 可以访问 B ,所以任何一台机器想要能访问其他机器,那么就把自己的公钥 内容发送到别的机器的authorized_keys 中去,记住,是追加,不是覆盖

相关文章:

  • 2021-12-05
  • 2022-02-19
  • 2021-07-14
  • 2022-12-23
  • 2021-11-20
  • 2021-03-30
  • 2021-11-20
  • 2021-11-30
猜你喜欢
  • 2021-04-25
  • 2021-08-04
  • 2021-04-21
  • 2021-12-17
  • 2021-05-02
  • 2021-05-04
  • 2021-11-22
相关资源
相似解决方案