Ubuntu常用命令
适用版本
ubuntu 18 ~ 22
查看Linux版本
1 | lsb_release -a |
启用 root 账号
1、为root用户设置密码
1 | sudo passwd root |
2、修改ssh的配置文件,开启远程登录
编辑文件 /etc/ssh/sshd_config,找到 PermitRootLogin ,将其值设为 yes
管理其他用户
1、新增一个用户
1 | sudo useradd -r -m -s /bin/bash ubuntu |
-r:建立系统账号
-m:自动创建home目录
-s:指定用户登录后使用的shell
ubuntu:用户名
2、将用户ubuntu加入sudo组
1 | sudo usermod -aG sudo ubuntu |
3、删除用户ubuntu
1 | sudo userdel ubuntu |
修改Ubuntu软件源
建议安装系统阶段就指定mirror地址为 http://mirrors.163.com/ubuntu/ 。
若已安装完系统,Ubuntu 的软件源配置文件是 /etc/apt/sources.list。将系统自带的该文件做个备份,写入新内容:
deb http://mirrors.163.com/ubuntu/ focal main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ focal-security main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ focal-updates main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ focal-proposed main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ focal-backports main restricted universe multiverse
然后执行 apt-get update 更新下列表。
设置命令行前面的颜色
在 ~/.bashrc 中添加以下内容:
1 | export PS1="\[\033[01;35m\]\u\[\e[31;1m\]@\[\e[33;1m\]\w\[\033[31m\]$ \[\033[00m\]" |
然后执行 source ~/.bashrc
列出已安装的软件包
1 | apt list --installed |
iptables
1 | 查询入栈规则 |
查看磁盘容量和使用量
1 | df -hl |
查看当前目录下各目录的大小
1 | du -sh * |
docker
1、安装
1 | apt install docker.io |
2、启动 docker 服务
1 | sudo service docker start |
3、为普通用户设置docker权限
1 | sudo groupadd docker |
4、stop 所有容器
1 | docker stop $(docker ps -a -q) |
5、删除所有已停掉的容器
1 | docker rm $(docker ps -a -q) |
6、简单设置 docker 引擎
在文件 /etc/docker/daemon.json 中添加以下内容
1 | { |
然后重启docker服务
service docker restart
docker 为容器保存的标准输出日志(即用 docker logs 命令看到的日志)默认情况下似乎会无限量保存,所以限制下大小。
7、连接到其他机器上的 docker 服务
1 | export DOCKER_HOST=tcp://127.0.0.1:2375 (仅对本次会话有效,非永久) |
rpm 安装包转 deb 安装包
1 | sudo alien -d --script jdk-8u212-linux-x64.rpm |
安装 deb 包
1 | sudo dpkg -i jdk1.8_1.8.0212-1_amd64.deb |
nohup 命令强制后台运行
1 | nohup java -jar app.jar >/dev/null 2>log & # 如果报错了会输出错误日志 |
java -jar debug模式启动
1 | java -Xdebug -Xrunjdwp:server=y,transport=dt_socket,address=8000,suspend=n -jar app.jar |
关闭 apt-daily.service
1 | apt-get remove unattended-upgrades |
关闭完成后检查结果:
1 | systemctl status apt-daily.timer |
注意结果中的:
Active: inactive (dead)
shell脚本中获取脚本文件自身所在目录
1 | basepath=$(cd `dirname $0`; pwd) |
LINUX 中查看端口被占用
1 | netstat -anp | grep 端口号 |
看监控状态为 LISTEN 表示已经被占用(LISTENING 并不表示端口被占用),如 22 端口:
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1005/sshd
1005 是 pid,sshd 是进程名称。
以下命令可列出全部端口:
1 | netstat -nultp |
Windows 中查看端口被占用
1 | netstat -ano|findstr 10000 |
看监控状态为 LISTENING 表示已经被占用:
TCP 0.0.0.0:10000 0.0.0.0:0 LISTENING 8884
8884 是 pid。
以下命令可列出全部端口:
1 | netstat -ano |