將centos7打造成桌面系統

?前言

以下所有操作默認在root權限下執行,桌面環境是kde,使用gnome的也可以參考一下。
我收集的以下要用到的一些安裝包,360網盤http://yunpan.cn/csMhBAp92vTgN?提取碼 92e2
以下要用的安裝軟件語法:
通過軟件源在線安裝:
sudo yum -y install 軟件名
其中參數-y為所有選項均選則yes,不加-y則要手動確認
通過本地rpm包安裝:
sudo rpm -ivh 軟件名
其中參數-i為安裝,-vh為列出安裝過程


一、安裝centos7后配置
1、將安裝光盤構建為本地yun源
1.安裝createrepo
yum install createrepo

2.復制光盤鏡像文件到/usr/local/src
cp CentOS-7.0-1406-DVD.iso /usr/local/src

3.將安裝光盤文件掛載
mkdir /media/CentOS7-LocalSource
mount -t iso9660 -o loop /usr/local/src/CentOS-7.0-1406-DVD.iso/media/CentOS7-LocalSource

4.設置開機自動掛載光盤鏡像
vi /etc/fstab

在最后添加一行(注意:fstab寫錯了會進入emergency mode,無法正常加載系統)
/usr/local/src/CentOS-7.0-1406-DVD.iso /media/CentOS7-LocalSourceiso9660 defaults,ro,loop 0 0

5.重寫repodata(未修改光盤鏡像不需要此操作)
cd /media
createrepo CentOS7-LocalServer

6.配置源
vi /etc/yum.repos.d/CentOS7-LocalServer.repo

[CentOS7-LocalServer]
name=LocalServer
baseurl=ftp://192.168.1.119/CentOS7-LocalServer
enable=1
gpgcheck=0

1.復制光盤鏡像文件到/usr/local/src cp CentOS-7.0-1406-DVD.iso /usr/local/src
2.將安裝光盤文件掛載 mkdir /media/CentOS7-LocalSource
3.設置開機自動掛載光盤鏡像 vi /etc/fstab /usr/local/src/CentOS-7.0-1406-DVD.iso/media/CentOS7-LocalSource iso9660 defaults,ro,loop 0 0
4.配置源 vi /etc/yum.repos.d/CentOS7-LocalSource.repo [CentOS7-LocalSource] name= CentOS7-LocalSource baseurl=file:///media/CentOS7-LocalSource enable=1 gpgcheck=0
5.重新建立yum緩存 yum clean all yum makecache 6.本地yum源搭建完成 reboot

另一種方法:配置本地yum 源不需要這么麻煩的, 直接mount 到 /mnt 下就好了, baseurl弄成file 就好了, 沒必要弄成ftp 的

7.重新建立yum緩存
yum clean all
yum makecache

8.本地yum源搭建完成


2、配置kde桌面語言中文顯示
我裝的是kde桌面,剛裝好時桌面是英文顯示的,所以現在來配置一下
yum listkde*chinese
yum install kde-l10n-Chinese.noarch

二、添加第三方軟件源1、添加rpmforge源
該源聽說很強大,不過我看了下目前centos7的軟件包并不多,關于5和6的包倒是很多
下載地址:http://apt.sw.be/redhat/el7/en/x86_64/rpmforge/RPMS/rpmforge-release-0.5.3-1.el7.rf.x86_64.rpm
安裝:
cd ~/下載
rpm –ivh rpmforge-release-0.5.3-1.el7.rf.x86_64.rpm
2、添加elrepo源
該源包含NVIDIA顯卡驅動
下載地址:
http://elrepo.reloumirrors.net/elrepo/el7/x86_64/RPMS/elrepo-release-7.0-1.el7.elrepo.noarch.rpm
安裝:
cd ~/下載
rpm –ivh elrepo-release-7.0-1.el7.elrepo.noarch.rpm
3、添加epel源
該源包含很多fedora移植過來的軟件

下載地址:http://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-2.noarch.rpm
安裝:
cd ~/下載
rpm -ivh epel-release-7-2.noarch.rpm
4、添加mosquito源
該源包含的軟件有(配合nux-dextop源使用)
pidgin-lwqq - 使用 WebQQ 協議編寫的 pidgin-QQ 插件
pidgin-openfetion - 使用 fetion v4 協議編寫的 pidgin 飛信插件
pidgin-sendscreenshot - pidgin 截圖插件
wiznote - 為知筆記
sogou-pinyin - 搜狗拼音輸入法,基于 fcitx 框架開發
sogou-pinyin-skins - 搜狗拼音輸入法皮膚
fcitx-googlepinyin - 基于 fcitx 框架的谷歌拼音輸入模塊
fcitx-rime - 中州韻輸入法
fcitx-libpinyin - 基于 fcitx 框架的 libpinyin 輸入法
fcitx-sunpinyin - 基于 fcitx 框架的 sunpinyin 輸入法
fcitx-configtool, kcm-fcitx - GTK 和 KDE 下的 fcitx 配置工具
openyoudao - 一個 python 編寫的有道詞典 linux 客戶端
deepin-music-player - 深度音樂播放器
dmusic-plugin-baidumusic - 深度音樂播放器的百度音樂插件
osdlyrics - 支持多款音樂播放器的桌面歌詞軟件
pointdownload - 一款方便高效的下載軟件
mvgather - 一款支持影視點播的視頻客戶端,內容來自 yunfan.com
deepin-screenshot - 深度截圖
deepin-translator - 深度翻譯
xware-desktop - 迅雷桌面版
bcloud - 百度云的 linux 客戶端
screenfetch - 獲取系統/主題信息的命令行工具
musicbox - 網易云音樂的命令行客戶端
moonplayer -?視頻播放器,支持搜索播放 youku, tudou, iqiyi, sohu, 56, funshion 的網絡視頻
gouyong - 夠用翻譯,支持取詞
doubanfm-qt - 基于 Qt5 開發的 DoubanFM 客戶端
douban.fm - 基于 NodeJS 開發的 DoubanFM CLI 客戶端?

1)方法一:直接安裝
終端輸入,回車即可
yum-config-manager --add-repo=https://copr.fedoraproject.org/coprs/mosquito/myrepo/repo/epel-$(rpm-E %?rhel)/mosquito-myrepo-epel-$(rpm -E %?rhel).repo
2)方法二:手動編寫repo文件
若方法一不可用,用vi新建一個/etc/yum.repos.d/mosquito-myrepo.repo文件
vi /etc/yum.repos.d/mosquito-myrepo.repo 往里面寫入一下語句 [mosquito-myrepo]
name=Copr repo for myrepo owned by mosquito
baseurl=http://copr-be.cloud.fedoraproject.org/results/mosquito/myrepo/epel-7-$basearch/
skip_if_unavailable=True
gpgcheck=0
enabled=1
按:wq保存退出5. 添加nux-dextop源1)方法一:直接安裝
終端輸入,回車即可
yumlocalinstall?http://li.nux.ro/download/nux/dextop/el$(rpm -E %rhel)/x86_64/nux-dextop-release-0-2.el$(rpm-E %rhel).nux.noarch.rpm
2)方法二:
下載:
http://li.nux.ro/download/nux/dextop/el7/x86_64/nux-dextop-release-0-1.el7.nux.noarch.rpm
安裝:
cd ~/下載
rpm –ivh nux-dextop-release-0-1.el7.nux.noarch.rpm
6.運行以下命令生成以上第三方源的yum緩存
sudo yum cleanall
sduo yummakecache
7、安裝fastestmirror
一個自動選擇最快的yum源的插件
安裝方法:
1)搜索fastestmirror包的全名
sudo yum searchfastestmirror
2)假設搜索的結果是“yum-fastestmirror-noarch”,那么輸入命令
sudo yum installyum-fastestmirror-noarch
8、如果不想這么麻煩自己安裝第三方源,可以將我在百度網盤里提供的repo和gpg直接復制到本機centos7上就可以了
導入repo
cdrepo目錄
cp*.repo /etc/yum.repos.d
導入repo的密鑰gpg
cdgpg目錄
cp* /etc/pki/rpm-gpg

三、安裝一些日常應用軟件1、安裝chrome瀏覽器
Firefox是各centos7發行版默認的瀏覽器,chrome是Google出品的一款很強大的瀏覽器,所謂Google出品,必屬精品。還有adobe-flash插件的安裝。chrome訪問不了官網, adobe-flash插件可以分別到官網下載,在軟件源里都沒有,前面已經給出了我的百度網盤分享地址
安裝方法:
1)安裝chrome
首先進入rpm安裝包所在目錄,cd命令參照前面,后面所有安裝均要進入安裝包所在目錄,不再提示。
運行下面這條命令
sudo rpm –ivh google-chrome*.rpm
如果提示缺少什么依賴包,則安裝依賴包后在執行,后面的軟件安裝缺少依賴包時參照此處依賴包的安裝,依賴包的安裝方法
sudo yum –y install 依賴包1 依賴包2 依賴包n
2)安裝adobe-flash插件
sudo rpm –ivh flash*.rpm
2、安裝桌面插件cairo-dock
一個仿蘋果風的桌面插件。這個安裝后要在 系統設置->桌面效果 設置,忘了哪個效果了,應該是跟透明相關的效果,否則有一條黑黑的條條,很難看
yum install cairo-dock
3、壓縮與解壓縮工具
Linux下打包壓縮解壓縮一般用的是tar、gzip、bzip2命令,tar打包后的壓縮包通常為*.tar.gz或*.tar.bz,gzip壓縮后的文件為*.gz,bzip2壓縮后的文件為*.bz。也有辦法解壓縮zip文件。但對于新手來說,win平臺常見的rar、zip和7z文件使用unrar、unzip和p7zip可能更為適合,現在我們來安裝一下。
安裝方法:
1)安裝unrar和unzip
sudo yum install unrar unzip
2)安裝p7zip
sudo yun install p7zip
4、在線音樂kwplayer
這是一個酷我音樂盒的linux版本,kwplayer 是linux桌面下的輕量級的音樂播放軟件, 由LiuLang同學開發, 使用的是Python3+gtk3, 開源的(GPLv3),地址為https://github.com/LiuLang/kwplayer
方法:
sudo rpm –ivh kwplayer*.rpm
這個要安裝音頻解碼器等依賴包,根據依賴檢測缺失的包安裝一下就好
5、視頻播放器Mplayer和smplayer
yum install mplayer smplayer
6、視頻播放器VLC
yum -y --enablerepo=nux-dextop installgstreamer-ffmpeg gstreamer-plugins-ugly gstreamer-plugins-bad ffmpeg libvdpaumpg123 gstreamer-plugins-bad-nonfree gstreamer1-libavgstreamer1-plugins-bad-freeworld
yum install vlc
7、辦公軟件
默認安裝的libreoffice是開源的辦公軟件,兼容微軟的office的各種文檔格式,但是有點問題就是可能兩者的顯示效果并不一致,不知道是不是跟文字編碼和字體有關,這一點上國產的WPS則要好一點點,所以一般linux和windows的文檔交流用的是pdf文檔。因為不同系統對office文檔的顯示效果并不那么一致,就連win系統不同版本間對office的顯示效果有時都會不一樣。
安裝方法:
安裝wps,wps for linux下載地址
http://community.wps.cn/download/
sudo rpm –ivh wps-office*.rpm\
然后這個在centos7上面缺少好多依賴包,一個個把依賴包安裝上去吧,參照前面的方法
安裝后打開wps是可能會提示缺少字體,可以到win系統下把字體復制到/usr/share/fonts/文件夾下就是了。因為那些字體是有版權的,wps并沒有集成。
8、PDF閱讀器
Centos7自帶的okular挺好用的
9、chm閱讀器
我從fedora20上移植過來的kchmviewer,所有第三方源似乎都沒有關于chm閱讀的軟件,前面的百度網盤有分享
rpm –ivh chmlib-0.40-9.el7.x86_64.rpm kio_msits-5.2-5.el7.x86_64.rpmkchmviewer-common-5.2-5.el7.noarch.rpm kchmviewer-5.2-5.el7.x86_64.rpm
10、圖形處理工具gimp和矢量圖處理工具inkscape
Windows下有Photoshop這個圖形處理軟件,而linux下對應的圖形處理工具則是gimp,值得一提的是,gimp比Photoshop還要強大一些,可以直接輸出視頻。而inkscape則是處理矢量圖的工具,類似與illustrator
安裝方法:
sudo yum install gimp
sudo yum install inkcape
11、翻譯詞典stardict
星際譯王(stardict)是利用GTK(GIMP TOOLKIT)開發的國際化的、跨平臺的自由的桌面字典軟件。它并不包含字典檔,使用者須自行下載配合使用。它可以運行于多種不同的平臺,如Linux, MicrosoftWindows,FreeBSD及Solaris,并使用GPL授權。這是從fedora20源里弄下來的,直接用,沒什么bug
安裝方法:
rpm –ivh stardict-3.0.5-1.fc20.x86_64.rpm
詞庫安裝:(我在百度網盤里有分享)
cp 詞庫 /usr/share/stardict/dic
12、linux版百度云管家bcloud
這個也是kwplayer的作者編寫的,我們已經添加了源,直接裝就好了
yum installbcloud
13、郵件收發工具thunderbird
yuminstall thunderbird
14、錄制桌面操作視頻的工具qt-recordMyDesktop
Kde桌面安裝
yum installqt-recordmydesktop
gnome桌面安裝
gtk-recordmydesktop
15、linux版迅雷
//TODO需要依賴包python3-qt5這個包沒解決
16、linux版有道
可惜只有屏幕取詞的功能
yuminstall openyoudao
17、影視集結號mvgather
可以看在線電視和一些在線視頻
yuminstall mvgather
18、Moon Player
視頻播放器,支持搜索播放 youku,tudou, iqiyi, sohu, 56, funshion 的網絡視頻
yum installmoonplayer
19、screenfetch
獲取系統/主題信息的命令行工具,大神都在用
yuminstall screenfetch
20、點載pointdownload
一款方便高效的下載軟件,支持 HTTP,BT, Magnet, ed2k, Thunder 等下載協議,支持迅雷離線加速和高速通道功能,支持視頻下載功能。
yuminstall pointdownload

四、磁盤管理與刻錄、啟動U盤制作1、圖形化分區和格式化磁盤工具gparted
在 Linux 中調整分區最簡單的方法是使用GParted 程序。它拒絕在任何當前掛載的分區上進行操作,不能調整根目錄(/)或者其他對操作系統功能來說至關重要的分區,避免了誤操作。當然要調整這些至關重要的分區還是可以在命令行進行的。
安裝方法:
yum install gparted
2、專業的圖形化光盤刻錄工具k3b
K3b(KDE Burn Baby Burn)是一個設計給 KDE在Linux或其它類Unix系統上的CD/DVD燒錄的自由軟件 。當然各linux發行版一般都有自帶磁盤刻錄的工具啦。
Centos7自帶了,挺好用的,效果不比Nero差
3、Linux下制作USB安裝盤(啟動U盤)
在windows下我們使用通過制作PE或者使用UltraISO寫入硬盤映像的方法來制作USB引導安裝盤,也就是所謂的啟動U盤,在linux下也是可以做到的,通過unetbootin這個傻瓜式的圖形軟件就可以一鍵制作各linux發行版的USB引導盤,但可惜的是unetbootin并不支持win系統的USB安裝盤的制作。沒有關系我們可以使用gparted、ms-sys、cp等工具進行制作win系統的USB引導盤,下面就來介紹一下。
安裝方法:
1) 制作linux各發行版USB安裝盤?
yum installunetbootin
然后打開unetbootin這個軟件就可以一鍵制作linux各發行版USB安裝盤了。
2)制作win7系統的USB安裝盤
有三步:
第一步:使用gparted格式化U盤為NTFS格式
第二步:使用ms-sys -7 /dev/sdb 寫入win7引導信息到dev/sdb磁盤上面,注意看你的U盤設備是什么,是“dev/sdb”還是“dev/sdc”
第三部:掛載win7.iso和你的U盤,復制win7.iso里面的所有信息到U盤去,可以使用cp –r命令或直接在圖形化的文件管理器里用鼠標進行復制。

gparted前面已經介紹了安裝的方法,現在介紹安裝ms-sys這個微軟出品的在開源linux上使用的寫入win系統引導信息的命令行工具,去官網下載一個最新版,http://sourceforge.net/projects/ms-sys/
只有源碼的makefile文件,沒有前面用的那種rpm包,所以我們要手動編譯并安裝
在終端進入下載的ms-sys目錄下,運行命令
sudo make
這時如果沒有錯誤提示則在運行make install命令,如果提示找不到cc或gcc,那就是沒有安裝gcc編譯器的意思。
這時就可以先運行命令安裝gcc編譯器
sudo yum install gcc
安裝完gcc編譯器后,我們再運行
sudo make
sudo make install
安裝完ms-sys命令后,我們可以運行ms-sys命令測試一下,這是就可以看到ms-sys的具體用法了。
然后我們使用之前安裝的圖形化gparted工具將U盤格式化為NTFS格式,win7安裝盤一定要是NTFS格式,否則制作的引導盤無法引導win7系統,
格式化后關閉gparted,打開終端,然后輸入partprobe命令刷新磁盤信息
然后寫入win7引導信息到U盤,運行命令
ms-sys -7 /dev/sdb
-7這個參數是寫入win7引導信息的意思,/dev/sdb是你的U盤設備名
最后掛載win7.iso并復制所有iso里的文件到你的U盤里面,可以使用如下命令
掛載win7.iso
sudo mount 路徑/win7.iso /mnt/media
復制文件
cp –r /mnt/media/* U盤的掛載路徑
因為win7.iso有3.2G大小,復制需要10-20分鐘時間,耐心等待就好
如果你覺得命令行下看不到進度條不放心,也可以使用圖形化的文件管理器進行復制
復制完后就win7USB引導設備就制作完成了,XP和win8我沒有嘗試,應該也是可以成功的。

五、開發環境的安裝
如果是作為桌面使用,以上的軟件已經足夠像在windows上那樣隨心所欲地操作了,但如果作為開發者而言,一些開發環境的安裝是不能不知道的。比如C/C++的編譯器GCC,Java的編譯與運行環境JDK,目前比較流行的Java的集成開發環境eclipse,甚至還有Oracle數據庫、apache服務器等等。
1、安裝GCC編譯器
如果安裝centos7時沒有選擇安裝開發環境那一項,那么
yum install gcc gcc-c++
2、安裝openjdk
openjdk是jdk的開放原始碼版本,以GPL協議的形式放出。在JDK7的時候,openjdk已經成為jdk7的主干開發,sun jdk7是在openjdk7的基礎上發布的,其大部分原始碼都相同,只有少部分原始碼被替換掉。使用JRL(JavaResearchLicense,Java研究授權協議)發布。至于openjdk6則更是有其復雜的一面,首先是openjdk6是jdk7的一個分支,并且盡量去除Java SE7的新特性,使其盡量的符合Java6的標準。
我們安裝openjdk7就好了
1)安裝java程序運行環境
java-1.7.0-openjdk.x86_64(Java程序的運行環境,libreoffice等多數開源程序的運行就是基于此)
yum install java-1.7.0-openjdk.x86_64
1) 安裝java開發環境
java-1.7.0-openjdk-devel.x86_64(開發環境,Java的編譯環境)
sudoyum –y install java-1.7.0-openjdk-devel.x86_64
3、安裝linux下的常用文本編輯器
vi是所有linux下的強大命令行文本編輯器,vim是vi的升級版本,有高亮顯示的功能,已經是一個代碼編輯器了,很多程序員都喜歡用vim或者emacs作為寫C/C++代碼的編輯器。nano是一個易于使用的命令行文本編輯器。gedit是gnome桌面默認的圖形文本編輯器,對應的,KDE桌面也有一個默認的圖形文本編輯器叫kwrite。
安裝方法:
1)安裝vim
sudo yum –y install vim
2)安裝nano
sudo yum –y install nano
3)安裝emacs
sudo yum –y install emacs
4、安裝eclipse
Eclipse是目前比較流行的Java集成開發環境(Eclipse官網下載的綠色軟件,解壓后直接用)
tar -zxvf eclipse-jee-luna-SR1-linux-gtk-x86_64.tar.gz -C ~
5、安裝oracle11g數據庫
rpm –ivh oracle-xe-11.2.0-1.0.x86_64.rpm
6、安裝tomcat服務器
tomcat官網下載的綠色軟件,解壓后直接用
tar-zxvf apache-tomcat-7.0.56.tar.gz -C ~

五、幾個常見問題的說明1、當前用戶不在sudoers文件中
解決辦法是,將當前用戶寫到/etc/sudoers文件中
1)切換到root用戶
su –
2)修改/etc/sudoers文件權限,修改為可寫權限
chmod 777 /etc/sudoers
3)使用gedit或kwrite編輯/etc/sudoers文件
添加要提升權限的用戶;在文件中找到root ALL=(ALL)ALL那一行,在該行下添加提升權限的用戶信息,比如我的用戶名為“jison“,就填上jison如:
root ALL=(ALL) ALL
jison ALL=(ALL) ALL
說明:格式為(用戶名 網絡中的主機=(執行命令的目標用戶) 執行的命令范圍)
4)保存退出,并恢復/etc/sudoers的訪問權限為440
chmod440 /etc/sudoers
5)切換到普通用戶,測試用戶權限提升功能
sudo命令
2、音樂格式不支持播放
那是因為沒有安裝到相關的音樂解碼器,安裝一下以下音頻解碼器就好了。
安裝音頻解碼器:(可以一條命令一起安裝,每個包之間用空格隔開即可,這樣寫只是為了大家知道有哪些包)
sudo yum install ffmpeg
sudo yum install ffmpeg-libs
sudo yum install gstreamer-ffmpeg
sudo yum install xvidcore
sudo yum install libdvdread
sudo yum install libdvdnav
sudo yum install lsdvd
sudo yum install gstreamer-plugins-good
sudo yum install gstreamer-plugins-bad
sudo yum install gstreamer-plugins-ugly
sudo yum install gstreamer-plugins-bad
sudo yum install gstreamer-ffmpeg
3、視頻格式不支持播放
那是因為沒有安裝到相關的視頻解碼器,安裝一下以下視頻解碼器就好了。
安裝視頻解碼器:(可以一條命令一起安裝,每個包之間用空格隔開即可,這樣寫只是為了大家知道有哪些包)
sudo yum install ffmpeg
sudoyum install ffmpeg-libs
sudo yum install gstreamer-ffmpeg
sudo yum install libmatroska
sudo yum install xvidcore
4、centos7的備份與還原和grub2修復
centos7備份還原與grub2引導和rescue模式修改root密碼
一.centos7備份
1.su -
2.cd /
3.tar -zpPcvf backup.tgz --exclude=/sys --exclude=/mnt --exclude=/proc--exclude=/lost+found --exclude=backup.tgz /
二.centos7還原(原系統掛掉解決辦法,系統沒掛直接tar即可還原)
1.centos7安裝盤進入援救模式
2.給磁盤分區(sda1用作根目錄,sda2用作交換分區)
fdisk/dev/sda
p 向屏幕打印硬盤的分區
d 刪除分區
n 新建分區
w 保存更改并退出
q 退出不保存之前的操作
3.格式化分區
mke2fs-t ext3 /dev/sda1 將/dev/sda1格式化為ext3文件系統
mkswap/dev/sda2 將/dev/sda2格式化為交換分區
4.掛載/dev/sda1到centos啟動盤援救系統的/mnt目錄下
mount/dev/sda1 /mnt
5.還原系統備份到/dev/sda1所掛載的目錄/mnt
tar-zpxvf backup.tgz -C /mnt

三.安裝grub并寫入引導信息到mbr
1.更改/dev/sda1所掛載的目錄/mnt為根目錄
chroot/mnt
2.掛載proc和sysfs
mount-t proc proc /proc
mountsysfs /sys -t sysfs
3.安裝grub2到/dev/sda的mbr
grub2-install/dev/sda1
4.更新/boot/grub2/grub.cfg和/etc/grub2.cfg的信息
grub2-mkconfig-o /boot/grub2/grub.cfg
grub2-mkconfig-o /etc/grub2.cfg
{/**
* @引申的命令
* 查看默認引導的內核 grub2-editenvlist
* 修改默認引導的標題 grub2-set-default"標題"
* 未chroot時使用(假設/mnt為根目錄掛在位置) grub2-install --directory-root=/mnt/dev/sda
*/
}
5.把/etc/fstab文件中的uuid標識符改為硬盤設備分區
比如:
行首的UUID=03feda9-c221-4375-a6bf-0b80bd875323改為/dev/sda1
UUID=f4e3d0dc-df2f-446f-9403-0e51835ca4b3改為/dev/sda2
四.更改root密碼(不知道為何,沒有這個操作進不了系統)
1.開機選擇界面按e
2.然后在倒數第二行內核vmlinuz那一行后面加 rw single init=/bin/bash,接著Ctrl+X進入但用戶模式
3.passwd修改root密碼
4.touch /.autorelabel
5.exec /sbin/init(一定要這樣啟動),接著輸入剛剛修改root密碼回車,自動重啟后就可以進入還原的系統了
5、雙系統win7引導項丟失問題
一.用vi編輯/boot/grub2/grub.cfg文件
vi /boot/grub2/grub.cfg

找到下面這段
### BEGIN /etc/grub.d/30_os-prober ###
### END/etc/grub.d/30_os-prober ###
修改為下面這段(+2沒有空格)
### BEGIN /etc/grub.d/30_os-prober ###
menuentry "Windows 7"{
insmod part_msdos
insmod ntfs
set root=*(hd0,msdos1)*
search --no-flooppy --fs-uuid --set6a9463b094637e07
chainloader +2
}
### END/etc/grub.d/30_os-prober ###

查看分區的uuid
blkid/dev/sda1

二.修改win7為默認啟動系統
查看默認引導的內核
grub2-editenv list
修改默認引導的系統(雙引號內的字符串為上面修改grub.cfg的"Windows7")
grub2-set-default "Windows 7"
6、ibus拼音輸入法
按win+空格就可以切換輸入法了,這里提一下,免得找不到
7、給konsole做一個快捷鍵Ctrl+Alt+T
打開 系統設置->快捷方式->手勢自定義快捷鍵->編輯->新建->全局快捷鍵->命令/URL-
快捷方式命名為“konsole“
觸發器->快捷鍵輸入“Ctrl+Alt+T”
動作->命令/URL輸入“/usr/bin/konsole”
最后點擊應用就ok了
8、解決ntfs格式的磁盤掛載
1.下載
http://www.tuxera.com/community/ntfs-3g-download/
2.編譯工具(若沒有yum安裝一下)
gcc compiler, libc-dev libraries
3.編譯安裝()
./configure
make
make install # or *sudo make install* ifyou aren*t root
4.掛載ntfs分區(以掛載/dev/sdb1為例)
mount -t ntfs-3g /dev/sdb1 /mnt/windows
5.卸載ntfs分區
umount /dev/sdb1
6.設置開機掛載
vi /etc/fstab
到最后一行添加
/dev/sda1 /mnt/windows ntfs-3g defaults 0 0
9、配置konsole字體和外觀
konsole默認狀態極丑,文字有時顯示不全,我們只要設置一下就好了
設置->管理配置方案->編輯配置方案->外觀
選擇自己的配色方案和背景,編輯需要的效果即可
字體選擇自己喜歡的一個,調整好大小和顯示效果即可

六、centos7的虛擬化1、kvm虛擬機
kvm是未來虛擬化的趨勢,因為從內核2.6.20開始已經整合到內核里面了,又稱為基于內核的虛擬機。
它和xen均是虛擬化的解決方案,但是目前中國用的較多的還是xen的解決方案,xen的高手也多一些。
1.安裝
查看虛擬支持情況:grep-E *svm|vmx* /proc/cpuinfo
需要注意的是,開啟主板BIOS里的AMD或者INTEL的CPU的虛擬化支持。
如果是服務器上的實裝,一般都不會安裝GUI,采用最小化安裝,那么執行以下命令:
yum -y install qemu-kvm libvirtvirt-install bridge-utils
并且要會設置橋接網卡。這里不再介紹了。
如果是有GUI的界面的,比如我自己的筆記本電腦,那么要簡單的多了。
yum install qemu-kvm qemu-imgyum installvirt-manager libvirt libvirt-python python-virtinst libvirt-client
然后重啟下電腦。
lsmod | grep kvm

確認模塊已經被加裝了,如果出現以下兩行,則表示模塊已安裝
kvm_intel 138567 0
kvm 441119 1 kvm_intel

開啟libvirtd服務
systemctl start libvirtd
systemctl enable libvirtd

2.配置橋接網絡接口
為即將安裝的kvm虛擬機配置一個橋接網絡接口
vi/etc/sysconfig/network-scripts/ifcfg-br0
我的配置有點像這樣
DEVICE=br0
TYPE=Bridge
BOOTPROTO=dhcp
DEFROUTE=yes
IPV4_FAILURE_FATAL=yes
IPV6INIT=no
NAME=br0
ONBOOT=yes
PEERDNS=yes
PEERROUTES=yes
編輯實際網卡的配置
vi/etc/sysconfig/network-scripts/ifcfg-enp8s0
我的配置有點像這樣
DEVICE=enp8s0
TYPE=Ethernet
BOOTPROTO=dhcp
BRIDGE=br0
DEFROUTE=yes
IPV4_FAILURE_FATAL=yes
IPV6INIT=no
NAME=enp8s0
UUID=bd4e4309-1113-4223-b94a-509fe0d15c8b
ONBOOT=yes
PEERDNS=yes
PEERROUTES=yes
然后重啟下電腦
reboot

3.安裝kvm虛擬機
打開虛擬系統管理器(virt-manager),安裝系統挺傻瓜式的,唯一需要注意的是網卡選擇上面配置的br0橋接網卡
安裝完成之后,就可以使用本地路由器分配的ip地址上網了,也可以通過ip地址進行遠程登陸管理形成vpn(虛擬專用網了)
值得一提的是,安裝kvm虛擬機時有三種讓虛擬機訪問外網的方式,即橋接,NAT和Host-only(使用主機網絡)
但只有上面用到的橋接方式才能讓外網訪問安裝的kvm虛擬機

2.xen虛擬機
//TODO 用到再說

3.VitualBox虛擬機
這個虛擬機也是開源的,沒有vmware好用,僅僅是裝過一個winxp
rpm–ivh VirtualBox-4.3-4.3.18_96516_el7-1.x86_64.rpm
//TODO并沒有用來測試過橋接網絡接口,用到再說
4.VMware虛擬機
VMware應該算是目前最好用的虛擬機軟件了,但為什么放到最后說呢,因為上面三個是免費的,它是閉源收費的
好用歸好用,但是一般用不起vmware的時候就只好用上面三個了
在CentOS7上安裝Vmware 10.0.3。通常,這個版本是不能在CentOS7工作的,因為它只能運行在比較低的內核版本3.10上。

首先,以正常方式下載并安裝(沒有問題)。唯一的問題是在后來運行vmware程序的時候。
shVMware-Workstation-Full-10.0.3-1895310.x86_64.bundle
如何修復?
1 –進入/usr/lib/vmware/modules/source。

cd /usr/lib/vmware/modules/source
2 –解壓 vmnet.tar.

tar -xvf vmnet.tar
3 –進入 vmnet-only 目錄。

cd vmnet-only
4 –編輯filter.c文件。

vi filter.c
在206和259行,替換以下字符串:

#if LINUX_VERSION_CODE <KERNEL_VERSION(3, 13, 0)
為:

#if LINUX_VERSION_CODE <KERNEL_VERSION(3, 0, 0)
保存并退出。

5 –回到先前文件夾。

cd ../
6 –再次壓縮文件夾。

tar -uvf vmnet.tar vmnet-only
7 –移除舊目錄。

rm -fr vmnet-only
8 –啟動vmware并體驗。

9 卸載Vmware
vmware-uninstall
vmware-installer -l
vmware-installer -u vmware-workstation
這三個命令足夠卸載了

10 vmware功能強大,方便易用,跨平臺且資料也多,沒什么好說的了

七、幾種我搭建過的服務器1、ftp服務器
1.安裝vsftpd
yum install vsftpd

2.啟動關閉
設置開機自啟
systemctl enable vsftpd
啟動/關閉重啟
systemctl start/stop/restart vsftpd

3.關閉防火墻和selinux
systemct disable firewalld
systemctl stop firewalld
vi /etc/selinux/config
將SELINUX改為disabled
reboot

4.通過sftp登陸vsftpd
sftp username@192.168.1.119

5.瀏覽器訪問
ftp://username:password@192.168.1.119

注:192.168.1.119是局域網服務器的ip
查看ip命令ipaddr
2、ftp-yum服務器
無防范的配置:(初學者用)

1.安裝createrepo和vsftpd
yum install createrepo vsftpd

2.mkdir /home/ftp

3.cp-r 源的目錄 /home/ftp

4.vi/etc/vsftpd/vsftpd.conf
最后添加anon_root=/home/ftp和no_anon_password=YES

6.cd/home/ftp

7.createrepo CentOS7-LocalServer/

8.關閉防火墻和selinux
systemct disable firewalld
systemctl stop firewalld
vi /etc/selinux/config
將SELINUX改為disabled
reboot

9.systemctl enable vsftpd

10.systemctl start vsftpd

1.客戶端配置源
vi /etc/yum.repos.d/CentOS7-LocalServer.repo

[CentOS7-LocalServer]
name=LocalServer
baseurl=ftp://192.168.1.119/CentOS7-LocalServer
enable=1
gpgcheck=0

2.yum clean all

3.yum makecache

4.搭建完成,局域網ftp-yum服務器測試
yum install samba
3、samba服務器
centos7安裝samba服務器

1.關閉防火墻,systemctlstop firewalld.service 和setenforce0

2.mkdir/home/samba
chmod 777 /home/samba

3.配置smb.conf,vim /etc/samba/smb.conf

smb.conf配置內容

[global]

workgroup= WORKGROUP
netbiosname = cmcc1
serverstring = Linux Samba Server TestServer
security= user #在samba4中share 和server已經被禁用

(表示192.168.1.*的IP)
hostsallow = 192.168.1.

mapto guest =Bad User

[WORKGROUP]
path= /home/samba
writeable= yes
browseable= yes

guestok= yes


3.啟動samba服務,systemctl start samba.service
注意:在samba4中share 和server已經被禁用,需要用security = user 和mapto guest =Bad User來實現無密碼訪問目錄
4、ntp服務器
1、NFS的安裝需要的軟件包;
Centos7:需要nfs-utils和nfs4;
2、使用如下命令查找系統是否已安裝如上的軟件包;
rpm–qa *nfs*
  如果已安裝,則直接操作第三步;如果未安裝,則運行如下命令安裝:
yuminstall nfs4* nfs-util
3、配置服務器端
  建立掛載的目錄,并且掛載目錄,使用如下命令:
mkdir/home/nfs
cd/home/nfs
mkdirtest
  然后修改/etc/exports文件,該文件定義了共享目錄以及共享規則;
vi/etc/exports
  在該文件中加入
/home/nfs192.168.1.119(rw,root_squash)
  上面加入的這行的意思是nfs共享的目錄是/home/nfs,192.168.1.0/24網段的IP可以訪問,訪問是讀寫,客戶端可以有root權限;
  修改完成后保存退出;
  然后運行systemctlrestart nfs重啟nfs服務;
4、關閉防火墻,使用如下命令
systemctlstop firewalld
5、配置客戶端
  客戶端上的操作系統與服務端的操作系統相同;也需要安裝nfs-utls和rpcbind;
  安裝后查看是否能正常訪問nfs服務
showmount–e 192.168.1.119
  出現如下結果說明能正常訪問:
Exportlist for 192.168.1.119:
/home/nfs192.168.1.0/24
  然后使用如下命令創建本地文件與服務端的掛載點關聯
mkdir/home/nfs
mount-t nfs 192.168.1.119:/home/nfs/ /home/nfs/
  然后運行ls/home/nfs在客戶端看到服務器上共享目錄中的文件。并可以對共享目錄中的文件進行讀寫操作;
5、apache服務器
1.安裝apache主程序httpd
yum install httpd

2.啟動關閉
設置開機自啟
systemctl enable httpd
啟動/關閉重啟
systemctl start/stop/restart httpd

3.在/var/www/html目錄存放自己的網頁目錄就可以訪問了
新建一個測試網頁
cd /var/www/html
echo "hello world!">helloworld.html

4.在局域網內的任意一臺計算機訪問測試網頁helloworld.html
http://192.168.1.119/helloworkd.html
注:192.168.1.119是局域網apache服務器的ip
查看ip命令ipaddr
6、centos7服務管理、防火墻和selinux設置
1.服務管理
設置服務(service)開機自啟和關閉開機自啟
systemctl enable/disable service
設置服務啟動/重啟/關閉
systemctl start/restart/stop service
2.防火墻(firewalld)啟動與關閉
防火墻開機自啟
systemctl enable firewalld
防火墻關閉開機自啟
systemctl disable firewalld
設置防火墻啟動/重啟/關閉
systemctl start/restart/stop firewalld
3.selinux設置與查看和修改運行模式
設置
vi /etc/selinux/config
找到SELINUX=enforcing這一行
可以修改為以下三個模式
SELINUX=enforcing 強制模式(默認)
SELINUX=permissive 寬容模式(有警告)
SELINUX=disabled 關閉

查看
getenforce
修改運行模式
setenforce 0|1
0 寬容模式(permissive)
1 強制模式(disabled)


systemctl是系統服務管理器命令,它實際上將service 和chkconfig 這兩個命令組合到一起。

任務 舊指令 新指令
使某服務自動啟動 chkconfig –level3 httpd on systemctl enable httpd.service
使某服務不自動啟動 chkconfig –level3 httpd off systemctl disablehttpd.service
檢查服務狀態 service httpd status systemctl status httpd.service (服務詳細信息)systemctl is-active httpd.service (僅顯示是否Active)
顯示所有已啟動的服務 chkconfig --list systemctl list-units --type=service
啟動某服務 service httpd start systemctl start httpd.service
停止某服務 service httpd stop systemctl stop httpd.service
重啟某服務 service httpd restart systemctl restart httpd.service
下面以nfs服務為例:

1.啟動nfs服務

systemctlstart nfs-server.service
2.設置開機自啟動

systemctlenable nfs-server.service
3.停止開機自啟動

systemctldisable nfs-server.service
4.查看服務當前狀態

systemctlstatus nfs-server.service
5.重新啟動某服務

systemctlrestart nfs-server.service
6.查看所有已啟動的服務

systemctllist -units --type=service
開啟防火墻22端口

iptables-I INPUT -p tcp --dport 22 -j ACCEPT
如果仍然有問題,就可能是SELinux導致的

關閉SElinux:

修改/etc/selinux/config文件中的SELINUX=””為 disabled,然后重啟

徹底關閉防火墻:

sudosystemctl status firewalld.service
sudosystemctl stop firewalld.service?
sudosystemctl disable firewalld.service
7、centos7的telnet和ssh遠程登錄
telnet遠程登錄
1. SentOS7.0 telnet-server 啟動的問題。
解決方法:
①、先檢查CentOS7.0是否已經安裝以下兩個安裝包:telnet-server、xinetd。命令如下:
rpm-qa telnet-server
rpm-qa xinetd
如果沒有安裝,則先安裝。安裝命令:
yuminstall telnet-server-0.17-59.el7.x86_64.rpm
yuminstall xinetd-2.3.15-12.el7.x86_64.rpm
安裝完成后,將xinetd服務加入開機自啟動:
systemctlenable xinetd.service
將telnet服務加入開機自啟動:
systemctlenable telnet.socket
最后,啟動以上兩個服務即可:
systemctlstart telnet.socket
systemctlstart xinetd(或servicexinetd start)

2.telnet 192.168.5.128 出錯:No route to host
解決方法:在服務器主機運行以下命令:iptables -F 即可

3.telnet 192.168.5.128 出錯:connection refuse
解決方法:
①、出現這個問題請先檢查telnet-server 是否已經啟動。
②、修改服務器主機允許root用戶登錄:
修改方法:
1)在客戶端運行登錄指令:telnet192.168.5.128
2)在服務器主機運行以下命令:tail/var/log/secure
查看log里面剛才客戶端是以哪一個端口設備登錄的(如:pts/1)。記錄下來然后
打開/etc/securetty 將設備名添加進去即可。
ssh遠程登錄
1.centos7默認安裝有openssh-server、openssh-client和openssh
2.所以我們直接登陸ssh192.168.1.119

3.后臺運行的是sshd,所以我們可以通過它來開啟和關閉ssh遠程登陸服務
開啟/重啟/關閉
systemctl start/restart/stop sshd

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/458372.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/458372.shtml
英文地址,請注明出處:http://en.pswp.cn/news/458372.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

VC2010打開資源視圖時提示“指南必須指定類型”,.rc資源文件損壞(轉)

VC: 打開資源視圖時提示“指南必須指定類型 ”(Guideline……specify type) &#xff0c;.rc資源文件損壞 可能是TFS導致的使用記事本打開.rc文件&#xff0c;找到“DESIGNINFO”節&#xff0c;會看到如下的數據&#xff1a; BEGIN , 50 , 13798327 EN…

C++ virtual 析構函數

copy自:http://zxjgoodboy.blog.sohu.com/61482463.html 在此基礎上稍作修改C中虛析構函數的作用 我們知道&#xff0c;用C開發的時候&#xff0c;用來做基類的類的析構函數一般都是虛函數。可是&#xff0c;為什么要這樣做呢&#xff1f;下面用一個小例子來說明&#xff1a; …

(八)企業部分之nginx+tomcat+memcached負載均衡集群搭建

【server1】vim /usr/local/lnmp/tomcat/conf/context.xml<Context>......<Manager className"de.javakaffee.web.msm.MemcachedBackupSessionManager"memcachedNodes"n1:172.25.45.1:11211,n2:172.25.45.2:11211"failoverNodes"n1"req…

泛型算法(二十三)之排列算法

1、is_permutation(ForwardIterator1 first1, ForwardIterator1 last1, ForwardIterator2 first2)&#xff1a;C11版本&#xff0c;判斷兩個序列是否為同一元素集的兩個排列。 std::vector<int> c1 {1, 2, 3, };std::vector<int> c2 {1, 2, 3, 1, 3};//判斷兩個序…

C++ 虛函數經典深入解析

from&#xff1a;https://blog.csdn.net/gggg_ggg/article/details/45915505C中的虛函數的作用主要是實現了多態的機制。 關于多態&#xff0c;簡而言之就是用父類型別的指針指向其子類的實例&#xff0c;然后通過父類的指針調用實際子類的成員函數。 這種技術可以讓父類的指針…

21OGNL與ValueStack(VS)-靜態方法訪問

轉自&#xff1a;https://wenku.baidu.com/view/84fa86ae360cba1aa911da02.html 在LoginAction中增加如下方法&#xff1a;public static String getSta() { return "這是LoginAction中的靜態方法"; } 然后在loginSuc.jsp中增加如下代碼&#xff1a; 調用Action中的靜…

win7通過easyBCD引導ubuntu

我電腦配置了固態和傳統雙硬盤&#xff0c;SSD已經裝了win7&#xff0c;然后在傳統硬盤上安裝ubuntu&#xff0c;結果安裝完成后看不到ubuntu的入口。因為跟win7不是裝在一個驅動設備上&#xff0c;所以使用easyBCD的Linux&#xff0f;BCD選項也無法正確引導。最后通過easyBCD的…

深入理解C++中的explicit關鍵字

深入理解C中的explicit關鍵字kezunhaigmail.com http://blog.csdn.net/kezunhaiC中的explicit關鍵字只能用于修飾只有一個參數的構造函數, 它的作用是表明該構造函數是顯示的, 而非隱式的&#xff0c; 跟它相對應的另一個關鍵字是implicit, 意思是隱藏的,構造函數默認情況下即聲…

JAVA面試中問及HIBERNATE與 MYBATIS的對比,在這里做一下總結(轉)

hibernate以及mybatis都有過學習&#xff0c;在java面試中也被提及問道過&#xff0c;在項目實踐中也應用過&#xff0c;現在對hibernate和mybatis做一下對比&#xff0c;便于大家更好的理解和學習&#xff0c;使自己在做項目中更加得心應手。 第一方面&#xff1a;開發速度的對…

Caffe源碼解析4: Data_layer

轉載請注明出處&#xff0c;樓燚(y)航的blog&#xff0c;http://home.cnblogs.com/louyihang-loves-baiyan/ data_layer應該是網絡的最底層&#xff0c;主要是將數據送給blob進入到net中&#xff0c;在data_layer中存在多個跟data_layer相關的類 BaseDataLayerBasePrefetchingD…

理解C++中拷貝構造函數

拷貝構造函數的功能是用一個已有的對象來初始化一個被創建的同樣對象&#xff0c;是一種特殊的構造函數&#xff0c;具有一般構造函數的所有特性&#xff0c;當創建一個新對象的時候系統會自動調用它&#xff1b;其形參是本類對象的引用&#xff0c;它的特殊功能是將參數代表的…

IDEA mybatis-generator-maven-plugin 插件的使用

2019獨角獸企業重金招聘Python工程師標準>>> pom.xml中添加插件 <plugin><groupId>org.mybatis.generator</groupId><artifactId>mybatis-generator-maven-plugin</artifactId><version>1.3.2</version><configuratio…

python優秀網友學習筆記推薦

AstralWindMr.Seven 轉載于:https://www.cnblogs.com/migongci0412/p/5154892.html

深入理解CRITICAL_SECTION

摘要臨界區是一種防止多個線程同時執行一個特定代碼節的機制&#xff0c;這一主題并沒有引起太多關注&#xff0c;因而人們未能對其深刻理解。在需要跟蹤代碼中的多線程處理的性能時&#xff0c;對 Windows 中臨界區的深刻理解非常有用。本文深入研究臨界區的原理&#xff0c;以…

webpack進階之插件篇

上一篇博客講解了webpack環境的基本&#xff0c;這一篇講解一些更深入的內容和開發技巧。基本環境搭建就不展開講了 一、插件篇 1. 自動補全css3前綴 autoprefixer 官方是這樣說的&#xff1a;Parse CSS and add vendor prefixes to CSS rules using values from the Can I Use…

QT:QObject 簡單介紹

QObject 是所有Qt對象的基類。QObject 是Qt模塊的核心。它的最主要特征是關于對象間無縫通信的機制&#xff1a;信號與槽。 使用connect()建立信號到槽的連接&#xff0c;使用disconnect()銷毀連接&#xff0c;使用blockSignals()暫時阻塞信號以避免無限通知循環&#xff0c;使…

利用malloc定義數組

使用malloc方法時&#xff0c;應導入文件 #include<malloc.h> 1.利用malloc定義一維數組 int *num (int *)malloc(sizeof(int)*8); // 定義一個一維數組有8個元素&#xff0c;等價于 int num[8]; 2.利用malloc定義二維數組 int **num &#xff08; int **&#xff09…

C++中基類的析構函數為什么要用virtual虛析構函數

from&#xff1a;https://blog.csdn.net/iicy266/article/details/11906457知識背景要弄明白這個問題&#xff0c;首先要了解下C中的動態綁定。 關于動態綁定的講解&#xff0c;請參閱&#xff1a; C中的動態類型與動態綁定、虛函數、多態實現 正題直接的講&#xff0c;C中基類…

第二章 Python基本元素:數字、字符串和變量

Python有哪些內置的數據類型&#xff1a; True False #布爾型 42 100000000 #整型 3.14159 1.0e8 #浮點型 abcdes #字符串 2.1 變量、名字和對象 python中統一的形式是什么&#xff1f; 對象&#xff0c;所有的對象都是以對象的形式存在…

Mac - 設置NSButton 的背景色

- (void)drawRect:(NSRect)dirtyRect {[super drawRect:dirtyRect];[[NSColor clearColor] setFill];NSRectFill(self.bounds);self.wantsLayer YES;self.layer.cornerRadius 8;self.layer.masksToBounds YES; } 轉載于:https://www.cnblogs.com/741162830qq/p/5157046.html…