How can I share a thunderbird (icedove) profile, in real-time, between two computers?

I have two computers which both run Debian Sid. My problem is that I want to synchronize profile content between two computers both using thunderbird(+lightning) (contacts+calendar+email) (specifically Debian's icedove(+iceowl). For email, it's easy with IMAP. It's more tricky for calendar and contacts. Until today, I was using Google calendar and it was easy (with the extensions `Google Contacts` and `Google Calendar Tab`) to have access to my agenda and contacts. _However_ , I want to not use Google anymore and I need to find a way to achieve this synchronization process in another way. **Possible solution:** For example I was thinking of using SpiderOak (a backup/sync tool using the cloud), to sharing my thunderbird profile (~/.icedove folder) between my two computers. With Spideroak, I can select this folder and synchronize it: any change make to this folder will be transmit to the other folder on the second computer). The problem is that it doesn't only synchronized my accounts settings but also all my emails (the cache). This will slow a lot the synchronization time, and will make me exceed my 2Gb ratio on Spideroak (I have over than 15.000 emails) and this is not necessary (because IMAP already does it in a better way). Is there another solution (or way to adapt in a better way this presented one) to synchronize contacts and calendar using in thunderbird between two computers? Can someone point me to the exact file locations for Icedove, and network sharing packages in Debian such as `Samba`, etc.?


Difference between mail and mailx?

Whats the difference between mail and mailx? I'm trying to troubleshoot a problem where I can send mail from server A with this `echo $MESSAGE | mail -s "$SUBJECT" -r $FROM $RECIPIENTS` command but executing the same command from server B throws me this error (Both servers are RHEL)               mail: invalid option -- r     Usage: mail [-iInv] [-s subject] [-c cc-addr] [-b bcc-addr] to-addr ...                 [-- sendmail-options ...]            mail [-iInNv] -f [name]            mail [-iInNv] [-u user]      Now... going through mail manpages to ty to understand whats happening, `man mail` gives me this: In Server A               MAILX(1)                         User Commands                        MAILX(1)          NAME            mailx - send and receive Internet mail          SYNOPSIS            mailx [-BDdEFintv~] [-s subject] [-a attachment ] [-c cc-addr] [-b bcc-addr] [-r from-addr] [-h hops]                   [-A account] [-S variable[=value]] to-addr . . .            mailx [-BDdeEHiInNRv~] [-T name] [-A account] [-S variable[=value]] -f [name]            mailx [-BDdeEinNRv~] [-A account] [-S variable[=value]] [-u user]      But in server B               MAIL(1)                   BSD General Commands Manual                  MAIL(1)          NAME          mail - send and receive mail          SYNOPSIS          mail [-iInv] [-s subject] [-c cc-addr] [-b bcc-addr] to-addr... [-- sendmail-options...]          mail [-iInNv] -f [name]          mail [-iInNv] [-u user]      Now... if I try `man mailx` in server B I get:               MAILX(P)                   POSIX Programmerâs Manual                  MAILX(P)          PROLOG            This manual page is part of the POSIX Programmerâs Manual.  The Linux implementation of this interface may differ            (consult the corresponding Linux manual page for details of Linux behavior), or the interface may not  be  imple-            mented on Linux.          NAME            mailx - process messages          SYNOPSIS        Send Mode                   mailx [-s subject] address...             Receive Mode                   mailx -e                        mailx [-HiNn][-F][-u user]                        mailx -f[-HiNn][-F][file]      Server B has a different version of mail than Server A? Mailx and Mail are different things? I would like to use the -r option I use in server A but in server B and I don't really know whats happening.


Preventing `passwd` for asking for the local password

I have setup the sever to only use LDAP for authentication by using `authconfig-tui`. Everything works well but, when I run `passwd`, I get two prompts for a password:               [beamin@rhel6-test-server1 ~]$ passwd     Changing password for user beamin.     Changing password for beamin.     (current) UNIX password:     Enter login(LDAP) password:      Why is it asking for both? Can I prevent that from happening? ## Edit #1: Here is the content of `/etc/pam.d/passwd`:               $ cat /etc/pam.d/passwd     #%PAM-1.0     auth       include      system-auth     account    include      system-auth     password   substack     system-auth     -password   optional    pam_gnome_keyring.so      Here is the content of the include (`/etc/pam.d/system.auth`):               $ cat /etc/pam.d/system-auth     #%PAM-1.0     # This file is auto-generated.     # User changes will be destroyed the next time authconfig is run.     auth        required      pam_env.so     auth        sufficient    pam_unix.so nullok try_first_pass     auth        requisite     pam_succeed_if.so uid >= 500 quiet     auth        sufficient    pam_ldap.so use_first_pass     auth        required      pam_deny.so          account     required      pam_unix.so broken_shadow     account     sufficient    pam_succeed_if.so uid < 500 quiet     account     [default=bad success=ok user_unknown=ignore] pam_ldap.so     account     required      pam_permit.so          password    requisite     pam_cracklib.so try_first_pass retry=3 type=     password    sufficient    pam_unix.so nullok try_first_pass use_authtok     password    sufficient    pam_ldap.so use_authtok     password    required      pam_deny.so          session     optional      pam_keyinit.so revoke     session     required      pam_limits.so     session     [success=1 default=ignore] pam_succeed_if.so service in crond quiet use_uid     session     required      pam_unix.so     session     optional      pam_ldap.so      ## Edit #2: Contents of `nsswitch.conf` asked by @Nikhil:               $ egrep 'passwd|shadow' /etc/nsswitch.conf     #passwd:    db files nisplus nis     #shadow:    db files nisplus nis     passwd:     files     shadow:     files


How I can record stream radio in Linux?

How can I record a radio stream in Linux like the screamer in Windows? Does anyone have any idea or suggestion?


How to fix "number of errors while writing to disk(or) multi-zone error rate"?

I ran hard disk checker, and i found this error:               Write Error Rate:     number of errors while writing to disk(or) multi-zone error rate     (or) flying-height     ---     Normalized: 200     Worst:      200     Value:      21      What type of errors is this?   And how is this fixed?


How can I disown a running process and associate it to a new screen shell?

I have a running program on a SSH shell. I want to pause it and be able to unpause its execution when I come back. One way I thought of doing that was to transfer its ownership to a screen shell, thus keeping it running in there. Is there a different way to proceed?


Is there any way to get control over a terminal by ssh with no (screen)

> **Possible Duplicate:**   >  How can I disown it a running process and associate it to a new screen > shell? Let's say I'm install applications directly on to a Linux box. May I go to another machine and connect (via SSH) and take control of the main terminal's screen? Could I make it so that the main terminal would be switched off and show a login prompt? I could use `screen` but I haven't install it yet.


Can I transfer running process from dead ssh

> **Possible Duplicate:**   >  How can I disown a running process and associate it to a new screen shell? I have started (as expected) a long copy process from ssh shell (putty) which died due to client problem. What I see now is that process is still actively running, but I have no way to control it, since my shell died:               # w     USER     TTY      FROM              LOGIN@   IDLE   JCPU   PCPU WHAT     root     pts/0    192.168.X.Y   15:35    2:03m  4:39   4:39  cp -i -a source/ /data/     ...     #       Now I am wondering if I could somehow transfer this process to my new ssh terminal (or screen).


any way to un-disown / re-attach an interactive process to the tty?

> **Possible Duplicate:**   >  How can I disown a running process and associate it to a new screen shell? In `bash` is there an opposite of `disown`, that is, to re-attach a process I've accidentally disowned aiming for another backgrounded job? I suspended **ssh** to another host, launched **xload &**, and meant to disown _xload_ not my ssh session.               master@im~/dev Thu Mar 08,15:27:18$ (4350) ^Z [suspend ssh]     [2]+  Stopped                 ssh -e ^] -o StrictHostKeyChecking=false -XCg master@5.39.81.187          master@quant~ Thu Mar 08,15:27:18$ (4834) [ $(pidof xload) ] || xload -display :99 -update 5 -geometry 1100x50 & disown     [3] 11943     bash: warning: deleting stopped job 2 with process group 17683      _Oops!_               master@quant~ Thu Mar 08,15:28:35$ (4826) jb     [3]- 11943 Running                 xload -display :99 -update 5 -geometry 1100x50 &


Resume bash session in new TMUX or SCREEN?

Sometimes I'll start doing something fast. I've got something to do, and I need to get it done _now_. Then of course i realize that I need to do something else to help me finish what I started, so I want to add a new shell using tmux (or screen)... but I forgot to start tmux right off.... My question is this: **How can I put a task to the background, start a tmux (or screen) session, and then resume my original task in tmux?**


Is it possible to transfer a running process to your terminal?

> **Possible Duplicate:**   >  How can I pause up a running process over ssh, disown it, associate it to a > new screen shell and unpause it? It is fairly easy to disown a process, or make it run without a ttl, but is it possible to transfer to process to your own ttl? _note: by disown a process, i'm talking about running a command using nohup, or by running the disown builtin._


How to make the process run after closing the session

I have started a process in Linux without a terminal multiplexer like screen or tmux, without nohup. Now I want to logout from my remote ssh session without interrupting the execution of that process. How can I do that ?


How to screen'ize already running session?

> **Possible Duplicate:**   >  How can I disown a running process and associate it to a new screen shell? It is a good practice to run long processes in `screen` session, to protect them from session hangups. But what should I do if I already have a process that is running and I just forgot to run `screen`? Is it possible to 'capture' current session somehow and protect it with `screen`?


Move terminal emulator process from xorg to tty?

Is it possible (and if so, how?) to move a process from a terminal emulator running in X to a different virtual terminal, so that I can restart the X server without killing the process running in the terminal emulator? Similar questions:   * Is it possible to transfer a running process to your terminal?   * How can I disown a running process and associate it to a new screen shell? (Edit: The question in this link has been incorrectly marked as a duplicate of my question. Note that the accepted answer to that question does not address my question. GNU `screen` currently can not incorporate processes that were invoked prior to invocation of `screen` and cannot take over ownership of the process to be moved to a terminal.


Pass process ownership to another shell

I didn't hear of anything like this, but It might be possible. I often end up starting a process on a server and midway realizing that I would like to suspend that process and continue it inside a screen/tmux session. I know how to disown a process from a shell, but I'm wondering if there is a way to "recapture" the process in another shell later on. Or alternatively, inside screen/tmux specify a shell process to 'capture' as if started inside screen/tmux from the start.


How to recover a backgrounded job from a previous shell?

> **Possible Duplicate:**   >  How can I disown a running process and associate it to a new screen shell? I launched a command that lasts a long time. I had to disconnect so I moved it in the background (with CTRL+Z and `bg`) before exiting. Something like this:               $ my_command     ***command is beeing executed and is taking a long time***     ^Z     [1]+  Stopped                 my_command     $ bg     [1]+ my_command &     $ exit      I reconnected and can see the command in the process list but cannot recover with `fg`.               $ fg     -bash: fg: current: no such job      How do I recover my job in the foreground?


Enter process running in background/bring to foreground

> **Possible Duplicate:**   >  How can I disown it a running process and associate it to a new screen > shell? I started a java client using nohup to get it to run in the background (needed to log out of ssh). Now how can I enter it? (need to get it to save its progress) I ran ps -x and its pid is 5220 Thanks!


How do I detach a process from its parent?

> **Possible Duplicate:**   >  How can I disown a running process and associate it to a new screen shell? The problem is that the process is not a job inside of my active shell (as I've logged in from remote because my X-system has crashed), meaning: I guess `disown`, `nohup`, `CTRL+Z` & `bg`, `screen` et al. will not work. **Motivation:** I started a long running job inside of a gnome-terminal. I want to detach it from the its parent, as I the X-system has crashed. I fear when I kill the X-system, also the Gnome Desktop + Gnome-Terminal + my precious script will be lost. So I still can login from remote and want to save the script process and restart X. How do I do that?


Is it possible to detach a process started from one ssh session using another ssh session?

> **Possible Duplicate:**   >  How can I disown it a running process and associate it to a new screen > shell? I started a process from one ssh session to a target machine `T`. The system from which I ssh'ed, `A`, hung. I checked using ssh from another machine, `B` that the process is still running on `T`. Now I want to be able to restart `A` without affecting the run of the process on `T`. I had forgotten to use screen or byobu etc. Since `A` is currently hung, I cant even do a `ctrl` ` z ` and disown or something. What can be done ? I dont want the process to terminate but I want to be able to restart `A` which has hung.


Connect to pseudoterminal (same user) from lost session

I was running several large processes at once, and my PC froze (I suspect due to heat, its a laptop, and the fan was at maximum for several minutes just prior to locking up). The mouse cursor moved, but clicks had no effect. I could still hear sound from one of the processes, but it was visually frozen. I hit ctrl-alt-f2 as a last ditch effort to get it to do something before a hard reboot, and it switched to tty2. So, I switched back to 1, logged in, and ran startx. My `who` output:               nexus@Lithium ~ $ who     nexus    tty1         2014-02-26 11:14     nexus    tty7         2014-02-20 09:50 (:0)     nexus    pts/0        2014-02-26 10:21 (:0.0)     nexus    pts/2        2014-02-26 11:11 (:0)     nexus    pts/3        2014-02-26 11:23 (:1)      I figured out the pts sessions are where I had the terminal emulator open. I would like to reconnect to pts/0, and be able to view and use (save and close) the process it is running. Is this possible? Just want to open a new terminal somehow and get it to "take over" or "emulate" or "mirror" the original term. I can still hear the music in the background from the game in pts/0, and firefox is still running under that tty as well, so that I can't run a new firefox process.


Specific command sequence with sudo and file permissions

I need to allow a certain user access to these commands:               sudo sync     echo 3 | sudo tee /proc/sys/vm/drop_caches      (This particular developer is doing some DB performance testing and flushing the fs cache gives them cleaner numbers, so please refrain from comments on why we're using this command.) Can I restrict the user to a very specific command with sudo, e.g. `tee /proc/sys/vm/drop_caches`? From what I understand, I can only restrict them to the command `tee` itself. I don't want to allow the user to be able to use `tee` as root on anything they want, however. I guess the other option is to give them write access to that particular file, but is that crazy talk, i.e. giving some non-admin write access to a file in `/proc`? Any pointers or ideas on the best way to restrict this are appreciated.


Is it possible to `tail -f /dev/vcs`?

I would like to get a continuous stream of output from the virtual terminal. Is that possible? If not, why is `tail -f` not working here?


All directories wrongly identified as git repos in zsh

I am using zsh and Oh-My-Zsh on Ubuntu 14.04. For some reason all directories are indicated to be git repos. This is true for all oh-my-zsh themes, which leads me to believe that this is a zsh issue perhaps related to `vcs_info`.


Difference between "curl -XPUT --data-binary @${file_path}" and "curl -XPUT -T ${file_path}"?

While using curl to POST or PUT a file to a url, there are two different ways to load the file content:   1. `-T ${file_path}`   2. `\--data-binary @${file_path}` or `-d $@{file_path}` (for ascii data files) What is the difference between these two options?


Facing issue with cron on embedded linux

I have a SAM9 based board running embedded linux using buildroot package. I added the `crond` and `crontab` support to busybox from `make menuconfig` and built the rootfs and flashed it to my board. The `crond` and `crontab` utilities were now present on the board. I executed the following :               mkdir /var/spool/cron/     mkdir /var/spool/cron/crontabs/     crontab -e      Then added the following in the editor :               * * * * * "harsh" >> /root/harsh.txt      Then executed 'crond' and I was able to see it in the list of processes using 'ps' command. Also the text line with 'harsh' was appeded to the file every minute. But the problem is that when I reboot the board the `'cron'` directory is deleted from `/var/spool/` and the `cron process` also cannot be started as the `cron configuration file` itself resides in `/var/spool/cron/` How to fix this ?


Why do I get a different RSA fingerprint when multihopping using ProxyCommand

I'm using the following config to connect to multihop to the target host (`gw2` and `target` have my public key stored in the `authorized_keys` file ; no `netcat` on all systems):               Host gw1      HostName 255.255.255.1      User john          Host gw2      HostName 255.255.255.2      User jack      ProxyCommand ssh gw1 'exec 3<>/dev/tcp/255.255.255.2/22; cat <&3 & cat >&3;kill $!'          Host target      HostName 255.255.255.3      User jill      ProxyCommand ssh 255.255.255.2 'exec 3<>/dev/tcp/255.255.255.3/22; cat <&3 & cat >&3;kill $!'      I cleaned my `known_hosts` file and connected to `gw2` using `ssh gw2` from the local machine. The fingerprint is different from the one I expect. The same happens when I ssh into `target` using `ssh target` from the local machine, the rsa fingerprint is different. When I ssh into `gw1` and then into `gw2` (from `gw1`) `ssh-keygen -lf /etc/ssh/ssh_host_rsa_key.pub` produces the fingerprint I expect. I'm (fairly) certain that there is no MITM going on. Can anybody explain to me this behaviour? Should I be worried?


getent missing in Ångström Linux

I'm trying to run a script called sakis3g on a Beaglebone Black to use a USB 3G dongle. This script depends on getent to work. However, when I run this script, it says that getent is missing. Also, if I type "getent" into the terminal, it's not a recognized command. There is little information on this because because getent is assumed to be available. How can I install it?


Remove /var partition and replace it with /var into / (root) partition

I accidentaly created a `/var` partition and I'd like to get rid of it. Is it possible to remove this partition and use the `/` partition to contain `/var` _without_ reinstalling the OS or do I have to repartition my harddrive and reinstall everything? In the latter case is there something I can do to reinstall the already installed updates/programs automatically in the new system or do I have to list everything I add to the system and manually reinstall it? My `/home` is on a separated partition so probably it could be reused by the new installation, even though I care much more for what I installed into `/`. The OS is Kubuntu 12.10.


Hanging at "Running Transaction Test" when trying to install php-soap

I have here a CentOS 5 and I'm trying to run `yum install php-soap` but the installer hangs on and the last step is `Running Transaction Test`. I found out that NFS shares are the problem. See here or here or here. I tried to unmount everything which came up when entering `cat /etc/mtab | grep nfs`. I also tried to use `umount -a -t nfs`. Then I run the install command. But I can't get this working. `strace yum -y update` show me many lines, but I can't get a sense out of it. Furthermore I tried               /bin/rm /var/lib/rpm/__db.*     cd /var/cache/yum     /bin/rm -rf *     yum clean all     yum update      but still hangs on. Do I have to remove the mounts from the other server to this machine?


How can I open a new terminal in the same directory of the last used one from a window manager keybind?

I'm using a tiling window manager and I switched from `gnome-terminal` with multiple tabs to multiple `urxvt` instances managed by the window manager. One of the features I miss is the ability to open a new terminal that defaults to the working directory of the last one. In short: **I need a way to open a new urxvt (bash) that defaults to $PWD of the last used one.** The only solution that comes to my mind is to save the current path on every `cd` with something like this:               echo $PWD > ~/.last_dir      and restore the path on the new terminal in this way:               cd `cat ~/.last_dir`      I can source the second command in `.bashrc` but I don't know how to execute the first one on every directory change :) Any simpler solution that does not involve `screen` or `tmux` usage is welcome.


Find and differences between -perm /6000 and -perm /u+s

I have been trying to find setuid executables using a `one liner'. The line I first tried was:               find / -perm /u+s -type f      Then I found a line which is similar but gives different results:               find / -perm /6000 -type f      These look identical as far as I can tell, but the first one doesn't show as many results as the second one (mostly ones with weird groups are missing). Why, what is different?


busybox ash PS1 not expanding

I am trying to setup busybox's `ash` on an embedded system to support expanding the `PS1` prompt statement. I have it currently set as               PS1='\u@\h:\w\$ '      However, all that is displayed is literally `\u@\h:\w\$`. My environment vars are   * `HOSTNAME=linux`   * `USER=root`   * and my pwd is `/` So what should be displayed is `root@linux:/$`. Is there something special I need to do to get the `PS1` to expand correctly? * * * One thing I noticed is my `SHELL` variable is `/bin/sh` even though in my `/etc/inittab` I have the following line               ttyO0::respawn:-/bin/bash      I imagine this is the case because `sh` and `bash` are both aliased to `ash` in the busybox config. However, I have the following options enabled though:   * `bash-compatible extensions`   * `Expand prompt string`


need some advice in setting up my first server

**Questions**   1. Should a GUI be installed on a server?    2. Are solid state drives a good option for Virtualizations? How can I use SSD for   virtualization? _conditional information:_   I apreciate advice that follows the standards for working and administrating linux.   This is a private project, so theres no boss or special laws we have to consider. **Should a GUI be installed on a server?** Now i thought about taking Debian as root system, since it is the one i worked most. Would you guys send me to hell for installing a GUI.. you know.. for keeping things easy? Or lets say if i can't handle the terminal ninja moves, it might be a plan B to have the GUI. (for example configuring a virtual maschine (Virtualbox)).   _Is there some way to install a GUI but only execute it when necessary? Would this be reccommended?_ **Are solid state drives a good option for Virtualizations? How can I use SSD for virtualization?** I have 1 SSD's and servals HHD, so my thought was to use the SSD for the "Virtual Maschine Drives" to get the most possible efficency. **Can you evaluate how my hardware will preform from the perspective of acting as a virtualization-server?** Here is the list of the components Coolermaster, Cooler Master HAF XB RC-902XB-KWN1 Midi-Tower - schwarz   http://www.mylemon.at/artikel/coolermaster/rc_902xb_kwn1/geh-haf-xb-cube- rc.html   AMD, AMD FX-8120 3100 AM3+ BOX   http://www.mylemon.at/artikel/amd/fd8120frgubox/fx-8120-prozessor-eight- core.html   MSI, 760GA-P43 (FX) AM3+ AMD760 ATX   http://www.mylemon.at/artikel/msi/7699_010r/mb-760ga-p43-fx-760.html   Geil, GeIL Dragon RAM Series DDR3-1600, CL11 - 16 GB Kit   http://www.mylemon.at/artikel/geil/gd316gb1600c11dc/d316gb-1600-11-dragonram-k2.html   Noctua, Noctua NH-U9B SE2 CPU-Kühler - 2x92mm   http://www.mylemon.at/artikel/noctua/nh_u9b_se2/kue-combo-nh-u9b-se2.html   Aerocool, Aerocool GT Series Netzteil, 80Plus Bronze - 500 Watt   http://www.mylemon.at/artikel/aerocool/en53976/gt-500-500w-atx.html   SNT, Wechselrahmen 3-in-2 SATA/SAS black OEM   http://www.mylemon.at/artikel/snt/jj_2131_sata/wechselrahmen-3-in-2-sata.html


Arch Linux fails to boot from a USB key (cannot mount selected partition)

I tried to install Arch Linux to an USB key. Things are kind of wobbly (it assumes the system has exactly one drive inside, for example) but everything installed just fine. Until I rebooted.                 Booting 'Arch Linux'          root (hd1,1)      Filesystem type unknown, partition type 0x7     kernel /boot/vmlinuz26 root=/dev/dsb2 ro          Error 17: Cannot mount selected partition      (`/dev/dsb1`/`(hd1,0)` is a small FAT partition for data storing purposes -- for those locked down lab computers.) Here's the 'Arch Linux' command sequence:               root (hd1,1)     kernel /boot/vmlinuz26 root=/dev/dsb2 ro     initrd /boot/kernel26.img      At the grub console:               grub> root (hd1,1)      Filesystem type unknown, partition type 0x7     grub> cat /etc/passwd      Error 17: Cannot mount selected partition     grub> root (hd0,1) # my ubuntu partition      Filesystem type is ext2fs, partition type 0x73     grub> cat /etc/passwd     root:x:0:0:root:/root:/bin/bash     <snip/>      I could successfully reboot in my host OS, Ubuntu, and used the Disk Tool to confirm partitioning was successful. Also, running `sudo kvm /dev/dsb` resulted in a successful Arch boot once I edited the commands to boot from `root (hd0,1)` (that is, until Arch tried to mount `/dev/dsb2`). What did I do wrong? Edit 1 From Ubuntu, `fdisk -l /dev/sdb` gives:               Disk /dev/sdb: 1998 MB, 1998585856 bytes     62 heads, 62 sectors/track, 1015 cylinders     Units = cylinders of 3844 * 512 = 1968128 bytes     Sector size (logical/physical): 512 bytes / 512 bytes     I/O size (minimum/optimal): 512 bytes / 512 bytes     Disk identifier: 0x00000000             Device Boot      Start         End      Blocks   Id  System     /dev/sdb1               1          65      124899    b  W95 FAT32     /dev/sdb2   *          66        1015     1825900   83  Linux      I have now read the related wiki section but nothing seems to apply: I didn't use GParted or logical drives; everything is on the same partition.


Fullscreen game messes with my xrandr dual-monitor setup

I have Gentoo Linux, the Awesome window manager and an open-source ATI driver. Here's my xorg.conf:               Section "Files"             #ModulePath   "/usr/lib64/xorg/modules"             FontPath     "/usr/share/fonts/misc/"             FontPath     "/usr/share/fonts/TTF/"             FontPath     "/usr/share/fonts/OTF"             FontPath     "/usr/share/fonts/Type1/"             FontPath     "/usr/share/fonts/100dpi/"             FontPath     "/usr/share/fonts/75dpi/"             FontPath     "/usr/share/fonts/terminus"     EndSection          Section "ServerLayout"       Identifier     "My X Server"       Screen 0 "Screen0" 0 0     EndSection          Section "Monitor"             #DisplaySize      510   290     # mm             Identifier   "LeftMonitor"             VendorName   "DEL"             ModelName    "DELL U2311H"             HorizSync    30.0 - 83.0             VertRefresh  56.0 - 76.0             Option      "DPMS"             Option         "PreferredMode"  "1920x1080"     EndSection          Section "Monitor"             #DisplaySize      380   300     # mm             Identifier   "RightMonitor"             VendorName   "SAM"             ModelName    "SyncMaster"             HorizSync    30.0 - 81.0             VertRefresh  56.0 - 75.0             Option      "DPMS"             Option         "PreferredMode"  "1280x1024"     EndSection          Section "Device"       Identifier  "Card0"       Driver      "radeon"       VendorName  "ATI Technologies Inc"       BoardName   "Mobilitiy Radeon HD 3600 Series"       BusID       "PCI:4:0:0"       #Option "AccelMethod" "EXA"       Option         "monitor-HDMI-0" "RightMonitor"       Option         "monitor-DVI-0" "LeftMonitor"     EndSection          Section "Screen"       Identifier   "Screen0"       Device       "Card0"       Monitor      "LeftMonitor"       DefaultDepth 24       SubSection "Display"             Depth     24             Modes           "1920x1080" "1280x1024"             Virtual     3200 1080       EndSubSection     EndSection      And to enable the monitor on the right side I do `xrandr --output HDMI-0 --mode 1280x1024 --right-of DVI-0` at system launch. Good thing, it works.   **Bad** thing, Altitude game breaks it. The main (left) monitor loses signal and I can't re-enable it ( while the game itself runs happily on the right screen, in fullscreen mode). No problems in windowed mode (1024x768), as well as with all other applications (fullscreen flash, VLC, etc), but when I try to change in-game resolution to 1280x1024, it breaks the same way as with fullscreen. Any ideas? **Edit:** It breaks when I close the game as well. Argh! **Edit2:** Probably related to this bug. **Edit3:** Investigating this strange behavior with the guys from Nimbly Games (creators of Altitude). They actually fixed the problem at game exit, so I can at least play in windowed mode now. As for fullscreen mode, I think it's a problem somewhere in xrandr, or unstable open-source radeon R600 drivers, so that Awesome (window manager) actually restarts when Altitude goes to fullscreen mode/tries to change resolution.


Shell script to send a mail once every 20 days

Need a shell script to be called via cron job every day and see if it's 20th day,it should send a mail


installing grub 2 on mdadm, which device?

when installing grub(2) to mdadm devices are you supposed to install it to `/dev/sdX` or `/dev/mdX`?


Yum update shows "Killed"

When I update my RHEL with `yum update` commend, it list all update packages, and after I hit Y for yes, got following response.                   Running rpm_check_debug         Running Transaction Test         Transaction Test Succeeded         Running Transaction         Warning: RPMDB altered outside of yum.         Killed      Please help me to update my server.


How to copy datasets from prior version directory to latest version directory

I've go a number of directories named like:               /data/db/OX/8_10     /data/db/OX/9_1     /data/db/OX/9_2      And need to copy some files (all the `pt.*` files) from the second latest one (above `9_1`) to the latest one (above `9_2`). I have tried directly like this.               cp -p /data/db/OX/9_1/pt.*  /data/db/OX/9_2      However, Instead of typing /data/db/OX/9_1/ & /data/db/OX/9_2. I'd like to be able to write:               cp -p /data/db/OS/"$prior_version"/pt.* /data/db/OS/"$latest_version"/      And derive `$prior_version` and `$latest_version` from the list of directories in `/data/db/OX/` in a shell script.


Does fail2ban offer any additional protection to SSH if password login is already turned off?

I’m setting up a Debian VPS on Linode to use as a public web server, and I’m following their security suggestions. The last suggestion they make is to install fail2ban, to avoid dictionary attacks on the server. They mention that by default it only monitors SSH login attempts. However, in a previous step, they suggested turning off SSH password login (which I did). Given that I’ve done this, does using fail2ban for SSH connections add any security?


sort part of a file

How can I sort the file by the second column from the terminal. The content of the file is:               Nome     Note     ------------     Mehdi    0     Sunday   20     Others   10     Shnou    5      Using `sort -t' ' -nk2` is not giving me the right result. Also how can I ensure that the content of the file stay sorted?


fstab bind inconsistency - Is a link a better option?

When binding two folders together as configured in `/etc/fstab`;               #folder-with-old-data       new-empty-folder     fs   option  flags     /home/user1/Mydata/Pictures /home/user1/Pictures none bind    0 0      The "old" folder `Pictures` with existing data is located in a partition mounted in `Mydata`. I wish for the folders and files within it to appear as folders and files in the "new" standard location of `/home/user1/Pictures` In doing this I want the existing data in the old folder to be accessible in the standard `/home/user1/Pictures` location. When the folders are bound, all seems in order, **except** that when a new file is created in `/home/user1/Pictures` **it does not appear** in the bind (bound) `/home/user1/Mydata/Pictures` folder! Also, if the two folders are then un-bound with `umount`, the previously newly created file in `/home/user1/Picture` folder **is lost in both folders!** The reverse, that is files created in `/home/user1/Mydata/Pictures` create duplicates in `/home/user1/Pictures` which are retained in both locations after `umount`.... as expected. If the two folders are rebound the new file previously created in `/home/user1/Pictures` is visible again. Q1. `bind` is too mature for this to be a bug, so what am I doing wrong? Q2. Would it be more elegant to use `ln -s`. I presume I then have the issue of modifying `/etc/init.d/rc2.d` to include a start up script which is less visible when it comes time to update, or rearrange drives etc. System: Kubuntu 13.10


Receiving emails over IMAP and parsing with a script with minimal delay

I have a Perl script that uses `NET::IMAPClient` and `MIME::Parser` which simply reads new emails from an IMAP server and saves any attachments to disk. My question is: what is the best way to run this script as soon as there's new email? I can use cron to periodically run the script, I could check every few seconds even, but I suspect there is a better way. Ideally I would act upon the receiving of an email immediately, like a system event. What are common software and techniques to achieve this? I'm using a Debian system.


Debian Wheezy LXDE: Desktop icons are disappearing, how to restore them?

This happens from time to time - I will minimize a window to find out that the Desktop icons have disappeared, and when right-clicking on the Desktop, the Openbox menu is shown. I suspect this is because PCManFM (which manages the Desktop) has crashed. When this happens, is there a way to restore the Desktop icons, short of logging out and logging back in?


AWK command failing for large file

I have a `.csv` file of 6.5 GB. I need to sort the files with 1st, 2nd, 3rd, 4th, 5th and 13th column and need to get the unique records. Also I need to get the duplicate records and redirect it to some other file. I am using the following command to get the unique lines:               awk -F',' 'a[$1,$2,$3,$4,$5,$13]++' /var/tmp/Data.txt > unique.txt      But the above process is consuming more than 3.5 GB memory and eventually gets terminated. Producing the following error in the log file:               sh: line 1:  7895 Killed                  awk -F',' 'a[$1,$2,$3,$4,$5,$13]++' /var/tmp/Data.txt > unique.txt        How can I produce the required output?


Awesome WM tiles KDE networking and battery widget

I currently use KDE with Awesome WM. I got the KDE bar at the bottom hidden, but I can un-hide with with the cursor when I need to use the Plasma Network Manager. With KWin, they would appear like little drawers from the bottom and where quite usable. With Awesome WM, these get tiled as well, making them pretty hard to use: ![](http://chaos.stw-bonn.de/users/mu/uploads/2013-12-09/screenshot4.png) Is there some way to fix this? I tried setting `floating = true` for the class `plasma-desktop`, but that did not change anything. This is what I got with `sleep 10 && xprop` and clicking on the networking widget when it was extended:               WM_STATE(WM_STATE):                     window state: Normal                     icon window: 0x0     _NET_WM_SYNC_REQUEST_COUNTER(CARDINAL) = 31457739     _NET_WM_USER_TIME(CARDINAL) = 14075167     _NET_STARTUP_ID(UTF8_STRING) = "0"     _NET_WM_DESKTOP(CARDINAL) = 4294967295     _KDE_SHADOW_OVERRIDE(_KDE_SHADOW_OVERRIDE) = 0x1     _KDE_NET_WM_SHADOW(CARDINAL) = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0     _NET_WM_STATE(ATOM) = _NET_WM_STATE_STICKY, _NET_WM_STATE_SKIP_TASKBAR, _NET_WM_STATE_ABOVE     XdndAware(ATOM) = BITMAP     _MOTIF_DRAG_RECEIVER_INFO(_MOTIF_DRAG_RECEIVER_INFO) = 0x6c, 0x0, 0x5, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x10, 0x0, 0x0, 0x0     WM_CLIENT_LEADER(WINDOW): window id # 0x1e00004     _NET_WM_PID(CARDINAL) = 2404     _NET_WM_WINDOW_TYPE(ATOM) = _KDE_NET_WM_WINDOW_TYPE_OVERRIDE, _NET_WM_WINDOW_TYPE_NORMAL     _MOTIF_WM_HINTS(_MOTIF_WM_HINTS) = 0x2, 0x3, 0x0, 0x0, 0x0     WM_PROTOCOLS(ATOM): protocols  WM_DELETE_WINDOW, WM_TAKE_FOCUS, _NET_WM_PING, _NET_WM_SYNC_REQUEST     WM_NAME(STRING) = "plasma-desktop"     WM_LOCALE_NAME(STRING) = "de_DE.UTF-8"     WM_CLASS(STRING) = "plasma-desktop", "Plasma-desktop"     WM_HINTS(WM_HINTS):                     Client accepts input or input focus: True                     Initial state is Normal State.                     window id # of group leader: 0x1e00004     WM_NORMAL_HINTS(WM_SIZE_HINTS):                     user specified location: 1367, 20                     program specified location: 1367, 20                     user specified size: 838 by 1029                     program specified size: 838 by 1029                     program specified minimum size: 316 by 308                     program specified maximum size: 1680 by 1050                     window gravity: Static     WM_CLIENT_MACHINE(STRING) = "Martin-X220"     WM_COMMAND(STRING) = { "/usr/bin/plasma-desktop" }


Display content of all currently detached screen

I have a few detached screens running. Now I’d like to see their current state for each of them. Currenlty, I do               $ screen -r     # look at the cryptic numbers     $ screen -r <paste number one>     # look at output     <Ctrl-A> D     $ screen -r     # look at the cryptic numbers to find the next one     $ screen -r <paste number two>     # look at output     <Ctrl-A> D     $ screen -r     # look at the cryptic numbers to find the next one     # and so on     $ screen -r <paste number three>     # look at output      Is there a single command that lets me do that?


Reset background to transparent with tmux?

I recently set up tmux-powerline and noticed that the background color on the status-left, if changed, refuses to go back to default and transparent (if transparency is enabled). ![tmux-powerline broken](http://i.stack.imgur.com/6HhDD.png) I was able to fix the status-right (because it's before the background is changed), but it seems impossible to clear/erase the background after it's set for a section. I'd love to be wrong about this, though, and was wondering if anyone knows of a solution? `set -g status-left='#[bg=colour89]ANYTHING CAN GO HERE[#bg=default] AND HERE TOO!'` I'd expect to have the background cleared out (bg=default at the beginning would have it stay transparent, and works for status-right), but I get a dark grey instead. TERM = screen-256


Different ways to execute a shell script

There a several ways to execute a script, the ones I know are:               /path/to/script # using the path (absolute or relative)     . script        # using the . (dot)     source script   # using the `source` command      Are the more of this? What are the differences between them? Are there situations that I must use one and not another?


What does sourcing a file mean in a shell?

> **Possible Duplicate:**   >  Different ways to execute a shell script What happens when I issue the following command:               source devenv.csh      How does it differ from running it just as `devenv.csh` ?


Installing yum packages by pattern

I want to install all openoffice packages. Passing openoffice* obviously wouldn't work, because it'd look at file system. How can I do that?


Modeless vs modal editors

I just started learning Linux and all my previous experience of programming has been using the Windows platform. I came across Vim editor and read that it is modal editor unlike notepad which is termed as a modeless editor. Can you please explain what is the difference between modeless and modal editors in general?


Update MOTD at ssh login on Debian

What's the most clean way to display a different quote from a file (line- seperated) as MOTD on every SSH login on Debian? In other words, how can I trigger a MOTD update on SSH login?


Dualboot Freebsd + Gentoo with GRUB2 [MBR]

I have Gentoo x64 installed with Grub2 on my MBR drive. Today I installed FreeBSD x64 9.2. Now I'm in Gentoo and trying to add FreeBSD to `grub2` menu list.               grub2-install /dev/sda     os-prober     grub2-mkconfig -o /boot/grub2/grub.cfg      I did the above on Gentoo and it didn't find FreeBSD. The FreeBSD nested partition is on `sda1` and contains `freebsd-ufs` and `freebsd-swap` partitions. How could I add FreeBSD to `grub2`?


RPM "ghost" directive equivalent in debian packaging?

So I have worked with RPM (Redhat package manager) and it has a feature called ghost files. This type of file designates a file that is owned by the package, but is not necessarily installed through the installation process (useful for files that the program generates after it runs). More about the ghost directive in RPM can be found at the link below http://www.rpm.org/max-rpm-snapshot/s1-rpm-inside-files-list-directives.html So far the only way I have found to approximate the ghost behaviour in .deb packages is to touch the desired file and specify it as a config file in the debian/conffiles file. That way it is owned by the package but will not be updated every time a new version is installed. What I am wondering is if there is a more official equivalent to this behaviour in the debian package manager, mainly looking at Ubuntu. I am using `debuild` to build the packages. Any help or suggestions would be greatly appreciated. **Additional info:** What I need to accomplish is to allow the package manager to know what files may be created by the program when it runs. These files should not be updated when a new version is installed and should not be deleted when the package is removed. The files should only be removed during a purge of the package.


How to get permission for editing fstab file in debian

I wanted to change my fstab file to be able to solve "Error mounting" (I tried to delete the last line of fstab file)               # /etc/fstab: static file system information.     #     # Use 'blkid' to print the universally unique identifier for a     # device; this may be used with UUID= as a more robust way to name devices     # that works even if disks are added and removed. See fstab(5).     #     # <file system> <mount point> <type> <options> <dump> <pass>     # / was on /dev/sda5 during installation     UUID=8a97edce-fb5d-4dfb-8843-1d6a8f40c8ed / ext4 errors=remount-ro 0 1     # /home was on /dev/sda7 during installation     UUID=20c4aa72-06e1-47eb-acae-2ca0a53ebc93 /home ext4 defaults 0 2     # swap was on /dev/sda6 during installation     UUID=638f2aee-806c-4845-bb1b-3bff47728184 none swap sw 0 0     /dev/sr0 /media/cdrom0 udf,iso9660 user,noauto 0 0     #/dev/sdb1 /media/usb0 auto rw,user,noauto 0 0      But now I need "permissions to save the file." How to do it?


Ubuntu warning. W: Duplicate sources.list entry

After installing Oracle VirtualBox, when I do `sudo apt-get update`, I get the following warning               W: Duplicate sources.list entry     http://download.virtualbox.org/virtualbox/debian/ raring/contrib i386     Packages     (/var/lib/apt/lists/download.virtualbox.org_virtualbox_debian_dists_raring_contrib_binary-i386_Packages)      How can I fix it?


Check if debian/control Build-Depends: requirements are satisfiable when backporting packages

Debian/Ubuntu question here. I routinely backport packages from more recent Ubuntu distros to older ones (LTS). I download (via dget) a Debian source, then cd into it and type `debuild -b`. It then says something like `dpkg-checkbuilddeps: Unmet build dependencies: dh-autoreconf gnome-pkg-tools (>= 0.7) yelp-tools gtk-doc-tools (>= 1.12) pkg-config libglib2.0-dev (>= 2.29.14) libgstreamer1.0-dev (>= 0.11.92) libgstreamer-plugins-base1.0-dev (>= 0.11.92) libxml2-dev (>= 2.6.0) libsm-dev libice-dev libgtk-3-dev (>= 3.0.0) libcanberra-dev (>= 0.1) libcanberra-gtk3-dev (>= 0.1) libnautilus-extension- dev (>= 2.91.90) libburn-dev (>= 0.4.0) libisofs-dev (>= 0.6.4) libtotem- plparser-dev (>= 2.32) libunique-dev (>= 1.0.0) libnotify-dev (>= 0.6.1) gobject-introspection (>= 0.6.3) libgirepository1.0-dev (>= 0.6.3) libappindicator3-dev (>= 0.0.7) libunity-dev (>= 5.0.0)` `apt-get build-dep` helps upto a certain point (but downloads dependencies for the _current_ package, not for the one I'm backporting). I could manually install all the listed dependencies and retry the `debuild` to see if `dpkg- checkbuilddeps` succeeds, but this is costly in time (and disk space). I guess I really I need a tool (or a script) that could check if the `Build- Depends:` requirements from `debian/control` are satisfiable with the current repositories (or if not which further packages I need to backport). Is there an easy way to achieve this?


Is there a update manager whitout gnome dependencies for xfce?

I'm looking a update manager for Debian Xfce. I installed xfce on a computer which will be use by laypersons. Therefore, I want another way (graphical) to launch `apt-get update && apt-get upgrade`. But I don't want to slow the system by adding gnome dependencies (update-manager-gnome is then not a solution). The solution using `cron` configured to launch commands such as `'apt-get update; apt-get upgrade -y --force-yes; apt-get dist-upgrade -y --force-yes;'` seems to me too dangerous. I would like to offer a choice by graphical way.


Debian Wheezy USB2 ehci_hcd

I have a friend who decided to switch to Linux from Windows. I was helping her to get up and running as quickly as possible but we ran into a problem which I can't seem to solve. She uses Debian Wheezy, installed from the latest XFCE install CD image (`dd`'ed onto a pendrive). Everything went fine and her system works almost completely. The only problem she has that some of her pendrives aren't working. They can be `mounted` (both by root and by xfce's automount) but reading from the drive gave timeouts, `dmesg` showed that `ehci_hcd` kept resetting usb2 devices.   As a fix I `rmmod`ed the `ehci_hcd` kernel module and the the devices started to work, but they were way too slow. As another possible solution I upgraded the box's kernel to that which is in `wheezy-backports` which is 3.10, but the problem still persists. I have checked through her `BIOS` settings but they apper to be in order too.   The drives work under my laptop, and the usb ports have worked under the previous OS, so it's not a hardware issue. I have ran out of ideas what else I could do to fix her box. Here's `dmesg`'s output of the current error:               [ 3694.256023] usb 7-2: new high-speed USB device number 5 using ehci-pci     [ 3694.388813] usb 7-2: New USB device found, idVendor=1e3d, idProduct=2095     [ 3694.388818] usb 7-2: New USB device strings: Mfr=1, Product=2, SerialNumber=3     [ 3694.388821] usb 7-2: Product: Flash Disk           [ 3694.388823] usb 7-2: Manufacturer: Generic      [ 3694.388825] usb 7-2: SerialNumber: CCBB0201160720281014278106     [ 3694.389132] usb-storage 7-2:1.0: USB Mass Storage device detected     [ 3694.389234] scsi9 : usb-storage 7-2:1.0     [ 3695.388487] scsi 9:0:0:0: Direct-Access     Generic  Flash Disk       5.00 PQ: 0 ANSI: 2     [ 3695.388770] sd 9:0:0:0: Attached scsi generic sg3 type 0     [ 3695.389346] sd 9:0:0:0: [sdb] 3911680 512-byte logical blocks: (2.00 GB/1.86 GiB)     [ 3695.389970] sd 9:0:0:0: [sdb] Write Protect is off     [ 3695.389973] sd 9:0:0:0: [sdb] Mode Sense: 0b 00 00 08     [ 3695.390591] sd 9:0:0:0: [sdb] No Caching mode page present     [ 3695.390595] sd 9:0:0:0: [sdb] Assuming drive cache: write through     [ 3695.394223] sd 9:0:0:0: [sdb] No Caching mode page present     [ 3695.394228] sd 9:0:0:0: [sdb] Assuming drive cache: write through     [ 3695.395392]  sdb: sdb1     [ 3695.401344] sd 9:0:0:0: [sdb] No Caching mode page present     [ 3695.401350] sd 9:0:0:0: [sdb] Assuming drive cache: write through     [ 3695.401354] sd 9:0:0:0: [sdb] Attached SCSI removable disk     [ 3710.357646] FAT-fs (sdb1): utf8 is not a recommended IO charset for FAT filesystems, filesystem will be case sensitive!     [ 3710.380122] FAT-fs (sdb1): Volume was not properly unmounted. Some data may be corrupt. Please run fsck.     [ 3741.008027] usb 7-2: reset high-speed USB device number 5 using ehci-pci     [ 3751.252026] usb 7-2: reset high-speed USB device number 5 using ehci-pci     [ 3767.496024] usb 7-2: reset high-speed USB device number 5 using ehci-pci     [ 3767.744027] usb 7-2: reset high-speed USB device number 5 using ehci-pci     [ 3777.988055] usb 7-2: reset high-speed USB device number 5 using ehci-pci     [ 3778.120554] sd 9:0:0:0: Device offlined - not ready after error recovery     [ 3778.120586] sd 9:0:0:0: [sdb] Unhandled error code     [ 3778.120589] sd 9:0:0:0: [sdb]       [ 3778.120591] Result: hostbyte=DID_ABORT driverbyte=DRIVER_OK     [ 3778.120593] sd 9:0:0:0: [sdb] CDB:      [ 3778.120595] Read(10): 28 00 00 00 00 42 00 00 ce 00     [ 3778.120602] end_request: I/O error, dev sdb, sector 66     [ 3778.120619] sd 9:0:0:0: rejecting I/O to offline device     [ 3778.120688] sd 9:0:0:0: rejecting I/O to offline device     [ 3778.120690] sd 9:0:0:0: killing request     [ 3778.120724] sd 9:0:0:0: rejecting I/O to offline device     [ 3778.120740] FAT-fs (sdb1): FAT read failed (blocknr 34)     [ 3778.124088] sd 9:0:0:0: rejecting I/O to offline device     [ 3778.124269] sd 9:0:0:0: rejecting I/O to offline device     [ 3778.124282] sd 9:0:0:0: rejecting I/O to offline device     [ 3778.124292] sd 9:0:0:0: rejecting I/O to offline device     [ 3778.124302] sd 9:0:0:0: rejecting I/O to offline device     [ 3778.124311] sd 9:0:0:0: rejecting I/O to offline device     [ 3778.124366] sd 9:0:0:0: rejecting I/O to offline device     [ 3778.124377] sd 9:0:0:0: rejecting I/O to offline device     ... This repeats a lot of times, then ...     [ 3778.126304] sd 9:0:0:0: rejecting I/O to offline device     [ 3778.126314] sd 9:0:0:0: rejecting I/O to offline device     [ 3778.126323] sd 9:0:0:0: rejecting I/O to offline device     [ 3778.126408] sd 9:0:0:0: rejecting I/O to offline device     [ 3778.126415] FAT-fs (sdb1): FAT read failed (blocknr 34)


Use the raspberry pi as a source of entropy for /dev/random

I'm trying to see if I can use my raspberry pi's hardware RNG as a source of entropy for `/dev/random`. Mostly to see if I can get it to work and find yet another use for this nifty little device. Of course I don't really need to increase the entropy for my laptop. A useful application however might be to use it as a source of entropy for servers with VM where entropy creation can be a problem. However it is mostly a hobby project to see if I can get it to work and give something back to the open source community. What I would like to do is to setup my pi on the (local) network and use ssh to get the randomness transferred to the pool of the server, in this case my laptop. I think I should have no problem to just use a bash script that reads `/dev/random` from the pi. But how do I connect the `/dev/random` of the pi to the `/dev/random` of my laptop. Is there an interface to add a random number generator. I hope my proposed setup is clear. I hope I can get some comments on this, any feedback is welcome.


yum update failing each time

I have been trying to update my Fedora 19 system, but each time it fails with some error. I tried doing a `yum clean all` but to no avail. The last time i got this set of errors,               Total                                                                                63 kB/s | 726 MB  03:15:53          Running transaction check     Running transaction test               Transaction check error:       file /etc/php-zts.d/zip.ini from install of php-common-5.5.7-1.fc19.x86_64 conflicts with file from package php-pecl-zip-1.12.1-2.fc19.remi.1.x86_64       file /etc/php.d/zip.ini from install of php-common-5.5.7-1.fc19.x86_64 conflicts with file from package php-pecl-zip-1.12.1-2.fc19.remi.1.x86_64       file /usr/lib64/php-zts/modules/zip.so from install of php-common-5.5.7-1.fc19.x86_64 conflicts with file from package php-pecl-zip-1.12.1-2.fc19.remi.1.x86_64       file /usr/lib64/php/modules/zip.so from install of php-common-5.5.7-1.fc19.x86_64 conflicts with file from package php-pecl-zip-1.12.1-2.fc19.remi.1.x86_64       file /usr/share/doc/HTML/de/k3guitune/index.cache.bz2 from install of k3guitune-1.01-10.fc19.x86_64 conflicts with file from package k3guitune-1.01-9.fc18.i686       file /usr/share/doc/HTML/en/k3guitune/index.cache.bz2 from install of k3guitune-1.01-10.fc19.x86_64 conflicts with file from package k3guitune-1.01-9.fc18.i686       file /usr/share/doc/HTML/nl/k3guitune/index.cache.bz2 from install of k3guitune-1.01-10.fc19.x86_64 conflicts with file from package k3guitune-1.01-9.fc18.i686       file /usr/share/applications/k3guitune.desktop from install of k3guitune-1.01-10.fc19.x86_64 conflicts with file from package k3guitune-1.01-9.fc18.i686          Error Summary     -------------      Please help..


how I can generate mac address increamental like 00:00:00:00:01 00:00:00:00:02

how I can generate mac address incremental like               00:00:00:00:01     00:00:00:00:02


Crunchbang does not see existing Ubuntu installation

I recently installed Crunchbang 11 in the free space of a hard disk of an Asus netbook that already had Ubuntu installed on it. I partitioned the 2 distros separately, with only a common swap space. At the end of the installation, Crunchbang informed me that "it seems Crunchbang is the only OS on this system", and then asked me whether I would like to install GRUB. I said no and then it asked me again to choose a partition to install. I chose the "first on your hard disk" (which is supposed to belong to Ubuntu, anyway). All cool, but needless to say Grub has no entry for Ubuntu during boot, and so Crunchbang is the only OS I can boot. Is there a way (including reinstallation with proper options) that I could get Ubuntu as a GRUB option? Some way to add an entry to `grub.cfg` perhaps?


Connect to a VPN from a Linux Virtual Machine

I am running an Ubuntu distro inside a VMWare virtual machine with a bridged connection on a Windows 7 host. What I am trying to do is to have the virtual machine connect to a VPN, but I'm not having much success. At first, the system was using wicd, but I replaced it with network-manager who's supposed to have OpenVPN support. The problem is, even thogh I have purged the wicd installation, there are connections shown in the network manager, and still, I'm able to access the net. I've also added the openvpn data in the network manager tab, but it's shown as never used. PS: When I try to stop and start the NetworkManager service, an error message pops up telling me that there's not such a service, but apt-get tells me I've already installed it...


Output traffic on different interfaces based on destination port

My question is basically the same as Only allow certain outbound traffic on certain interfaces. I have two interfaces `eth1` (10.0.0.2) and `wlan0` (192.168.0.2). My default route is for `eth1`. Let's say I want all https-traffic to go through `wlan0`. Now if I use the solution suggested in the other question, https traffic will go through `wlan0`, but will still have the source-address of `eth1` (10.0.0.2). Since this address is not routeable for the `wlan0` gateway, answers won't ever come back. The easy way would be to just set the bind-addr properly in the application, but in this case it is not applicable. I figure I need to rewrite the src-addr:               # first mark it so that iproute can route it through wlan0     iptables -A OUTPUT -t mangle -o eth1 -p tcp --dport 443 -j MARK --set-mark 1     # now rewrite the src-addr     iptables -A POSTROUTING -t nat -o wlan0 -p tcp --dport 443 -j SNAT --to 192.168.0.2      Now tcpdump sees the outgoing packets just fine and ingoing packets arrive for 192.168.0.2, however they probably never end up in the application, because all I ever get to see, is that the application is resending the SYN-packet, although the SYN-ACK was already received. So I thought, maybe I need to rewrite the incoming address too:               iptables -A PREROUTING -t nat -i wlan0 -p tcp --sport 443 -j DNAT --to 10.0.0.2      but that didn't work either. So I’m kind of stuck here. Any suggestions?


Route socks proxy traffic through wireless client

I have a router with two Internet WANs: DSL (vlan1) and wireless client (eth1). They are both in default route: vlan is the first and eth1 is the second (I am using `ip route add default scope global nexthop via …`). I want to use eth1 Internet from my laptop using socks proxy. I tried to use srelay socks server with `–J eth1` option on the router but it didn’t work (page loads forever) although it works through DSL if I use `–J vlan1`. I also tried to use `ssh` as a socks server and mark packets with iptables to route them to eth1 using ip rule:               iptables -t mangle -A OUTPUT -o vlan1 -j MARK --set-mark 1      After this command every program on the router starts using eth1 but I need that only the socks server uses eth1. Is it possible to mark only socks server packets? Now I have to use the second router for this purpose. I run socks server on it and add ip rule for its IP on the first router. I already tried this and it didn’t work. It’s not "duplicate" because I need this for proxy server on router. The problem is that I can’t mark packets based on port number because proxy server doesn’t keep this mark while proxyfing.


Linux Bulk/Remote Administration

Beside our internal IT infrastructure, we've got around 500 Linux machines hosting our services for the on-line world. They are grouped in a bunch of clusters like Database A-n, Product A-n, NFS, Backoffice and so on. Furthermore, they are administered by an external provider, according to our specifications and requirements. However, we face a lot of trouble during (web-) software development, roll-out and deploy - especially because the dev- and staging-environments have almost nothing in common with the live systems (I spare out the nasty details..). Thus, I've tried to create virtual machines, copied the various live-systems as exactly as possible and prepared them to connect to e.g. the development- databases instead of the "real" ones transparently for developers (they aren't `root`). This works pretty well, but... I was wondering how one could administer those systems remotely and _in bulk_? Is there some software family I'm not aware of? Or, at least, some techniques or principles one should be familiar with? We would provide every developer with a bunch of images to be run locally (VirtualBox). The QA dept. would get virtual clusters (XEN or Hyper-V). If I need to provide an additional server-module, re-route a new database connection or just want to update everything provided by the package manager... how could I possibly do that without being forced to log on to every system and/or ask my colleagues to download and run some fixture-script? I believe there are plenty of solutions. Well, somehow I'm too stupid to enter the correct keywords into the search engines... Or isn't this issue as trivial as it sounds? For the record:   * Almost all systems are running Debian GNU/Linux 6.x "squeeze"   * No developer is forced to use a particular OS at his/her workstation   * The budget is limited, of course, but not too small to buy proprietary software   * A solution that would involve our aforementioned provider is preferred


Managing and applying custom updates to multiple identical machines

I work at a library where we have just recently setup 5 kiosk's based on linuxmint. The hardware is identical. I actually used DD to make an image after I set the first one up. My Problem is, I now need to apply more updates to these machines. I'm making several updates to things like grub, and other system configuration. As well as a specific users .gconf folder. Apply such updates as removing keybinding's. Updating power the power settings. I have ssh access to all of the boxes. What would be the best way to update these? I first apply the changes to our experimental machine. How would you recommend then pushing these updates out to all the other kiosks? * * * Just discovered http://www.puppetlabs.com/ This looks promising. Any other ideas? Can this be ran as a daemon or will I have to goto each kiosk, login as root, and run puppet? Running scp and rsync to transfer .gconf and other changes has failed for me. I have no root user, obviously because of the way ubuntu runs. So no way to get it to escalate to root for the transfer of modified files. At least that I know of.


How to deploy programs on multiple machines

I need to install a few programs on around 40 Kubuntu 13.04 machines, and would like to know what options I have to do it as efficiently as possible. EDIT: I have the repositories already set and the machines are all identical clones, with no LDAP auth or centralized server.


How to replicate basic configuration tasks?

_(This might be off-topic and/or not answerable, but I want to ask anyway.)_ Recently, I am managing a lot of VPS server with Linux for my personal and professional projects. However, I am kind of tired by the repetitive tasks. Let's say I have to do the following after installation of a VPS   * add some users, add them to sudoers   * install the basic needed packages from apt-get   * find out that the package X is not in the basic repository, so I add some repositories   * do some basic configuration, both as a _root_ and as a user, copy-pasting some stuff from the internet to some files and see what sticks   * finally start coding Is there any way to automate the whole process? Basically to "seal" the whole configuration, so I can then do all this in somehow more simplier way.


How do I extract the colours from a PDF?

I have a PDF and I want to verify the colours being used (check that they match our corporate colour scheme for instance). Specifically, I want to check that the correct CMYK colours are being used. How could I go about doing that?


Ubuntu blank screen after login

I have a laptop running Ubuntu 13.10. It was running fine till yesterday when I installed OpenCV 2.4 using Synaptic (if that is of any relevance since there is no other change in configuration). This morning, I powered it on and it comes to the screen asking for login, even showing my background correctly. However, after I login, the screen goes blank. I can see the mouse cursor and it moves when I use the trackpad, but I am unable to do anything else. I am not able to start terminal window or anything else because I do not have any icon. From the login screen, I tried to change to Gnome (instead of Ubuntu default) but still, had no luck. Can someone please help? There should be a command to go into non-GUI mode but I cannot recall that either. The output from `lspci | grep VGA` is               00:02.0 VGA compatible controller: Intel Corporation Mobile GM965/GL960 Integrated Graphics Controller (primart) (rev 0c)      Looks like it is unable to load `Plugin opengl` which must be because of my install of OpenCV. `apt-cache policy nvidia`               nvidia:       Installed: (none)       Candidate: (none)       Version table:      `apt-cache policy fglrx`               fglrx:       Installed: (none)       Candidate: 2:13.101-0ubuntu3       Version table:          2:13.101-0ubuntu3 0             500 http://us.archive.ubuntu.com/ubuntu/ saucy/restricted amd64 Packages      If it is of any help, I typed the command `glxinfo` and got the error:               Xlib:  extension "GLX" missing on display ":0".     Error: couldn't find RGB GLX visual or fbconfig


How to prepare a headless machine?

I'm currently preparing an SD-card for my Raspberry Pi, i.e. an ARM machine, while I'm sitting on a x86 one. Therefore I cannot simply `chroot` into it and run `rc-update add sshd default`. So, how else can I set this up without having to connect the device itself?


What does the Bind bindkeys-file directive do?

Just trying to understand the `bindkeys-file` directive related to the DNSSEC extension in the Bind configuration. Is that a public key? Does it sign the response in the same way as digital signatures?


Displaying just an image instead of text

Is it possible to compile the linux kernel so that when it is booting up, instead of the boot up text to display and image and ONLY an image (like osx)?


How to find all images containing any text?

I got a lot of images, and I need to find, which of them contain any text in English (to delete them). Is it possible to do it automatically?


How to write an abort-on-error script without adding `|| exit $?` to every line?

I'm writing a bash script that should exit the error code of the last failed command and not continue execution. This can be achieved by adding a `|| exit $?` everywhere, but is there an easier way, e.g. a `set` option at the start to do this without uglifying every line?


Find files with specific extension with help of recoll

How to make recoll program to show files with specific extension (for example, *.cpp, *.txt, etc)?


Postfix Masquarade Name *and* Email address

At the moment, I have a RHEL6 monitoring server that sends out emails with postfix. Originally it was sending them out as `user@host.localhost`. I've used the mapping file `/etc/postfix/generic` to get the emails sent out now as `monitoringuser@domain.com`, however when the email client receives the email, there is no longer a name attached to the email address. Originally, with the default configuration, emails would come in with the sender as this -   `user <user@host.localhost>`   Now when I recevied the emails, they come in with just the email address -   `monitoringuser@domain.com` - there is no longer a name displayed. I've googled and looked at docs but can't seem to figure out the way to do this. Is there a way for postfix to fix that or append the name that I want ? Or is it up to the script calling `mail` to append a name to the sender ?


Unable to change resolution on Fedora 18 after playing Urban Terror

So I wanted to try out Urban Terror on Fedora 18. I installed it. When I click it, the screen resolution would change to a lower resolution(800x600) to play the game in full screen. Then after I've exit the game the resolution would remain the same. I tried changing the resolution in the 'Displays' application to 1440x900, the screen would go blank forever and I would have to restart the PC. After restart the resolution would return to normal. So after a few tries trying to replicate the issue, the screen went blank but after restart it never returned 1440x900. Now I'm stuck on the low 800x600. It does work on 1440x900 until login screen but after I login it goes to 800x600 that Urban Terror had set. Something seems to be broken after the login screen. Forcing the resolution to 1440x900 in the /etc/gmd/Init/Defaults still doesn't change anything.


Is there an easy way to "restart" a tmux pane?

Assume I have a `tmux` (1.7) window split as follows:                ________________________     |           1            |     |                        |     |-----------+------------|     |     2     |      3     |     |___________|____________|      Now, the vertical sizes have been customized, so it's by no means one of the default layouts. On occasion, when a program gets stuck or when you reboot a machine to which you connected via `ssh`, the pane "hangs". I.e. nothing other than `kill-pane` appears to work. However, since there is no easy way to rebuild above split configuration once pane #1 has been `kill-pane`d, I'd like to "restart" it.


Booting over the LAN using uboot

I am trying to boot my beaglebone over the LAN. I am able to download the Kernel uImage from the TFTP server. Here is what I did -               U-Boot SPL 2011.09-00053-gb423c52 (Aug 10 2012 - 11:26:55)     Texas Instruments Revision detection unimplemented     No daughter card present     OMAP SD/MMC: 0     reading u-boot.img     reading u-boot.img               U-Boot 2011.09-00053-gb423c52 (Aug 10 2012 - 11:26:55)          I2C:   ready     DRAM:  256 MiB     WARNING: Caches not enabled     No daughter card present     NAND:  HW ECC Hamming Code selected     No NAND device found!!!     0 MiB     MMC:   OMAP SD/MMC: 0, OMAP SD/MMC: 1     *** Warning - readenv() failed, using default environment          Net:   cpsw     Hit any key to stop autoboot:  0     U-Boot# dhcp     link up on port 0, speed 100, full duplex     BOOTP broadcast 1     BOOTP broadcast 2     DHCP client bound to address 192.1.1.101     Using cpsw device     TFTP from server 192.1.1.254; our IP address is 192.1.1.101     Filename 'uImage-BBone'.     Load address: 0x82000000     Loading: #################################################################              #################################################################              #################################################################              ################################     done     Bytes transferred = 3319832 (32a818 hex)     U-Boot# bootm     ## Booting kernel from Legacy Image at 82000000 ...        Image Name:   Angstrom/3.2.28/beaglebone        Image Type:   ARM Linux Kernel Image (uncompressed)        Data Size:    3319768 Bytes = 3.2 MiB        Load Address: 80008000        Entry Point:  80008000        Verifying Checksum ... OK        Loading Kernel Image ... OK     OK          Starting kernel ...          Uncompressing Linux... done, booting the kernel.        1. I did not specify the load address of 0x82000000. Uboot seem to have chosen this all by itself. Does it matter where the uImage is downloaded to?   2. Is the second load address that I see on the console after giving the `bootm` command (Load Address: 80008000 & Entry Point: 80008000) a standard address? Does the kernel image have to be located at a specific location in memory?   3. I am stuck after this. There is no ramdisk. How do I load a ramdisk? And how do I tell the kernel to look for it at a specific memory location? The image I am using was downloaded from here. Do I need to create a new image to be able to use the ramdisk? Can I use a NFS mount at this point of time? When can I mount an NFS partition as the root file system?


“Error: permission denied” error from Transmission Client

When I try downloading files with Transmission I get: ![Error: Permission denied](http://i.stack.imgur.com/9nAao.png) I've tried searching for this problem, and everyone always says to set permissions correctly, but I've done that: ![](http://i.stack.imgur.com/OwqnT.png) This is running on a debian headless server and I did have it working until I moved the folders out of my home directory and into one of their own; ever since then I haven't been able to get it up and running, even in my home directory again. I've even purge removed it and installed it again, setting it all up following one of the countless number of guides step for step, and I have gotten nowhere. I'm not sure if `transmission-daemon -f` can help you guys to help me, but I thought what it outputs may be relevant because I saw "transmission-daemon requiring authentication":               root@fileserver /# transmission-daemon -f     [19:09:48.940] Transmission 2.03 (11030) started (session.c:622)     [19:09:48.940] RPC Server Adding address to whitelist: 127.0.0.1 (rpc-server.c:767)     [19:09:48.940] RPC Server Adding address to whitelist: 192.168.0.* (rpc-server.c:767)     [19:09:48.940] RPC Server Serving RPC and Web requests on port 9091 (rpc-server.c:940)     [19:09:48.940] RPC Server Whitelist enabled (rpc-server.c:944)     [19:09:48.940] RPC Server Password required (rpc-server.c:947)     [19:09:48.940] Port Forwarding Stopped (port-forwarding.c:178)     [19:09:48.940] DHT Generating new id (tr-dht.c:378)     [19:09:48.940] Using settings from "/root/.config/transmission-daemon" (daemon.c:443)     [19:09:48.940] Saved "/root/.config/transmission-daemon/settings.json" (bencode.c:1651)     [19:09:48.940] transmission-daemon requiring authentication (daemon.c:461)     [19:09:48.940] Watching "/home/Transmission" for new .torrent files (daemon.c:473)     [19:09:48.940] Using inotify to watch directory "/home/Transmission" (watch.c:72)


Control-q-? key binding in Awesome WM

I wish to configure my Awesome Window Manager so that the keyboard shortcuts begin with `ctrl``q`. `ctrl``q`-`x`, `ctrl``q`-`y`, `ctrl``q`-`z`, and so on... I've attempted to modify the `/etc/xdg/awesome/rc.lua` config file, I've looked for answers, and I've reviewed the relevant man pages. I've even attempted to use `xmodmap` to accomplish this. I've managed to change the Mod key to `ctrl`, but I can't get the `awful.key` object to accept an additional modifier key.


iptables - masqueraded NAT has delayed first hop in traceroute

I'm just in the process of setting up my Linux (Debian-based) router with a PPPoE connection via an ADSL/PPPoA -> PPPoE bridge. The connection works perfectly on the router itself but a traceroute through the NAT for some reason takes a long time to get the result of the first hop (to the NAT). The majority of the time the result of the hop will just be * * * but sometimes the hop does show up and there's a long delay before it tries the second hop. Here's when it doesn't show the hop at all:               CallumsMacBookAir:~ Callum$ traceroute google.co.uk     traceroute: Warning: google.co.uk has multiple addresses; using 173.194.41.95     traceroute to google.co.uk (173.194.41.95), 64 hops max, 52 byte packets      1  * * * //LONG DELAY      2  lo0-central10.ptn-ag03.plus.net (195.166.128.192)  22.578 ms  19.925 ms  20.990 ms      3  link-a-central10.ptn-gw01.plus.net (212.159.2.136)  19.574 ms  19.786 ms  19.343 ms      4  xe-5-3-0.ptw-cr01.plus.net (212.159.0.108)  19.540 ms  18.947 ms  25.387 ms      5  72.14.222.97 (72.14.222.97)  19.911 ms  19.706 ms  19.512 ms      6  209.85.246.244 (209.85.246.244)  19.423 ms  19.455 ms  19.655 ms      7  72.14.238.51 (72.14.238.51)  20.234 ms  24.666 ms  20.076 ms      8  lhr08s01-in-f31.1e100.net (173.194.41.95)  19.168 ms  19.518 ms  19.659 ms      Sometimes it does respond in the first hop but there's still an asterisk:               CallumsMacBookAir:~ Callum$ traceroute google.co.uk     traceroute: Warning: google.co.uk has multiple addresses; using 173.194.41.95     traceroute to google.co.uk (173.194.41.95), 64 hops max, 52 byte packets      1  192.168.0.253 (192.168.0.253)  0.770 ms *  0.800 ms     //LONG DELAY IN HERE      2  lo0-central10.ptn-ag03.plus.net (195.166.128.192)  20.301 ms  22.958 ms  32.719 ms      3  link-a-central10.ptn-gw01.plus.net (212.159.2.136)  19.142 ms  19.417 ms  18.527 ms      4  xe-5-3-0.ptw-cr01.plus.net (212.159.0.108)  19.047 ms  18.781 ms  18.887 ms      5  72.14.222.97 (72.14.222.97)  19.181 ms  19.424 ms  29.965 ms      6  209.85.246.244 (209.85.246.244)  33.559 ms  19.756 ms  25.363 ms      7  72.14.238.51 (72.14.238.51)  32.010 ms  19.753 ms  19.042 ms      8  lhr08s01-in-f31.1e100.net (173.194.41.95)  19.618 ms  19.730 ms *      Is there any way to make the iptables router respond to the traceroute properly? Thanks!


GNOME doesn't work on Debian Jessie after installing fglrx

I'm using 64bit Debian Jessie and followed these instruction to install fglrx for Radeon HD 7000 series: https://wiki.debian.org/ATIProprietary However GNOME doesn't work after it. I installed different desktop environments and it worked. With GNOME, GDM doesn't start, and launching GNOME with `startx` crashes. What is the problem?


How do I remove "permission denied" printout statements from the find program?

find: `/root/.dbus': Permission denied     find: `/root/.gconf': Permission denied     find: `/root/.gconfd': Permission denied     find: `/root/.gnome': Permission denied     find: `/root/.gnome2': Permission denied     find: `/root/.gnome2_private': Permission denied      E.g. output like this when I run the "find / -name netcdf" command


How to skip "permission denied" errors when running find in Linux?

> **Possible Duplicate:**   >  How do I remove "permission denied" printout statements from the find > program? When I run this command in Linux (SuSE):               find / -name ant      I get many error messages of the form:               find: `/etc/cups/ssl': Permission denied      Does `find` take an argument to skip showing these errors and only try files that I have permission to access?


Catch all emails and save them in MySQL

I want to do something like Facebook has with it message system. When you reply to email sent from Facebook User, it automatically gets in his message box. This is done, because you reply to {longidofmsg}@facebook.com, according to {longidofmsg} FB find route to user and it's message box. **Can you suggest simple out of the box solution: Which will catch all emails, checks if they have correct {longidofmsg} and saves them to mysql?** I've found something like this: https://github.com/deitch/smtp-tester/ , but it needs a lot of hacking


Trying to compile following code in **_terminal_** i got `gcc: -pthread: No such file or directory`, what does this error means and how to eliminate it? **file name:** _window.c_ **code:**               #include <gtk/gtk.h>          int main(int argc, char *argv[]) {            GtkWidget *window;            gtk_init(&argc, &argv);            window = gtk_window_new(GTK_WINDOW_TOPLEVEL);        gtk_widget_show(window);            gtk_main();       return 0;          }      I tried to compile it with following parameters:-               gcc -Wall -g window.c -o window `pkg-config --cflags gtk+-2.0` `pkg-config --libs gtk+-2.0`


Provide parameters to scp with xargs

When I run `svn st | awk '{print $2}'`, I get:               a.py     b.py     c.py      Then I want to `scp` these files to a remote server. I have tried:               svn st | awk '{print $2}' | xargs scp my_name@my_server:~/      But it doesn't work. What is the right command to do this? Thank you!


Display Server vs. Window Manager vs. Graphics Driver?

I am trying to sort my understanding of the different part of graphics on Linux, and I am confused as to the roles played by each of the following concepts.   * Display Server   * Window Manager   * Graphics Driver My questions:   * Are graphics drivers implemented inside the Linux Kernel or outside? If outside the kernel why are they excluded when network, disk, file system are all inside the kernel?   * X Windows, Gnome, Ubuntu Unity, KDE, Mir, Wayland who does what in terms of Display Server, Window Manager, and Graphics Driver? My goal for this question is to understand which projects are contributing what parts of the Linux Graphics experience? **UPDATE** http://blog.mecheye.net/2012/06/the-linux-graphics-stack/ has a lot of the details that I was looking for.


Globbing with brackets and variables in zsh

I wrote the following snippet to delete several subdirectories selectively from a common ancestor. It doesn't work, but I can't tell why.               for x in *;      do rm -r "$x/foo/bar/{a*,b,c,d,g*}";      done      I get "no such file or directory" errors when I run it, even though I know that the folders exist.


CentOS 6 installs libmysqlclient.so.16 and friends without me asking

Whilst trying to resolve a dependency issue with MySQL's `libmysqlclient` libraries on one of my CentOS 6 MySQL servers I was surprised to discover the following libraries installed in `/usr/lib/mysql`:               libmysqlclient_r.so -> libmysqlclient_r.so.16.0.0     libmysqlclient_r.so.16 -> libmysqlclient_r.so.16.0.0     libmysqlclient_r.so.16.0.0     libmysqlclient.so -> libmysqlclient.so.16.0.0     libmysqlclient.so.16 -> libmysqlclient.so.16.0.0     libmysqlclient.so.16.0.0      The reason I was surprised was because this server has only ever had MySQL 5.5 installed which was built from source. Building MySQL 5.5 produces a set of `libmysqlclient.so.18` libraries, not `libmysqlclient.so.16`. I then built a brand new CentOS 6 (i386) server from scratch and installed _only_ the Base package group and nothing else (i.e. no HTTP server, no MySQL, no Gnome etc). Having scanned the packages in this group there was nothing that jumped out at me as having a dependency on `libmysqlclient`. However when the install completed, there sitting in the `/usr/lib` directory was a `mysql` folder containing the above `libmysqlclient.so.16` libraries. I then built a CentOS 5.5 (i386) server using only the Base packages as I did with CentOS 6 and these MySQL libraries do not get installed. This appears to be a new thing, is there any reason why a Base package install of CentOS 6 requires `libmysqlclient` to be installed?


I just know that `ls -t` and `ls -f` give different sorting of files and subdirectories under a directory.   * What are the differences between timestamp, modification time, and created time of a file?   * How to get and change these kinds of information by commands?   * In terms of what kind of information do people say a file is "newer" than the other?   * What kinds of information's change will not make the file different? For example, I saw someone wrote: > By default, the rsync program only looks to see if the files are different > in size and timestamp. It doesn't care which file is newer, if it is > different, it gets overwritten. You can pass the '--update' flag to rsync > which will cause it to skip files on the destination if they are newer than > the file on the source, but only so long as they are the same type of file. > What this means is that if, for example, the source file is a regular file > and the destination is a symlink, the destination file will be overwritten, > regardless of timestamp. On a side note, does the file type here mean only regular file and simlink, not the type such as pdf, jpg, htm, txt etc?


Is it possible to put root in LVM without using initrd?

I have just set up a Gentoo base system (which means I can boot and log in and do stuff with it now). My root partition is in an LVM2 virtual group (with a separated `/boot` partition). In order to boot I need to pass the parameters below to the kernel:               root=/dev/ram0 real_root=/dev/vg/rootlv init=/linuxrc dolvm      Apparently it is using an initial ramdisk to do something (I guess loading the LVM things) before mounting root. Is there a way that I can put this code into the kernel itself so that no initrd is needed? If not, how can I make the initrd myself? It might be useful to add that I had tried compiling the kernel for non-LVM root, without initrd and it worked perfectly. Then I tried to put the whole thing under LVM and couldn't get the machine to boot (I guess it cannot deal with the LVM stuff). Then I used the `genkernel` tool with the `\--lvm` option and it creates the working kernel and initrd that I am currently using. Now I want to skip `genkernel` and do everything on my own, preferably without initrd so that the machine will boot somewhat faster (I don't need the flexibility anyway).


archive files and directories before transfer

I was wondering what is the advantage of making all the files and directories into an archive file for transfer, such as by `cpio`, instead of transferring them directly, such as by `cp`, `scp`?


Separate /boot partition on USB

During standard Debian install i decided to go with implementing additional security factor which is /boot on separate USB key. In Debian guide I've found it is only put this way. http://madduck.net/docs/cryptdisk/ > if you don't like the unencrypted /boot partition, you could boot the system > off a USB key, which you can keep separate from the system except for when > booting and upgrading the kernel. All you need to do for that is install the > bootloader and kernel onto the device and configure it to use the proper > encryption volume on the harddisk as root filesystem. I know how to install GRUB onto USB stick               grub-install --root-directory=/mnt /dev/sdb      but I don't know hot to copy kernel image from my current installation to USB stick. Everything is done here from live environment. On clean install, I setup partitions manually and then proceed with installation, after my `/root` and `/home` are ready to use and `/boot` is already specified on USB Key I choose to "Continue Testing" my live environment from which I install GRUB onto `/boot` partition but how do i put initial ramdisk there? Because this is mandatory for system to boot. Also does this approach doesn't require my to edit my `/etc/fstab` or `/etc/crypttab`?


Shell command to remove the first string that is enclosed with slashes

I need a shell command(sed or awk is preferred) to remove the string that is enclosed within the slashes. For example If my string is `/some/dir/example/` then the output should be `dir/example/`


Alternatives to LVM

I was thinking about alternatives to combine several HDDs together. The only options I know so far are using LVM and/or RAID. The thing is, using LVM, I will most probably lose all data, if one volume in my volume group fail. Using RAID, however, is (for my purposes) a waste of space. So basically I am looking for a way to combine HDDs together, where I can remove and add more later on, but will not lose data from the other combined drive, if one disk fails. I just heard about `mhddfs`. Is that a reliable method to combine disks?


Debian listing packages that are recommended by already installed packages

As the tittle suggests: I'm looking for a way to list every package that is recommended by one of the packages that are already installed on my system. Kinda similarly to how `apt` displays recommended packages when installing something.   I'd prefer to have the list as `X package recommends: W,Y,Z packages`.


Linux Mint - Blackscreen on installation

Whenever I try to install Linux mint 10, the Start menu (install, install compatibility, reboot) comes on, but when I choose one of them, I get a blackscreen after the kernel is loaded. Why?


difference between df -h and dfc

Why is there a difference in the used size between `dfc` and `df -h`?               $ df -h     Dateisystem    Größe Benutzt Verf. Verw% Eingehängt auf     /dev/sda7        64G     51G   11G   83% /     none            4,0K       0  4,0K    0% /sys/fs/cgroup     udev            3,9G    4,0K  3,9G    1% /dev     tmpfs           801M    1,5M  799M    1% /run     none            5,0M       0  5,0M    0% /run/lock     none            4,0G    148K  4,0G    1% /run/shm     ...          $ dfc          FILESYSTEM  (=) USED      FREE (-) %USED AVAILABLE     TOTAL MOUNTED ON      /dev/sda7   [=================---]   83%     10.6G     63.9G /     none        [--------------------]    0%      4.0K      4.0K /sys/fs/cgroup     udev        [=-------------------]    0%      3.9G      3.9G /dev     tmpfs       [=-------------------]    0%    798.7M    800.1M /run     none        [--------------------]    0%      5.0M      5.0M /run/lock     none        [=-------------------]    0%      3.9G      3.9G /run/shm     ...      I wouldnt round 3.9 up to 4 and then display 4,0 that makes no sense to me.


Prey anti-theft configuration on Debian

I would like to protect my laptop from thieves. I would configure Prey, but I can't find any tutorial for Debian/Ubuntu users. I tried to go to the control panel on the project, but whenever I try to add a device, the server redirect me to download page. I have no idea how to go ahead. Who can help me? I have installed prey from the repository of Debian Wheezy. I found the configuration file, but I have no ideas on how to configure it.


Setting time through GPS dongle

There is this code that claims to set the time of your linux environment, http://blog.petrilopia.net/linux/raspberry-pi-set-time-gps-dongle/               date -s '01/01/2014 00:01'     sleep 1     pkill ntpd     pkill gpsd     gpsd -b -n -D 2 /dev/ttyUSB0     sleep 2     GPSDATE=`gpspipe -w | head -10 | grep TPV | sed -r 's/.*"time":"([^"]*)".*/\1/' | head -1`     echo $GPSDATE     date -s "$GPSDATE"     /usr/sbin/ntpd      But When I am running this code through puTTy it sets my time to, > Sun Aug 8 06:08:11 PKT 2010 I'd like to know why it is setting my GPS time to 2010 ? while its 2013 ? Here is the Output of `gpspipe -w` command               {"class":"TPV","tag":"MID2","device":"/dev/ttyUSB0","mode":1,"time":"1990-12-22T23:59:53.020Z","ept":0.005}     {"class":"TPV","tag":"MID2","device":"/dev/ttyUSB0","mode":1,"time":"1990-12-22T23:59:54.020Z","ept":0.005}     {"class":"SKY","tag":"MID4","device":"/dev/ttyUSB0","time":"1990-12-22T23:59:55.010Z"}     {"class":"TPV","tag":"MID2","device":"/dev/ttyUSB0","mode":1,"time":"1990-12-22T23:59:55.010Z","ept":0.005}     {"class":"TPV","tag":"MID2","device":"/dev/ttyUSB0","mode":1,"time":"1990-12-22T23:59:56.020Z","ept":0.005}     {"class":"TPV","tag":"MID2","device":"/dev/ttyUSB0","mode":1,"time":"1990-12-22T23:59:57.020Z","ept":0.005}      The output is continuous , which means it is changing every second.


Linux Mint 15 unable to install on VM VirtualBox

Appears that something maybe up with my VM set-up as it wouldn't install Fedora either. Problem will be I load up the VM and hit F12 to boot from the CD/DVD which is pointed to the mounted ISO file which will at this attempt is linuxmint-15-cinnamon-dvd-64bit.iso At which point I will see a screen saying Linux Mint Autoboot in 10.. 9.. then as soon as the count down reaches zero I am stuck on this screen. ![Desktop Caption](http://img843.imageshack.us/img843/51/xd93.png) Full Size image: a link! I have 3D Acceleration Enabled and gave 128mb Vid Mem. So unsure what else I could try. I assigned 4096Mb of RAM ... The image shows 2048 but I have since changed that to 4GB. Anything I could try or troubleshoot? Most results online show issues relating to post installation or during installation, yet I cannot begin the installation. - As instructed the ISO is MD5 Verified with a checksum and when using a prepared VDI it still fails to hit the OS. I have the options to select Linux Mint.. Linux Mint +Rec ect. But soon as I choose one it hangs on a black console screen with an underscore.


What command will generate average lines per minute?

I'd like to know how many average lines are written to a file per minute. Could someone help me with a command or code to generate this number?


How to Replace Path in Search field using VIM

I'm trying to replace this text in VIM               Actual Path /home/omipenguin/Servers\ Information/systemscript.sh/sysinfo.txt      with this new path               /home/sysinfo      I tried               %s/\/home\/omipenguin\/Servers\ Information\/systemscript.sh\/sysinfo.txt//home/sysinfo/g      but VIM gives me `Pattern not Found`. Please advise, what is wrong?


Fixing a broken packet system (apt-get)

After I made a system upgrade (apt-get upgrade) on a debian box, I get an error everytime i tries to use apt-get. Example:               # apt-get -f install     Reading package lists... Done     Building dependency tree     Reading state information... Done     0 upgraded, 0 newly installed, 0 to remove and 8 not upgraded.     1 not fully installed or removed.     After this operation, 0 B of additional disk space will be used.     Setting up initscripts (2.88dsf-41+deb7u1) ...     insserv: Service killprocs has to be enabled to start service single     insserv: exiting now!     update-rc.d: error: insserv rejected the script header     dpkg: error processing initscripts (--configure):      subprocess installed post-installation script returned error exit status 1     Errors were encountered while processing:      initscripts     E: Sub-process /usr/bin/dpkg returned an error code (1)      I have tried to find a solution, but can't find anything that looks like this. First of all I have this packet which is "not fully installed or removed". But I can't find the command to locate it. Have tried:               dpkg -l | grep rc      But it list about 20 packets, so there must be a better way to find this packet. To fix the packet system I have tried normal procedures, like:               apt-get clean && sudo apt-get autoremove      apt-get -f install     dpkg --configure -a      The clean command is good, but the install command will fail with as shown above. In a desperate try, I tried to reinstall insserv (not sure it's the packet which is broken), but it fails the same way:               # apt-get install --reinstall insserv     Reading package lists... Done     Building dependency tree     Reading state information... Done     0 upgraded, 0 newly installed, 1 reinstalled, 0 to remove and 8 not upgraded.     1 not fully installed or removed.     Need to get 63.8 kB of archives.     After this operation, 0 B of additional disk space will be used.     Get:1 http://ftp.us.debian.org/debian/ wheezy/main insserv armel 1.14.0-5 [63.8 kB]     Fetched 63.8 kB in 0s (85.5 kB/s)     Setting up initscripts (2.88dsf-41+deb7u1) ...     insserv: Service killprocs has to be enabled to start service single     insserv: exiting now!     update-rc.d: error: insserv rejected the script header     dpkg: error processing initscripts (--configure):      subprocess installed post-installation script returned error exit status 1     Errors were encountered while processing:      initscripts     E: Sub-process /usr/bin/dpkg returned an error code (1)      Hope some of you can help me fix the issue.


Periodically sync local folders using rsync (no symlinks!)

I am using Dropbox to have an online backup of some data. However I want to encrypt my data before uploading it to Dropbox. Therefore I have created a TrueCrypt container and I am using `rsync` to synchronize the original data with the data in the TrueCrypt container. The reason for this duplicative setup is because I want both **hassle-free local access** and an **encrypted online backup**. However now on to my question. I wrote a script which uses rsync for the local synchronisation. I however do not want to execute it manually. Could someone tell me how I can run the script, say every 30 seconds, from the moment I login to my computer? ps: I could always embed the current code of my script in a never-ending `while loop` and add `sleep 30`. However are there other more sophisticated ways?


Linux Red Hat Library Dependencies question

I have to create a script that will download 8 libraries. However, on the server where we have all the libraries, I can only find 2 or 3 of these 8. I believe these 2 or 3 actually depend on other libraries to work, so when I request via yum to download 2 or 3 of these libraries, all the 8 libraries will actually be downloaded. I know there is a command to check out the dependencies of a specific rpm package:               rpm -qpR (name of rpm package)      My question is the following: is there a "reverse" command that, given a specific library name, will look for all the rpm packages that depend on this library?


How do I copy/yank a multi-line expression I typed at the ZSH prompt?

For example, supposed I'm browsing through my history, and reach this multi- line command I'd typed earlier:               ~ >> for f in *; do     echo $f     done      I've enabled `vim` bindings in the ZLE (`bindkey -v`), so I can type `Esc` at this point and use `vim` keys to get around, move across lines, etc. I can also do `yy` to yank the current line. However, there doesn't seem to be an obvious way to copy all these lines. Any ideas?


How to prepare files for rsync on a case insensitive filesystem?

I am transferring a large number of files on a HFS+ filesystem. The files are currently on ext2 partitions. I have conflicts due to case insensitivity of the target partition (HFS+). I want to identify the files that have duplicates filenames once they are in lower case, and delete them if they are actually duplicates. I also found that I will have duplicate folder names if I convert everyhing to lower case. Basically these hard drives contain years of unsorted data, and I happen to have this problem with folder names too. Does this seem reasonable:               find . -type f | while read f; do echo $f:l; done | sort | uniq -d       `$f:l` is ZSH for convert to lower case. Now I want to keep only one instance of each file that have duplicates. How to do this efficiently ? I do not want to find files with duplicate _content_ , unless they have the same lower case filename. I will deal with duplicates later.


Running Debian jessie, missing some packages

I want to install gajim and virtualbox-fuse in Debian jessie but the repository isn't offering me these. Whats the correct approach on this? Backports, wheezy or repositories from oracle/gajim? Virtualbox seems even more complicated since virtualbox is in jessie but virtualbox-fuse is not. And virtualbox-fuse depends on virtualbox.