1. 程式人生 > >linux01-常用命令、網路、mysql、yum

linux01-常用命令、網路、mysql、yum

常用命令

日常操作命令

**檢視當前所在的工作目錄 pwd

**檢視當前系統的時間 date

**檢視有誰線上(哪些人登陸到了伺服器) who 檢視當前線上 last 檢視最近的登陸歷史記錄

檔案系統操作

ls / 檢視根目錄下的子節點(資料夾和檔案)資訊 ls -al -a是顯示隱藏檔案 -l是以更詳細的列表形式顯示

建立資料夾 mkdir aaa 這是相對路徑的寫法 mkdir -p aaa/bbb/ccc mkdir /data 這是絕對路徑的寫法

刪除資料夾 rmdir 可以刪除空目錄 rm -r aaa 可以把aaa整個資料夾及其中的所有子節點全部刪除 rm -rf aaa 強制刪除aaa

修改資料夾名稱 mv aaa angelababy

建立檔案 touch somefile.1 建立一個空檔案 echo “i miss you,my baby” > somefile.2 利用重定向“>”的功能,將一條指令的輸出結果寫入到一個檔案中,會覆蓋原檔案內容 echo “huangxiaoming ,gun dan” >> somefile.2 將一條指令的輸出結果追加到一個檔案中,不會覆蓋原檔案內容

VI

用vi文字編輯器來編輯生成檔案最基本用法 vi somefile.4 1、首先會進入“一般模式”,此模式只接受各種快捷鍵,不能編輯檔案內容 2、按i鍵,就會從一般模式進入編輯模式,此模式下,敲入的都是檔案內容 3、編輯完成之後,按Esc鍵退出編輯模式,回到一般模式; 4、再按:,進入“底行命令模式”,輸入wq命令,回車即可

一些常用快捷鍵 一些有用的快捷鍵(在一般模式下使用): a 在游標後一位開始插入 A 在該行的最後插入 I 在該行的最前面插入 gg 直接跳到檔案的首行 G 直接跳到檔案的末行 dd 刪除行,如果 5dd ,則一次性刪除游標後的5行 yy 複製當前行, 複製多行,則 3yy,則複製當前行附近的3行 p 貼上 v 進入字元選擇模式,選擇完成後,按y複製,按p貼上 ctrl+v 進入塊選擇模式,選擇完成後,按y複製,按p貼上 shift+v 進入行選擇模式,選擇完成後,按y複製,按p貼上

查詢並替換(在底行命令模式中輸入) %s/sad/88888888888888 效果:查詢檔案中所有sad,替換為88888888888888 /you 效果:查詢檔案中出現的you,並定位到第一個找到的地方,按n可以定位到下一個匹配位置(按N定位到上一個)

每次進入vi就有行號 vi ~/.vimrc set nu

查詢

3.查詢檔案(需要更新庫:updatedb) locate hadoop.txt

4.從某個資料夾開始查詢 find / -name “hadooop*” find / -name “hadooop*” -ls

5.查詢並刪除 find / -name “hadooop*” -ok rm {} \; find / -name “hadooop*” -exec rm {} \;

6.查詢使用者為hadoop的檔案 find /usr -user hadoop -ls

7.查詢使用者為hadoop並且(-a)擁有組為root的檔案 find /usr -user hadoop -a -group root -ls

8.查詢使用者為hadoop或者(-o)擁有組為root並且是資料夾型別的檔案 find /usr -user hadoop -o -group root -a -type d

9.查詢許可權為777的檔案 find / -perm -777 -type d -ls

壓縮打包

1.gzip壓縮 gzip a.txt

2.解壓 gunzip a.txt.gz gzip -d a.txt.gz

3.bzip2壓縮 bzip2 a

4.解壓 bunzip2 a.bz2 bzip2 -d a.bz2

5.將當前目錄的檔案打包 tar -cvf bak.tar . 將/etc/password追加檔案到bak.tar中(r) tar -rvf bak.tar /etc/password

6.解壓 tar -xvf bak.tar

7.打包並壓縮gzip tar -zcvf a.tar.gz

8.解壓縮 tar -zxvf a.tar.gz 解壓到/usr/下 tar -zxvf a.tar.gz -C /usr

9.檢視壓縮包內容 tar -ztvf a.tar.gz

zip/unzip

10.打包並壓縮成bz2 tar -jcvf a.tar.bz2

11.解壓bz2 tar -jxvf a.tar.bz2

正則

1.cut擷取以:分割保留第七段 grep hadoop /etc/passwd | cut -d: -f7

2.排序 du | sort -n

3.查詢不包含hadoop的 grep -v hadoop /etc/passwd

4.正則表達包含hadoop grep ‘hadoop’ /etc/passwd

5.正則表達(點代表任意一個字元) grep ‘h.*p’ /etc/passwd

6.正則表達以hadoop開頭 grep ‘^hadoop’ /etc/passwd

7.正則表達以hadoop結尾 grep ‘hadoop$’ /etc/passwd

規則: . : 任意一個字元 a* : 任意多個a(零個或多個a) a? : 零個或一個a a+ : 一個或多個a .* : 任意多個任意字元 . : 轉義. \

檔案許可權的操作

linux檔案許可權的描述格式解讀 drwxr-xr-x (也可以用二進位制表示 111 101 101 –> 755)

d:標識節點型別(d:資料夾 -:檔案 l:連結) r:可讀 w:可寫 x:可執行 第一組rwx: 表示這個檔案的擁有者對它的許可權:可讀可寫可執行 第二組r-x: 表示這個檔案的所屬組對它的許可權:可讀,不可寫,可執行 第三組r-x: 表示這個檔案的其他使用者(相對於上面兩類使用者)對它的許可權:可讀,不可寫,可執行

修改檔案許可權 chmod g-rw haha.dat 表示將haha.dat對所屬組的rw許可權取消 chmod o-rw haha.dat 表示將haha.dat對其他人的rw許可權取消 chmod u+x haha.dat 表示將haha.dat對所屬使用者的許可權增加x

也可以用數字的方式來修改許可權 chmod 664 haha.dat 就會修改成 rw-rw-r–

如果要將一個資料夾的所有內容許可權統一修改,則可以-R引數 chmod -R 770 aaa/ chown angela:angela aaa/ <只有root能執行>

目錄沒有執行許可權的時候普通使用者不能進入 檔案只有讀寫許可權的時候普通使用者是可以刪除的(刪除檔案不是修改它,是操作父及目錄),只要父級目錄有執行和修改的許可權

基本的使用者管理

新增使用者 useradd angela 要修改密碼才能登陸 passwd angela 按提示輸入密碼即可

為使用者配置sudo許可權 用root編輯 vi /etc/sudoers 在檔案的如下位置,為hadoop新增一行即可 root ALL=(ALL) ALL hadoop ALL=(ALL) ALL

然後,hadoop使用者就可以用sudo來執行系統級別的指令 [[email protected] ~]$ sudo useradd huangxiaoming

系統管理操作

檢視主機名 hostname

修改主機名(重啟後無效) hostname hadoop

修改主機名(重啟後永久生效) vi /ect/sysconfig/network

修改IP(重啟後無效) ifconfig eth0 192.168.12.22

修改IP(重啟後永久生效) vi /etc/sysconfig/network-scripts/ifcfg-eth0

mount 掛載外部儲存裝置到檔案系統中 mkdir /mnt/cdrom 建立一個目錄,用來掛載 mount -t iso9660 -o ro /dev/cdrom /mnt/cdrom/ 將裝置/dev/cdrom掛載到 掛載點 : /mnt/cdrom中

umount umount /mnt/cdrom

統計檔案或資料夾的大小 du -sh /mnt/cdrom/Packages df -h 檢視磁碟的空間關機 halt重啟 reboot

配置主機之間的免密ssh登陸

假如 A  要登陸  B
在A上操作:
%%首先生成金鑰對
ssh-keygen   (提示時,直接回車即可)
%%再將A自己的公鑰拷貝並追加到B的授權列表檔案authorized_keys中
ssh-copy-id   B

Linux網本配置

1.修改主機名
vi /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=server1.itcast.cn

2.修改ip地址
vi /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
TYPE=Ethernet
ONBOOT=yes     #是否開機啟用
BOOTPROTO=static   #ip地址設定為靜態
IPADDR=192.168.0.101
NETMASK=255.255.255.0
service network restart

3.修改ip地址和主機名的對映關係
vi /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.0.101 server1.itcast.cn

4.關閉iptables並設定其開機啟動/不啟動
service iptables stop
chkconfig iptables on
chkconfig iptables off

實用命令

rzsz

yum list|grep lrzsz
sudo yum -y install lrzsz.x86_64
  • 批量自動刪除rpm包

rpm -qa | grep mysql | while read c; do rpm -e $c --nodeps; done

minimal最小化安裝 eth0預設沒有自啟用 修改配置檔案 onboot=true

修改靜態地址後發現無法ping外網

需要設定閘道器 route add default gw 192.168.33.1 新增nameserver vi /etc/resolv.conf nameserver 192.168.33.1

掛載光碟

mkdir /mnt/cdrom mount -t iso9660 -o ro /dev/cdrom/ /mnt/cdrom

解決克隆後eth0不見的問題

直接修改 /etc/sysconfig/network-script/ifcfg-eth0 刪掉UUID HWADDR 配置靜態地址 然後: rm -rf  /etc/udev/rules.d/70-persistent-net.rules 然後 reboot

mysql安裝

1.上傳MySQL-server-5.5.48-1.linux2.6.x86_64.rpm、MySQL-client-5.5.48-1.linux2.6.x86_64.rpm到Linux上

2.使用rpm命令安裝MySQL-server-5.5.48-1.linux2.6.x86_64.rpm,缺少perl依賴
rpm -ivh MySQL-server-5.5.48-1.linux2.6.x86_64.rpm 

3.安裝perl依賴,上傳6個perl相關的rpm包
rpm -e perl-*

4.再安裝MySQL-server,rpm包衝突
rpm -ivh MySQL-server-5.5.48-1.linux2.6.x86_64.rpm

5.解除安裝衝突的rpm包
rpm -e mysql-libs-5.1.73-5.el6_6.x86_64 --nodeps

6.再安裝MySQL-client和MySQL-server
rpm -ivh MySQL-client-5.5.48-1.linux2.6.x86_64.rpm
rpm -ivh MySQL-server-5.5.48-1.linux2.6.x86_64.rpm

7.啟動MySQL服務,然後初始化MySQL
service mysql start
/usr/bin/mysql_secure_installation

8.測試MySQL
mysql -u root -p

yum

安裝httpd並確認安裝
yum instll -y httpd

列出所有可用的package和package組
yum list

清除所有緩衝資料
yum clean all

列出一個包所有依賴的包
yum deplist httpd

刪除httpd
yum remove httpd

配置本地yum源

1.準備一臺Linux伺服器,用最簡單的版本CentOS-6.7-x86_64-minimal.iso
2.配置好這臺伺服器的IP地址
3.上傳CentOS-6.7-x86_64-bin-DVD1.iso到伺服器
4.將CentOS-6.7-x86_64-bin-DVD1.iso映象掛載到某個目錄
方式一
mkdir /var/iso
mount -o loop CentOS-6.7-x86_64-bin-DVD1.iso /var/iso
方式二
虛擬機器掛載
mount /mnt/cdrom
vi CentOS-Local.repo
baseurl=file:///mnt/cdrom

5.修改本機上的YUM源配置檔案,將源指向自己
備份原有的YUM源的配置檔案
cd /etc/yum.repos.d/
rename .repo .repo.bak *
vi CentOS-Local.repo
[base]
name=CentOS-Local
baseurl=file:///var/iso
gpgcheck=1
enabled=1   #很重要,1才啟用
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
新增上面內容儲存退出

6.清除YUM緩衝
yum clean all

7.列出可用的YUM源
yum repolist

8.安裝相應的軟體
yum install -y httpd

9.開啟httpd使用瀏覽器訪問http://192.168.0.100:80(如果訪問不通,檢查防火牆是否開啟了80埠或關閉防火牆)
service httpd start

10.將YUM源配置到httpd(Apache Server)中,其他的伺服器即可通過網路訪問這個內網中的YUM源了
cp -r /var/iso/ /var/www/html/CentOS-6.7

11.取消先前掛載的映象
umount /var/iso

12.在瀏覽器中訪問http://192.168.0.100/CentOS-6.7/

13.讓其他需要安裝RPM包的伺服器指向這個YUM源,準備一臺新的伺服器,備份或刪除原有的YUM源配置檔案
cd /etc/yum.repos.d/
rename .repo .repo.bak *
vi CentOS-Local.repo
[base]
name=CentOS-Local
baseurl=http://192.168.0.100/CentOS-6.7
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
新增上面內容儲存退出

14.在這臺新的伺服器上執行YUM的命令
yum clean all
yum repolist

15.安裝相應的軟體
yum install -y gcc


16、加入依賴包到私有yum的repository
進入到repo目錄
執行命令:  createrepo  .

--------------------- 本文來自 JIU_9527 的CSDN 部落格 ,全文地址請點選:https://blog.csdn.net/zlfing/article/details/76943854?utm_source=copy