Linux 修改主機(jī)名、添加用戶、安裝jdk、安裝mysql、安裝redis

chuizi-shouji.jpg
>>>我的博客<<<

1、修改主機(jī)名

【vi /etc/hostname】編輯上你要起的名字即可。

[root@localhost ~]# hostnamectl --static set-hostname Linuxidc
# 重啟CentOS 7 之后(reboot -f ),
[root@Linuxidc ~]# hostnamectl --static
Linuxidc
[root@Hunk_zhu ~]# hostnamectl --transient
Linuxidc
[root@Hunk_zhu ~]# hostnamectl --pretty
Linuxidc
[root@Hunk_zhu ~]# hostname
hostnamectl --static set-hostname testServer

2、添加用戶

useradd dev

passwd dev

輸入密碼Ecs201703,創(chuàng)建成功。

賦予root權(quán)限:

然后給dev加上同root一樣的如下一行,保存。

root權(quán)限

ubuntu中管理用戶和用戶組

  1. 添加一個(gè)用戶組并指定id為1002

sudo groupadd -g 1002 www

  1. 添加一個(gè)用戶到www組并指定id為1003

sudo useradd wyx -g 1002 -u 1003 -m

  1. 修改用戶的密碼

sudo passwd wyx

  1. 刪除一個(gè)用戶

sudo userdel wyx

  1. 為該用戶添加sudo權(quán)限
sudo usermod -a -G adm wyx

sudo usermod -a -G sudo wyx

  1. 查看所有用戶和用戶組:
cat /etc/passwd

cat /etc/group

3、安裝JDK1.8

  • 在線安裝openjdk
sudo apt-get install openjdk-8-jdk</pre></wiz_code_mirror> 
    如果安裝時(shí)報(bào)錯(cuò),執(zhí)行【 sudo apt-get update 】命令后再執(zhí)行上面的命令。

    在配置classpath即可。

1、源碼包準(zhǔn)備:

首先到官網(wǎng)下載jdk-8u66-linux-x64.tar.gz,

http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

或者使用命令下載

wget https://download.oracle.com/otn-pub/java/jdk/8u201-b09/42970487e3af4f5aa5bca3f542482c60/jdk-8u201-linux-x64.tar.gz

2、解壓源碼包

通過(guò)終端在/usr/local目錄下新建java文件夾,命令行:

sudo mkdir /usr/local/java

然后將下載到壓縮包拷貝到j(luò)ava文件夾中,命令行:

進(jìn)入jdk源碼包所在目錄

cp jdk-8u66-linux-x64.tar.gz /usr/local/java

然后進(jìn)入java目錄,命令行:

cd /usr/local/java

解壓壓縮包,命令行:

sudo tar zxvf jdk-8u66-linux-x64.tar.gz

然后可以把壓縮包刪除,命令行:

sudo rm jdk-8u66-linux-x64.tar.gz

3、設(shè)置jdk環(huán)境變量
這里采用全局設(shè)置方法,就是修改etc/profile,它是是所有用戶的共用的環(huán)境變量

vi /etc/profile

打開(kāi)之后在末尾添加

JAVA_HOME=/usr/local/java/jdk1.8.0_66

JRE_HOME=/usr/local/java/jdk1.8.0_66/jre

CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib

PATH=$JAVA_HOME/bin:$PATH

export PATH JAVA_HOME CLASSPATH

使環(huán)境變量生效

source /etc/profile

看看自己的配置是否都正確

echo $JAVA_HOME echo $CLASSPATH echo $PATH

4、修改默認(rèn)JDK

如果系統(tǒng)已經(jīng)安裝了其他版本的Java

JAVA_HOME=/usr/local/java/jdk1.8.0_66

JRE_HOME=/usr/local/java/jdk1.8.0_66/jre

CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib

PATH=$JAVA_HOME/bin:$PATH

export PATH JAVA_HOME CLASSPATH

5、檢驗(yàn)是否安裝成功

在終端

java -version

看看是否安裝成功,成功則顯示如下

java version "1.8.0_66"
Java(TM) SE Runtime Environment (build 1.8.0_66-b17)
Java HotSpot(TM) 64-Bit Server VM (build 25.65-b01, mixed mode)

4、Ubuntu 16.04 安裝mysql并設(shè)置遠(yuǎn)程訪問(wèn)

sudo apt-get  install mysql-server

Linux新手入門(mén):Unable to locate package錯(cuò)誤解決辦法

最近剛開(kāi)始接觸Linux,在虛擬機(jī)中裝了個(gè)Ubuntu,當(dāng)前的版本是Ubuntu 11.10,裝好后自然少不了安裝一些軟件,在設(shè)置了軟件的源后,就開(kāi)始了 sudo apt-get install,結(jié)果出現(xiàn)了下面的Unable to locate package錯(cuò)誤:

  1. letuknowit@ubuntu:~$ sudo apt-get install mysql-server mysql-client

  2. [sudo] password for letuknowit:

  3. Reading package lists… Done

  4. Building dependency tree

  5. Reading state information… Done

  6. E: Unable to locate package mysql-server

  7. E: Unable to locate package mysql-client

  8. letuknowit@ubuntu:~$

這叫一個(gè)郁悶啊,出師不利,不帶這么嚇唬剛玩Ubuntu的小朋友吧~于是趕緊找資料,又回顧下前面的操作,最后發(fā)現(xiàn)問(wèn)題出在執(zhí)行sudo apt-get install之前更換了軟件源,但是卻忘了update下了,于是執(zhí)行下面的命令:

  1. sudo apt-get update

等上面命令執(zhí)行完后,再執(zhí)行sudo apt-get install就可以了!其實(shí)錯(cuò)誤信息已經(jīng)很明確了,Unable to locate packet就是無(wú)法找到包嘛,那還不趕緊sudo apt-get update下!

說(shuō)明:

一個(gè)朋友在使用ubuntu-server 16.04安裝mysql,設(shè)置遠(yuǎn)程訪問(wèn)的時(shí)候出現(xiàn)了問(wèn)題,請(qǐng)我?guī)兔Α5?,我也沒(méi)有使用過(guò)ubuntu安裝mysql,于是乎搜索了很多技術(shù)文件,比著葫蘆畫(huà)瓢。但是,由于mysql版本的差異,導(dǎo)致在安裝設(shè)置的過(guò)程中出現(xiàn)了一些問(wèn)題:就是不能遠(yuǎn)程訪問(wèn)。

一、安裝mysql

1. 安裝需要使用root賬號(hào),如果不會(huì)設(shè)置root賬號(hào)的請(qǐng)自行g(shù)oogle。安裝mysql過(guò)程中,需要設(shè)置mysql的root賬號(hào)的密碼,不要忽略了。

sudo apt-get install mysql

在centOS上執(zhí)行命令可能碰到找不到mysql-server的情況,想下面這樣:

[azq@localhost ~]$ sudo yum install mysql-server
已加載插件:fastestmirror, langpacks

Loading mirror speeds from cached hostfile
* base: mirrors.163.com
* extras: mirrors.163.com
* updates: centos.ustc.edu.cn


沒(méi)有可用軟件包 mysql-server。

此時(shí)參考解決CentOS7下yum install mysql-server沒(méi)有可用包的問(wèn)
可解決。
  2. 以上3個(gè)軟件包安裝完成后,使用如下命令查詢是否安裝成功:

sudo netstat -tap | grep mysql

查詢結(jié)果如下圖所示,表示安裝成功。

root@xyz:~# netstat -tap | grep mysql
tcp6       0      0 [::]:mysql              [::]:*                  LISTEN      7510/mysqld     
root@xyz:~#

二、設(shè)置mysql遠(yuǎn)程訪問(wèn)

1. 編輯mysql配置文件,把其中bind-address = 127.0.0.1注釋了

vi /etc/mysql/mysql.conf.d/mysqld.cnf

2. 使用root進(jìn)入mysql命令行[mysql -uroot -p],執(zhí)行如下2個(gè)命令,示例中mysql的root賬號(hào)密碼:root

grant all on *.* to root@'%' identified by 'root' with grant option;
flush privileges;
  1. 重啟mysql
/etc/init.d/mysql restart

重啟成功后,在其他計(jì)算機(jī)上,便可以登錄。

備注:如果修改密碼時(shí)提示沒(méi)有password字段的錯(cuò)誤,應(yīng)該用下面的命令:

image.png
update mysql.user set authentication_string=password('root') where user='root' ;

遠(yuǎn)程登錄,有如下錯(cuò)誤提示

image.png

解決辦法:

在服務(wù)器上用【mysql -uroot -p】命令輸入密碼登錄,

然后執(zhí)行下面的兩條命令

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'QDyy201703' WITH GRANT OPTION;    
FLUSH PRIVILEGES;

如下:

image.png
success.png

完美解決mysql服務(wù)問(wèn)題。

授權(quán)解釋:

grant privileges on databasename.tablename to 'username'@'host' IDENTIFIED BY 'PASSWORD';

    1. GRANT命令說(shuō)明:
           priveleges(權(quán)限列表),可以是all priveleges, 表示所有權(quán)限,也可以是select、update等權(quán)限,多個(gè)權(quán)限的名詞,相互之間用逗號(hào)分開(kāi)。
           on用來(lái)指定權(quán)限針對(duì)哪些庫(kù)和表。
           . 中前面的號(hào)用來(lái)指定數(shù)據(jù)庫(kù)名,后面的號(hào)用來(lái)指定表名。
          to 表示將權(quán)限賦予某個(gè)用戶, 如 jack@'localhost' 表示jack用戶,@后面接限制的主機(jī),可以是IP、IP段、域名以及%,%表示任何地方。注意:這里%有的版本不包括本地,以前碰到過(guò)給某個(gè)用戶設(shè)置了%允許任何地方登錄,但是 在本地登錄不了,這個(gè)和版本有關(guān)系,遇到這個(gè)問(wèn)題再加一個(gè)localhost的用戶就可以了。
         identified by指定用戶的登錄密碼,該項(xiàng)可以省略。
         WITH GRANT OPTION 這個(gè)選項(xiàng)表示該用戶可以將自己擁有的權(quán)限授權(quán)給別人。注意:經(jīng)常有人在創(chuàng)建操作用戶的時(shí)候不指定WITH GRANT OPTION選項(xiàng)導(dǎo)致后來(lái)該用戶不能使用GRANT命令創(chuàng)建用戶或者給其它用戶授權(quán)。

              備注:可以使用GRANT重復(fù)給用戶添加權(quán)限,權(quán)限疊加,比如你先給用戶添加一個(gè)select權(quán)限,然后又給用戶添加一個(gè)insert權(quán)限,那么該用戶就同時(shí)擁有了select和insert權(quán)限。
      

* 2.授權(quán)原則說(shuō)明:
    權(quán)限控制主要是出于安全因素,因此需要遵循一下幾個(gè)經(jīng)驗(yàn)原則:
    a、只授予能滿足需要的最小權(quán)限,防止用戶干壞事。比如用戶只是需要查詢,那就只給select權(quán)限就可以了,不要給用戶賦予update、insert或者delete權(quán)限。
   b、創(chuàng)建用戶的時(shí)候限制用戶的登錄主機(jī),一般是限制成指定IP或者內(nèi)網(wǎng)IP段。
   c、初始化數(shù)據(jù)庫(kù)的時(shí)候刪除沒(méi)有密碼的用戶。安裝完數(shù)據(jù)庫(kù)的時(shí)候會(huì)自動(dòng)創(chuàng)建一些用戶,這些用戶默認(rèn)沒(méi)有密碼。
   d、為每個(gè)用戶設(shè)置滿足密碼復(fù)雜度的密碼。
    e、定期清理不需要的用戶?;厥諜?quán)限或者刪除用戶。

本地命令行連接遠(yuǎn)程mysql server

進(jìn)入命令行,連接:

mysql -u 用戶名 -p密碼 -h 服務(wù)器IP地址 -P 服務(wù)器端MySQL端口號(hào) -D 數(shù)據(jù)庫(kù)名

注意:

(1)服務(wù)器端口標(biāo)志-P一定要大些以區(qū)別于用戶-p,如果直接連接數(shù)據(jù)庫(kù)標(biāo)志-D也要大寫(xiě);

(2)如果要直接輸入密碼-p后面不能留有空格如-pmypassword;

(3)命令結(jié)束段沒(méi)有';'分號(hào)。

例子:

mysql -u lzpddd -pmypassword -h 192.168.1.88 -P 3306 -D mydb

5、安裝redis

1、 從http://redis.io/ 下載redis-3.2.4.tar.gz

2、 上傳到linux后移動(dòng)到/opt/redis目錄下

3、 解壓 sudo tar -zxvf redis-3.2.4.tar.gz

4、 進(jìn)入解壓后的文件夾進(jìn)行編譯 make

5、 安裝 make install

6、 測(cè)試一下 make test

         報(bào)錯(cuò)缺少tcl (tcl 是一種解譯語(yǔ)言,也是一套 C 的函式庫(kù))

                   安裝tcl  apt-get install tcl

         報(bào)錯(cuò)Executing test client: NOREPLICAS Not enoughgood slaves to write..

                   修改文件tests/integration/replication-2.tcl,將after 1000改為after 10000以延長(zhǎng)等待時(shí)間。

        報(bào)錯(cuò)[err]: Server is able to generate a stack trace on selected systems in tests/integration/logging.
                  只是某個(gè)測(cè)試沒(méi)有通過(guò),可以忽略。

7、創(chuàng)建Redis配置目錄 /etc/redis
mkdir /etc/redis
8、拷貝配置文件:
cp /opt/redis/redis-3.2.4/redis.conf/ /etc/redis
9、編輯配置文件(暫未編輯)
修改端口、配置數(shù)據(jù)庫(kù)保存目錄、其它
10、(1)通過(guò)指定配置文件啟動(dòng);
redis-server /etc/redis/redis.conf
(2)通過(guò)命令redis-server 啟動(dòng),可在命令后加上&號(hào)使redis以后臺(tái)程序方式運(yùn)行;
redis-server &
11、客戶端登陸 redis-cli
12、關(guān)閉Redis服務(wù) redis-cli shutdown

設(shè)置redis開(kāi)機(jī)啟動(dòng)

修改redis.conf(/etc/redis下)

      #打開(kāi)后臺(tái)運(yùn)行選項(xiàng)
     daemonize yes
     #設(shè)置日志文件路徑
     logfile "/var/log/redis/redis.log"

編寫(xiě)腳本

    vim /etc/init.d/redis

#!/bin/sh
# chkconfig: 2345 10 90
# description: Start and Stop redis
 
PATH=/usr/local/bin
REDISPORT=6379
EXEC=/usr/local/bin/redis-server
REDIS_CLI=/usr/local/bin/redis-cli
PIDFILE=/var/run/redis.pid
CONF="/etc/redis/redis.conf"
 
case "$1" in
    start)
        if [ -f $PIDFILE ]
        then
            echo "$PIDFILE exists, process is already running or crashed."
        else
            echo "Starting Redis server..."
            $EXEC $CONF
        fi
        if [ "$?"="0" ]
        then
            echo "Redis is running..."
        fi
        ;;
    stop)
        if [ ! -f $PIDFILE ]
        then
            echo "$PIDFILE exists, process is not running."
        else
            PID=$(cat $PIDFILE)
            echo "Stopping..."
            $REDIS_CLI -p $REDISPORT SHUTDOWN
            while [ -x $PIDFILE ]
            do
                echo "Waiting for Redis to shutdown..."
                sleep 1
            done
            echo "Redis stopped"
        fi
        ;;
    restart|force-reload)
        ${0} stop
        ${0} start
        ;;
    *)
        echo "Usage: /etc/init.d/redis {start|stop|restart|fore-reload}"
        exit 1
esac

添加腳本的執(zhí)行權(quán)限
sudo chmod +x /etc/init.d/redis
設(shè)置開(kāi)機(jī)自動(dòng)啟動(dòng)
sudo update-rc.d redis defaults
報(bào)錯(cuò):


image.png

上面為兩個(gè)錯(cuò)誤
第一個(gè)參考https://my.oschina.net/u/943306/blog/345923
解決方法:安裝一個(gè)中文語(yǔ)言,系統(tǒng)就知道zh_CN.UTF-8了,這個(gè)時(shí)候用perl就不會(huì)報(bào)錯(cuò)了
apt-get install language-pack-zh-hans
第二個(gè)參考:http://bashell.nodemedia.cn/archives/directspace-debian-6-vps-vzquota-missing.html
解決方法:編輯/etc/init.d/redis
在文件頭部#!/bin/sh下面添加
### BEGIN INIT INFO
# Provides: OSSEC HIDS
# Required-Start: networkremote_fs syslogtime
# Required-Stop:
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: OSSEC HIDS
### END INIT INFO
使用腳本啟動(dòng)服務(wù)
開(kāi)啟redis: service redis start
停止redis: service redis stop
重啟redis: service redis restart
查看服務(wù)狀態(tài):service redis status
最后將機(jī)器關(guān)機(jī),重新啟動(dòng)
此時(shí)redis服務(wù)也啟動(dòng)了。

參考

ubuntu永久修改主機(jī)名
Ubuntu 16.04 安裝mysql并設(shè)置遠(yuǎn)程訪問(wèn)
ubuntu中管理用戶和用戶組
CentOS7 64位下MySQL5.7安裝與配置
Centos 7.4 安裝 Redis 全過(guò)程

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容