Ubuntu 16.04と17.04にGShutdownをインストールする

GShutdownを日本語化して、Ubuntu Unity環境でシャットダウンや再起動が出来ないバグを修正してみた件。

GShutdownとは

GShutdownはデスクトップLinuxで動作するGUIのシャットダウンタイマーアプリです。

インストール方法

ここからdebファイルをダウンロードしてダブルクリックしてインストールするか、端末で以下のコマンドを実行します。

sudo add-apt-repository ppa:sicklylife/ppa 
sudo apt update 
sudo apt install gshutdown 

起動方法

Dashから普通に起動できます(管理者権限で起動 しなくても 動作します)。

備考

  • カスタムコマンドでサスペンドやハイバネートを利用したい場合はこちらのページを参考に。
  • このアプリはタイトルバーの✕ボタンをクリックしても終了しません。終了するにはメニューバーの「ファイル」 → 「終了」をクリックする必要があります。
  • 通知領域にアイコンが表示されません。
  • オプションの「通知を表示する時間をカスタマイズ」は動作しません。アプリが強制終了します。

Ubuntu 16.04にQWinFFをインストールする

QWinFFというLinuxWindowsで動作するアプリがあるのだが、

↑この記事や公式サイトに書かれているppaにはUbuntu 15.10までのパッケージしかなく、Ubuntu 16.04にインストールするには自分でビルドしなければならない状態だったので、何となくSickly Life PPAにUbuntu 16.04用のパッケージをアップロードしてみた。

端末で、

sudo add-apt-repository ppa:sicklylife/ppa 
sudo apt update 
sudo apt install qwinff 

と実行すればQWinFF 0.2.1がインストールされる。

Ubuntu 16.04でUbuntu Softwareがまともに動かなくなってしまった時の対処法

いつの間にかUbuntu Softwareを起動すると アプリケーションが見つかりません と表示されて何も表示されなくなってしまった。

端末から起動しても特にエラーメッセージの類は表示されず、どうしたものかとググってみたところ、以下のページが見つかった。

↑このページ内にあったコマンドを参考にして端末で、

sudo apt purge gnome-software gnome-software-common ubuntu-software 
sudo apt install ubuntu-software gnome-software* 
sudo appstreamcli refresh --force --verbose 
sudo rm -r /var/cache/app-info && sudo appstreamcli refresh --force --verbose 
killall gnome-software ; gnome-software --verbose | tee /tmp/gnome-software.log 

と実行した所、Ubuntu Softwareが正常に動作してアプリの一覧が表示されるようになった。

Ubuntu Cleanerを日本語化してみた件

昨年の12月に複数のブログでUbuntu Cleanerという新しいシステムクリーナーアプリの記事を見かけた。

見た目がUbuntu Tweakに似てるなーと思っていたら、どうやらUbuntu Tweakのforkらしい。

ソースを見たらGUIのテキストがUbuntu Tweakからのコピペだったので、Ubuntu Tweakの日本語訳をコピペして日本語化してみようとしたところ、Ubuntu Cleanerは多言語化に対応していなかった、というか中途半端な状態だった。

ので、ググって調べてみたら日本語化するだけならまぁそんなに難しくなさそうだったので日本語化してみた。

↑このdebファイルをダウンロードし、ダブルクリックしてインストール、Dashから起動すれば日本語化されたUbuntu Cleanerが起動するはず。

debファイル直リンでない配布ページはこちら。

Pythonやsetup.pyに関する知識が皆無な状態で弄ったので、日本語化方法が少々不格好ではあるが、いちおう日本語化は出来たので良しとしておこう。

Ubuntu 16.10で通知領域のアイコンがピクピク動くのを何とかする その2

fcitxのソースを修正してアイコンの挙動を16.04の頃と同じにしたパッケージをppaにアップロードしてみた。
端末で、

sudo add-apt-repository ppa:sicklylife/ppa 
sudo apt update 
sudo apt upgrade 

と実行した後、Ubuntuを再起動すればfcitxのインジケーターアイコンが昔と同じになる。

関連

Ubuntuでp7zip-fullをインストールしてもzipが文字化けしないようにする

Ubuntuでは、Windowsで作成した日本語を含むzipファイルを展開すると文字化けを起こしてしまうが、Ubuntu Japanese Teamのリポジトリを追加しておくと文字化けせずにzipファイルを展開できるようになる。

# 16.04の場合
wget -q https://www.ubuntulinux.jp/ubuntu-ja-archive-keyring.gpg -O- | sudo apt-key add - 
wget -q https://www.ubuntulinux.jp/ubuntu-jp-ppa-keyring.gpg -O- | sudo apt-key add - 
sudo wget https://www.ubuntulinux.jp/sources.list.d/xenial.list -O /etc/apt/sources.list.d/ubuntu-ja.list 
sudo apt update 
sudo apt upgrade 
sudo apt install ubuntu-defaults-ja 

しかし7zファイルを作成/展開するためにp7zip-fullをインストールすると再び文字化けを起こすようになってしまう。これはUbuntuアーカイブマネージャー(File Roller)の仕様で、p7zip-fullがインストールされている環境ではzipの展開にp7zip-fullを使用するようになっているためで、回避するには機能が省かれたp7zipの方をインストールすればOKなのだが、p7zip-fullの方を使いたいしzipの文字化けも回避したいという人もいるのではないかと思ったので、File Rollerのソースを弄って文字化けしないようにしてみた。

端末で、

sudo add-apt-repository ppa:sicklylife/ppa 
sudo apt update 
sudo apt upgrade 

と実行すれば修正されたバージョンにアップデートされる。

↑こちらの記事を参考にさせていただきました。

UbuntuとWindowsでファイルを書き込む際にドライブ上にどのように配置されるか比較してみた

※2016年12月27日、追記と若干の書き直し。
※追記。日本語に翻訳された記事は消えていたが、元の英語のページは残っていた → Why doesn't Linux need defragmenting?


以前、Windowsではファイルは連続して保存され、Linuxではディスクドライブ全体に分散されるように保存される、というような内容の記事を見た覚えがあったので、探してみたのだけれども既に消えていて、

一部を引用したページのみが見つかった。

↑の記事より引用。

Windows(FAT、NTFS?)は全てのファイルが隣り合うように配置するので、断片化しやすい
Linuxは散らばらせて配置するので、空き容量に余裕があるなら断片化は気にしなくてよい

Windowsに関してはデフラグツールを使えばファイルがパーティションのどの辺りに保存されているか一目瞭然だけど、Linuxだと分かりやすいGUIツールが無いので、本当に散らばらせて配置されているのか確認のしようがないなと思っていたのだが、よく考えたら最近のLinuxWindowsのNTFSに書き込めるし、Linuxで書き込んでWindowsで確認すればいいんじゃないかという事に気がついたので、実際にNTFSでフォーマットされたパーティションUbuntuから書き込んで、ファイルがどんな風に配置されるか確かめてみた。

Ubuntuでファイルをコピーして確認

  1. まずWindows 10でVドライブをNTFSで(クイックフォーマットでは無い方で)フォーマット。
  2. 次にUbuntu 16.10でホームフォルダーをVドライブへコピー(約3.5GiB、ファイル総数約96,000。コピーにはsnowcpを使用)。
  3. Windows 10でDefragglerを使ってVドライブを解析。

すると以下のように表示された。

f:id:sicklylife:20161225200539p:plain

パーティションの先頭部分以外に分散して書き込まれているが、思った以上に断片化している。しかし断片化が起こっていると言っても、その殆どが断片数が2なので、激しい断片化は起こっていない様子。最も断片化したファイルのサイズは約200MBで、断片数は7だった。

Windowsでファイルをコピーして確認

  1. VドライブにコピーしたホームフォルダーをWindows 10で別のHDDに移動。
  2. Windows 10で再びVドライブをNTFSで(クイックフォーマットでは無い方で)フォーマットし直し。
  3. 移動させたホームフォルダーを再びVドライブにコピー(コピーにはFastCopyを使用)。
  4. Defragglerを使ってVドライブを解析。

すると以下のように表示された。

f:id:sicklylife:20161225201403p:plain

パーティションの先頭部分にまとめて書き込まれている。ファイルの断片化は起こっていないが、$UsnJrnlの断片数が100を超えていた。

両者を比較してみて

ファイルを書き込む際に「Windowsは全てのファイルが隣り合うように配置」し、「Linuxは散らばらせて配置する」ことが確認できた。

NTFSはLinuxのfallocateに未対応なのでLinuxから書き込むとファイルの断片化が起きたが、ext4やXFSといったLinuxネイティブのファイルシステムなら断片化はもっと起こりにくいはず。

ただ分散して配置するということは逆に空き領域の断片化が起こっているということなので、パーティションの使用率が上がれば上がるほどファイルサイズの大きなファイルを書き込む際に断片化しやすくなる。

ファイル倉庫的な使い方(一度書き込んだファイルは編集しないし消さない)をするならWindowsのファイルの配置方法の方が良いような気がする。