linux(redhat 6.7)从基本命令到jdk,tomcat,redis安装部署集锦

 

很久没写博客,希望以下内容,能够帮助各位同仁!!!

 

常用快捷键:

Ctrl+a:光标回到命令行首。 (a:ahead)

Ctrl+e:光标回到命令行尾。 (e:end)

Ctrl+b:光标向行首移动一个字符。 (b:backwards)

Ctrl+ f:光标向行尾移动一个字符。 (f:forwards)

Ctrl+w: 删除光标处到行首的字符。

Ctrl+k:删除光标处到行尾的字符。

Ctrl+u:删除整个命令行文本字符。

Ctrl+h:向行首删除一个字符。

Ctrl+d:向行尾删除一个字符。

Ctrl+y::粘贴Ctrl+u,Ctrl+k,Ctrl+w删除的文本。

Ctrl+p: 上一个使用的历史命令。 (p:previous)

Ctrl+n: 下一个使用的历史命令。(n:next )

Ctrl+r:快速检索历史命令。(r:retrieve)。

Ctrl+t: 交换光标所在字符和其前的字符。

Ctrl+i:相当于Tab键。

Ctrl+o:相当于Ctrl+m.

 

 

Ctrl+m:相当Enter键。

 

 

查看命令帮助

man [命令名称]

例如:man date

 

查看当前的linux系统所属的命令解释器是什么

echo $SHELL

 

查看当前系统的时间

date "+%Y-%m-%d %H:%M:%S"  日期格式精确到时分秒

date "+%j"   今天是一年的第几天

 

 

查看当前网络状态及配置

ifconfig

 

查看当前系统内核版本信息

uname -a

 

当前系统的内存使用信息

free -m  按单位“兆”统计  -k 按单位“千字节”统计

 

查看系统所有的登录记录

last -2 linux -d -a 查看linux用户的两条登录记录并且将登陆ip转换成主机名显示在最后一列

 

查看当前用户的使用的命令记录

history

或者是打开当前用户家目录的记录文件

cat ~/bash_history

 

工作目录切换

cd - 切换到上一次的工作目录

cd ~ 切换到当前用户的家目录

cd ~user 切换到另一个用户的家目录

pwd  获取当前目录

cd .. 返回到上一层目录

 

 

查看当前文件夹文件

ls -al  查看当前文件夹下所有文件的详细信息

ls -dl 当前文件夹的信息

ls -format pass* 获取所有以pass开头的文件信息

 

查找当前文件夹下的目录的方法

ls -F | grep '/$' 添加条目指示并搜索其中"/"开头的目录,是目录都会以“/”结尾

ls -l|grep "^d" 查询文件详细信息,将以d开头的查询出来,在查看目录详情的时候会在最前面加一个d字母

find . -type d -maxdepth 1 查找当前目录下第一层的所有目录(包括隐藏目录)

 

快速清空文件方法

echo > filename

echo "" >filename

: > filename

 

 

 

 

 

查看文本文件(较短的)

cat -n filename 显示行号

cat -b filename 显示行号,但不包括空行

cat -nA filename 显示行号与不可见的特殊符号

 

用于查看纯文本文档(较长的),具体选项查看命令的帮助文档

more 只能向后翻页不能往前翻页,less才可以用于向前向后翻页

head  从头开始查看

tail 从尾部开始查看

less 可以前后翻页比more更适用

 

 

查看特殊格式的文件

od

 

转换文本文件中的字符集合cat文本查看命令已经|管道命令符

cat filname.txt | tr [a-z] [A-Z] 将文本中的字符全部转换成大写然后输出

 

 

统计指定文本的行数,字节数,字符数

wc -c filename.txt 统计字节数

wc -m filename.txt 统计字符数

wc -l filename.txt 统计文本的行数

 

显示当前系统的所有用户

cut -d: -f1 /etc/passwd

 

创建文本文件

touch test.txt

 

创建文件夹

mkdir directory ---mkdir命令只能创建文件夹

 

删除文件信息

rm -rf filename 递归删除一切文件包括子文件、目录等

rm -rf aa[12] 删除aa后面含1或2的文件

rmdir filename 仅仅删除空目录,即不含有文件的的目录

 

修改文件权限

chmod u+x filename 添加当前文件拥有者可执行权限

chmod g+x filename 添加当前文件所属群组可执行权限

chmod o+x filename 添加出文件拥有者以及文件所属群组以外的其他组及用户可执行权限

chmod u-x filename 删除当前文件拥有者可执行权限

 

修改文件拥有者

chown user1 filename 指定该文件的拥有者为user1

chown user1:group filename 修改该文件的拥有者为user1并将该文件所属组改为group

chown -hR user1 filename 修改该文件(如果是文件夹则包括它的一切子文件夹及文件)的拥有者为user1

 

比较两个文件的不同

diff fileName1 fileName2

 

递归复制文件

cp -r filename1 filename2

 

添加新用户(家目录,uid,指定bash等)

useradd -d /home/user1 -u 123 -s /bin/bash user1

 

修改用户密码并查看用户密码状态

passwd user  修改密码

passwd user -S 查看用户密码状态

 

删除用户并删除用户的家目录、邮件目录

userdel -rf user 

 

修改用户信息

usermod -c i'm first user  修改用户备注信息

usermod -dm /home/first_user user 修改用户家目录之前的目录数据也会迁移过去

 

 

压缩文件

tar -czvf aa.tar.gz documents/aa 

解压文件到某个目录下

tar -xzvf aa.tar.gz -C /directory

 

搜索某文本中某个字符出现了多少次(在同一行中多个表示一次)

grep -n /sbin/nologin /etc/passwd

搜索含有某个字符的文本并将其追加到另一个文本文件中

grep you hello.txt >> test.txt

 

管道命令符“|”:将当前输出作为第二个命令的输入

ls -l format pass*|wc -l

 

重定向(输入输出重定向)命令符(“>>”,“<<”):

输出重定向:

grep -n nologin passwd > /root/Documents/test.txt 将不可登陆的用户信息 输出到test.txt文本中并覆盖

grep -n nologin passwd >> /root/Documents/test.txt 将不可登陆的用户信息 追加到test.txt文本末尾不覆盖

 

输入重定向:

grep -n you < hello.txt >test.txt 将文本hello.txt作为输入,输入到grep命令中,并将grep搜索的结果重定向输出到test.txt文件中

 

 

 

用户的邮件目录地址:

/var/spool/mail/linux(用户名称)

在当前用户下输入mail命令即可查看收到的邮件

查看邮件内容

cat /var/spool/mail/linux(用户名称)

从标准输入管道读入新的密码

echo "hello123"|passwd --stdin user

 

转义符号说明:

\(反斜杠):转义后面的单个字符

''(单引号):转义引号内的所有字符

""(双引号):引号内引用的变量依然有效

``(反引号):执行引号内的命令语句

 

 

设置命令的别名

alias cp=" cp -i"

 

取消命令的别名

unalias cp

 

查看path变量

echo $PATH

 

设置环境变量,各个变量之间用冒号隔开

PATH=$PATH:/bin

 

查看系统中的环境变量

env

添加环境变量

env cur=/home/tomcat/bin

删除环境变量

env -u cur

将变量升级为全局变量

export cur  ---在超级用户下执行

 

which:查找某个命令是在哪个路径下例如 which cp 或者是which java

 

whereis:查找文件的位置 例如

 

 

 

 

vim编辑器

当文档正在编辑未保存,会生产一个".文件名.swap"的隐藏文件,锁定当前文件,保持文件的一致性,可以删除该文件解除锁定,重新编辑该文件

 

命令行模式

dd  删除光标所在行

5dd 删除光标所在行开始的五行

 

yy 复制光标所在行

5yy 复制光标所在行开始的五行

 

p 在光标处粘贴之前删除或者复制的行

 

/string 搜索string字符串,从上至下

?String 搜索string 字符串,从下至上

 

n 显示搜索命令下的下一个字符串

N 显示搜索命令下的上一个字符串

 

u 撤销之前的操作

 

末行模式

:w 保存当前修改

:wq 保存并退出

:wq! 强制保存并退出

:q! 强制退出

:q  退出

:set nu 显示行号

:set nonu 不显示行号

:命令 执行该命令

:整数 跳转到该行

 

修改主机名称

vim /etc/hosts  --通过vi编辑器修改文件hostst

 

配置网卡信息

目录:/etc/sysconfig/network-scripts

对于REHEL6 网卡配置文件的前缀为ifcfg-eth 例如ifcfg-eth0

对于REHEL7 网卡配置文件的前缀ifcfg-eno 例如ifcfg-eno16777736

步骤一:vim ifcfg-eth0 利用vim编辑配置文件中的网卡信息

步骤二:重新启动网卡命令 "systemctl restart network"

步骤三:使用"ping ip地址" 检验网卡配置是否生效

 

 

yum软件仓库配置文件目录

etc/yum.repos.d/

 

列出所有的软件仓库

yum repolist all

 

列出所有软件包

yum list all

 

显示软件包信息

yum info 软件包名称

 

软件包的安装,重装,升级,移除

yum install 软件包名称

yum reinstall 软件包名称

yum update 软件包名称

yum remove 软件包名称

 

 

系统关键目录或文件

1.系统配置 etc/syscofig

1.1网络配置 etc/sysconfig/network-scripts

2.yum软件仓库配置 etc/yum.repos.d

2.1 yum软件仓库配置文件 *.repo

3.用户密码相关信息文件 etc/passwd

4.系统中所有的shell解释器信息文件 etc/shells

5.用户账号与UID信息 etc/passwd

6.用户密码信息 etc/shadow

7.组名称以及GID etc/group

 

 

执行脚本三种方式

1、脚本路径: ./example.sh  通过该种方式执行时 $0的值为文件路径"./example.sh"

2、sh 脚本路径: sh example.sh 通过该种方式执行时 $0的值为文件路径"example.sh"

3、source 脚本路径:source example.sh 通过该种方式执行时 $0的值为文件路径"bin/bash"

注:新建里脚本一般对于当前创建者或文件拥有者没有执行权限,需要为当前用户添加执行权限 chmod u+x example.sh

 

书写脚本注意事项

1、给变量名赋值时,等号("=")左右两边不能有空格

2、使用表达式计算时,计算符号左右两边必须有空格

3、使用条件表达式时中括号与表达式之间必须有空格

 

脚本传入参数相关取值说明

$0 表示当前脚本名称,名称因执行方式而异

$1 $2表示当前传入的第一个和第二个参数值,以此类推

$# 表示当前传入的参数数量

$* 依次列出所有传入参数的值

$? 判断上一条命令是否执行成功 0表示执行成功,非0则表示失败

 

文件判断条件格式:[ -d filename ]  输出结果为0表示成立,其他非0数字皆表示不成立

1、-d  判断是否为目录

2、-f 判断是否为文件

3、-e 判断文件或者目录是否存在

4、-r 判断文件或目录是否可读

5、-w 判断文件或目录是否可写

6、-x 判断文件或目录是否可执行

 

声明变量并将命令语句的结果复制给变量,最外层语句使用反引号表示执行命令语句,里面用单引号表示转义引号内的所有字符

FreeMan=`free -m|grep cache:|awk print '{print $3}'`

输出变量值

echo $FreeMan  

 

整数值比较格式:[ 数字1 操作符 数字2 ]

1、-gt 判断是否大于

2、-lt 判断是否小于

3、-eq 判断是否等于

4、-ne 判断是否不等于

5、-ge 判断是否大于等于

6、-le 判断是否小于等于

 

字符串比较格式:[ 字符串1 操作符 字符串2 ]

1、= 表示字符串内容相等

2、!= 表示字符串内容不相等

3、-z 表示字符串为空 [ -z "" ] 返回数字0 表示该字符串为空

 

条件语句格式:

1、if条件语句:

if 条件1 then

echo "do something"

elif 条件2 then

echo "do another thing"

else

echo "do final thing"

fi

 

 

2、for 循环语句:

for item in `cat user.txt`

do 

 

echo "$item is my name"

 

done

 

 

3、while语句:

while 条件

do

 

echo "do something"

 

done

 

4、case语句

 

 

 

文件类型(权限位第一位代表):

-:表示普通文件

d:表示目录文件

l:表示链接文件

b:表示块文件

c:表示字符设备文件

p:管道文件

 

 

 

 

将用户的输入参数赋值给变量:read -p 提示语句 变量名

read -p "enter you score(0-100):" GRADE

 

表达式计算(加减乘除,按正则取子字符串,详情见"expr")命令格式:expr a1 + a3 取值$(expr a1 + a2) 

有些特殊字符例如* 表示乘 需要用单引号''包含,表示为转义字符

1、加:echo $(expr 100 + 100)

2、乘: echo $(expr 100 '*' 100) 

3、取字符串长度:echo $(expr length "rere")

 

su命令与sudo服务:sudo命令较su命令更有利于系统的安全管理

切换用户

su - 用户名  切换的同时随之切换环境变量

su 用户名 只切换用户不切换环境变量

 

使用sudo服务使普通用户执行超级用户的cat命令

1、使用visudo命令编辑sudo程序的配置文件(etc/sudoers)

2、在配置文件中添加配置 linux ALL=(root) /bin/cat  表示linux用户可在所有主机上以root身份执行cat命令

3、类似于vi编辑器方法保存并退出

4、切换到linux用户,使用sudo -l 查看当前用户(linux)可以执行哪些sudu执行的命令

5、使用cat命令打开root用户才可以查看的文件例如:cat etc/shadow

 

用户以任意身份执行任意命令不需要验证:

linux ALL=NOPASSWORD:ALL

用户以root用户身份执行cat和ls命令

linux ALL=(root) /bin/cat /bin/ls

 

文件访问控制列表

设置指定的用户或组队某个指定的文件的操作权限

例如添加用户linux对应root目录有rwx权限的规则

setfacl -Rm user:linux:rwx /root/

删除规则

setfacl -Rb /root/

查看root文件的ACL规则

getfacl /root/

 

 

redhat输入法安装

1、下载输入法的rpm(fcitx-3.0.0-1.i386.rpm)

2、清除本地输入法 rpm -e miniChinput

3、安装 rpm -ivh fcitx-3.0.0-1.i386.rpm

4、进入目录 cd usr/bin

5、执行命令 ln -sf fcitx chinput

 

redhat9安装插入第二章iso无法挂载问题:选择当前安装系统的虚拟机-》右键-》设置-》编辑cd/dvd的的硬件镜像为第二个iso文件并勾选两个设备状态(已连接,启动时连接)

 

 

问题:

1、重新启动网卡命令 "systemctl restart network" 失效

2、yum仓库配置还未实行

3、定时任务还未实践

 

 

配置redis服务:

cp /usr/local/redis-2.8.9/utils/redis_init_script /etc/rc.d/init.d/redis

将redis_init_script复制到/etc/rc.d/init.d/,同时易名为redis

然后vi /etc/rc.d/init.d/redis

在文档第二行添加

# chkconfig: 2345 80 90

然后注意

EXEC=/usr/local/redis/bin/redis-server 

CLIEXEC=/usr/local/redis/bin/redis-cli

因为我们的安装目录是/usr/local/redis-2.8.9,所以上面两行改为

EXEC=/usr/local/redis-2.8.9/src/redis-server 

CLIEXEC=/usr/local/redis-2.8.9/src/redis-cli

还要注意redis文件的

$EXEC $CONF

这里,在CONF后面增加&

$EXEC $CONF &

“&”,即是将服务转到后面运行的意思,否则启动服务时,Redis服务将占据在前台,占用了主用户界面,造成其它的命令执行不了。

 

4.可以看到在/etc/init.d/redis文件中,有这么一行:

CONF="/etc/redis/${REDISPORT}.conf"

于是将redis配置文件拷贝到/etc/redis/下

mkdir /etc/redis  

cp /usr/local/redis-2.8.9/redis.conf /etc/redis/6379.conf

 

5.在6379.conf中配置访问密码

找到#requirepass 一行改写成requirepass 新密码(例如123)

 

6.默认情况下redis只允许本机访问,注释掉bind 127.0.0.1即表示对所有ip皆可访问

 

5.完成上面的操作之后,即可注册服务:

chkconfig --add redis

设置开机自启动

chkconfig redis on

然后启动redis服务

service redis start

redis就可以服务方式运行。

 

 

 

配置完成redis之后要从外部能够访问需要关闭防火墙以及配置客户端密码或者绑定可访问的用户ip

关闭防火墙:

1.chkconfig /etc/init.d/iptables stop 然后重启linux

2.打开linux中的redis客户端设置密码

   开启服务端:redis安装目录/src/redis-cli

    设置服务端密码:config set requirepass 123

 

redis地址已经在使用解决办法:

找到redis进程:ps -aux | grep redis  获取到进程id假设为3038

杀死进程:kill -9 3038

 

配置,安装与卸载jdk

安装jdk:

1.下载jdk wget http://download.oracle.com/otn-pub/java/jdk/8u121-b13/e9e7ea248e2c4826b92b3f075a80e441/jdk-8u121-linux-x64.rpm

2.安装 rpm -ivh jdk-8u121-linux-x64.rpm

3.默认安装在/usr/java/路径下

 

配置jdk环境变量

1.vi /etc/profile

2.加入以下3行

   export JAVA_HOME=/usr/java/jdk-8u121

   export CLASSPATH-.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

   export PATH=$JAVA_HOME/bin:$PATH

3.执行命令 java -version 进行验证是否正确安装

 

卸载jdk:

1.进入到目录  cd /usr/bin

2.为java 和javac两个执行程序在另外一个目录建立同步链接

   ln -s -f /usr/java/jdk-8u121/bin/javac

   ln -s -f /usr/java/jdk-8u121/jre/bin/java

3.查看jdk-8u121包名:rpm -qa | grep jdk 获取包名jdk-8u121-fcs.i586

4.执行卸载命令 rpm -e jdk-8u121-fcs.i586(刚获取的包名)

 

 

tomcat的安装与配置(前提是jdk正确安装并配置):

1.下载tomcat到/usr目录下 wget http://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-8/v8.5.11/bin/apache-tomcat-8.5.11.tar.gz

2.解压 tar -xvf apache-tomcat-8.5.11

3.启动tomcat服务

    方式一:tomcat目录/bin/startup.sh

    方式二:修改目录名,在新目录启动服务 mv apache-tomcat-8.5.11 tomcat  启动服务:tomcat/bin/startup.sh

    方式三:使用ln同步链接 ln -s /usr/apache-tomcat-8.5.11/ /usr/tomcat 启动服务:tomcat/bin/startup.sh

 

将tomcat添加为linux服务随开机自启动

1.将tomcat安装目录/bin/Catalina.sh 拷贝到目录/etc/init.d/下并设置名称为tomcat8(改名字即为服务名) 执行命令:cp tomcat安装目录/bin/Catalina.sh /etc/init.d/tomcat8

2.编辑刚刚脚本tomcat8,添加相关配置

   添加内容一:在脚本第三行后面插入(服务运行级,启动优先级,停止优先级,必须加上#)#chkconfig: 2345 10 90  (服务描述必须加上#)#description:Tomcat service   

   添加内容二:在脚本中设置jdk目录以及tomcat目录 JAVA_HOME=/usr/java/jdk1.8.0_111  CATALINA_HOME=/usr/apache-tomcat-8.5.9

3.添加tomcat8脚本含有可执行权限  chmod 755 /etc/init.d/tomcat8

4.执行添加服务命令:chkconfig --add tomcat8

5.设置服务为开机自启动:chkconfig tomcat8 on

6.查看自定服务 chkconfig --list  

7.启动服务严重结果: service tomcat8 start

 

redhat无法连接网络解决办法:

解决方法一:关闭虚拟机->选择虚拟机“编辑”->虚拟网络编辑器->选择vmnet8->点击恢复初始化网络配置->启动虚拟机即可联网

 

解决方法二:切换到管理员身份 su - root      执行命令 /etc/init.d/networking restart

 

本文持续更新中,对于此文的不足与错误之处欢迎大家指正,如有问题,请留言!

展开阅读全文

没有更多推荐了,返回首页