一. 用户管理
1.1 新增用户
useradd
option username
- 选项
-c
:comment 指定一段注释性描述。
-d
:指定用户主目录,如果此目录不存在,则同时使用-m选项,可以创建主目录。
-g
:指定用户所属的用户组。
-G
:指定用户所属的附加组。
-s
:用户登入后所使用的shell。
-u
:指定用户的用户号,如果同时有-o选项,则可以重复使用其他用户的标识号。 - 栗子
useradd
–d
/usr/sam-m
sam
其中,-d
和-m
选项用来为登录名sam产生一个主目录/usr/sam(/usr为默认的用户主目录所在的父目录)。useradd
-s
/bin/sh-g
group–G
adm,root gem
新建了一个用户gem,该用户的登录Shell是/bin/sh,它属于group用户组,同时又属于adm和root用户组,其中group用户组是其主组。- 补充
-s
指定用户登入后所使用的shell。默认值为/bin/bash
。
/bin/false
:是最严格的禁止login选项,一切服务都不能用。
/sbin/nologin
:只是不允许系统login,可以使用其他ftp等服务。
1.2 删除帐号
userdel
option username
- 选项
-r
:把用户的主目录一起删除。 - 栗子
userdel -r
sam
此命令删除用户sam在系统文件中(主要是/etc/passwd, /etc/shadow, /etc/group等)的记录,同时删除用户的主目录。
1.3 修改帐号
usermod
option username
- 选项
选项-c
,-d
,-m
,-g
,-G
,-s
,-u
以及-o
等,这些选项的意义与useradd命令中的选项一样,可以为用户指定新的资源值。 - 栗子
usermod
-s
/bin/bash-d
/home/sam–g
developer sam
将用户sam的登录Shell修改为ksh,主目录改为/home/sam,用户组改为developer。
1.4 用户口令的管理
passwd
option username
- 选项
-l
:锁定口令,即禁用账号。
-u
:口令解锁。
-d
:使账号无口令。
-f
:强迫用户下次登录时修改口令。
1.5 新增用户组
groupadd
option usergroup
- 选项:
-g
:GID 指定新用户组的组标识号(GID)。
-o
:一般与-g选项同时使用,表示新用户组的GID可以与系统已有用户组的GID相同。
1.6 删除用户组
groupdel
usergroup
1.7 修改用户组
groupmod
option usergroup
- 选项
-g
:GID 为用户组指定新的组标识号。
-o
:与-g选项同时使用,用户组的新GID可以与系统已有用户组的GID相同。
-n
:新用户组 将用户组的名字改为新名字 - 例如
groupmod
–g
10000-n
group3 group2
将组group2的标识号改为10000,组名修改为group3。
二. 环境配置
2.1 系统配置
2.1.1 开机启动模式
vim
/etc/inittab
0 - 关机模式(设置失效)
1 - 单用户模式
2 - 多用户模式,不能登录NFS
3 - 多用户模式
4 - 保留
5 - 图形界面登录
6 - 重启(设置失效)
# Default runlevel. The runlevels used are:
# 0 - halt (Do NOT set initdefault to this)
# 1 - Single user mode
# 2 - Multiuser, without NFS (The same as 3, if you do not have networking)
# 3 - Full multiuser mode
# 4 - unused
# 5 - X11
# 6 - reboot (Do NOT set initdefault to this)
id:3:initdefault:
2.1.2 网络
vim
/etc/sysconfig/network-scripts/ifcfg-eth0
# 网卡类型
TYPE=Ethernet
# 网卡名称
DEVICE=eth0
# 系统启动时是否自动加载
ONBOOT=yes
#启用地址协议
# static:静态协议
# bootp:bootp协议
# dhcp:dhcp协议
BOOTPROTO=static
# 网卡设备MAC地址
HWADDR=00:0C:29:B2:93:0B
# 是否由Network Manager托管
NM_CONTROLLED=yes
# 唯一标识
UUID=1cbc168f-255d-4bca-9fc7-34d6f39882ec
# 网卡IP地址
IPADDR=192.168.1.23
# 网卡设备MAC地址
NETMASK=255.255.255.0
# 网卡网关地址
GATEWAY=192.168.1.1
# 网卡DNS地址
DNS1=211.162.66.66
DNS2=211.162.77.77
2.1.3 网卡接口
ifdown
eth0 # 关闭网卡
ifup
eth0 # 启动网卡
2.1.4 网络服务
方法一
service
network stop # 关闭网络服务
service
network start # 启动网络服务
service
network restart #重启网络服务
方法二
/etc/init.d/network stop
/etc/init.d/network start
/etc/init.d/network restart
2.1.5 网卡状态
service
network status
临时网卡配置
ifconfig
eth0 192.168.1.23 netmask 255.255.255.0 # 无需重启。
当前路由及网关信息
netstat
-r
2.1.6 主机名
vim
/etc/sysconfig/network
NETWORKING=yes
HOSTNAME=linux
查看当前的主机名
hostname
或者
hostnamectl
2.1.7 登录终端配置
vim
~/.bashrc
export TERM=xterm
2.1.8 Yum镜像配置
vim
/etc/yum.repos.d/gitlab-ce.repo
[gitlab-ce]
name=Gitlab CE Repository
baseurl=https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el$releasever/
gpgcheck=0
enabled=1
2.1.9 密钥
ssh-keygen
-t rsa -C “any comment can be here”
注意
:.ssh 权限为700,authorized_keys为600
-t:密钥类型
-C:密钥注释
追加免密公钥
ssh-copy-id -i [~/.ssh/id_rsa.pub] username@host
2.1.10 免密失败
修改配置文件(/etc/ssh/sshd_config
),重起服务(service sshd restart
)
# 禁用root账户登录,如果是用root用户登录请开启
PermitRootLogin yes
# 是否让 sshd 去检查用户家目录或相关档案的权限数据,
# 这是为了担心使用者将某些重要档案的权限设错,可能会导致一些问题所致。
# 例如使用者的 ~.ssh/ 权限设错时,某些特殊情况下会不许用户登入
StrictModes no
# 是否允许用户自行使用成对的密钥系统进行登入行为,仅针对 version 2。
# 至于自制的公钥数据就放置于用户家目录下的 .ssh/authorized_keys 内
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_key
2.2. ntp时钟
2.2.1 安装
rpm
-qa | grep ntp
yum
remove -y ntp-xxx
yum
install -y ntp
2.2.2 ntp服务端配置
# vim /etc/ntpd.conf
# 与上级时间服务器联系时所花费的时间,记录在driftfile参数后面的文件内
driftfile /var/lib/ntp/drift
restrict default kod nomodify notrap nopeer noquery
restrict -6 default kod nomodify notrap nopeer noquery
# 开启内部递归网络接口, 即允许本机地址一切的操作
restrict 127.0.0.1
restrict -6 ::1
# 允许局域网段的客户端连接到这台服务器同步时间, 但是拒绝让他们修改服务器上的时间
restrict 192.168.1.0 mask 255.255.255.0 nomodify notrap # [+]
restrict 0.0.0.0 mask 0.0.0.0 nomodify notrap restrict default # [+]
# 需要同步的NTP服务器
server ntp1.aliyun.com # [+]
# 默认的一个内部时钟数据, 当外部NTP服务器无效时为局域网用户提供服务
server 127.127.1.0 # [+]
fudge 127.127.1.0 stratum 10 # [+]
includefile /etc/ntp/crypto/pw
keys /etc/ntp/keys
2.2.2 ntp客户端配置
driftfile /var/lib/ntp/drift
restrict default kod nomodify notrap nopeer noquery
restrict -6 default kod nomodify notrap nopeer noquery
restrict 127.0.0.1
restrict -6 ::1
# NTP服务器
server master-zeus prefer # [+]
includefile /etc/ntp/crypto/pw
keys /etc/ntp/keys
2.2.3 ntp命令
service
ntpd restart
chkconfig
ntpd on
ntpd
-p
ntpstat
三. 存储管理
3.1 磁盘挂在
3.1.1 磁盘挂载情况
lsblk
-f
- 分区
fdisk
/dev/sdb - 格式化
mkfs
-t ext4 /dev/sdb1 - 挂在
mount
-t type device mount-dir
栗子:mount
-t iso9660 /dev/sr0 /mnt/cdrom - 卸载
umount
device/mount-dir
栗子:umount
device 或者umount
mount-dir
四. 工具
4.1 vim
vi ~/.vimrc
## 高亮显示
syntax on
## 缩进
set tabstop=2
set shiftwidth=2
## 粘贴
set paste
五. centos 7
5.1.防火墙
systemctl start firewalld.service # 开启firewall
systemctl stop firewalld.service # 停止firewall
systemctl restart iptables.service # 重启firewall使配置生效
systemctl disable firewalld.service # 禁止firewall开机启动
systemctl enable iptables.service # 开启firewall开机启动
firewall-cmd --reload # 重启防火墙
firewall-cmd --state # 查看防火墙状态,是否是running
firewall-cmd --reload # 重新载入配置,比如添加规则之后,需要执行此命令
firewall-cmd --get-zones # 列出支持的zone
firewall-cmd --get-services # 列出支持的服务,在列表中的服务是放行的
firewall-cmd --query-service ftp # 查看ftp服务是否支持,返回yes或者no
firewall-cmd --add-service=ftp # 临时开放ftp服务
firewall-cmd --add-service=ftp --permanent # 永久开放ftp服务
firewall-cmd --remove-service=ftp --permanent # 永久移除ftp服务
firewall-cmd --add-port=80/tcp --permanent # 永久添加80端口
iptables -L -n # 查看规则,这个命令是和iptables的相同的
man firewall-cmd # 查看帮助