首页 最新 热门 推荐

  • 首页
  • 最新
  • 热门
  • 推荐

Linux系统操作(2):关于管理linux服务器常用指令mark (for myself)

  • 25-03-03 17:02
  • 3131
  • 13873
blog.csdn.net


文章目录

  • 1、查询gpu状态
  • 2、网络服务配置及重启
    • 2.1 ubuntu网络相关问题
      • 2.1.1 网络重启
      • 2.1.2 配置网络服务参数
        • 16.04版本
        • 18.04 Desktop 版本
        • 18.04 Server版本
    • 2.2 centos网络相关问题
      • 2.2.1 网络重启
      • 2.2.2 配置网络服务参数
    • 2.3 linux查看网络信息
  • 3、返回当前位置
  • 4、退出账号
  • 5、临时修改系统语言无需重启
  • 6、添加用户、用户组管理员权限
    • 6.1 创建新用户
    • 6.2 用户登录权限的关闭与打开
    • 6.3 查询组内的成员
    • 6.4 查询用户属于那些组
    • 6.5 添加用户管理员权限
      • 方法一:
      • 方法二:
    • 6.6 添加用户组管理员权限
    • 6.7 将用户移入或移出组
  • 7、更改用户密码
    • 7.1 更改root密码
    • 7.2 更改其他用户密码
  • 8、进入超级权限
    • 8.1 ubuntu
    • 8.2 centos
  • 9、apt更换国内源
    • 9.1 ubuntu16.04更换国内源
      • 9.1.1 备份原始源文件source.list
      • 9.1.2 修改源文件source.list
      • 9.1.3 更新源
    • 9.2 ubuntu18.04更换国内源
      • 9.2.1 备份原始源文件source.list
      • 9.2.2 修改源文件source.list
      • 9.2.3 更新源
  • 10、浙江大学上网centos设置
  • 11、文件与磁盘的指令
    • 11.1 查看目前所有文件系统的总体可用空间、使用情况、挂载情况
    • 11.2 查看具体目录的大小
    • 11.2 已插入的磁盘情况
    • 11.3 分区以及磁盘大小调整
    • 11.4 格式化(分区结束之后可以进行每个分区不同文件格式的格式化)
    • 11.5 查看linux的文件系统是什么格式的(如ext2,ext3,xfs等)
      • 方法一
      • 方法二
  • 12、挂载与取消
    • 12.1 挂载操作
    • 12.2 开机自动挂载硬盘
    • 12.2 取消挂载
    • 12.3 取消挂载时遇到问题解决
  • 13、图形界面与命令行切换
  • 14、查看用户
  • 15、删除用户
  • 16、环境变量的总结
    • 17.1 Linux环境变量分类
    • 17.2 Linux设置环境变量的方法
      • 17.2.1 在/etc/profile文件中添加变量 对所有用户生效(永久的)
      • 17.2.2 在用户目录下的.bash_profile文件中增加变量 【对单一用户生效(永久的)】
      • 17.2.3 直接运行export命令定义变量 【只对当前shell(BASH)有效(临时的)】
    • 17.3 Linux环境变量使用
      • 17.3.1 Linux中常见的环境变量有:
      • 17.3.2 Linux也提供了修改和查看环境变量的命令,下面通过几个实例来说明:
  • 18、更改linux文件的拥有者及用户组(chown和chgrp)
    • 18.1 基本知识
    • 18.2 使用chown命令更改文件拥有者
    • 18.3 使用chgrp命令更改文件所属用户组
  • 19 Linux 下/etc/passwd文件详解
  • 20、RDP问题
  • 21、新建文件夹
  • 未整理部分

1、查询gpu状态

gpustat -cpu
nvidi-smi
  • 1
  • 2

2、网络服务配置及重启

2.1 ubuntu网络相关问题

2.1.1 网络重启

sudo systemctl restart networking.service 
sudo service network-manager restart
  • 1
  • 2

2.1.2 配置网络服务参数

16.04版本
sudo vim /etc/network/interfaces
  • 1
18.04 Desktop 版本

Ubuntu Desktop 18.04 设置静态IP方法(超详细)

18.04 Server版本

新的版本采用了netplan管理网络,在命令行中配置有点差别,配置文件在/etc/netplan/*.yaml

*.yaml就是那个配置文件,不同的计算机文件名称是不同的。

文件具体配置如下

network: 
  version: 2
  ethernets: 
    eno1: 
      addresses: [202.1**.1**.164/24]
      gateway4: 202.1*.1**.1
      dhcp4: no
      nameservers: 
        addresses: [202.117.0.20,202.117.0.21]  
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

2.2 centos网络相关问题

2.2.1 网络重启

systemctl restart network.service
或者
service network restart
  • 1
  • 2
  • 3

2.2.2 配置网络服务参数

vi  /etc/sysconfig/network-scripts/ifcfg-eth0
  • 1

2.3 linux查看网络信息

cat /etc/sysconfig/network-scripts/ifcfg-eth0
cat /etc/sysconfig/network-scripts/ifcfg-l0
ifconfig  (查看网络信息)
ip -a
  • 1
  • 2
  • 3
  • 4

3、返回当前位置

pwd

4、退出账号

logout

5、临时修改系统语言无需重启

echo $LANG
locale
LANG=zh_CN.UTF-8
locale
echo $LANG
  • 1
  • 2
  • 3
  • 4
  • 5

在这里插入图片描述

6、添加用户、用户组管理员权限

6.1 创建新用户

创建新用户

adduser usernameXXX
  • 1

这种方法会直接创建对应的用户的文件夹

6.2 用户登录权限的关闭与打开

usermod -L usernameXXX ##Lock 帐号usernameXXX
usermod -U usernameXXX ##Unlock 帐号usernameXXX
  • 1
  • 2

6.3 查询组内的成员

grep 'Plants' /etc/group
  • 1

Plants 为组的名字,可用于查询组内成员查询超级用户组

6.4 查询用户属于那些组

id username
  • 1

在这里插入图片描述

6.5 添加用户管理员权限

方法一:

sudo usermod -aG 超级用户组名 usernameXXX
例子:sudo  usermod -aG sudo username
其中a:表示添加,G:指定组名(把usernameXXX添加到组内)
  • 1
  • 2
  • 3

这种方法不建议使用 这样还需要查询超级用户用户组的成员(查询组内成员方法6.3 移除组内成员方法6.7)

方法二:

sudo vim /etc/sudoers
  • 1

将username ALL=(ALL:ALL) ALL追加到sudoers文件中:
取消用户的sudo权限,就是删除改行。

6.6 添加用户组管理员权限

用户组添加sudo权限。
将groupname ALL=(ALL:ALL) ALL追加到sudoers文件中:
给groupname用户组所有的用户都具有sudo权限

6.7 将用户移入或移出组

sudo gpasswd -a username groupname   # -a add
sudo gpasswd -d username groupname   # -d delete
  • 1
  • 2

7、更改用户密码

7.1 更改root密码

如果是以root身份登录,修改root密码.只要输入

passwd
  • 1

就会出现:

New password:
Retype new password:
  • 1
  • 2

按提示输入密码确认即可

7.2 更改其他用户密码

passwd username
  • 1

举例

passwd username
New password:
Retype new password:
  • 1
  • 2
  • 3

可以输入passwd --help来查看该命令的使用方法.

8、进入超级权限

8.1 ubuntu

sudo -i
  • 1

8.2 centos

su
  • 1

9、apt更换国内源

ubuntu16.04和18.04更换国内源
写在前面:安装好ubuntu双系统后,默认的软件更新源是国外的,在国内使用速度很慢,用"apt install xxx"安装软件时可能出现"网络不可达"、“你的网络需要认证吗”、"无法定位软件包"等错误,所以我们需要更换成国内的源,这样才能正常安装和更新软件。

9.1 ubuntu16.04更换国内源

9.1.1 备份原始源文件source.list

桌面打开终端,执行命令:

sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak
  • 1

9.1.2 修改源文件source.list

  • 终端执行命令:sudo chmod 777 /etc/apt/source.list更改文件权限使其可编辑;
  • 执行命令:sudo gedit /etc/apt/source.list打开文件进行编辑;
  • 删除原来的文件内容,复制下面的任意一个到其中并保存(常用的是阿里源和清华源,推荐阿里源);
  阿里源:
deb http://mirrors.aliyun.com/ubuntu/ xenial main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ xenial-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ xenial-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ xenial-proposed main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ xenial-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ xenial main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-backports main restricted universe multiverse

  清华源:
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-security main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-security main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse

	浙大源
deb http://mirrors.zju.edu.cn/ubuntu xenial main universe restricted multiverse
deb http://mirrors.zju.edu.cn/ubuntu xenial-security main universe restricted multiverse
deb http://mirrors.zju.edu.cn/ubuntu xenial-updates main universe restricted multiverse
deb http://mirrors.zju.edu.cn/ubuntu xenial-backports main universe restricted multiverse
deb-src http://mirrors.zju.edu.cn/ubuntu xenial main universe restricted multiverse
deb-src http://mirrors.zju.edu.cn/ubuntu xenial-security main universe restricted multiverse
deb-src http://mirrors.zju.edu.cn/ubuntu xenial-updates main universe restricted multiverse
deb-src http://mirrors.zju.edu.cn/ubuntu xenial-backports main universe restricted multiverse
  • 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

9.1.3 更新源

桌面终端执行命令:sudo apt update更新软件列表,换源完成。

9.2 ubuntu18.04更换国内源

9.2.1 备份原始源文件source.list

桌面打开终端,执行命令:sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak

9.2.2 修改源文件source.list

  • 终端执行命令:sudo chmod 777 /etc/apt/source.list更改文件权限使其可编辑;
  • 执行命令:sudo gedit /etc/apt/source.list打开文件进行编辑;
  • 删除原来的文件内容,复制下面的任意一个到其中并保存(常用的是阿里源和清华源,推荐阿里源,内容可以去博客复制);
  阿里源:
deb http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse
  清华源:
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-security main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-security main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse

  163源:
deb http://mirrors.163.com/ubuntu/ bionic main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ bionic-security main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ bionic-updates main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ bionic-backports main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ bionic main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ bionic-security main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ bionic-updates main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ bionic-backports main restricted universe multiverse

	浙大源
deb http://mirrors.zju.edu.cn/ubuntu bionic main universe restricted multiverse
deb http://mirrors.zju.edu.cn/ubuntu bionic-security main universe restricted multiverse
deb http://mirrors.zju.edu.cn/ubuntu bionic-updates main universe restricted multiverse
deb http://mirrors.zju.edu.cn/ubuntu bionic-backports main universe restricted multiverse
deb-src http://mirrors.zju.edu.cn/ubuntu bionic main universe restricted multiverse
deb-src http://mirrors.zju.edu.cn/ubuntu bionic-security main universe restricted multiverse
deb-src http://mirrors.zju.edu.cn/ubuntu bionic-updates main universe restricted multiverse
deb-src http://mirrors.zju.edu.cn/ubuntu bionic-backports main universe restricted multiverse
  • 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
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44

9.2.3 更新源

桌面终端执行命令:sudo apt update更新软件列表,换源完成。

10、浙江大学上网centos设置

链接教程

11、文件与磁盘的指令

11.1 查看目前所有文件系统的总体可用空间、使用情况、挂载情况

df -h
  • 1

查看已经挂在在系统上的磁盘的使用空间剩余空间、磁盘对应的挂在路径

df 只会列出已挂载的文件系统信息,对于没有挂载的文件系统是查看不到的。
在这里插入图片描述

11.2 查看具体目录的大小

  • 查看不同深度文件夹的大小
sudo du -h --max-depth=1 your_dest_dir
  • 1
  • 查看目录下每个文件夹的大小
du -sh * 
  • 1

11.2 已插入的磁盘情况

linux新增磁盘后,用fdisk等命令查询不到 - wsy3306 - 博客园
Linux服务器添加新硬盘无法识别解决方法(无需重启)_漠效的博客-CSDN博客_linux 安装找不到硬盘

sudo fdisk -l 
  • 1

列出硬盘的分区表、容量大小以及分区类型,但看不到具体文件系统类型
在这里插入图片描述

11.3 分区以及磁盘大小调整

用parted命令可以对大于2TB的磁盘设备进行分区,以及创建GPT分区(而fdisk命令就办不到了)。
可以参考如下链接

parted
  • 1

实际操作

sudo parted /dev/device
mklabel gpt  (定义分区表格式,常用的有msdos和gpt分区表格式,msdos不支持2TB以上容量的磁盘,所以大于2TB的磁盘选gpt分区表)
mkparted (如果只建立一个分区的话就直接回车,如果有多个分区的话就加上分区的名字)
然后定义分区格式(不支持ext4,想分ext4格式的分区,可以通过mkfs.ext4格式化成ext4格式)
Start?  1    (	定义分区的起始位置,单位支持K,M,G,T)
End?   5T  (	定义分区的结束位置,单位支持K,M,G,T)
(parted)    print  (查看当前分区情况,或这也可以)
q  (退出)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

在这里插入图片描述

11.4 格式化(分区结束之后可以进行每个分区不同文件格式的格式化)

mkfs

语法:mkfs[-t 文件系统格式] 设备文件名
选项与参数:
-t:文件系统格式,例如 ext3,ext2,vfat 等
  • 1
  • 2
  • 3
  • 4
  • 5

可以参考如下链接

11.5 查看linux的文件系统是什么格式的(如ext2,ext3,xfs等)

对比几种查看方式。感觉还是df的更加方便直观些。parted是GNU里面的一款分区工具。查看文件系统不过是其中的一个作用罢了。

方法一

df -T -h
  • 1

在这里插入图片描述
通过man df 查看发现那么中是这么描述的:

df - report file system disk space usage
其中有个参数  T
       -T, --print-type
              print file system type    //正是要求实现的功能。
  • 1
  • 2
  • 3
  • 4

使用df -T 即可。这样可以列出文件系统格式。但是后面的容量显示不是很好看罢了。如下图所示:
在这里插入图片描述

还可以列出指定的文件系统类型:

-t, --type=TYPE
              limit listing to file systems of type TYPE
  • 1
  • 2

在本环境下 df --type=ext3 。执行结果如图:
在这里插入图片描述
还这个跟-t正好相反的参数。感觉就跟选择和反选一样。

     -x, --exclude-type=TYPE
            limit listing to file systems not of type TYPE
  • 1
  • 2

在这里插入图片描述

方法二

parted(要求使用root权限)
parted   ,然后执行p(即print)
  • 1
  • 2

在这里插入图片描述

12、挂载与取消

12.1 挂载操作

  • 首先根据11查到硬盘或者移动设备的名字

  • 新建一个文件夹作为挂载所对应的位置

mkdir /firename
  • 1
  • 挂载
sudo mount /dev/sdb1 /firename
  • 1

12.2 开机自动挂载硬盘

编辑文件/etc/fstab, 根据已有的内容进行修改注明:文件格式,起始位置,结束位置,挂载地址,磁盘名或者磁盘ID

sudo vim /etc/fstab
  • 1

想要尝试看看能不能自动挂载可以先取消刚才的挂载命令让他umount,然后运行如下指令,进行一次全部开机时会启动的全部挂载

sudo mount -a
  • 1

12.2 取消挂载

sudo umount /dev/sdb1
  • 1

12.3 取消挂载时遇到问题解决

取消挂载/home时出现umount: /dev/device: device is busy,

原因是因为有程序在使用/dev/device目录,我们可以使用fuser查看那些程序的进程,然后杀掉就可以了。

[root@localhost home]# fuser -m /dev/device
    
/dev/device: 10278c 10279c 10280c 10281c 10282c 10295 10365 18222c
(前面的序号就是进程号,后面的字母表示占用形式===c,e等)

kill -9 pid
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

其他还有很多命令

fuser -kvm /dev/device   (-k的时候是kill)
umount -l /dev/device (强行解除挂载)
  • 1
  • 2

fuser命令_Linux fuser 命令用法详解:使用文件或文件结构识别进程

13、图形界面与命令行切换

ctrl+alt+F1/F2/F3...(多终端切换)
startx (命令行切换回图形界面)
  • 1
  • 2

14、查看用户

cat /etc/passwd 可以查看所有用户的列表
w 可以查看当前活跃的用户列表
cat /etc/group 查看用户组

groups 查看当前登录用户的组内成员
groups gliethttp 查看gliethttp用户所在的组,以及组内成员
whoami 查看当前登录用户名

一个简明的layout命令

cat /etc/passwd|grep -v nologin|grep -v halt|grep -v shutdown|awk -F":" '{ print $1"|"$3"|"$4 }'|more
  • 1

15、删除用户

userdel -r username //-r命令的作用是同时删除该用户主目录

16、环境变量的总结

Linux是一个多用户多任务的操作系统,可以在Linux中为不同的用户设置不同的运行环境,具体做法是设置不同用户的环境变量。

17.1 Linux环境变量分类

按照生命周期来分,Linux环境变量可以分为两类:

1、永久的:需要用户修改相关的配置文件,变量永久生效。
2、临时的:用户利用export命令,在当前终端下声明环境变量,关闭Shell终端失效。

按照作用域来分,Linux环境变量可以分为:

系统环境变量:系统环境变量对该系统中所有用户都有效。
用户环境变量:顾名思义,这种类型的环境变量只对特定的用户有效。

17.2 Linux设置环境变量的方法

17.2.1 在/etc/profile文件中添加变量 对所有用户生效(永久的)

用vim在文件/etc/profile文件中增加变量,该变量将会对Linux下所有用户有效,并且是“永久的”。
例如:编辑/etc/profile文件,添加CLASSPATH变量

  vim /etc/profile    
  export CLASSPATH=./JAVA_HOME/lib;$JAVA_HOME/jre/lib
  • 1
  • 2

注:修改文件后要想马上生效还要运行

source /etc/profile
  • 1

不然只能在下次重进此用户时生效。

17.2.2 在用户目录下的.bash_profile文件中增加变量 【对单一用户生效(永久的)】

用vim ~/.bash_profile文件中增加变量,改变量仅会对当前用户有效,并且是“永久的”。

vim ~/.bash.profile
export CLASSPATH=./JAVA_HOME/lib;$JAVA_HOME/jre/lib
  • 1
  • 2

注:修改文件后要想马上生效还要运行

source ~/.bash_profile
  • 1

不然只能在下次重进此用户时生效。

17.2.3 直接运行export命令定义变量 【只对当前shell(BASH)有效(临时的)】

在shell的命令行下直接使用export 变量名=变量值
定义变量,该变量只在当前的shell(BASH)或其子shell(BASH)下是有效的,shell关闭了,变量也就失效了,再打开新shell时就没有这个变量,需要使用的话还需要重新定义。

17.3 Linux环境变量使用

17.3.1 Linux中常见的环境变量有:

PATH:指定命令的搜索路径
PATH声明用法:
PATH=$PAHT::::--------:< PATH n >
export PATH
你可以自己加上指定的路径,中间用冒号隔开。环境变量更改后,在用户下次登陆时生效。
可以利用echo $PATH查看当前当前系统PATH路径。

HOME:指定用户的主工作目录(即用户登陆到Linux系统中时,默认的目录)。
HISTSIZE:指保存历史命令记录的条数。
LOGNAME:指当前用户的登录名。
HOSTNAME:指主机的名称,许多应用程序如果要用到主机名的话,通常是从这个环境变量中来取得的
SHELL:指当前用户用的是哪种Shell。
LANG/LANGUGE:和语言相关的环境变量,使用多种语言的用户可以修改此环境变量。
MAIL:指当前用户的邮件存放目录。
注意:上述变量的名字并不固定,如HOSTNAME在某些Linux系统中可能设置成HOST

17.3.2 Linux也提供了修改和查看环境变量的命令,下面通过几个实例来说明:

echo 显示某个环境变量值 echo $PATH
export 设置一个新的环境变量 export HELLO=“hello” (可以无引号)
env 显示所有环境变量
set 显示本地定义的shell变量
unset 清除环境变量 unset HELLO
readonly 设置只读环境变量 readonly HELLO

18、更改linux文件的拥有者及用户组(chown和chgrp)

18.1 基本知识

在Linux中,创建一个文件时,该文件的拥有者都是创建该文件的用户。该文件用户可以修改该文件的拥有者及用户组,当然root用户可以修改任何文件的拥有者及用户组。在Linux中,对于文件的权限(rwx),分为三部分,一部分是该文件的拥有者所拥有的权限,一部分是该文件所在用户组的用户所拥有的权限,另一部分是其他用户所拥有的权限。

文件(含文件夹,下同)的权限,在shell中可以通过chmod命令来完成。在 shell 中,可以使用chown命令来改变文件所有者及用户组,chgrp命令来改变文件所在用户组。

另外,在shell中,要修改文件当前的用户必须具有管理员root的权限。可以通过su命令切换到root用户,也可以通过sudo获得root的权限。

18.2 使用chown命令更改文件拥有者

在shell 中,可以使用chown命令来改变文件所有者。chown命令是change owner(改变拥有者)的缩写。需要要注意的是,用户必须是已经存在系统中的,也就是只能改变为在 /etc/passwd这个文件中有记录的用户名称才可以。

chown命令的用途很多,还可以顺便直接修改用户组的名称。此外,如果要连目录下的所有子目录或文件同时更改文件拥有者的话,直接加上 -R的参数即可。

基本语法:
chown [-R] 账号名称 文件或目录
chown [-R] 账号名称:用户组名称 文件或目录
参数:
-R : 进行递归( recursive )的持续更改,即连同子目录下的所有文件、目录
都更新成为这个用户组。常常用在更改某一目录的情况。
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
示例1:
[root@localhost home]# touch testfile        //由 root 用户创建文件 
[root@localhost home]# ls testfile –l 
输出为
-rw--w--w- 1 root root 0 Jun 7 19:35 testfile //文件的拥有者及拥有者级均为 root 

[root@localhost home]# chown yangzongde testfile //修改文件拥有者为 yangzongde 
[root@localhost home]# ls testfile -l 
输出为
-rw--w--w- 1 yangzongde root 0 Jun 7 19:35 testfile //查看文件拥有者为 yangzongde,但组仍为 root 

示例2:
chown bin install.log
ls -l
-rw-r--r--  1 bin  users 68495 Jun 25 08:53 install.log
chown root:root install.log
ls -l
-rw-r--r--  1 root root 68495 Jun 25 08:53 install.log
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18

18.3 使用chgrp命令更改文件所属用户组

在shell中,可以使用chgrp命令来改变文件所属用户组,该命令就是change group(改变用户组)的缩写。需要注意的是要改变成为的用户组名称,必须在 /etc/group里存在,否则就会显示错误。

基本语法:
chgrp [-R] 用户组名称 dirname/filename ...
参数:
-R : 进行递归( recursive )的持续更改,即连同子目录下的所有文件、目录
都更新成为这个用户组。常常用在更改某一目录的情况。
  • 1
  • 2
  • 3
  • 4
  • 5
示例3
[root@localhost home]# ls testfile -l 
输出为
-rw--w--w- 1 yangzongde root 0 Jun 7 19:35 testfile //查看文件拥有者为 yangzongde,但组为 root 
[root@localhost home]# chgrp yangzongde testfile //修改拥有者组为 yangzongde 
[root@localhost home]# ls testfile -l 
输出为
-rw--w--w- 1 yangzongde yangzongde 0 Jun 7 19:35 testfile 
[root@localhost home]# chown root:root testfile // 使用 chown 一次性修改拥有者及组 
[root@localhost home]# ls testfile -l 
输出为
-rw--w--w- 1 root root 0 Jun 7 19:35 testfile 

示例4
[root@linux ~]# chgrp users install.log
[root@linux ~]# ls -l
-rw-r--r--  1 root users 68495 Jun 25 08:53 install.log

示例5
更改为一个 /etc/group里不存在的用户组
[root@linux ~]# chgrp testing install.log
chgrp: invalid group name `testing' <== 出现错误信息~找不到这个用户组名~
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22

19 Linux 下/etc/passwd文件详解

https://blog.csdn.net/a1154490629/article/details/52190801

20、RDP问题

https://www.linuxidc.com/Linux/2018-10/155073.htm

21、新建文件夹

新建普通文件夹

mkdir dirname
  • 1

新建多个普通文件夹

mkdir dirname1 dirname2 dirname3
  • 1

递归创建一些列文件树

mkdir -p dirname1/dirname2/dirname3
  • 1

设置新建文件夹的权限

mkdir -m 权限数字 dirname
  • 1

未整理部分

2,从用户组中删除指定用户

sudo usermod -G 用户组名 用户名

列子:sudo usermod -G 组1 -G 组2 用户名

其中 -G 表示:加到组1 和 组2,可以添加到多个组,当然也可以是一个组。

    -G的含义是把用户添加到指定的用户组,但是会自动从其他组中删除。

    -a的含义是追加,但不会从其他组中删除。
  • 1
  • 2
  • 3

Linux查看系统基本信息,版本信息(最全版)
https://blog.csdn.net/qq_31278903/article/details/83146031

通过命令: id username

来查看用户信息

ps -ef|grep mcfcm_st|grep -v grep|cut -c 9-15|xargs kill -9

管道符“|”用来隔开两个命令,管道符左边命令的输出会作为管道符右边命令的输入。下面说说用管道符联接起来的

几个命令:
“ps - ef”是linux 里查看所有进程的命令。这时检索出的进程将作为下一条命令“grep mcfcm_st”的输入。
“grep mcfcm_st”的输出结果是,所有含有关键字“mcfcm_st”的进程,这是Oracle数据库中远程连接进程的共同特点。
“grep -v grep”是在列出的进程中去除含有关键字“grep”的进程。
“cut -c 9-15”是截取输入行的第9个字符到第15个字符,而这正好是进程号PID。
“xargs kill -9”中的xargs命令是用来把前面命令的输出结果(PID)作为“kill -9”命令的参数,并执行该令。

“kill -9”会强行杀掉指定进程,这样就成功清除了oracle的所有远程连接进程。其它类似的任务,只需要修改“grep mcfcm”中的关键字部分就可以了。

ps -ef|grep mcfcm|grep -v grep|cut -c 9-15|xargs kill -9

2、 killall 进程名

  如杀死java相关进程:killall java
  • 1

1、ps指令与kill配合:

   ps -ef|grep LOCAL=NO|grep -v grep|cut -c 9-15|xargs kill -9
  • 1

管道符“|”用来隔开两个命令,管道符左边命令的输出会作为管道符右边命令的输入。下面说说用管道符联接起来的

几个命令:

 “ ps - ef”是Red Hat 里查看所有进程的命令。这时检索出的进程将作为下一条命令“grep LOCAL=NO”的输入。 
  • 1

“grep LOCAL=NO”的输出结果是,所有含有关键字“LOCAL=NO”的进程,这是Oracle数据库中远程连接进程的共同特点。

“grep -v grep”是在列出的进程中去除含有关键字“grep”的进程。

“cut -c 9-15”是截取输入行的第9个字符到第15个字符,而这正好是进程号PID。

“xargs kill -9”中的xargs命令是用来把前面命令的输出结果(PID)作为“kill -9”命令的参数,并执行该令。

     “kill -9”会强行杀掉指定进程,这样就成功清除了oracle的所有远程连接进程。其它类似的任务,只需要修改“grep LOCAL=NO”中的关键字部分就可以了
  • 1

作者:lgh1117
来源:CSDN
原文:https://blog.csdn.net/lgh1117/article/details/48402285
版权声明:本文为博主原创文章,转载请附上博文链接!

nohup 命令可以使命令永久的执行下去,和终端没有关系,退出终端也不会影响程序的运行;
& 是后台运行的意思,但当用户退出的时候,命令自动也跟着退出。
那么,把两个结合起来nohup 命令 &这样就能使命令永久的在后台执行

以run_train.sh文件为例

source env_set.sh

nohup python -u train_image_classifier.py
–dataset_name=KaTeX parse error: Undefined control sequence: \ at position 14: DATASET_NAME \̲ ̲ --dataset_dir…DATASET_DIR
–checkpoint_path=KaTeX parse error: Undefined control sequence: \ at position 17: …HECKPOINT_PATH \̲ ̲ --model_name=…TRAIN_DIR
–learning_rate=0.001
–learning_rate_decay_factor=0.76
–num_epochs_per_decay=50
–moving_average_decay=0.9999
–optimizer=adam
–ignore_missing_vars=True
–batch_size=32 > output.log 2>&1 &

TensorFlow中运行程序,在run_train.sh文件前后添加nohup 命令 > output.log 2>&1 &让命令在后台执行。

其中 0、1、2分别代表如下含义:
0 – stdin (standard input)
1 – stdout (standard output)
2 – stderr (standard error)

nohup+最后面的&是让命令在后台执行

output.log 是将信息输出到output.log日志中

2>&1是将标准错误信息转变成标准输出,这样就可以将错误信息输出到output.log 日志里面来。

查看日志(动态显示)

tail -f output.log

查看日志(一次性显示整个文件)

cat output.log

查看当前Python进程

ps -ef |grep python

杀死进程

当我们在终端或控制台工作时,可能不希望由于运行一个作业而占住了屏幕,因为可能还有更重要的事情要做,比如阅读电子邮件。对于密集访问磁盘的进程,我们更希望它能够在每天的非负荷高峰时间段运行(例如凌晨)。为了使这些进程能够在后台运行,也就是说不在终端屏幕上运行,有几种选择方法可供使用。

1、&

当在前台运行某个作业时,终端被该作业占据;可以在命令后面加上& 实现后台运行。例如:sh test.sh &

适合在后台运行的命令有f i n d、费时的排序及一些s h e l l脚本。在后台运行作业时要当心:需要用户交互的命令不要放在后台执行,因为这样你的机器就会在那里傻等。不过,作业在后台运行一样会将结果输出到屏幕上,干扰你的工作。如果放在后台运行的作业会产生大量的输出,最好使用下面的方法把它的输出重定向到某个文件中:

command > out.file 2>&1 &
这样,所有的标准输出和错误输出都将被重定向到一个叫做out.file 的文件中。
注意:当你成功地提交进程以后,就会显示出一个进程号,可以用它来监控该进程,或杀死它。(ps -ef | grep 进程号 或者 kill -9 进程号)

2、nohup命令:

使用&命令后,作业被提交到后台运行,当前控制台没有被占用,但是一但把当前控制台关掉(退出帐户时),作业就会停止运行。nohup命令可以在你退出帐户之后继续运行相应的进程。nohup就是不挂起的意思( no hang up)。该命令的一般形式为: nohup command &

如果使用nohup命令提交作业,那么在缺省情况下该作业的所有输出都被重定向到一个名为nohup.out的文件中,除非另外指定了输出文件:

nohup command > myout.file 2>&1

【实例】

nohup.sh

i=1
while [ $i -le 100000 ]
do
echo $i >> result.txt
i=expr $i + 1
done
1)使用sh nohup.sh 执行,当前命令行就会hang住,如图:

2)使用sh nohup.sh & 执行,就会把作业提交到后台,释放当前命令行,同时显示了进程号;但是如果帮当前命令窗口关闭,整个作业就停止了;

注:可以使用ps -ef | grep nohup.sh 来查看后台作业运行情况。

3)使用nohup sh nohup.sh > log 2>1& & ,同样把作业提交到后台,释放当前窗口;而且即使把当前命令窗口关闭,作业仍然运行。

注:使用nohup执行命令,不会返回当前进程号,要跟踪后台作业,可以使用jobs命令查看;或者使用 ps -ef | grep nohup.sh 来查看

3、ctrl + z
可以将一个正在前台执行的命令放到后台,并且处于暂停状态。

4、Ctrl+c

终止前台命令。

5、jobs
查看当前有多少在后台运行的命令。
jobs -l选项可显示所有任务的PID,jobs的状态可以是running, stopped, Terminated。但是如果任务被终止了(kill),shell 从当前的shell环境已知的列表中删除任务的进程标识。

6、bg
将一个在后台暂停的命令,变成在后台继续执行。如果后台中有多个命令,可以用bg %jobnumber将选中的命令调出。
如图,先前台运行一个脚本,然后转到后台,查看后台作业情况

7、fg
将后台中的命令调至前台继续运行。如果后台中有多个命令,可以用fg %jobnumber(是命令编号,不是进程号)将选中的命令调出。

1、运行.sh文件

直接用./sh 文件就可以运行,但是如果想后台运行,即使关闭当前的终端也可以运行的话,需要nohup命令和&命令。

(1)&命令

      功能:加在一个命令的最后,可以把这个命令放在后台执行
  • 1

(2)nohup命令

      功能:不挂断的运行命令
  • 1

​

2、查看当前后台运行的命令

有两个命令可以用,jobs和ps,区别是jobs用于查看当前终端后台运行的任务,换了终端就看不到了。而ps命令用于查看瞬间进程的动态,可以看到别的终端运行的后台进程。

(1)jobs命令

    功能:查看当前终端后台运行的任务
  • 1

​

   jobs -l选项可显示当前终端所有任务的PID,jobs的状态可以是running,stopped,Terminated。+ 号表示当前任务,- 号表示后一个任务。
  • 1

(2)ps命令

      功能:查看当前的所有进程
  • 1

​

     ps -aux | grep "test.sh"    #a:显示所有程序  u:以用户为主的格式来显示   x:显示所有程序,不以终端机来区分
  • 1

3、关闭当前后台运行的命令

  kill命令:结束进程

 (1)通过jobs命令查看jobnum,然后执行   kill %jobnum

 (2)通过ps命令查看进程号PID,然后执行  kill %PID

   如果是前台进程的话,直接执行 Ctrl+c 就可以终止了
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

4、前后台进程的切换与控制

 (1)fg命令

   功能:将后台中的命令调至前台继续运行

   如果后台中有多个命令,可以先用jobs查看jobnun,然后用 fg %jobnum 将选中的命令调出。

 (2)Ctrl + z 命令

   功能:将一个正在前台执行的命令放到后台,并且处于暂停状态

 (3)bg命令

   功能:将一个在后台暂停的命令,变成在后台继续执行

   如果后台中有多个命令,可以先用jobs查看jobnum,然后用 bg %jobnum 将选中的命令调出继续执行。
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15

mark
https://www.jianshu.com/p/747e0d5021a2

Linux 查看某个用户的进程
To view only the processes owned by a specific user, use the following command:

top -U [USERNAME]

and replace [USERNAME] with the name of the user.

引言
研发需要知道某 Python 程序脚本所在目录,这研发,还好他不是后端研发。
不过当我们使用 ps 或 top 命令查看时,并不能查看到 Python 程序脚本的绝对路径。
我模糊地记得可以在/proc/${PID}下可以查到相关信息,但是很久没用过,忘记了,
现在我来重新学习记录下。

Linux 查看进程的详细信息
Linux 在启动一个进程时,系统会在/proc下创建一个以 PID 命名的文件夹,在该文件夹下会有我们的进程的信息, 其中包括一个名为 exe 的文件即记录了绝对路径,通过 ll 或 ls –l命令即可查看。

cwd 符号链接的是进程运行目录;
exe 符号链接就是执行程序的绝对路径;
cmdline 就是程序运行时输入的命令行命令;
environ 记录了进程运行时的环境变量;
fd 目录下是进程打开或使用的文件的符号连接。

https://blog.csdn.net/longerzone/article/details/8015941
https://blog.csdn.net/gatieme/article/details/52777721
https://www.cnblogs.com/baby123/p/6477429.html
https://blog.csdn.net/liuyanfeier/article/details/62422742

pkill -u 你的用户名

root修改普通用户的密码:sudo passwd user_name然后连续两次输入新的用户密码即可;2. root查看普通用户密码:密码是无法被查看的,即使是root也不行,因此普通用户要是遗忘了密码,可以参照上一步,让管理员使用root权限修改密码,然后再将新密码告知普通用户;3. 普通用户修改自己的密码:passwd直接使用上述命令即可,之后它会要求你输入原先的密码和新的密码。

(1条消息) Linux find查找文件及文件夹命令_m0_37568814的博客-CSDN博客_linux 查找文件夹

(1条消息) Linux之tree命令生成文件目录结构_ZONGXP的博客-CSDN博客_linux生成目录结构

文章知识点与官方知识档案匹配,可进一步学习相关知识
CS入门技能树Linux入门初识Linux40155 人正在系统学习中
注:本文转载自blog.csdn.net的呆呆象呆呆的文章"https://blog.csdn.net/qq_41554005/article/details/90181462"。版权归原作者所有,此博客不拥有其著作权,亦不承担相应法律责任。如有侵权,请联系我们删除。
复制链接
复制链接
相关推荐
发表评论
登录后才能发表评论和回复 注册

/ 登录

评论记录:

未查询到任何数据!
回复评论:

分类栏目

后端 (14832) 前端 (14280) 移动开发 (3760) 编程语言 (3851) Java (3904) Python (3298) 人工智能 (10119) AIGC (2810) 大数据 (3499) 数据库 (3945) 数据结构与算法 (3757) 音视频 (2669) 云原生 (3145) 云平台 (2965) 前沿技术 (2993) 开源 (2160) 小程序 (2860) 运维 (2533) 服务器 (2698) 操作系统 (2325) 硬件开发 (2491) 嵌入式 (2955) 微软技术 (2769) 软件工程 (2056) 测试 (2865) 网络空间安全 (2948) 网络与通信 (2797) 用户体验设计 (2592) 学习和成长 (2593) 搜索 (2744) 开发工具 (7108) 游戏 (2829) HarmonyOS (2935) 区块链 (2782) 数学 (3112) 3C硬件 (2759) 资讯 (2909) Android (4709) iOS (1850) 代码人生 (3043) 阅读 (2841)

热门文章

101
推荐
关于我们 隐私政策 免责声明 联系我们
Copyright © 2020-2025 蚁人论坛 (iYenn.com) All Rights Reserved.
Scroll to Top