首页 > 代码库 > centos7 简单配置

centos7 简单配置

1. cd
作用:改变终端当前目录位置
样式:cd 目标目录位置
举例:cd /boot/grub #转到grub文件夹下#

2. ls
作用:列出(行式)当前目录下的全部文件以及文件夹名称
举例:cd /home/下载
  ls -l // 详细
  ls -a // 所有文件(包括隐藏文件)
ls -l test/ // 显示test文件夹下所有
ls -la

3. 用户切换
su 用户名

4. 通过软件源在线安装:
sudo yum -y install 软件名
其中参数-y为所有选项均选则yes,不加-y则要手动确认

5. 通过本地rpm包安装:
sudo rpm -ivh 软件名
其中参数-i为安装,-vh为列出安装过程

6. centos7 ip查看-- ip addr

7. 网络配置 nmtui

8. 创建文件夹 mkdir
mkdir test
mkdir -p test/demo/po

9. 创建文件
touch a.txt
vi a.txt (没有相应文件)创建编辑
> 和 >>重定向,如echo hello world! > README.md,>覆盖 >>追加
echo ‘Hello!!‘ >> a.txt //文件追加内容

10. 查看文件
cat a.txt
cat test/a.txt
tail a.txt //可以输出文件里的最后一小部分内容
tail test/a.txt
head 查看文件前几行,如 head -5 index.html
tail 查看文件后几行 –n –f,如 tail index.html、tail -f -n 5 index.html

11. 编辑文件
vi a.txt
vi text/a.txt

12. 复制
cp test1/a.txt test2/app/ // 复制文件
cp -R test1 test1-bak // 复制文件夹test1下所有文件

13. 重命名与移动
mv a.txt home/ // 移动 a.text 到该目录下的home文件夹
mv test1 test2 // 重命名

14. 删除
rm text/a.txt //删除文件
rm -rf text //删除非空目录
rmdir (Remove Directory) 删除文件夹,只能删除空文件夹

15. reboot
作用:重启
举例:sudo reboot

16. shutdown
作用:关机
举例:sudo shutdown -h now

17. 修改密码
sudo passwd xyz

18. 修改hosts
vi /etc/hosts
保存后重启网络
sudo /etc/init.d/networking restart

19. 新建用户
adduser xyz
passwd xyz //修改密码

加入相应用户组群拥有权限
sudo gpasswd -a xyz wheel // 将xyz用户加入到wheel组

查看用户群组
groups xyz //查看用户所属的群组

用户群组
sudo groupadd test //创建test用户群组
--> /etc/group

sudo usermod -a -G test xyz //把xyz这个用户放到test这个群组里
--> groups xyz
--> xyz test wheel

sudo usermod -g test xyz //把 xyz 用户的主群组修改成 test组
--> groups xyz
--> test wheel

移除用户组
sudo gpasswd -d xyz wheel // 把xyz用户移除wheel组

删除用户:
userdel -r xyz //用于删除用户帐号及相关档案
userdel xyz
groupdel xyz
usermod –G xyz xyz //强制删除该用户的主目录和主目录下的所有文件和子目录


20. chown 修改文件与目录的所有权

chown 用户:群组 文件/目录
chown xyz:czh test
--> ls -l

//修改某个目录以及它里面包含的所有的子目录的所有权
chown -R 用户:群组 目录

21. 权限

动作:
r:read(读取)
w:write(写入)
x:excute(执行)

// 第一位:
-(常规文件)、d(目录)、l(符号链接)、
c(字符特殊设备)、b(模块特殊设备)、
p(FIFO)、s(套接字)

用户列表:
拥有者(owner),用户组(group),其它人(others)

--> touch a.txt
--> ls -l
--> -rw-rw-r--

数字表示的权限:
r:4 // 读
w:2 // 写
x:1 // 执行

// 例如:
7:r + w + x,表示所有权限
6:r + w,表示读取与写入权限
4:r,表示读取权限

例:drwxrwxr-x
第一位d表示目录
从左到右每三个一组,依次表示所有者权限、组权限、其他用户权限
d --> dir
rwx --> 所有者拥有读、写、执行
rwx --> 组权拥有读、写、执行
rwx --> 其他拥有读、执行 (-表示没有)

22. chmod 修改文件与目录的权限
chmod 权限 目录/文件

数字:
4 是读取,2 是写入,1 是执行

chmod 755 目录
chmod 644 文件

字母:
r 是读取,w 是写入,x 是执行。
u 表示拥有者,g 表示所属用户组,o 表示其它人,a 表示所有人。
配合使用 + 与 - 号,去添加或去掉权限

chmod u+x 文件
chmod g+w 目录

23. systemctl服务
sudo systemctl start 服务 //启动服务
sudo systemctl stop 服务 //停止服务
sudo systemctl status 服务 //服务状态
sudo systemctl restart 服务 //重启服务
sudo systemctl reload 服务 //重载服务

启用与禁用
sudo systemctl enable 服务 // 开机自启用可以用enable启用
sudo systemctl disable 服务 // 禁用

24. tar

c(create) 创建
z(gzip)一种压缩格式
f(file) 表示文件
x(extract) 表示解压

打包
tar -cf 生成的打包文件.tar 要打包的文件/目录

打包并压缩
tar -czf 生成的打包文件.tar.gz 要打包的文件/目录

解包
tar -xf 要解包的文件.tar

解压
tar -xzf 要解包的文件.tar.gz

25. curl

curl https://www.baidu.com
curl -v https://www.baidu.com

把地址内容下载到某个文件里
curl -o 文件名 地址
curl -o test.html https://www.baidu.com

用远程地址是文件,把文件下载下来,文件名使用远程文件的名字
curl -O 文件地址
curl -O https://raw.githubusercontent.com/amix/vimrc/master/README.md

26. rsync同步

r(recursive),递归复制,复制同步的文件不保留文件的权限,创建与修改时间。
a(archive),存档模式,可以递归复制,保留文件替身,复制同步的文件会保留文件的拥有者,用户名,时间,权限。
z(compress),压缩传输,传输文件时会压缩文件。
n(dry-run),假装同步,看看都有什么东西可以同步的,不会真正执行同步。
h(human-readable),用人类都看懂的方式显示数字。
P(progress),进度。

基本用法:rsync 选项 源 目标
递归同步:rsync -r 源 目标 //递归模式同步不保留文件属性。
存档模式:rsync -a 源 目标 // 保留文件属性
显示进度:rsync -a -P 源 目标 / rsync -aP 源 目标
删 除:rsync -a -P --delete 源 目标
远 程:rsync -a -P 用户@主机:源 目标

27. ssh root禁用

查找:/etc/ssh/sshd_config
#PermitRootLogin yes

修改为:
PermitRootLogin no

重新启动 sshd:
systemctl restart sshd.service

28. 禁止root本地登录

修改配置/etc/pam.d/login,增加如下一行
auth required pam_succeed_if.so user != root quiet


29. 安装vmware-tools --虚拟机
su root
cd vmware-tools-distrib
ls
./vmware-install.pl


30. vim 安装与配置 yum -y install vim*
cd ~
touch .vimrc
vim .vimrc

set nu // 这是设置显示行号
set showmode //设置在命令行界面最下面显示当前模式等。
set ruler // 在右下角显示光标所在的行数等信息
set autoindent // 设置每次单击Enter键后,光标移动到下一行时与上一行的起始字符对齐
syntax on // 即设置语法检测,当编辑C或者Shell脚本时,关键字会用特殊颜色显示
hi MatchParen ctermbg=blue ctermfg=white // 匹配的括号颜色修改


31. port修改

查找:/etc/ssh/sshd_config

#Port 22

修改为:

Port 5000

//1. 关闭SELINUX.
vi /etc/selinux/config
修改 SELINUX=disabled

查看selinux状态sestatus 如果是enabled就是开启状态
sestatus -v

重启ssh:
systemctl restart sshd.service

//2. 不关SELINUX,但是需要添加一下SELINUX的端口, 使用semanage工具.
//2.1安装 semanage
yum -y install policycoreutils-python

使用以下命令查看当前SElinux 允许的ssh端口:
semanage port -l | grep ssh

添加20000端口到 SELinux
semanage port -a -t ssh_port_t -p tcp 5000

然后确认一下是否添加进去
semanage port -l | grep ssh

如果成功会输出
ssh_port_t tcp 5000, 22

// 重启ssh:
systemctl restart sshd.service

//防火墙中放行新加入端口

//1. 方法1
firewall-cmd --permanent --add-port=5000/tcp

用该命令查询firewall-cmd --permanent --query-port=5000/tcp
如果是yes就是添加成功,如果是no就是没成功
成功后重载防火墙firewall-cmd --reload
//2. 方法2
复制 firewalld 有关 sshd 的设定档案:

cp /usr/lib/firewalld/services/ssh.xml /etc/firewalld/services/

使用 vim (或任何文本编辑器) 开启 /etc/firewalld/services/ssh.xml,寻找:

<port protocol="tcp" port="22"/>

修改为:

<port protocol="tcp" port="5000"/>

储存后重新加载 firewalld:
firewall-cmd --reload

32. 安装nginx
yum install epel-release -y
yum install nginx -y
nginx -t
service nginx status // 查看状态
service nginx start / reload
service nginx stop
systemctl enable nginx

(1) firewall设置:
systemctl start firewalld.service #启动firewall
systemctl stop firewalld.service #停止firewall
systemctl disable firewalld.service #禁止firewall开机启动

(2) firewalld默认已经安装并启用了,如果需要nginx可以访问需要执行以下命令:
firewall-cmd --permanent --add-service=http
firewall-cmd --permanent --zone=trusted --add-port=80/tcp

33. 常用命令
yum repolist
yum search xxx
yum info xxx
yum install xxx -y
yum remove xxx -y
yum -y update && yum -y upgrade
yum -y install make gcc gcc-c++
yum -y install wget
clear / ctrl+l
netstat –apn
netstat -ntlp
ps -aux | grep tomcat
netstat -ntulp |grep 80 // 查看80端口
pwd (Print Working Directory) 查看当前目录
more less 查看文件,如more /etc/passwd、less /etc/passwd
tab 自动补全,连按两次会将所有匹配内容显示出来
history 查看操作历史
ssh 远程登录,如ssh root@gitlab.study.com
who am i 查看当前用户
| 管道符
grep 匹配内容,一般结合管道符使用


参考:
1. http://www.cnblogs.com/jcblog/p/6431252.html //centos7开机界面出现多个选项
2. http://blog.csdn.net/liangsjss2011/article/details/69390217 //nodejs
3. http://www.cnblogs.com/niconi/p/5609773.html // nodejs nvm
4. http://www.cnblogs.com/charles-dxb/p/5170209.html //nodejs
5. http://www.cnblogs.com/waslost/p/4459664.html //SELinux-semanage
6. https://blacksaildivision.com/git-latest-version-centos //git latest
7. http://www.cnblogs.com/mchina/archive/2013/01/30/2880680.html screen
8. http://www.mono-project.com/download/#download-lin-centos mono-project
9. https://centos.ninghao.net centos

centos7 简单配置