Linux - ArchLinux Notes

Arch Linux Notes

//////////////////////////////////////////////

Author: Created by Nixawk

Time:   2014-12-17

1. Install Arch Linux

https://wiki.archlinux.org/index.php/Beginners%27_guide_(%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87)

-------- Install Awesome --------

# pacman -S slim awesome

# pacman -Ss intel | grep --color -i video (install video driver)  # video driver

# pacman -S xorg-server xorg-xinit xorg-utils xorg-server-utils

# vi /etc/slim.conf

+ session   awesome

# systemctl start slim.service

# mkdir -p ~/.config/awesome/

# cp /etc/skel/rc.lua ~/.config/awesome

# vi ~/.xinitrc

+ exec awesome

# chmod u+x ~/.xinitrc

-------- Install xface --------

https://wiki.archlinux.org/index.php/Xorg_%28%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87%29

http://www.neuraladvance.com/installing-xfce-410-on-arch-linux.html

lspci | grep VGA

pacman -S xf86-video-vesa

pacman -S xorg-server slim xfce4 xorg-twm xorg-xclock xterm

startxfce4

-------- fluxbox/openbox -------

how to install fluxbox/openbox ?

pacman -S terminus-font

pacman -S alsa-utils

---- ScreenSaver

pacman -S xscreensaver

vi ~/.xinitrc

+ xscreensaver -nosplash &

vi ~/.config/awesome/rc.lua

+ awful.key({ modkey, "Control" }, "l", function awful.util.spawn("xscreensaver-command -lock") end)

2. Package Management

pacman guide

help>>

https://wiki.archlinux.org/index.php/Pacman_%28%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87%29

man pacman

usage>>

pacman <operation> [options] [targets]

<operation>

-D, --database

-Q, --query

-R, --remove

-S, --sync

-T, --deptest

-U, --upgrade

-V, --version

-h, --help

<options>

-b, --dbpath <full path>

-r, --root <path>

-v, --verbose

--arch <arch>

--cachedir <dir>

--color <file>

--config <file>

--debug

--gpgdir <dir>

--logfile <full path>

--noconfirm

<TRANSACTION OPTIONS> [-S, -R, -U]

-d, --nodeps

--dbonly

--noprogressbar

--noscriptlet

--p, --print

--print-format <format>

<UPGRADE OPTIONS>

--force

--asdeps

--asexplicit

--ignore <package>

--ignoregroup <group>

--needed

<QUERY OPTIONS>

-c, --changelog

-d, --deps

-e, --explcit

-g, --groups

-i, --info

-k, --check

-l, --list

-m, --foreign

-n, --native

-o, --owns <file>

-p, --file

-q, --quite

-s, --search <regexp>

-t, --unrequired

-u, --upgrades

<REMOVE OPTIONS>

-c, --cascade

-n, --nosave

-s, --recursive

-u, --nneeded

<SYNC OPTIONS>

-c, --clean

-g, --groups

-i, --info

-l, --list

-q, --quite

-s, --search <regexp>

-u, --sysupgrade

-w, --downloadonly

-y, --refresh

pacman configuration file  /etc/pacman.conf

DBPath     ---- /var/lib/pacman/

CacheDir   ---- /var/cache/pacman/pkg/

LogFile    ---- /var/log/pacman.log

GPGDir     ---- /etc/pacman.d/gnupg

Mirrorlist ---- /etc/pacman.d/mirrorlist

删除软件包

pacman -R     ---- 删除软件包(删除单个软件包,保留其全部已经安装的依赖关系)

pacman -Rs    ---- 删除软件包(保留与其他已安装软件存在依赖的包)

pacman -Rsc   ---- 删除软件包(及所有的依赖,此操作是递归的,可能会删除大量的软件包)

pacman -Rn

pacman -Rsn

同步软件包

pacman -S --help              ---- 查询远程同步的数据库

pacman -S package_name        ---- 安装多个软件包(空格分开)

pacman -S "package>=version"  ---- 安装某个版本的软件包

pacman -Ss package_name       ---- 在包数据库中查询软件包

pacman -Si package_name       ---- 显示软件包信息

pacman -Sc    ---- 清理软件包缓存

pacman -Su    ---- 更新已安装的旧数据包

pacman -Syyu  ---- 强制数据库更新和升级

pacman -Syy   ---- 更新数据库

pacman -Syu   ---- 升级整个系统(滚动升级)

pacman -Sw package_name  ---- 下载包不安装包

pacman -sS package_name == pacman -Ss package_name  ---- ????

pacman -Sgl package_group ---- 查看分组包

pacman -S package_group   ---- 安装分组包

查询软件包

pacman -Q --help         ---- 查询本地软件包数据库

pacman -Qs package_name  ---- 查询已安装的软件包

pacman -Qi package_name  ---- 显示已安装软件包的信息

pacman -Qii package_name  ---- 显示已安装包的备份文件与修改状态

pacman -Ql package_name  ---- 获取以安装软件包所包含的文件列表

pacman -Qu   ---- 识别旧版本,尝试升级

pacman -Ql openssh | grep bin

更新数据包

pacman -U  /path/to/pack.pkg.tar.xz  ---- 安装一个本地包

pacman -U  http://demo/pack.tar.xz   ---- 安装远程的包

pkgfile -l package_name  ---- 查看某个包的文件列表(未安装包)

psctraa package_name     ---- 显示软件包的以来树

whoneeds package_name    ---- 查看已安装的软件包被哪些包依赖

pacsysclean              ---- 查看已安装包的大小

3. User Accounts

useradd -m -d /home/paul -s /usr/bin/zsh paul && passwd paul

sudo password paul

4. System Services

systemctl             # 等效于systemctl list-units

systemctl list-units  # 输出激活的单元

systemctl list-units --type=service  # 输出当前激活的服务单元

systemctl --failed    # 输出失败的单元

systemctl list-unit-files  # 查看所有安装的服务

systemctl 所有可用的单元文件存放在:

/usr/lib/systemd/system

/etc/systemd/system

systemctl is-enabled sshd.service

systemctl enable/disable sshd.service

systemctl reboot/poweroff/suspend/hibernate/hybird-sleep

https://wiki.archlinux.org/index.php/Systemd_(%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87)

systemctl使用单元

.service    ---- 系统服务

.mount      ---- 挂载点

.sockets    ---- sockets

.device     ---- 系统设备

.swap       ---- 交换分区

.path       ---- 文件路径

.target     ---- 启动目标

.timer      ---- system管理的计时器

systemctl start <单元>     # 立即激活单元

systemctl stop <单元>      # 立即停止单元

systemctl restart <单元>   # 重启单元

systemctl reload <单元>    # 重新加载配置

systemctl status <单元>    # 输出单元的运行状态. 例如: systemctl status sshd.service

systemctl is-enabled <单元>  # 检测单元是否自动启动

systemctl enable <单元>    # 开机自动激活单元

systemctl disable <单元>   # 取消开机自动激活单元

systemctl help <单元>      # 显示单元的手册页

systemctl daemon-reload   # 重新载入systemd, 扫描所有新的或者变动的单元

电源管理

systemctl reboot          # 重启

systemctl poweroff        # 退出系统并停止电源

systemctl suspend         # 待机

systemctl hibernate       # 休眠

systemctl hybird-sleep    # 混合休眠模式

5. System log Management

journalctl

journalctl -b -0          # 显示本次启动的信息

journalctl -b -1          # 显示上次启动的信息

journalctl -b -2          # 显示上上次启动的信息

journalctl -f             # 显示最新的日志

journalctl /usr/lib/systemd/systemd  # 显示最新信息

journalctl _PID=1         # 显示特定进程的消息

journalctl --unit sshd    # 显示指定单元的消息

journalctl -k             # 显示内核信息

journalctl --boot

journalctl -l

/etc/systemd/journald.conf

utmpdump /var/log/wtmp  ==  last

/var/log/lastlog    ---- 该日志记录最近登录成功和最后一次登录不成功的事件.

/var/log/user.log     #  记录所有等级用户的日志

/var/log/Xorg.x.log   #  记录X的日志

/var/log/syslog

acpid           ----  电源管理

avahi-daemon

dbus

dhclient

kernel

mtp-probe

NetworkManager

/USR/SBIN/CRON

wpa_supplicant

/var/log/pm-suspend.log

/var/log/pm-powersave.log

/var/log/messages

/var/log/kern.log

/var/log/faillog   ---- faillog

/var/log/dpkg.log  ---- 软件包安装的日志

/var/run/user/

++++++++++++

SSH 日志

systemctl status sshd.service

journalctl --unit sshd

ss -snt

w

last

lastlog

finger

pinky

who -a

6. Misc

# take a screenshot

https://wiki.archlinux.org/index.php/Table_of_Contents_%28%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87%29

pacman -S scrot

https://wiki.archlinux.org/index.php/Taking_a_Screenshot_%28%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87%29

$ xev

$ vim ~/.config/awesome/rc/lua

$ mkdir -p ~/screeshots

+ awful.key({ }, "Print", function () awful.util.spawn("scrot -e ‘mv $f ~/screenshots/ 2>/dev/null‘") end)

# IRC

pacman -S irssi

https://wiki.archlinux.org/index.php/Irssi_%28%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87%29

irssi>

/connect irc.freenode.net

/join #archlinux

pacman -S binutils   # strings

pacman -S x11vnc

x11vnc -display :0

pacman -S strings

strace ls             #  Trace the Execution of an Executable

strace -c ls          #  Generate Statistics Report of System Calls Using Option -c

strace -e write ls    #  Trace a Specific System Calls

strace -o out.txt ls  #  Save the Trace Execution to a File Using Option -o

strace -p 3389        #  Execute Strace on a Running Linux Process Using Option -p

strace -t -e open ls  #  Print Timestamp for Each Trace Output Line Option -t

strace -r ls          #  Print Relative Time for System Calls

strace -e trace=process cat /dev/null    # Trace process info [set, file, process, network, singal]

strace -e open,read,write id             # Trace open,read,write command.

7. Key bindings

awesome Desktop

Mod4 + Left            # pervious windows

Mod4 + Right           # next tag

Mod4 + Escape          # show desktop

Mod4 + j               # next windpws

Mod4 + k               # pervious windows

Mod4 + w               # Main Menu

Mod4 + Return          # Spawn a terminal

Mod4 + Control + r     # awesome restart

Mod4 + Shift + q       # awesome quit

Mod4 + l               # increase 0.05

Mod4 + h               # increase -0.05

Mod4 + Shift + h       # increse 1

Mod4 + Shift + j       # move windows to the next

Mod4 + Shift + k       # move windows to the previous

Mod4 + space           # layout

Mod4 + Shift + space   # layout

Mod4 + Ctrl + n        #

Mod4 + r               # run a command

Mod4 + x               # execute lua code

Mod4 + p               # menubar show

Mod4 + f               # fullsreen

Mod4 + Shift + c       # kill

Mod4 + Ctrl + space    # floating space

Mod4 + Control + Return#

Mod4 + o               # screen tranfs

Mod4 + t               # ontop

Mod4 + n               # Min

Mod4 + m               # Max

Mod4 + 1,...,9         # Windows 1 or Windows 9

8. VirtualBox

# pacman -S virtualbox virtualbox-host-dkms virtualbox-host-modules qt4

# modprobe vboxdrv

# modprobe vboxnetflt

# pacman -S gksu

# vim /etc/modules-load.d/virtualbox.conf

+ vboxdrv

+ vboxnetflt

+ vboxadp

+ vboxpci

The VirtualBox Linux kernel driver (vboxdrv) is either not loaded or there is a permission problem with /dev/vboxdrv. Please reinstall the kernel module by executing ‘pacman -S virtualbox-host-modules‘ as root. If you don‘t use our stock kernel, install
virtualbox-host-dkms and execute dkms autoinstall.

# modprobe vboxdrv

# systemctl enable dkms.service

VBoxManage: error: Filed to install "/home/someone/Oracle_VM_VirtualBox_Extension_Pack-4.3.20-12314.vbox-extpack": The installer failed with exit code 127: Error executing command as another user: No authentication agent was found.

# pacman -S gksu

时间: 2024-11-05 13:34:20

Linux - ArchLinux Notes的相关文章

Linux Study Notes

#pwd 查看目录 #ls  显示目录

linux commands notes

fsck -y mtr IP cat/tac runlevel/tty eject /eject -t 开/关 mount -o loop *.iso /mnt --bind /root /mnt -t tmpfs tmpfs /mnt uniq -u -c -d -s 跳过 -w 计算在内 export var / -f funcname dd if= of= bs=1k count=1024 w /who /finger lspci/lsusb -v od -xa / hexdump -C

Linux下用hostapd架无线AP

Published by 荒野无灯 on 2011-10-08 00:56:02 under 服务器/MySQL Tags: 路由,无线AP,hostapd 34452 views 本文将介绍在linux下面用笔记本无线网卡架设无线AP. 在win7下面用“承载网络”让爪机上wifi真是爽YY啊. 其实linux下面也是可以的,不过得看运气了.正如windows7下面要求你的无线网卡驱动必须支持“承载网“一样. 首先,查看网卡芯片信息: 对于pci网卡: 1 lspci 我的是: 1 03:00

我的第一个shell code -- hello world

尝试了好久,终于成功输出了hello world 实验环境 $uname -a Linux archlinux 4.2.5-1-ARCH #1 SMP PREEMPT Tue Oct 27 08:13:28 CET 2015 x86_64 GNU/Linux $gcc --version  gcc (GCC) 5.2.0  Copyright (C) 2015 Free Software Foundation, Inc.  This is free software; see the sourc

Centos7 php 5.6.19编译安装

0x01  前言 在php官网下载php-5.6.19.tar.gz源代码(php7虽然说性能提升很大,但是小菜菜还是先用着这个先吧),解压后根目录有个INSTALL文件,里面有安装教程了,目录如下: Installing PHP __________________________________________________________________ * General Installation Considerations * Installation on Unix system

Fedora samba 文件共享

fedora 配置samba 可给windows提供共享文件 1.dnf -y install samba 2.增加共享文件夹: samba就是共享文件存放地方 mkdir /home/zhui/samba chmod 777 /home/zhui/samba 3.配置samba vi /etc/samba/smb.conf 修改工作组,按自己实际填写:workgroup = WORKGROUP 在结尾加上,(zhui 是用户名): [gongxiang] comment = gongxiang

错误:undefined reference to `__gxx_personality_v0&#39;

使用gcc编译C代码,引用了C++ 库,出现这个错误,网上搜到这哥们的文章,解决问题 转自:错误:undefined reference to `__gxx_personality_v0' 1. Linux Develop Notes * 编译 c++ 程序需要添加 -lstdc++   sample: gcc -lstdc++ -o test test.c,否则会报 "undefinedreference to '__gxx_personality_v0' " 错误 2. 唉,用gc

博客保存

Jasey Wang Linux operations web 老赵点滴 .Net 架构 并行 云风的BLOG C Lua 游戏编程 四火的唠叨 java javascript 设计 闲思录 DBA 前端优化 架构 Adereth Clojure javascript dirlt 大数据 算法 cpp Lanceyan 大数据 架构 引擎搜索 I code it javascript python NoOps linux ops 小米 jerrypeng linux python lisp 平凡

Docker installation in sles SP2

Please refer to official site for installation  details :  https://docs.docker.com/install/linux/docker-ee/suse/ Example installation for SUSE Linux SP2 12.2 + Docker  17.06.2 1. Prerequisites  1.1. Get Docker EE URL by Registration , go to:  https:/