目录
- sudo halt // 标准情况下是关机 但是要手动关闭电源 。
- sudo shutdown -h now // 直接关机并关闭电源
- sudo shutdown -h 18:00 // 指定时间关机
- sudo shutdown -h +10 // 指定多少分钟后关机
- sudo reboot // 引发主机重启
- sudo shutdown -r now // 直接重启
- synclient touchpadoff=1 // 关闭触摸板
- synclient touchpadoff=0 // 开启触摸板
- 1)时间的参考和设置
- cal // 显示当月日历
- date -s HH:MM // 设置系统时间
-
- 2)从服务器上同步时间
- sudo ntpdate ntp.ubuntu.com
- sudo ntpdate time.nist.gov
-
- 3)设置电脑的时区为上海
- sudo cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
- free -h // 显示一次当前内存的使用情况
- free -h -s 2 // 指定多少秒的间隔显示一次内存的使用情况。这个会一直输出显示
- watch -d free // 连续监视内存使用,同一个位置显示。使用 Ctrl+c 退出。
- 1)查看内核
- uname -r
-
- 2)查看 Ubuntu 版本
- cat /etc/issue
- 或 cat /etc/lsb-release
- 或 lsb_release -dsc
-
- 3)查看内核加载的模块
- lsmod
-
- 4)查看 PCI 设备
- lspci
-
- 5)查看 USB 设备
- lsusb
- 加参数 -v 可以显示 USB设备的描述表(descriptors)
- lsusb -v
-
- 6)查看网卡状态
- sudo ethtool eth0
-
- 7)查看 CPU 信息
- cat /proc/cpuinfo
-
- 8)显示当前硬件信息
- sudo lshw
-
- 9)显示当前内存 大小
- free -m |grep "Mem" | awk '{print $2}'
-
- 10)查看硬盘 温度
- sudo apt-get install hddtemp
- sudo hddtemp /dev/sda
-
top
如下图所示:

(1)列出当前登录的用户的进程
ps -l
输入内容如下图所示:

说明如下:
- F:代表这个程序的旗标 (flag), 4 代表使用者为 superuser;
- S:代表这个程序的状态 (STAT);
- UID:代表执行者身份
- PID:进程的ID号!
- PPID:父进程的ID;
- C:CPU使用的资源百分比
- PRI:指进程的执行优先权(Priority的简写),其值越小越早被执行;
- NI:这个进程的nice值,其表示进程可被执行的优先级的修正数值。
- ADDR:这个是内核函数,指出该程序在内存的那个部分。如果是个执行 的程序,一般就是『 - 』
- SZ 使用掉的内存大小;
- WCHAN:目前这个程序是否正在运作当中,若为 - 表示正在运作;
- TTY:登入者的终端机位置;
- TIME:使用掉的 CPU 时间。
- CMD:所下达的指令名称
(2)列出目前所有的正在内存当中的程序
ps aux
输出内容如下图所示:

说明如下:
- USER:该进程属于那个使用者账号。
- PID :该进程的进程ID号。
- %CPU:该进程使用掉的 CPU 资源百分比;
- %MEM:该进程所占用的物理内存百分比;
- VSZ :该进程使用掉的虚拟内存量 (Kbytes)
- RSS :该进程占用的固定的内存量 (Kbytes)
- TTY :该进程是在那个终端机上面运作,若与终端机无关,则显示 ?。另外, tty1-tty6 是本机上面的登入者程序,若为 pts/0 等等的,则表示为由网络连接进主机的程序。
- STAT:该程序目前的状态,主要的状态有:
- R :该程序目前正在运作,或者是可被运作;
- S :该程序目前正在睡眠当中,但可被某些讯号(signal) 唤醒。
- T :该程序目前正在侦测或者是停止了;
- Z :该程序应该已经终止,但是其父程序却无法正常的终止他,造成 zombie (疆尸) 程序的状态
- START:该进程被触发启动的时间;
- TIME :该进程实际使用 CPU 运作的时间。
- COMMAND:该程序的实际指令。
- ps -eo fname,rss|awk '{arr[$1]+=$2} END {for (i in arr) {print i,arr[i]}}'|sort
- -k2 -nr
ps -eo "%C : %p : %z : %a"|sort -k5 -nr
ps -eo "%C : %p : %z : %a"|sort -nr
pstree
输入内容如下(部分截图):

- 1)终止一个进程
- kill 进程号(PID号)
- 或者
- killall 进程名
-
- 2)强制终止一个进程
- kill -9 进程号
- 或者
- killall -9 进程名
ps -eal | awk '{ if ($2 == "Z") {print $4}}' | xargs sudo kill -9
- 1)lsof -p 进程的pid // 查看进程打开的文件
- 2)lsof abc.txt // 显示开启文件 abc.txt 的进程
- 3)lsof -i :22 // 显示 22 端口现在运行什么程序
- 4)lsof -c nsd // 显示 nsd 进程现在打开的文件
- 1)分区卸载
- sudo umount 目录名或设备名
-
- 2)只读挂载 ntfs 分区
- sudo mount -t ntfs -o nls=utf8,umask=0 /dev/sdb1 /mnt/c
-
- 3)可写挂载 ntfs 分区
- sudo mount -t ntfs-3g -o locale=zh_CN.utf8,umask=0 /dev/sdb1 /mnt/c
-
- 4)挂载 fat32 分区
- sudo mount -t vfat -o iocharset=utf8,umask=0 /dev/sda1 /mnt/c
-
- 1)挂载共享文件
- sudo mount -t smbfs -o
- username=xxx,password=xxx,iocharset=utf8 //192.168.1.1/share /mnt/share
-
- 2)挂载 ISO 文件
- sudo mount -t iso9660 -o loop,utf8 xxx.iso /mnt/iso
-
sudo hdparm -i /dev/hda
cat /proc/mdstat
- sudo hdparm -I /dev/sda
- 或
- sudo apt-get install blktool
- sudo blktool /dev/sda id
- df
- 用法:df [选项]... [文件]...显示每个<文件>所在的文件系统的信息,默认是显示所有
- 文件系统。
- 长选项必须用的参数在使用短选项时也是必需的。
- -a, --all 包括大小为 0 个块的文件系统
- -B, --block-size=大小 块以指定<大小>的字节为单位
- -h, --human-readable 以容易理解的格式印出文件系统大小 (例如 1K 234M 2G)
- -H, --si 类似 -h,但取 1000 的次方而不是 1024
- -i, --inodes 显示 inode 信息而非块使用量
- -k 即 --block-size=1K
- -l, --local 只显示本机的文件系统
- --no-sync 取得使用量数据前不进行同步动作 (默认)
- -P, --portability 使用 POSIX 兼容的输出格式
- --sync 取得使用量数据前先进行同步动作
- -t, --type=类型 只印出指定文件系统为指定<类型>的信息
- -T, --print-type 印出文件系统类型
- -x, --exclude-type=类型 只印出文件系统不是指定<类型>信息
- -v (忽略)
- --help 显示此帮助信息并离开
- --version 显示版本信息并离开
- 1)根据IP查询网卡地址
- arping IP 地址
-
- 2)根据IP查询电脑名
- nmblookup -A IP 地址
-
- 3)查看当前IP地址
- ifconfig eth0 |awk '/inet/ {split($2,x,":");print x[2]}'
-
- 4)查看当前网卡的物理地址
- ifconfig eth0 | head -1 | awk '{print $5}'
- sudo ifconfig eth0 down #关闭网卡
- sudo ifconfig eth0 hw ether 00:AA:BB:CC:DD:EE #然后改地址
- sudo ifconfig eth0 up #然后启动网卡
-
- 永久改地址方法:
- sudo gedit /etc/network/interfaces
- 在 iface eth0 inet static 后面添加一行:
- pre-up ifconfig eth0 hw ether 01:01:01:01:01:01
echo "blacklist ipv6" | sudo tee /etc/modprobe.d/blacklist-ipv6
sudo dhclient
- 1)cat /etc/passwd
- 2)cat /etc/group
- 3)whoami // 查询当前用户
- 1)切换到root账号
- sudo –s
-
- 2)切换到其他账号
- su 用户名
- 1)增加用户
- sudo adduser 用户名
-
- 2)删除用户
- sudo deluser 用户名
-
- 3)修改用户密码
- sudo passwd 用户名
-
- 4)禁止/启用某个用户
- sudo usermod -L 用户名 #锁定用户
- sudo usermod -U 用户名 #解锁
- 或
- sudo passwd -l 用户名 #锁定用户
- sudo passwd -u 用户名 #解锁
-
- 5)增加用户到admin组,让其有sudo权限
- sudo usermod -G admin -a 用户名
对嵌入式技术感兴趣,欢迎关注微信公众号“嵌入式之入坑笔记”,一起学习讨论啊!