Linux 新机初始化 Centos7.x

分类:Linux |

1. 配置系统时区

#!/bin/bash
echo 'ZONE="Asia/Shanghai"'>/etc/sysconfig/clock
\cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
echo 'TZ="Asia/Shanghai"; export TZ' >> /etc/profile
source /etc/profile


如果出现报错: 

-bash: warning: setlocale: LC_CTYPE: cannot change locale (UTF-8): 没有那个文件或目录

请添加修改: 

vim /etc/sysconfig/i18n 

LANG="en_US.UTF-8"
LC_CTYPE="en_US.UTF-8"
SYSFONT="latarcyrheb-sun16"


参考: https://www.updateweb.cn/zwfec/item-236.html


mac M2下 yum源配置使用说明

CentOS-AltArch的镜像地址为:https://mirrors.huaweicloud.com/centos-altarch/

1、备份配置文件:

cp -a /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak

2、下载新的CentOS-Base.repo文件到/etc/yum.repos.d/目录下(因gpgkey无法动态适配,已将gpgcheck设置为0,关闭校验,如需打开请设置为1,并修改gpgkey地址),执行如下命令:

wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.huaweicloud.com/repository/conf/CentOS-AltArch-7.repo

3、执行yum clean all清除原有yum缓存。

4、执行yum makecache(刷新缓存)或者yum repolist all(查看所有配置可以使用的文件,会自动刷新缓存)。


2. 系统默认配置 高效使用

注: 请使用git2.0+  

yum install git -y 这个命令 如果安装的是1.7版本的 git, 而ohmyzsh不支持git 1.7, 所以请使用 git1.8+

本站下载地址: https://www.updateweb.cn/softwares/git-2.9.5-1.el6.x86_64.rpm


yum install git -y 
yum install nss -y
ldconfig
yum install curl -y
yum install tmux -y
yum install zsh -y
yum install lrzsz -y
yum install dstat -y
yum update -y nss curl libcurl
sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
git clone https://github.com/zsh-users/zsh-autosuggestions.git ~/.zsh/zsh-autosuggestions
sed -i "s/fg=8/fg=cyan/g" ~/.zsh/zsh-autosuggestions/zsh-autosuggestions.zsh
source ~/.zsh/zsh-autosuggestions/zsh-autosuggestions.zsh
cat <<EOF >> ~/.zshrc
source ~/.zsh/zsh-autosuggestions/zsh-autosuggestions.zsh
export EDITOR=/usr/bin/vim
HISTSIZE=9000000
SAVEHIST=9000000
alias rm='rm -i'
alias cp='cp -i'
alias mv='mv -i'
alias grep='grep --color=auto'
alias tmuxls='tmux ls'
alias tmuxa='tmux attach-session -t ' 
alias dstat='dstat -cdlmnpsy'
alias vime='vim -c "colorscheme evening" '
EOF
source ~/.zshrc 
cat <<EOF >> ~/.vimrc
colorscheme desert
set ts=2
set shiftwidth=4
set expandtab
set encoding=utf-8
set fileencodings=ucs-bom,utf-8,cp936
set fileencoding=gb2312
set termencoding=utf-8
set number
set paste
EOF

cat <<EOF >> ~/.tmux.conf
set-window-option -g mode-mouse on
EOF


如果报如下错误: 说明你的网络无法正常访问 github 

sh -c "$(curl -fsSL https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"

curl: (7) Failed to connect to ::: Cannot assign requested address


如果出现: name lookup timeout 的情况

image.png

请执行: 

yum update ca-certificates
vim ~/.oh-my-zsh/themes/robbyrussell.zsh-theme


写入:

local ret_status="%(?:%{$fg_bold[green]%}➜ :%{$fg_bold[red]%}➜ )"
local pwd="%{$fg[yellow]%}%~%{$reset_color%}"
local user="%(!.%{$fg[cyan]%}.%{$fg[cyan]%})%n%{$reset_color%}"
ZSH_THEME_IP=`ifconfig -a|grep -o -e 'inet [0-9]\{1,3\}.[0-9]\{1,3\}.[0-9]\{1,3\}.[0-9]\{1,3\}'|grep -v "127.0.0"|awk '{print $2}'`

PROMPT='%{$fg[yellow]%}[$ZSH_THEME_IP] ${user} ${ret_status} ${pwd} %{$fg[cyan]%}%c%{$reset_color%} $(git_prompt_info)'

ZSH_THEME_GIT_PROMPT_PREFIX="%{$fg_bold[blue]%}git:(%{$fg[red]%}"
ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%} "
ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg[blue]%}) %{$fg[yellow]%}✗"
ZSH_THEME_GIT_PROMPT_CLEAN="%{$fg[blue]%})"


3.  格式化并挂载硬盘


a. 直接格式化成 ext4 进行挂载即可

fdisk /dev/xvdb
mkfs.ext4 /dev/xvdb1
mount /dev/xvdb1  /srv/
vi /etc/fstab
添加类似: 根据实际情况而定
/dev/xvdb1  /srv/   ext4   defaults    0 0


b. LVM(Logical Volume Manager)逻辑卷管理, 方便以后进行扩容

> fdisk /dev/vda
# 加载分区信息 
# > partprobe /dev/vda 
# 列出所有块设备分区信息
> lsblk 
# 创建物理卷
> pvcreate /dev/vda3 
# 扩展物理卷, 即将物理卷添加到组中, 没有的话, 可以使用vgcreate创建一个
> vgextend centos /dev/vda3
# 创建逻辑卷, 后续的格式化与挂载都是基于逻辑卷的操作
> lvcreate -l +100%FREE -n srv centos
# 格式化
> mkfs.xfs /dev/centos/srv
> mount /dev/mapper/centos-srv /srv
> fdisk -l
> vim /etc/fstab


> vgs
VG     #PV #LV #SN Attr   VSize   VFree
centos   1   2   0 wz--n- <19.00g    0
xxx      3   1   0 wz--n-  <2.99g    0

> lvs
  LV   VG     Attr       LSize   Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
  root centos -wi-ao---- <17.00g
  swap centos -wi-ao----   2.00g
  xxx  xxx    -wi-ao----  <2.99g
  
> pvs
  PV         VG     Fmt  Attr PSize    PFree
  /dev/sda2  centos lvm2 a--   <19.00g    0
  /dev/sdb1  xxx    lvm2 a--  1020.00m    0
  /dev/sdb2  xxx    lvm2 a--  1020.00m    0
  /dev/sdb3  xxx    lvm2 a--  1020.00m    0
  
# 如果想要创建一个新组, 可以使用
vgcreate xxx /dev/sdb1

> lsblk

NAME            MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda               8:0    0   20G  0 disk
├─sda1            8:1    0    1G  0 part /boot
└─sda2            8:2    0   19G  0 part
  ├─centos-root 253:0    0   17G  0 lvm  /
  └─centos-swap 253:1    0    2G  0 lvm  [SWAP]
sdb               8:16   0    3G  0 disk
├─sdb1            8:17   0    1G  0 part
│ └─xxx-xxx     253:2    0    3G  0 lvm  /xxx
├─sdb2            8:18   0    1G  0 part
│ └─xxx-xxx     253:2    0    3G  0 lvm  /xxx
└─sdb3            8:19   0 1023M  0 part
  └─xxx-xxx     253:2    0    3G  0 lvm  /xxx
sr0              11:0    1 1024M  0 rom



> df
Filesystem               Size  Used Avail Use% Mounted on
devtmpfs                 475M     0  475M   0% /dev
tmpfs                    487M     0  487M   0% /dev/shm
tmpfs                    487M  7.7M  479M   2% /run
tmpfs                    487M     0  487M   0% /sys/fs/cgroup
/dev/mapper/centos-root   17G  1.6G   16G  10% /
/dev/sda1               1014M  140M  875M  14% /boot
tmpfs                     98M     0   98M   0% /run/user/0
/dev/mapper/xxx-xxx      3.0G   33M  3.0G   2% /xxx


c.  LVM 扩容

# 给sdb磁盘分一个区
fdisk /dev/sdb

# 给sdb1分区pv化
pvcreate /dev/sdb1

# 把pv化后的sdb分区添加进原先的vg中
vgextend centos /dev/sdb1

# 把新加的xG空间添加到对应目录上
lvextend -L +8G /dev/mapper/centos-root

# 扩容后还需要执行一个命令才会生效
xfs_growfs /dev/mapper/centos-root

df 查看生效情况


d. LVM 删除相关

首先要umount , 然后: 

vgremove xxx
pvremove /dev/sdb1
pvremove /dev/sdb2


lsblk -fa
NAME            FSTYPE      LABEL UUID                                   MOUNTPOINT
sda
├─sda1          xfs               e939e72e-7bc9-41d1-a8b0-121ae0e1cc06   /boot
└─sda2          LVM2_member       CeXfZy-73Bs-bUQH-ZqDF-4OM8-eliH-k2nTA9
  ├─centos-root xfs               d071e0c7-6349-425b-9400-d271a134da08   /
  └─centos-swap swap              280989c5-0703-4119-b614-384d4000175f   [SWAP]
sr0

vgreduce命令 – 删除物理卷


从卷组”vg2000″ 中移除物理卷/dev/sdb2:

> vgreduce vg2000 /dev/sdb2




fdisk命令 – 管理磁盘分区 

badblocks命令 – 检查磁盘装置中损坏的区块 

lvmdiskscan命令 – 扫描可见LVM2所有设备 

lsblk命令 – 查看系统的磁盘使用情况 

cfdisk命令 – 用于磁盘分区 

repquota命令 – 显示文件系统配额的汇总信息 

sync命令 – 刷新文件系统缓冲区 

lvmdump命令 – 转储LVM2有关的各种信息 

mlabel命令 – 设定磁盘的标签 

df命令 – 显示磁盘空间使用量情况


4. 系统打开的文件数优化:

cat <<EOF >> /etc/security/limits.conf
*               soft    nofile          65532
*               hard    nofile          65532 
EOF