Linux常用命令笔记

管理用户

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
# 按默认值添加用户
useradd userName

# 在root环境下,root帮userName设置密码
passwd userName
# 或
echo "密码" | passwd --stdin userName

# userName这个用户第一次登录时(默认密码是用户名),自己设置自己密码
echo "userName" | passwd --stdin userName
chage -d 0 userName
chage -l userName | head -n 3
# 不过这一般还需改psaawd和shadow权限

# 删除用户
userdel -r userName
# 最好删除前找到属于要删用户的文件
find / -user userName

权限切换

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
# 普通用户要想使用sudo,先用visudo编辑/etc/sudoers文件
visudo # 会打开sudoers文件
# 或
vim /etc/sudoers

# 指定用户sudo,添加下行
userName ALL=(ALL) ALL
# 指定用户免密sudo,添加下行
userName ALL=(ALL) NOPASSWD:ALL

# 某用户组免密sudo,添加下行
%groupName ALL=(ALL) NOPASSWD:ALL

# 经由 sudo 所执行的指令就好像是 root 亲自执行
sudo 指令 # 此处输入的密码是当前用户的密码,也可以设置成不输入密码执行sudo

# 系统第一次使用su切换至root权限时,先设置密码
sudo passwd root

# su 是最简单的用户切换命令
su - # 环境和权限都切换到root

# 使用 exit 命令进行手动切换回原用户
exit

压缩/解压

1
2
3
4
5
6
7
8
9
10
11
12
# 对于bzip2的解压缩

# 压缩
tar -jcv -f filename.tar.bz2 要被压缩的文件或目录

# 解压
tar -jxv -f filename.tar.bz2 -C 要解压在那个目录的位置

# -----------------------------------
-j # bzip2,即*.tar.bz2
-J # xz,即*.tar.xz
-z # gzip,即*.tar.gz

软件安装

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
# 基于RPM
# 安装需root权限

# yum 在线安装
yum search appName # 在yum服务器上找这个软件
yum install appName # 安装软件
yum update appName # 升级这个软件
yum remove appName # 删除软件

# rpm 查询与效验,也可以使用.rpm文件安装
rpm -ivh packageName.rpm # 安装
rpm -qa # 查询已安装软件
rpm -q appName # 查询是否安装appName这个软件
rpm -e appName # 删除软件

# -----------------------------------------------
# dpkg系
sudo apt-get update # 取回更新的软件包列表信息
sudo apt-get upgrade # 升级所有软件包

sudo apt-get install packagename # 安装软件包
sudo apt-get remove packagename # 卸载软件包
sudo apt-get purge packagename # 卸载并清除软件包的配置

sudo dpkg -i filename.deb # 安装本地二进制deb包
sudo dpkg -r packagename # 卸载软件包

sudo apt-get clean # 删除所有已下载的包文件

文件权限

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
# 文件属性:
# 读 r 4
# 写 w 2
# 执行 x 1
# 目录 d
# 文件 -
# 链接文件 l

# 修改用户组,-R递归修改
chgrp 用户组名 文件或目录名

# 修改拥有者,-R递归修改
chown 用户名 文件或目录名
chown 用户名:用户组名 文件或目录名 # 也可同时修改用户组

# 修改权限,-R递归修改
chmod 777 文件名
# u,g,o,这3种身份,a是全部
chmod u=rwx,g=rx,0=r 文件名 # =是设置
chmod a+w 文件名 # +是加入某权限
chmod g-x 文件名 # -是取消某权限

# 文件隐藏属性
# 常用的是+i,+a
chattr +i 文件名 # 使此文件无法被修改
chattr -i 文件名 # 使此文件可修改
# a是只能添加,不能修改和删除

变量设置

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
# 查看变量,echo有显示打印的意思,$后接变量名
echo $PATH
# 或
echo ${PATH}

# 添加PATH路径
PATH="${PATH}:/somedirpath"

# 设置变量,=号两边无空格
var=something
# 变量内容有空格时
var="lang is $LANG" # 双引号保留原有属性
var='lang is $LANG' # 单引号不保留原有属性

# 扩为环境变量
export var

# 取消变量
unset var

# 查看环境变量
env # 或export

# 查看环境变量与自定义变量
set

进程管理

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
# 终端后台

# 在命令最后加上&,表示后台执行
somecommand &
# 如果命令有输出,可重定向数据流

# 将目前任务丢到后台中,暂停
ctrl-z

# 查看后台任务
jobs -l

# 将后台任务拿到前台,%可选
fg %jobnumber

# 将后台任务状态变成运行中
bg %jobnumber

# 删除任务
kill -9 %jobnumber # 强制删除
kill -15 %jobnumber # 正常删除

# -------------------------------------------------

# 系统后台
nohup somecommand & # 注销登录后也继续运行

# -------------------------------------------------

# 查看自己bash相关进程
ps -l

# 查看系统中所有运行进程
ps aux

系统服务

1
2
3
4
5
6
7
8
9
10
# 管理服务unit
systemctl command unit
# command有(常用):
status # 查看状态
start # 立即启动
stop # 立即关闭
restart # 重启
reload # 重新加载配置文件
enable # 开机自启
disable # 不开机自启

Linux常用命令笔记
http://example.com/2022/07/23/Linux常用命令笔记/
作者
ZYUE
发布于
2022年7月23日
更新于
2022年7月31日
许可协议