2012年12月24日 星期一

Ubuntu EOL 版本, 如何 apt-get update?

常常會遇到部份非 LTS(Long Time Support)版本, EOL後站台無法更新的情形, 如何解決呢?

Ubuntu Wiki : 可查詢EOL版本代號
https://wiki.ubuntu.com/Releases

Ubuntu會將EOL的版本相關資源放在~~
http://old-releases.ubuntu.com/ubuntu/dists/

只要到 /etc/apt/sources.list 修改:
將網址改成 http://old-releases.ubuntu.com/ubuntu/ , 然後執行 # apt-get update 即可


2012年10月17日 星期三

cannot register miscdev on minor=130 (err=-16)

有時侯在 modprobe w83627hf_wdt 時會出現 cannot register miscdev on minor=130 (err=-16), 表示有 driver 佔住 miscdev minor 130

首先查詢是什麼裝置佔住 miscdev minor 130

# cat /proc/misc

從下面訊息可以看到一樣是 watchdog driver 佔住 130 ==============================================
[avalue@localhost ~]$ cat /proc/misc
130 watchdog
229 fuse
223 uinput
184 microcode
 60 network_throughput
 61 network_latency
 62 cpu_dma_latency
236 device-mapper
144 nvram
228 hpet
235 autofs
231 snapshot
227 mcelog
 63 vga_arbiter
==============================================

# lsmod | grep wdt

 可以看到有一支"iTCO_wdt"已被loading ==============================================
[root@localhost ~]# lsmod | grep wdt
iTCO_wdt               16945  0
iTCO_vendor_support    12632  1 iTCO_wdt
==============================================

拿掉 iTCO_wdt, 即可
# rmmod iTCO_wdt


2012年7月30日 星期一

Ubuntu 11.04 ALSA driver compile

Ubuntu 11.04 在編譯 alsa-driver時, Audio Device 為 HDA ATI SB下, 編譯完成後會出現問題,目前懷疑是 alsaconf 關係, 但不曉得會何在 ubuntu 11.04 拿掉 alsaconf

解決方式:
# add-apt-repository ppa:ubuntu-audio-dev/ppa
# apt-get update
# apt-get install linux-alsa-driver-modules-$(uname -r)


然後再去編譯 driver 就可以

2012年6月25日 星期一

Linux 進入 S3, S4 的方式

Linux 進入 S3, S4 的方式有兩種:

使用桌面icon:
hibernate: 右上按電源, 按住alt會有hibernate的icon

S3:
 1. pm-suspend
 2. echo 3 > /proc/acpi/sleep

S4:
 1. pm-hibernate
 2. echo 4 > /proc/acpi/sleep

Ubuntu 16.04&18.04
# systemctl suspend
# systemctl hibernate

Ubuntu 18.04 hibernate 回復不成功:
1) 安裝OS時需要有swap partition, 並確認swap uuid 
$ ls -l /dev/disk/by-uuid

2) 修改Grub及initramfs
$ sudo vim /etc/default/grub
================================================================
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash resume=/dev/disk/by-uuid/439e82fd-804e-4e9a-8922-2ea49e678fa1"
================================================================
$ sudo update-grub
$ sudo update-initramfs -u
$ reboot

有時會遇到 USB 裝置無法將系統在 S3 或 S4 時 wakeup, 必須 enabled 裝置

* 查詢 USB Device Number *
[root@localhost ~]# lsusb
Bus 001 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 002 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 003 Device 002: ID 0b38:0010 Gear Head 107-Key Keyboard
Bus 003 Device 003: ID 046d:c03f Logitech, Inc. M-BT85 [UltraX Optical Mouse]
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub

* 查詢 USB Device 在 /sys 位置 *
[root@localhost ~]# grep c03f /sys/bus/usb/devices/*/id*
/sys/bus/usb/devices/3-3/idProduct:c03f

[root@localhost ~]# cat /sys/bus/usb/devices/3-3/power/wakeup
disabled ==> 預設是 disabled

* enabled Device *
[root@localhost ~]# echo enabled > /sys/bus/usb/devices/3-3/power/wakeup
[root@localhost ~]# cat /sys/bus/usb/devices/3-3/power/wakeup
enabled

有時會遇到滑鼠無法 wakeup 應該是相容性問題



2012年6月4日 星期一

Fedora CentOS Ubuntu 等Linux 的版本比较

來源出處:

小河小鱼的博客


Lunix 的版本有很多, 它们之间的比较和区别

Linux最早由Linus Benedict Torvalds在1991年开始编写。在这之前,Richard Stallman创建了Free Software Foundation(FSF)组织以及GNU项目,并不断的编写创建GNU程序(此类程序的许可方式均为GPL: General Public License)。在不断的有杰出的程序员和开发者加入到GNU组织中后,便造就了今天我们所看到的Linux,或称GNU/Linux。

Linux的发行版本可以大体分为两类,一类是商业公司维护的发行版本,一类是社区组织维护的发行版本,前者以著名的Redhat(RHEL)为代表,后者以Debian为代表。下面介绍一下各个发行版本的特点:

Redhat,应该称为Redhat系列,包括RHEL(Redhat Enterprise Linux,也就是所谓的Redhat Advance Server,收费版本)、Fedora Core(由原来的Redhat桌面版本发展而来,免费版本)、CentOS(RHEL的社区克隆版本,免费)。Redhat应该说是在国内使用人群最多 的Linux版本,甚至有人将Redhat等同于Linux,而有些老鸟更是只用这一个版本的Linux。所以这个版本的特点就是使用人群数量大,资料非 常多,言下之意就是如果你有什么不明白的地方,很容易找到人来问,而且网上的一般Linux教程都是以Redhat为例来讲解的。Redhat系列的包管 理方式采用的是基于RPM包的YUM包管理方式,包分发方式是编译好的二进制文件。稳定性方面RHEL和CentOS的稳定性非常好,适合于服务器使用, 但是Fedora Core的稳定性较差,最好只用于桌面应用。

Debian,或者称Debian系列,包括Debian和Ubuntu等。Debian是社区类Linux的典范,是迄今为止最遵循GNU规范的Linux系统。Debian最早由Ian Murdock于1993年创建,分为三个版本分支(branch): stable, testing 和 unstable。其中,unstable为最新的测试版本,其中包括最新的软件包,但是也有相对较多的bug,适合桌面用户。testing的版本都经 过unstable中的测试,相对较为稳定,也支持了不少新技术(比如SMP等)。而stable一般只用于服务器,上面的软件包大部分都比较过时,但是 稳定和安全性都非常的高。Debian最具特色的是apt-get / dpkg包管理方式,其实Redhat的YUM也是在模仿Debian的APT方式,但在二进制文件发行方式中,APT应该是最好的了。Debian的资料也很丰富,有很多支持的社区,有问题求教也有地方可去:)

Ubuntu严格来说不能算一个独立的发行版本,Ubuntu是基于Debian的unstable版本加强而来,可以这么说,Ubuntu就是一个拥有Debian所有的优点,以及自己所加强的优点的近乎完美的 Linux桌面系统。根据选择的桌面系统不同,有三个版本可供选择,基于Gnome的Ubuntu,基于KDE的Kubuntu以及基于Xfc的Xubuntu。特点是界面非常友好,容易上手,对硬件的支持非常全面,是最适合做桌面系统的Linux发行版本。

Gentoo,伟大的Gentoo是Linux世界最年轻的发行版本,正因为年轻,所以能吸取在她之前的所有发行版本的优点,这也是Gentoo被称为最 完美的Linux发行版本的原因之一。Gentoo最初由Daniel Robbins(FreeBSD的开发者之一)创建,首个稳定版本发布于2002年。由于开发者对FreeBSD的熟识,所以Gentoo拥有媲美 FreeBSD的广受美誉的ports系统 ——Portage包管理系统。不同于APT和YUM等二进制文件分发的包管理系统,Portage是基于源代码分发的,必须编译后才能运行,对于大型软 件而言比较慢,不过正因为所有软件都是在本地机器编译的,在经过各种定制的编译参数优化后,能将机器的硬件性能发挥到极致。Gentoo是所有Linux 发行版本里安装最复杂的,但是又是安装完成后最便于管理的版本,也是在相同硬件环境下运行最快的版本。

最后,介绍一下FreeBSD,需要强调的是:FreeBSD并不是一个Linux系统!但FreeBSD与Linux的用户群有相当一部分是重合的,二 者支持的硬件环境也比较一致,所采用的软件也比较类似,所以可以将FreeBSD视为一个Linux版本来比较。FreeBSD拥有两个分 支:stable和current。顾名思义,stable是稳定版,而 current则是添加了新技术的测试版。FreeBSD采用Ports包管理系统,与Gentoo类似,基于源代码分发,必须在本地机器编后后才能运 行,但是Ports系统没有Portage系统使用简便,使用起来稍微复杂一些。FreeBSD的最大特点就是稳定和高效,是作为服务器操作系统的最佳选 择,但对硬件的支持没有Linux完备,所以并不适合作为桌面系统。

下面给为选择一个Linux发行版本犯愁的朋友一些建议:
如果你只是需要一个桌面系统,而且既不想使用盗版,又不想花大量的钱购买商业软件,那么你就需要一款适合桌面使用的Linux发行版本了,如果你不想自己 定制任何东西,不想在系统上浪费太多时间,那么很简单,你就根据自己的爱好在ubuntu、kubuntu以及xubuntu中选一款吧,三者的区别仅仅 是桌面程序的不一样。
如果你需要一个桌面系统,而且还想非常灵活的定制自己的Linux系统,想让自己的机器跑得更欢,不介意在Linux系统安装方面浪费一点时间,那么你的唯一选择就是Gentoo,尽情享受Gentoo带来的自由快感吧!
如果你需要的是一个服务器系统,而且你已经非常厌烦各种Linux的配置,只是想要一个比较稳定的服务器系统而已,那么你最好的选择就是CentOS了,安装完成后,经过简单的配置就能提供非常稳定的服务了。
如果你需要的是一个坚如磐石的非常稳定的服务器系统,那么你的唯一选择就是FreeBSD。
如果你需要一个稳定的服务器系统,而且想深入摸索一下Linux的各个方面的知识,想自己定制许多内容,那么我推荐你使用Gentoo。

2012年2月16日 星期四

insmod modules Invalid module format 問題?

insmod: error inserting './sn9c20x.ko': -1 Invalid module format
解決方式:
apt-get install --reinstall linux-image-`uname -r`
降級gcc