CentOS 7 環境初始化

centos修改系統語言爲英語 html


vim /etc/sysconfig/i18n linux

centos7 爲: vim /etc/locale.conf c++

改成:LANG="en_US.UTF-8" git

關閉防火牆: vim

CentOS 7.0默認使用的是firewall做爲防火牆,這裏改成iptables防火牆。
firewall:
systemctl start firewalld.service#啓動firewall
systemctl stop firewalld.service#中止firewall
systemctl disable firewalld.service#禁止firewall開機啓動
追答:
改爲iptables
firewall:
systemctl start iptables.service

設置日期和時間

在CentOS 6版本,時間設置有date、hwclock命令,從CentOS 7開始,使用了一個新的命令timedatectl。

1、基本概念

1.1 GMT、UTC、CST、DST 時間

(1) UTC

整個地球分爲二十四時區,每一個時區都有本身的本地時間。在國際無線電通訊場合,爲了統一塊兒見,使用一個統一的時間,稱爲通用協調時(UTC, Universal Time Coordinated)。 centos

(2) GMT

格林威治標準時間 (Greenwich Mean Time)指位於英國倫敦郊區的皇家格林尼治天文臺的標準時間,由於本初子午線被定義在經過那裏的經線。(UTC與GMT時間基本相同,本文中不作區分) 服務器

(3) CST

中國標準時間 (China Standard Time)  svn

GMT + 8 = UTC + 8 = CST 工具

(4) DST

夏令時(Daylight Saving Time) 指在夏天太陽升起的比較早時,將時鐘撥快一小時,以提前日光的使用。(中國不使用) 字體

1.2 硬件時鐘和系統時鐘

(1) 硬件時鐘

RTC(Real-Time Clock)或CMOS時鐘,通常在主板上靠電池供電,服務器斷電後也會繼續運行。僅保存日期時間數值,沒法保存時區和夏令時設置。

(2) 系統時鐘

通常在服務器啓動時複製RTC時間,以後獨立運行,保存了時間、時區和夏令時設置。

2、timedatectl 命令

2.1 讀取時間

1. timedatectl //等同於 timedatectl status

2.2 設置時間

1. timedatectlset-time"YYYY-MM-DD HH:MM:SS"

2.3 列出全部時區

1. timedatectl list-timezones

2.4 設置時區

1. timedatectlset-timezone Asia/Shanghai

2.5 是否NTP服務器同步

1. timedatectlset-ntpyes//yes或者no

2.6 將硬件時鐘調整爲與本地時鐘一致

1. timedatectlset-local-rtc 1
1. hwclock --systohc --localtime //與上面命令效果一致

注意 硬件時鐘默認使用UTC時間,由於硬件時鐘不能保存時區和夏令時調整,修改後就沒法從硬件時鐘中讀取出準確標準時間,所以不建議修改。修改後系統會出現下面的警告。

2.6 硬件時間設置成 UTC:

1. timedatectlset-local-rtc 1
2. hwclock --systohc --utc  //與上面命令效果一致

安裝過程

  1. 選擇安裝過程當中使用的語言,這裏應使用英語,不要使用漢語。若安裝界面使用漢語,最終安裝的系統中會出現兩個比較麻煩的問題:
    1. 家目錄下的系統文件夾,好比Downloads、Desktop等會以中文表示,這使得在命令行cd變得很麻煩;
    2. 終端中某些字符用英文字體,某些字符用中文字體,效果很是差,須要本身修改終端字體方可;
  2. 選擇區域和城市:Asia和Shanghai
  3. 鍵盤使用English(US)而不是English(UK)
  4. Hostname能夠改也能夠不改,我用saturn.geolab
  5. 安裝的目的地,選擇要使用的硬盤,在「Other Storage Options」處選擇「I will configure partioning」,即手動分區

分區

CentOS 7的分區彷佛比較特別,自認爲經驗很豐富的我在第一次安裝CentOS7時仍是在分區上耽誤了不少時間。後來找到比較合適的分區方法,以下:

  • 點擊「Click here to create them automatically」,即讓安裝程序幫忙分區
  • 默認的分區方案是使用LVM,其好處在於「當機器有多塊硬盤時,在使用的時候看上去只有一塊」
  • 默認的文件系統爲XFS而不是之前經常使用的EXT4;
  • 自動分區完成後,再根據本身的需求,手動修改分區細節
    • /boot:CentOS自動分配,必定不要亂改;
    • /:根目錄,合理使用並及時清理的話15G就夠了,不過建議30G以上;
    • swap:與物理內存大小一致便可
    • /opt:我的習慣是將第三方軟件都安裝在/opt下,因此分了70G
    • /home:餘下的所有空間
  • 點擊「Begin to Install」開始安裝

對系統的若干修改

若干原則

爲了搭建一個穩定的系統,儘可能避免由於各類瞎折騰而致使的系統問題,特訂立了一些軟件安裝的原則。具體參見《CentOS 7下的軟件安裝方法與策略》。

給通常帳號root權限

默認狀況下,通常帳號是沒有root權限的。爲何不直接用root帳號,而是要給通常帳號root權限呢?

  • 平常工做中使用root帳號,是很是糟糕且危險的習慣!不管是服務器仍是我的電腦都是如此。
  • 安裝軟件時須要root權限,只能su切換到root帳戶再安裝。對於習慣使用sudo的人來講,仍是有些麻煩。

假設帳戶名爲seisman,要授予他root權限,則要修改配置文件/etc/sudoers

$ su
# echo 'seisman ALL=(ALL) ALL' >> /etc/sudoers # 向配置文件中加入語句
# tail -1 /etc/sudoers  # 檢查一下是否正確
seisman ALL=(ALL) ALL

其中seisman爲當前用戶名。

添加第三方源

CentOS因爲很追求穩定性,因此官方源中自帶的軟件很少,於是須要一些第三方源,好比EPEL、ATrpms、ELRepo、Nux Dextop、RepoForge等。根據上面提到的軟件安裝原則,爲了儘量保證系統的穩定性,此處大型第三方源只添加EPEL源、Nux Dextop和ELRepo源。

EPEL

EPEL即Extra Packages for Enterprise Linux,爲CentOS提供了額外的10000多個軟件包,並且在不替換系統組件方面下了不少功夫,於是能夠放心使用。

1
sudo yum install epel-release

執行完該命令後,在/etc/yum.repos.d目錄下會多一個epel.repo文件。

2、安裝remi源:
注意:安裝REMI庫不要在啓用了REMI庫時運行yum update。由於REMI庫的包名與RHEL/CentOS默認庫中的相同,運行yum update可能會觸發意外的更新。平時禁用REMI庫,在你須要安裝RMEI庫中獨有的包時再啓用。安裝REMI庫以前,首先須要啓用EPEL庫,由於 REMI中的一些包依賴於EPEL。

安裝步驟:
在CentOS 7上:

# rpm -ivh http://rpms.famillecollet.com/enterprise/remi-release-7.rpm
# rpm --import http://rpms.famillecollet.com/RPM-GPG-KEY-remi

Nux Dextop

Nux Dextop中包含了一些與多媒體相關的軟件包,做者儘可能保證不覆蓋base源。官方說明中說該源與EPEL兼容,實際上個別軟件包存在衝突,但基本不會形成影響:

sudo rpm -Uvh http://li.nux.ro/download/nux/dextop/el7/x86_64/nux-dextop-release-0-5.el7.nux.noarch.rpm

完成該命令後,在/etc/yum/repos.d目錄下會多一個nux-dextop.repo文件。

ELRepo

ELRepo包含了一些硬件相關的驅動程序,好比顯卡、聲卡驅動:

sudo rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
sudo rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-2.el7.elrepo.noarch.rpm

完成該命令後,在/etc/yum.repos.d目錄下會多一個elrepo.repo文件。

安裝yum-axelget

yum-axelget是EPEL提供的一個yum插件。使用該插件後用yum安裝軟件時能夠並行下載,大大提升了軟件的下載速度,減小了下載的等待時間:

sudo yum install yum-axelget

安裝該插件的同時會安裝另外一個軟件axel。axel是一個並行下載工具,在下載http、ftp等簡單協議的文件時很是好用。

第一次全面更新

在進一步操做以前,先把已經安裝的軟件包都升級到最新版:

sudo yum update

要更新的軟件包有些多,可能須要一段時間。不過有了yum-axelget插件,速度已經快了不少啦。

重啓

此處建議重啓。

刪除多餘的kernel

在前面的yum update執行以後,可能會將kernel也一塊兒更新,則在啓動CentOS時啓動項中會有不少項。

確認當前使用的kernel版本號:

$ uname -r
3.10.0-123.9.3.el7.x86_64

查找當前系統安裝的全部kernel:

$ rpm -qa | grep kernel | sort
kernel-3.10.0-123.8.1.el7.x86_64
kernel-3.10.0-123.9.2.el7.x86_64
kernel-3.10.0-123.9.3.el7.x86_64
kernel-devel-3.10.0-123.8.1.el7.x86_64
kernel-devel-3.10.0-123.9.2.el7.x86_64
kernel-devel-3.10.0-123.9.3.el7.x86_64
kernel-headers-3.10.0-123.9.3.el7.x86_64
kernel-tools-3.10.0-123.9.3.el7.x86_64
kernel-tools-libs-3.10.0-123.9.3.el7.x86_64

能夠看出有三個版本的kernel,123.8.一、123.9.2和123.9.3。除了最新的kernel外,建議多保留一箇舊kernel,以避免新kernel出現問題時能夠經過舊kernel進入系統。於是此處刪除123.8.1版本的kernel:

sudo yum remove kernel-3.10.0-123.8.1.el7.x86_64
sudo yum remove kernel-devel-3.10.0-123.8.1.el7.x86_64

基礎開發環境

GCC系列

sudo yum install gcc                     # C編譯器
sudo yum install gcc-c++                 # C++編譯器
sudo yum install gcc-gfortran            # Fortran編譯器
sudo yum install compat-gcc-44           # 兼容gcc 4.4
sudo yum install compat-gcc-44-c++       # 兼容gcc-c++ 4.4
sudo yum install compat-gcc-44-gfortran  # 兼容gcc-fortran 4.4
sudo yum install compat-libf2c-34        # g77 3.4.x兼容庫

軟件開發輔助工具

sudo yum install make
sudo yum install gdb     # 代碼調試器
sudo yum install cmake   # Cmake
sudo yum install git     # 版本控制
sudo yum install git-svn # git的svn插件

驅動程序

顯卡驅動

Linux默認只使用開源的顯卡驅動,就目前的狀況來看,開源驅動的效果仍是不錯的,但跟官方的閉源驅動相比仍是有必定差距。最明顯的區別是,在使用SAC的ppk功能放大波形時,使用開源驅動會出現延遲,而使用官方閉源則整個過程很是順暢。

關於顯卡驅動的安裝,請參考Linux下安裝nvidia顯卡驅動 一文中的「從ELRepo源中安裝驅動」部分。

注意:目前的顯卡驅動彷佛有問題,安裝後終端有時會出現屏幕閃爍、一屏文字上下重複跳動的狀況,稍微有些影響用vim寫代碼。是否要安裝顯卡驅動本身決定。

NTFS驅動

CentOS下默認沒法掛載NTFS格式的硬盤。需安裝nfts-3g便可實現即插即用:

sudo yum install ntfs-3g
相關文章
相關標籤/搜索